Sparse Autoencoders Can Induce Local Geometry for Mitigating Catastrophic Forgetting
0. Summary
- 기본 정보 : ArXiv,2026.10.15, Sparse Autoencoders Can Induce Local Geometry for Mitigating Catastrophic Forgetting
- 연구 배경 : 치명적 망각(Catastrophic forgetting)은 지도 연속학습에서 핵심 난제이며, 이를 모델 내부 표현 공간에서 해결하고자 하는 연구 중, 이전 테스크의 특징 공간의 기하 구조가 후속 테스크를 학습함에 따라 기하 구조가 변해 기존의 분류기(readout)을 사용할 수 없게 되는데, 이를 위해 이전 특징 공간의 분류 헤드에서 뽑은 활성화 값을 보존하는 접근법으로 이어졌으나, 이는 대부분 전역(global) 부분공간 하나를 정의하기 때문에, 국소(local) 기하 구조로 표현 드리프트를 선택적으로 제어할 수 있는 연구는 아직 열려있다.
- 발견 사실 : SAE가 단순한 잠재 피처 공간으로서뿐 아니라, 백본 드리프트에 대한 샘플별 기하 제약의 원천(특징 벡터가 어느 방향으로 움직이면 안되는지 알려주는 도구)으로도 쓰일 수 있음을 보여준다. 이 제약은 원하는 랭크로 압축(중요한 활성값만 유지)할 수 있으며 리플레이 감독 신호와 결합할 수 있다(이전 테스크를 활용할 수 있다).
- 핵심 기여 :
- SAGA 방법론 구축 : 태스크가 끝날 때마다 SAE를 학습시켜, 이미지마다 “움직이면 안 되는 방향”을 뽑아 두고 이후 학습에서 그 방향으로의 드리프트에 벌점을 주는 SAGA를 제안
- 이론 분석 : 방법은 특정 조건에서 SAE 코드 매칭과 같아지고 압축 오차와 옛 분류기 출력 변화에 상한이 있지만, SAE가 놓친 중요한 방향이 있으면 효과가 떨어진다는 것을 보임
- 폭넓은 실험 : 사전학습 모델에서는 기존 방법들보다 확실히 좋았지만, 스크래치 학습에서는 이기지 못했고 SAE 방향이 PCA나 랜덤 방향보다 항상 낫지도 않다는 점을 함께 보여줌
관련 개념
치명적 망각(Catastrophic Forgetting)
치명적 망각(Catastrophic Forgetting)은 신경망이 새로운 태스크를 순차적으로 학습할 때, 이전에 배운 태스크의 성능이 급격히 무너지는 현상입니다. 인간은 자전거 타는 법을 배운 뒤 수영을 배워도 자전거를 잊지 않지만, 하나의 가중치 집합을 공유하는 신경망은 새 태스크의 손실을 줄이는 방향으로 가중치를 갱신하면서 이전 태스크에 필요했던 가중치 구조를 덮어써 버립니다.
🧠 1. 왜 일어나는가: 하나의 파라미터를 모두가 공유하기 때문
| 관점 | 설명 |
|---|---|
| 파라미터 공유 | 태스크 1과 태스크 2가 같은 백본 가중치 $\theta$를 씁니다. 태스크 2의 경사 하강은 태스크 1의 손실을 전혀 고려하지 않습니다. |
| 데이터 접근 불가 | 전형적인 연속학습에서는 이전 태스크의 데이터를 다시 볼 수 없거나, 아주 작은 버퍼만 허용됩니다. |
| 표현 공간의 변형 | 가중치가 바뀌면 특징 벡터 $f_\theta(x)$ 자체가 움직이고, 옛 분류기가 기대하던 위치에 더 이상 특징이 존재하지 않게 됩니다. |
🛠️ 2. 전통적인 완화 전략 (논문 Related Work 기준)
| 계열 | 대표 방법 | 핵심 아이디어 |
|---|---|---|
| 리허설(Rehearsal) | ER, DER++, ER-ACE | 과거 샘플 일부를 버퍼에 저장해 두고 새 데이터와 섞어 재학습 |
| 정규화(Regularization) | EWC | 이전 태스크에 중요한 가중치가 움직이면 벌점을 부여 |
| 증류(Distillation) | LwF, PODNet | 옛 모델의 출력이나 중간 표현을 교사 신호로 삼아 유지 |
| 표현 보존 | LUCIR, Backward Feature Projection | 특징 방향·선형 분리 가능성 등 표현 공간의 구조를 보존 |
📏 3. 논문에서 망각을 측정하는 방법
논문은 Mammoth 프레임워크의 표준 지표를 사용합니다.
- 최종 평균 정확도(Final mean accuracy): 마지막 태스크까지 학습한 뒤, 지금까지 본 모든 클래스에 대한 정확도의 평균
- 망각(Forgetting): 각 태스크가 최고 정확도를 찍었던 시점과 학습 종료 시점의 정확도 차이를 평균한 값. 값이 클수록 많이 잊은 것입니다.
💡 Key Takeaway 이 논문은 망각을 “가중치가 망가졌다”가 아니라 “특징 공간의 기하 구조가 바뀌어 옛 정보에 접근할 수 없게 되었다”는 표현 수준(representation-level)의 문제로 바라봅니다. 그래서 가중치 대신 표현 벡터가 어떤 방향으로 움직이는지를 직접 제약합니다.
지도 연속학습(Supervised Continual Learning)
연속학습(Continual Learning)은 모델이 데이터 스트림을 순서대로 받아가며 여러 태스크를 하나씩 학습하되, 전체 데이터를 한꺼번에 다시 학습하지 않는 설정입니다. 여기에 “지도(Supervised)”가 붙으면 각 태스크가 레이블이 있는 분류 문제라는 뜻입니다.
📚 1. 논문의 구체적 설정: 클래스 증분 학습(Class-IL)
연속학습 시나리오는 테스트 시점에 어떤 정보가 주어지느냐에 따라 난이도가 갈립니다.
| 시나리오 | 테스트 시 태스크 ID | 분류 대상 | 난이도 |
|---|---|---|---|
| Task-IL | 주어짐 | 해당 태스크 안의 클래스만 구분 | 낮음 (논문에서는 보조 진단용) |
| Class-IL | 주어지지 않음 | 지금까지 본 모든 클래스 중 하나를 골라야 함 | 높음 (논문의 주 시나리오) |
Class-IL이 어려운 이유는 단순히 특징을 보존하는 것만으로는 부족하고, 새 클래스와 옛 클래스가 하나의 분류기 안에서 경쟁하기 때문입니다. 논문이 “앵커링만으로는 Class-IL에서 부족한 분류기 감독 신호를 리플레이가 보충한다”고 말하는 배경입니다.
🗂️ 2. 논문에서 사용한 벤치마크
| 데이터셋 | 클래스 | 태스크 구성 | 백본 |
|---|---|---|---|
| CIFAR-100 | 100 | 10 태스크 × 10 클래스 | ResNet-18(스크래치, 32×32) / ViT-B/16(사전학습, 224×224) |
| TinyImageNet | 200 | 10 태스크 × 20 클래스 | ResNet-18(스크래치) |
| CUB-200 | 200 | 10 태스크 × 20 클래스 | ViT-B/16(사전학습) |
| ImageNet-R | 200 | 10 태스크 × 20 클래스 | ViT-B/16(사전학습) |
클래스는 데이터셋의 원래 순서대로 태스크에 배정되고(순열 없음), 모든 리허설 기반 방법은 버퍼 크기 500(TinyImageNet은 5120)을 동일하게 씁니다.
⚖️ 3. 사전학습 vs 스크래치 학습이 중요한 이유
논문의 결론은 두 체제에서 갈립니다.
- 사전학습 ViT-B/16: SAGA가 세 벤치마크 모두에서 가장 높은 정확도와 가장 낮은 망각을 기록
- 스크래치 ResNet-18: ER보다는 좋지만, DER++나 ER-ACE가 더 높은 최종 정확도를 얻음
저자들은 이것이 “이미 좋은 표현을 가진 사전학습 모델을 적응시킬 때 앵커링이 특히 유용하다”는 가설과 일치하지만, 아키텍처·데이터·초기화가 함께 달라지므로 사전학습 자체가 원인이라고 단정하지는 않습니다.
표현 드리프트(Representation Drift)
표현 드리프트(Representation Drift)는 같은 입력 $x$에 대해 백본이 만들어내는 특징 벡터가 학습이 진행되면서 이동하는 현상입니다. 입력은 그대로인데 모델이 바뀌니 특징이 움직이는 것이죠.
📐 1. 논문의 정의: 드리프트 벡터 $\delta$
태스크 $s$를 마친 시점의 백본 파라미터를 $\theta_s$, 그때 저장해 둔 특징을 $h_s(x) = f_{\theta_s}(x)$라 하면, 이후 학습 중 파라미터 $\theta$에서의 드리프트는 다음과 같습니다.
\[\delta_s(x;\theta) = f_\theta(x) - h_s(x)\]즉 “옛 특징에서 현재 특징까지의 변위 벡터”입니다. 이 벡터가 길다고 무조건 나쁜 것은 아닙니다. 핵심 질문은 어느 방향으로 움직였느냐입니다.
🔍 2. 드리프트는 “정보 손실”이 아니라 “접근성 손실”일 수 있다
논문이 인용한 선행 진단 연구(Davari et al. 2022; Filus et al. 2026; Masip et al. 2026)의 공통된 관찰입니다.
| 해석 | 의미 | 함의 |
|---|---|---|
| 정보 손실(Lost) | 옛 태스크를 구분할 정보가 특징에서 완전히 사라짐 | 복구 불가 |
| 접근성 손실(Hidden) | 정보는 남아 있지만 옛 분류기가 읽을 수 없는 방향으로 이동함 | 선형 프로브로 다시 읽어낼 수 있음 |
특히 드리프트의 상당 부분이 근사적으로 선형이라는 관찰은, 드리프트를 이차 형식(quadratic form) $\delta^\top Q \delta$로 벌점 매기는 SAGA의 설계와 잘 맞습니다.
🎯 3. SAGA가 드리프트를 다루는 방식
모든 방향의 드리프트를 똑같이 막으면(예: $|\delta|^2$ 벌점) 가소성이 죽습니다. SAGA는 대신 방향마다 다른 가중치를 줍니다.
\[G_{s,r}(x;\theta) = \|\Sigma_{s,r}(x)V_{s,r}(x)^\top \delta_s(x;\theta)\|_2^2 = \delta^\top Q_{s,r}(x)\,\delta\]- $V_{s,r}(x)$: 이 샘플에서 SAE 인코더가 민감하게 반응하는 상위 $r$개 방향
- $\Sigma_{s,r}(x)$: 그 방향의 민감도(특이값)
- 이 방향으로의 드리프트는 크게 벌점을 받고, 그 외 방향(널 공간)은 자유롭게 움직일 수 있습니다.
💡 Key Takeaway 드리프트 자체를 없애는 것이 아니라, “옛 SAE가 보기에 의미 있는 변화”만 선택적으로 억제하는 것이 이 논문의 핵심 아이디어입니다.
가소성(Plasticity)
가소성(Plasticity)은 모델이 새로운 태스크를 받아들여 잘 학습할 수 있는 능력입니다. 반대편에는 안정성(Stability), 즉 옛 지식을 유지하는 능력이 있고, 둘은 서로 당깁니다. 이것이 안정성–가소성 딜레마(Stability–Plasticity Dilemma)입니다.
⚖️ 1. 딜레마의 양 극단
| 극단 | 무슨 일이 일어나나 | 결과 |
|---|---|---|
| 가소성 100% | 아무 제약 없이 새 태스크만 학습 (논문의 SGD 베이스라인) | Class-IL 정확도 약 9%, 망각 90% 이상 |
| 안정성 100% | 백본을 완전히 동결 | 새 태스크를 전혀 못 배움 |
논문의 SGD 결과가 이 딜레마를 극명하게 보여줍니다. CIFAR-100(ViT)에서 SGD는 정확도 9.78%, 망각 93.77%로 가장 최근 태스크만 기억합니다.
🎛️ 2. SAGA에서 가소성을 조절하는 손잡이들
| 손잡이 | 역할 | 가소성에 미치는 영향 |
|---|---|---|
| 앵커 계수 $\lambda$ | 기하 벌점의 전체 세기 | 클수록 안정성↑ 가소성↓ (데이터셋별로 0.3~3.0으로 튜닝) |
| 랭크 $r$ | 보호하는 방향의 개수 | 작을수록 널 공간이 커져 자유롭게 움직일 방향이 많아짐 |
| 샘플 의존 기하 | 샘플마다 보호 방향이 다름 | 전역 부분공간보다 불필요한 제약이 적음 |
📊 3. 랭크 절제 실험이 말해주는 것
논문 Table 5는 $K=64$인 TopK SAE에서 $r \in {4, 8, 16, 32, 64}$를 바꿔가며 측정했습니다(벌점 세기는 정규화해 고정).
- $r=4$만 보호해도 CIFAR-100 Class-IL 정확도 75.55%로, $r=64$(79.45%)에 크게 뒤지지 않음
- Task-IL 정확도는 랭크에 거의 둔감(97.4~97.5%)
즉 아주 적은 방향만 묶어 두어도 충분한 안정성을 확보하면서 나머지 차원은 가소성에 내줄 수 있다는 뜻입니다. 저자들은 이것을 “SAE 유도 기하가 상당히 저랭크로 압축 가능하다”고 요약합니다.
💡 Key Takeaway 논문 5.4절의 결론처럼, 랜덤·PCA·분류기 SVD·SAE-Jacobian 기하는 서로 우열이 고정된 것이 아니라 서로 다른 안정성–가소성 동작점(operating point)을 차지합니다.
분류기(Readout)
리드아웃(Readout)은 백본이 만든 특징 벡터 $h \in \mathbb{R}^d$를 받아 클래스 로짓으로 바꾸는 마지막 선형(또는 얕은) 층입니다. 해석 가능성 연구에서는 “표현 안의 정보를 읽어내는 장치”라는 의미로 이 용어를 씁니다.
🔌 1. 백본과 리드아웃의 역할 분담
| 구성 요소 | 수식 | 역할 |
|---|---|---|
| 백본 | $h = f_\theta(x)$ | 입력을 $d$차원 특징 공간으로 사상 |
| 리드아웃 | $g_s(h) = A_s h + b_s$ | 특징을 태스크 $s$의 클래스 점수로 변환 |
리드아웃은 특징 공간의 특정 방향($A_s$의 행 공간)만 바라봅니다. 그 방향으로 특징이 움직이면 로짓이 바뀌고, 수직인 방향으로 움직이면 로짓은 그대로입니다.
💥 2. 왜 드리프트가 옛 리드아웃을 망가뜨리나
옛 리드아웃 $g_s$를 동결하고, 특징이 $h_0$에서 $h_0+\delta$로 움직였다고 합시다. 논문의 식 (12)는 로짓 변화를 다음과 같이 상한합니다.
\[\|g_s(h_0+\delta) - g_s(h_0)\|_2 \le \alpha_{s,r}\sqrt{\delta^\top Q_r \delta} + \beta_{s,r}\|\delta\|_2 + \tfrac{L_g}{2}\|\delta\|_2^2\]| 항 | 의미 |
|---|---|
| $\alpha_{s,r}\sqrt{\delta^\top Q_r\delta}$ | 보호된 부분공간 안의 드리프트. SAGA의 벌점이 직접 억제하는 부분 |
| $\beta_{s,r}|\delta|_2$ | 누설(leakage) 항. 옛 리드아웃이 민감하지만 SAE가 보호하지 않은 방향의 드리프트 |
| $\tfrac{L_g}{2}|\delta|^2$ | 리드아웃이 비선형일 때의 2차 오차 |
여기서 $\beta_{s,r} = |A_s(I - P_r)|_{op}$, 즉 리드아웃 민감도 중 보호 부분공간 밖으로 새는 양입니다. 이 값이 크면 아무리 앵커를 잘 지켜도 옛 리드아웃은 깨집니다. 논문이 “SAE가 놓친 중요한 방향이 있으면 효과가 떨어진다”고 솔직하게 명시한 이유입니다.
🔁 3. 동결 리드아웃 vs 살아 있는 Class-IL 분류기
위 상한은 동결된 옛 리드아웃에 대한 조건부 진술입니다. 실제 Class-IL 실험에서는 분류기가 계속 학습되고 새 클래스가 추가되므로, 표현이 옛 리드아웃과 호환되더라도 분류기 파라미터 드리프트와 새 클래스와의 경쟁으로 로짓이 바뀔 수 있습니다. 논문은 이 간극을 리플레이 교차 엔트로피로 메웁니다.
전역 부분공간과 국소 부분공간
표현 공간을 보존하는 방법들은 대부분 “어떤 방향을 지킬 것인가”를 정하는 문제로 귀결됩니다. 이때 그 방향을 모든 샘플에 공통으로 하나 정하느냐, 샘플마다 다르게 정하느냐가 전역과 국소를 가릅니다.
🌐 1. 전역 부분공간(Global Subspace)
| 방법 | 부분공간의 출처 | 특징 |
|---|---|---|
| GPM (Saha et al. 2021) | 이전 태스크 활성화의 주성분 | 경사를 이 부분공간에 직교하게 투영 |
| Row-space 정규화 (Yamashita et al. 2026) | 이전 태스크 분류기 가중치의 행 공간 | 분류기가 보는 방향을 보존 |
| PCA / 분류기 SVD (논문의 대조군) | 저장된 표현 전체 또는 분류기 행렬의 SVD | 모든 샘플에 동일한 $V_r$ 적용 |
장점은 단순하고 메모리가 적다는 것. 단점은 샘플마다 중요한 방향이 다를 때 평균적으로만 맞는 방향을 지키게 된다는 점입니다.
📍 2. 국소 기하(Local Geometry): SAE 인코더 야코비안
SAGA는 저장된 샘플 $x$마다 SAE 인코더의 야코비안을 특이값 분해합니다.
\[J_s(x) = J_{E_s}(h_s(x)) = U_s(x)\Sigma_s(x)V_s(x)^\top\]TopK SAE $E(h) = \text{TopK}(\text{ReLU}(Wh+b))$에서는 활성 지원(support) $S(h_0)$이 고정된 셀 안에서 야코비안이 정확히 $J_E(h_0) = M_{S(h_0)}W$입니다. 즉 “이 샘플에서 활성화된 $K$개 SAE 피처에 해당하는 인코더 행”입니다.
| 비교 항목 | 전역 부분공간 | SAE 국소 기하 |
|---|---|---|
| 보호 방향 | 모든 샘플에 동일 | 샘플마다 다름 (활성 피처가 입력에 따라 바뀜) |
| 널 공간 | 공유된 $d-r$차원 | 앵커마다 다른 $d-r$차원 (공유될 필요 없음) |
| 메모리 | 행렬 하나 | 샘플마다 $V_{s,r}, \Sigma_{s,r}$ 저장 (SAE 자체는 버려도 됨) |
🧪 3. 실험이 보여준 “국소가 항상 이기지는 않는다”
논문 Table 6(정규화된 벌점, 사전학습 ViT)의 결과입니다.
| 데이터셋 | 최고 기하 | 비고 |
|---|---|---|
| CUB-200 | SAE Jacobian | 정확도 최고, 망각 최저 |
| ImageNet-R | SAE ≈ PCA ≈ Random | PCA와 차이 0.07pt로 표준편차 이내 |
| CIFAR-100 | Classifier SVD | 전역 분류기 기하가 더 좋음 |
💡 Key Takeaway 저자들은 이를 “국소 SAE 기하는 유용한 선택지이지, 전역 부분공간 구성을 대체하는 만능 해법이 아니다”라고 정리합니다. 중요한 것은 선택지가 하나 더 생겼고, 그것이 샘플 의존적이라는 점입니다.
저랭크 제약(Low-rank Constraints)
저랭크 제약은 $d$차원 특징 공간 전체가 아니라 소수의 $r$개 방향에만 벌점을 거는 것입니다. SAGA에서는 야코비안 SVD의 상위 $r$개 우특이벡터만 남기는 스펙트럼 절단(spectral truncation)으로 구현됩니다.
✂️ 1. 전체 기하에서 절단된 기하로
| 단계 | 수식 | 설명 |
|---|---|---|
| 전체 풀백 반계량 | $Q_s(h) = J_{E_s}(h)^\top J_{E_s}(h)$ | SAE 잠재 공간의 유클리드 거리를 표현 공간으로 끌어온 이차 형식 |
| 랭크 $r$ 절단 | $Q_{s,r}(x) = V_{s,r}\Sigma_{s,r}^2 V_{s,r}^\top \succeq 0$ | 상위 $r$개 특이 방향만 유지 |
| 절단 오차 상한 | $0 \le \delta^\top(Q - Q_r)\delta \le \sigma_{r+1}^2|\delta|_2^2$ | 버려진 가장 큰 특이값의 제곱만큼만 손해 |
스펙트럼 절단은 연산자 노름과 프로베니우스 노름 모두에서 최적의 랭크 $r$ 근사이므로, 버려진 부분이 얼마나 되는지 $\sigma_{r+1}$ 하나로 통제됩니다. 또한 $\dim\ker Q_r \ge d - r$이므로 최소 $d-r$차원은 아무 벌점 없이 자유입니다.
🔗 2. 잠재 코드 매칭과의 관계
랭크를 전부 유지하고 활성 지원이 바뀌지 않는 범위($h_0 + \tau\delta$, $0 \le \tau \le 1$)에서는
\[E(h_0+\delta) - E(h_0) = J_E(h_0)\,\delta\]가 정확히 성립합니다. 따라서 전체 랭크 야코비안 에너지는 SAE 잠재 코드의 변위 에너지와 같습니다. 즉 “SAE 활성값을 그대로 맞추라”는 Latent 베이스라인은 SAGA의 $r = K$ 특수 경우에 해당합니다(단, 구현된 손실은 $L_{latent} = r \cdot L_{Jac}$로 스케일이 다릅니다).
💾 3. 저랭크가 주는 실용적 이점
- 메모리: 샘플당 $d \times r$ 행렬과 $r$개 가중치만 저장. SAE 인코더 전체는 버릴 수 있음
- 가소성: 보호하는 방향이 적을수록 새 태스크가 쓸 수 있는 차원이 많아짐
- 실험적 근거: $r=4$로도 CIFAR-100에서 75.55% (vs $r=64$에서 79.45%) 유지
⚠️ 논문의 주의점 랭크 $r$을 바꾸면 손실이 $r$개 방향에 대한 평균이므로 실질 벌점 세기도 바뀝니다. 그래서 랭크 비교 실험에서는 각 앵커의 가중치를 단위 평균 제곱으로 정규화해 세기를 고정했습니다. 이 정규화는 $\delta^\top Q_r\delta / \text{tr}\,Q_r$ 형태로, 기하의 방향과 상대 스펙트럼 비중은 유지하면서 전체 트레이스만 맞춥니다.
리플레이 손실(Replay Loss)
리플레이(Replay) / 경험 재생(Experience Replay)은 과거 샘플 일부를 버퍼에 저장해 두었다가 새 태스크 학습 시 함께 학습시키는 가장 단순하면서 강력한 망각 완화 전략입니다. SAGA에서 리플레이는 기하 앵커가 채우지 못하는 분류기 감독 신호를 공급합니다.
🧩 1. SAGA의 전체 목적 함수
\[\mathcal{L} = \mathcal{L}_{\text{stream CE}} + \lambda\,\mathcal{L}^{impl}_{\text{anchor}} + \rho\,\mathcal{L}_{\text{snapshot CE}}\]| 항 | 데이터 출처 | 역할 |
|---|---|---|
| $\mathcal{L}_{\text{stream CE}}$ | 현재 태스크 스트림 | 새 태스크 학습 (가소성) |
| $\lambda\,\mathcal{L}_{\text{anchor}}$ | 스냅샷 저장 특징 + 야코비안 인자 | 표현 드리프트 억제 (기하적 기억) |
| $\rho\,\mathcal{L}_{\text{snapshot CE}}$ | 최신 동결 스냅샷의 이미지와 레이블 | 옛 클래스에 대한 분류기 학습 (리플레이) |
Replay를 끄면 $\rho = 0$입니다. 중요한 세부: 리플레이 교차 엔트로피는 살아 있는 리저버(reservoir) 버퍼가 아니라 최근 태스크 경계에서 동결된 스냅샷에서 미니배치를 뽑습니다. 앵커 비교 시 옛 특징과 현재 특징이 같은 입력 뷰를 가리키도록 저장 이미지의 전처리도 결정적으로 고정합니다.
🗃️ 2. 스냅샷과 히스토리(History)
| 구성 | 유지하는 것 | 효과 |
|---|---|---|
| Vanilla | 최신 스냅샷 하나 | 이미 드리프트한 표현에 다시 맞춘 SAE가 옛 제약을 덮어씀 |
| History | 모든 태스크 경계의 스냅샷 (이미지 + 옛 특징 + 앵커 인자) | 옛 제약이 보존됨. 손실은 스냅샷 평균으로 묶어 스케일 유지 |
히스토리는 완료된 태스크 수에 비례해 보조 메모리와 계산이 늘어납니다. 그래서 저자들은 ER, DER++, ER-ACE와의 비교가 동일 총 메모리 비교가 아님을 명시합니다.
📈 3. 절제 실험: 왜 셋을 합쳐야 하나
논문 Table 1(사전학습 ViT, CIFAR-100 Class-IL)의 Jacobian 계열 결과입니다.
| 구성 | 정확도 | 망각 |
|---|---|---|
| Vanilla Jacobian | 27.57 | 78.69 |
| Jacobian + History | 51.37 | 52.12 |
| Jacobian + Replay | 72.31 | 28.49 |
| SAGA (Jacobian + Replay + History) | 76.01 | 24.24 |
- 앵커만 있으면 표현은 지켜도 분류기가 옛 클래스를 잊어 Class-IL 정확도가 낮음
- 리플레이가 가장 큰 도약을 만들고, 히스토리가 그 위에 추가 이득을 더함
- 다섯 설정 모두에서 Replay + History가 Replay 단독보다 정확도와 망각 양쪽에서 좋았음
🆚 4. 리플레이 기반 베이스라인과의 비교
| 방법 | 리플레이에 더하는 것 | CIFAR-100(ViT) 정확도 |
|---|---|---|
| ER | 없음 (버퍼 CE만) | 45.61 |
| DER++ | 옛 로짓 증류 | 57.18 |
| ER-ACE | 비대칭 CE (새/옛 클래스 분리) | 63.86 |
| SAGA | SAE 야코비안 기하 앵커 + 히스토리 | 76.01 |
💡 Key Takeaway 리플레이는 “어디를(where)” 지킬지 정하는 공간적 기억이고, 야코비안 인자는 “무엇을(which)” 지킬지 정하는 방향적 기억입니다. SAGA는 이 둘을 분리해 저장하고, 리플레이 CE로 분류기 감독까지 더해 Class-IL에서 작동하게 만듭니다.