Paper Review/Privacy Protection (UL, Anonymize)
[IJCAI 2021] Learning with Selective Forgetting
이성훈 Ethan
2025. 5. 18. 20:46
728x90
- Introduction
AI 가 발전할수록 privacy 문제나 윤리와 관련된 문제가 대두되고 있는데, 이를 위해 기존의 정보를 지우는 machine unlearning 이라는 task 가 연구되어왔음
이러한 문제는 continual learning task 에도 적용되기 때문에, 해당 논문에서 CL 에서 MU 를 처음으로 진행하며 Learning with Selective Forgetting (LSF) 를 제안함
Continual learning setting 중 Task-Incremental Learning (TIL)에서 진행되었는데, 아무래도 처음 진행하다보니 최대한 쉽게 task 를 풀기위한 setting 이 아닐까 싶음
Task Setting
- 각 task 마다 데이터가 입력으로 들어오는건 일반적인 continual learning 과 같음
- 다만 입력된 데이터가 다음 task 학습 시 Preservation set 과 Deletion set 으로 나뉘는 다른 점이 있음
- 예시: $\mathcal{D}_{k-1}$ 의 image 에 {1,2,3,4,5,6} 이 있다고 가정
- $k-1$ th task 에선 {1,2,3,4,5,6} 이 모두 학습 데이터로 사용됨
- $\mathcal{D}_k$ 학습이 진행될 때 아래와 같은 세팅으로 진행
- 주어지는 데이터: $\mathcal{D}_k$, Preservation set {1,2,3,4}
- 주어지지 않는 데이터: Deletion set {5,6}
- Method
- Mnemonic Code
- 새로운 task 가 들어오면 각 class 당 한장의 synthetic image 가 생성되어 모든 sample 에 embedding 됨
- mixup 과 유사: $\tilde{\mathbf{x}}_k^i=\lambda \mathbf{x}_k^i+(1-\lambda) \xi_{k, c}$
- Mnemonic code 가 embedding 된 sample 들과 더불어 code 들만을 학습
- 이런 augmentated data 를 통해 학습하는 경우, 같은 mnemonic code 가 embedding 된 sample 들은 feature space 상에서 가까운 곳에 위치함
- 따라서 code 의 사용 유무에 따라 특정 class 를 기억하거나 잊을 수 있음
- Mnemonic code 구현
- Random color patterns
- Data 에 대한 직접적인 정보를 가지고 있지 않음
- 새로운 task 가 들어오면 각 class 당 한장의 synthetic image 가 생성되어 모든 sample 에 embedding 됨
- Loss Function
- $\mathcal{L}=\overbrace{\mathcal{L}_C+\mathcal{L}_M}^{\text {new task }}+\overbrace{\mathcal{L}_{S F}+\mathcal{L}_R}^{\text {previous tasks }}$
- $\mathcal{L}_C=\frac{1}{N_k} \sum_i l\left(\mathbf{x}_k^i, y_k^i\right)$
- $\mathcal{L}_M=\frac{1}{N_k} \sum_i l\left(\tilde{\mathbf{x}}_k^i, y_k^i\right)$
- $\mathcal{L}_{S F}=\gamma_{S F} \sum_{p=1}^{k-1} \frac{1}{N_p} \sum_i l\left(\xi_p^i, y_p^i\right)$
- $\begin{aligned} \mathcal{L}_R & =\mathcal{L}_{\mathrm{LwF}^*}+\mathcal{L}_{\mathrm{EWC}^*} \\ \mathcal{L}_R & =\mathcal{L}_{\mathrm{LwF}^*}+\mathcal{L}_{\mathrm{MAS}}\end{aligned}$
- $\mathcal{L}=\overbrace{\mathcal{L}_C+\mathcal{L}_M}^{\text {new task }}+\overbrace{\mathcal{L}_{S F}+\mathcal{L}_R}^{\text {previous tasks }}$
- Analysis
- Dataset
- P-MNIST: 30 (10/10/10)
- Baseline
- Vanilla
- EWC
- EWC*
- Conclusion
- Mnemonics 를 이용하면 다른건 유지하면서 원하는 것만 delete 할 수 있음
- Dataset
- Experiment
- Backbone
- ResNet-18
- Dataset
- CIFAR-100
- CUB200
- Standford Cars
- Metrics
- $A_k=\frac{1}{k} \sum_{p=1}^k a_{k, p}$: accuracy for the p-th task, after training for k-th task
- Evaluated only for the preservation set
- $F_k=\frac{1}{k} \sum_{p=1}^k f_k^p$: $f_k^p=\max _{l \in 1 \cdots k} a_{l, p}-a_{k, p}$ represents the largest gap from the past to the current accuracy for the p-th task
- Evaluated only for the deletion set
- $S_k=\frac{2 \cdot A_k \cdot F_k}{A_k+F_k}$
- $A_k=\frac{1}{k} \sum_{p=1}^k a_{k, p}$: accuracy for the p-th task, after training for k-th task
- Discussion
TIL 이라는 비교적 쉬운 setting 에서 진행했음에도 불구하고, 간단한 random noise 를 anchor 로 삼아서 기억하려고 하는 능력과 잊으려고 하는 능력을 조절하는 방식이 흥미로웠음
다만 기억하려고 학습하는 것에 비해, 잊으려고 학습하는 것은 다음 task 가 들어오면서 자연스럽게 된다는 것을 가정하는 것처럼 보이는데, 이 부분이 좀 아쉬움
- Reference
[1] Shibata, Takashi, et al. "Learning with Selective Forgetting." IJCAI 2021 [Paper link]
728x90