tracks
신경망을 학습시켜 보셨다면 아마 optimizer.step()을 수천 번은 호출하셨을 겁니다. 해당 호출이 계산된 그래디언트를 사용해 모델 가중치를 업데이트하고 학습 손실을 줄인다는 것쯤은 알고 계시죠. 보통은 거기서 이야기가 끝납니다.
하지만 중첩 학습은 옵티마이저를 다르게 보라고 요구합니다. Adam과 같은 적응형 옵티마이저를 자체적으로 상태가 변화하는 학습 과정으로 해석하죠. 중첩 학습은 Google Research가 NeurIPS 2025 논문 "Nested Learning: The Illusion of Deep Learning Architectures"에서 소개했습니다.
이 글에서는 중첩 학습이 무엇인지, 어떻게 작동하는지, 왜 중요한지, 그리고 Hope 아키텍처가 이를 어떻게 실전에 적용하는지 알아봅니다. Adam이나 SGD로 모델을 학습시켜 본 경험이 있다면 충분히 따라오실 수 있습니다.
요약
- 중첩 학습은 Google Research의 기계 학습 패러다임으로, 모델을 별도의 옵티마이저로 학습하는 하나의 아키텍처가 아닌, 서로 다른 속도로 학습하는 중첩된 최적화 문제들의 집합으로 간주합니다.
- 이는 파국적 망각을 겨냥합니다. 새 데이터로 파인튜닝할 때 기존 지식이 덮여쓰이는 문제로, 지속 학습을 어렵게 만드는 주된 요인입니다.
- 핵심 전환은 아키텍처와 옵티마이저를 동일한 종류의 것으로 보고, 서로 다른 속도로 업데이트되는 학습의 여러 층위로 다루는 것입니다. 이렇게 하면 빠른 구성요소를 통해 새 정보가 유입되더라도 느리고 안정적인 지식이 지워지지 않습니다.
- Hope는 논문의 개념증명 아키텍처로, Continuum Memory System(CMS)과 결합된 자가 수정 Titans 변형입니다. 메모리 모듈이 고정된 단기/장기 분할이 아니라 속도의 연속체에 걸쳐 업데이트됩니다.
- 논문 실험에서 Hope는 언어 모델링과 상식 추론에서 Titans, Samba, 표준 트랜스포머 같은 베이스라인을 앞섰고, 장문맥 검색과 지속 학습에서도 성능을 유지했습니다.
- 아직 초기 단계 연구입니다. 공식 구현이나
pip install패키지는 없고, GitHub의 커뮤니티 재현만 있습니다. 따라서 당장 프로덕션에 쓰기보다는 주목할 방향성으로 보시면 됩니다.
중첩 학습이란?
중첩 학습은 단일 모델을 별도의 옵티마이저가 학습하는 하나의 아키텍처로 보지 않고, 각기 다른 속도로 학습하는 중첩된 최적화 문제들의 집합으로 간주하는 기계 학습 패러다임입니다. 모델의 아키텍처와 학습 알고리즘을 동일 계열의 사물로 재구성해, 동시에 실행되고 적응하는 서로 다른 학습 수준으로 봅니다.
이는 기계 학습 시스템을 서로 다른 시간 스케일에서 작동하는 복수의 학습 수준으로 조직합니다.
- 파라미터 수준은 수천 번의 학습 스텝에 걸쳐 천천히 학습합니다.
- 메모리 수준은 최근 입력에서 어떤 정보를 유지할지 결정합니다.
- 옵티마이저 수준은 그 아래 수준들을 어떻게 업데이트할지 학습합니다.
상위 수준이 하위 수준의 동작에 영향을 줄 수 있기 때문에, 이 구조는 단순 모듈식이 아니라 계층적입니다.
중첩 학습의 핵심 원칙
중첩 학습은 다음 네 가지 핵심 원칙을 따릅니다.
- 아키텍처와 최적화는 동일한 학습 시스템의 일부입니다. 중첩 학습에서는 옵티마이저가 학습 과정의 일부가 되어 시간이 지남에 따라 적응할 수 있습니다.
- 구성요소마다 학습 속도가 다릅니다. 모델의 핵심 파라미터는 수천 개의 예시에 걸쳐 천천히 업데이트되는 반면, 단기 컨텍스트 메커니즘은 매 입력마다 업데이트되고, 메모리 시스템은 그 중간 어딘가에서 업데이트됩니다.
- 깊이는 중첩된 학습 과정에서 나옵니다. 전통적 딥러닝은 레이어를 쌓아 깊이를 만듭니다. 중첩 학습은 파라미터, 메모리 시스템, 옵티마이저, 업데이트 메커니즘 등이 서로 다른 시간 스케일에서 학습하도록 다층의 학습과 적응을 쌓아 깊이를 만듭니다.
- 배포 이후에도 학습이 계속될 수 있습니다. 메모리 시스템과 학습 메커니즘 같은 구성요소는 추론 중에도 계속 적응할 수 있습니다.
중첩 학습 vs 전통적 딥러닝
오랫동안 우리는 딥러닝 아키텍처에 의존해 왔습니다. 데이터가 신경망을 통과하고, 모델의 예측이 얼마나 틀렸는지(손실이라 부름)를 측정한 뒤, 옵티마이저를 실행해 그 오차를 줄이도록 모델 파라미터를 조정합니다.
이를 반복해 모델이 충분히 좋아지면 파라미터를 고정하고 배포합니다. 그때부터 모델은 새 입력에서 학습하지 않고, 데이터 분포 변화에 적응하지 않으며, 사용할수록 좋아지지도 않습니다.
중첩 학습은 이를 바꿉니다. 모델의 파라미터와 함께 메모리 모듈, 옵티마이저, 기타 구성요소도 시간이 지나며 계속 학습합니다.
|
요소 |
전통적 딥러닝 |
중첩 학습 |
|
깊이 |
신경망 레이어를 쌓아 깊이를 만듭니다. |
학습 과정을 다른 학습 과정 안에 중첩해 깊이를 만듭니다. |
|
학습 |
주로 학습 단계에서 일어납니다. |
학습 중에 일어나고 배포 후에도 계속됩니다. |
|
옵티마이저 |
모델 가중치를 업데이트하는 고정 도구입니다. |
스스로 규칙을 학습하고 업데이트할 수 있는 적응형 구성요소입니다. |
|
메모리 |
모델 파라미터와 단기 컨텍스트에 인코딩됩니다. |
여러 수준과 시간 스케일에 걸쳐 존재합니다. |
|
추론 |
모델 가중치가 고정됩니다. |
일부 구성요소는 추론 중에도 계속 적응할 수 있습니다. |
중첩 학습이 중요한 이유
모델은 파라미터를 업데이트하며 새 정보를 학습하지만, 같은 업데이트가 이전에 배운 지식을 덮어쓸 수 있습니다. 이 현상을 파국적 망각이라 합니다.
연구자들은 레이어 동결, EWC 같은 정규화, 리플레이 버퍼 등 기법을 도입해 새 작업을 배우는 동안 기존 지식을 보존해 왔습니다. 하지만 이러한 접근은 망각을 늦추도록 설계되었을 뿐, 학습이 일어나는 방식을 근본적으로 바꾸지는 않습니다.
중첩 학습은 이런 단일 시간 스케일 접근이 지속 학습이 어려운 이유 중 하나라고 주장합니다. 모든 새 정보를 단일 파라미터 집합이 흡수하도록 맡기는 대신, 여러 학습 수준에 적응을 분산합니다.
수준마다 다른 속도로 적응하기 때문에, 오래된 지식을 계속 덮어쓰지 않고도 새 정보를 흡수할 수 있습니다. 이 생각은 부분적으로 인간 인지에서 영감을 얻었습니다. 모든 학습이 같은 속도로 일어나지는 않으니까요.
- 반사는 거의 즉시 적응합니다.
- 단기 기억은 몇 분 또는 몇 시간에 걸쳐 형성됩니다.
- 신념, 습관, 전문성은 몇 달 또는 몇 년에 걸쳐 발달합니다.
중첩 학습의 작동 방식
중첩 학습은 머신러닝 시스템을 여러 수준으로 조직합니다. 각 수준은 고유한 역할과 업데이트 속도를 지닌 독립된 학습 과정입니다. 이들이 어떻게 작동하는지 이해하려면 각 수준을 살펴보고 연결 방식을 보는 것이 도움이 됩니다.

파라미터 수준
파라미터는 신경망 내부의 가중치로, 모델이 학습 데이터에서 배운 내용을 저장합니다. 학습 중에는 옵티마이저가 각 배치 후 계산된 그래디언트로 이 가중치를 업데이트합니다.
각 업데이트는 작아서 의미 있는 변화는 많은 학습 스텝에 걸쳐 점진적으로 일어납니다. 그 결과, 파라미터 수준은 안정적인 장기 지식을 학습하지만 새 정보에는 느리게 적응합니다.
메모리 수준
메모리 수준은 파라미터 수준이 배우기에는 너무 느린 최근 입력의 정보를 포착합니다.
모든 것을 저장하는 대신, 가장 유용한 정보를 유지하고 나머지는 버립니다. 이를 통해 장기 지식을 곧바로 업데이트하지 않고도 새 컨텍스트에 적응할 수 있습니다.
옵티마이저 수준
옵티마이저는 학습 중 모델의 파라미터를 어떻게 업데이트할지 결정합니다. 모델의 예측으로부터 계산된 그래디언트를 사용해 각 업데이트의 크기와 방향을 정합니다.
Adam과 같은 적응형 옵티마이저는 현재 그래디언트만 사용하지 않습니다. 최근 그래디언트를 추적하고 그 이력을 다음 파라미터 업데이트에 활용합니다.
이미 Adam이 이런 일을 하는데, 중첩 학습은 무엇을 더하나요?
차이는 무엇을 학습할 수 있는가에 있습니다. 표준 딥러닝에서는 Adam이 상태를 업데이트하는 규칙이 학습 시작 전에 고정되며 바뀌지 않습니다. Adam은 파라미터에 적응하지만, Adam 자신을 적응시키는 것은 없습니다.
중첩 학습은 옵티마이저 위에 메타 학습 과정을 도입해 옵티마이저의 성능을 평가하고 시간이 지나며 그 규칙을 수정할 수 있게 합니다. 옵티마이저는 고정 인프라가 아니라, 스스로 개선될 수 있는 대상으로 바뀝니다.
수준 간 상호작용
이들 수준은 독립적으로 작동하지 않습니다. 정보가 수준 간에 흐르고, 각 수준은 시간이 지나며 다른 수준의 학습 방식에 영향을 줍니다.
- 파라미터 수준은 학습을 통해 점진적으로 장기 지식을 구축합니다.
- 메모리 수준은 최근 컨텍스트를 제공해 시스템이 새 정보에 더 빠르게 반응하도록 돕습니다.
- 옵티마이저는 파라미터가 어떻게 업데이트되는지를 결정합니다.
이들 수준이 함께 작동해 모델이 단기 적응과 장기 학습 사이의 균형을 잡도록 합니다.
Hope 아키텍처
Hope는 논문의 개념증명 아키텍처로, 중첩 학습이 실제로 작동하는지를 검증하기 위해 Google이 구축한 Titans 아키텍처의 자가 수정 변형입니다. 업데이트 규칙을 스스로 다시 쓸 수 있는 메모리와 Continuum Memory System을 결합해, 학습 이후 동결되지 않고 여러 속도에서 계속 학습할 수 있습니다.
자가 수정 Titans
Titans에는 모델이 놀랍거나 중요한 것으로 간주한 정보를 저장하는 메모리 모듈이 있습니다. 파라미터에만 의존하는 대신, 모델은 이러한 메모리 모듈을 통해 유용한 정보를 앞으로 전달합니다.
Hope는 한 단계 더 나아갑니다. 새 데이터가 들어오면 메모리 모듈이 계속 업데이트됩니다. 시스템은 또한 향후 업데이트에 사용할 규칙을 조정합니다. 그래서 이 아키텍처를 자가 수정이라고 부릅니다.
Continuum Memory System
대부분의 메모리 아키텍처는 메모리를 단기와 장기로 둘로 나눕니다. 정보는 빠른 임시 저장소에 있거나 안정적인 장기 저장소로 통합됩니다. Hope는 이런 이분법을 스펙트럼으로 대체해, 서로 다른 속도로 업데이트되는 연속체의 메모리 모듈을 둡니다.
일부 메모리 구성요소는 빠르게 업데이트되어 최신 정보를 포착합니다. 다른 구성요소는 더 천천히 변하며 오랜 기간 축적된 안정적인 지식을 보존합니다. 즉, 새 정보가 빠르게 업데이트되는 층을 통해 들어오더라도 느리고 더 안정적인 메모리를 즉시 교란하지 않습니다.
Hope의 성능
논문은 언어 모델링, 장문맥 추론, 지속 학습, 지식 통합에서 Hope를 평가했으며, 작업별로 다른 베이스라인과 비교했습니다. 언어 모델링과 상식 추론은 Titans, Samba, 표준 트랜스포머와 비교했고, 장문맥 검색 과제는 Hope와 Titans를 TTT 및 Mamba2와 비교했습니다.
언어 모델링과 상식 추론 벤치마크에서 Hope는 세 가지 베이스라인 모두보다 낮은 퍼플렉서티와 더 높은 정확도를 기록했습니다.

더 의미 있는 결과는 긴 컨텍스트 안에 묻힌 특정 정보를 검색해야 하는 과제에서 나왔습니다. 논문은 난이도를 높여가며 패스 키 검색, 숫자 검색, 가장 어려운 단어 수준 검색을 테스트했습니다. Hope는 모든 변형에서 베이스라인을 앞섰고, 특히 CMS 설계가 장문맥 성능 향상에 기여했습니다.
이 아키텍처는 지속 학습 벤치마크에서도 성능이 좋습니다. 보통 파국적 망각을 유발하는 작업 시퀀스에서 학습했을 때, Hope는 논문에 보고된 비교 모델보다 이전에 학습한 지식을 더 많이 보존했습니다.
중첩 학습 vs 다른 지속 학습 접근
중첩 학습이 파국적 망각을 처음으로 다룬 것은 아닙니다. 수년간 연구자들은 새 작업을 배우면서도 기존 지식을 보존하도록 하는 지속 학습 기법을 제안해 왔습니다. 제안된 접근의 주요 차이를 살펴봅시다.
|
접근법 |
Elastic Weight Consolidation (EWC) |
Progressive Neural Networks |
Experience Replay |
중첩 학습 |
|
핵심 메커니즘 |
이전 작업에 중요했던 가중치의 업데이트를 늦추도록 정규화 항을 추가합니다. |
새 작업마다 전용 네트워크를 추가하고, 이전에 학습된 네트워크와 가로 연결을 둬 지식이 앞으로 전이되도록 합니다. |
이전 작업의 샘플을 저장했다가 학습 중 새 작업과 함께 재생합니다. |
서로 다른 시간 스케일에서 작동하는 여러 상호작용 학습 수준으로 학습을 구성합니다 |
|
망각 방지 방식 |
이전 작업의 가중치를 보존해, 새 작업을 배우면서도 과거 지식을 유지합니다. |
이전 네트워크를 동결해 보관합니다. 새 작업은 자체 네트워크를 가지므로 간섭이 없습니다. |
과거 예시를 현재 학습에 혼합합니다. |
수준이 서로 다른 빈도로 업데이트되어, 새 정보가 빠른 구성요소를 통해 들어오더라도 느린 구성요소의 안정적 지식을 즉시 대체하지 않습니다. |
|
연산 오버헤드 |
낮음~보통 |
높음 |
보통~높음, 리플레이 버퍼 크기에 비례해 증가 |
평가 진행 중 |
|
확장성 |
보통; 시간이 지날수록 더 많은 파라미터를 보호하면 새 작업 학습 능력이 줄어들 수 있습니다. |
제한적, 새 작업마다 모델 크기가 커집니다 |
효과적이지만 리플레이 버퍼 유지가 필요합니다 |
확장을 염두에 두고 설계되었지만 아직 초기 연구 단계입니다. |
|
성숙도 |
정립됨 |
정립됨 |
광범위하게 사용됨 |
초기 단계 연구 |
EWC, Progressive Neural Networks, Experience Replay 같은 방법은 학습 중 망각을 늦추는 신경망 기법입니다. 기본 아키텍처는 대체로 그대로입니다.
중첩 학습은 아키텍처 자체를 재구상해, 여러 수준과 시간 스케일에 걸쳐 학습이 일어나도록 합니다. 빠르게 변하는 메모리는 최근 경험을 처리하고, 더 느리게 변하는 파라미터는 장기 지식을 포착합니다.
중첩 학습의 실전 적용
비공식 커뮤니티 재현이 GitHub에 등장하기 시작해, 연구자가 이 아키텍처를 실험하고 공개된 결과를 재현해 볼 수 있게 되었습니다.
다만, 중첩 학습은 주요 딥러닝 프레임워크에 공식 통합되어 있지 않으며, 단순히 pip install로 설치해 기존 PyTorch나 JAX 프로젝트에 추가할 수 없습니다. 이러한 모델을 구축하고 평가하려면 여전히 연구용 코드로 직접 작업해야 합니다.
그러나 방향성은 커뮤니티 채택에 맞춰져 있습니다. Hope나 Continuum Memory System(CMS) 모듈이 주류 프레임워크에 통합되고 프로덕션 시스템에 도입되는지 주목하세요.
맺음말
중첩 학습은 현대 딥러닝의 핵심 가정 중 하나에 도전합니다. 레이어를 더 쌓아 모델을 더 유능하게 만드는 대신, 서로 다른 시간 스케일에서 작동하는 복수의 학습 과정으로부터 지능이 나타날 수 있는지를 탐구합니다.
이 전환은 최적화에 대한 우리의 생각도 바꿉니다. 전통적 딥러닝은 모델 아키텍처와 학습 알고리즘을 별개 구성요소로 취급합니다. 중첩 학습은 이 둘을 더 가깝게 묶어, 학습 자체를 계층적으로 만들고자 합니다.
아직은 초기 단계입니다. 중첩 학습은 활발한 연구 영역으로, 주류 머신러닝의 일부가 되려면 많은 아이디어가 더 폭넓은 검증을 거쳐야 합니다. 중첩 학습의 배경이 되는 개념(신경망, 최적화, 메모리 메커니즘)을 더 탄탄히 다지고 싶다면, 종합 트랙인 Deep Learning in Python을 확인해 보시기 바랍니다.
중첩 학습 자주 묻는 질문
LLM에서 지속 학습이란 무엇인가요?
LLM에서의 지속 학습은 모델이 이전 지식을 잊지 않으면서 새 데이터로부터 계속 학습하는 능력을 말합니다. 대부분의 LLM은 기본 상태로는 이를 잘해내지 못합니다. 새 정보로 파인튜닝하면 기존 지식을 덮어쓰는 경향이 있습니다. 지속 학습 연구는 이를 해결하는 데 초점을 맞춥니다.
중첩 학습에는 여러 개의 머신러닝 모델이 필요한가요?
반드시 그런 것은 아닙니다. 중첩 학습은 여러 모델을 쓰는 것보다 학습 과제를 여러 수준으로 조직하는 데 더 가깝습니다. 일부 구현은 중첩된 학습 단계나 계층적 표현을 갖춘 단일 모델을 사용하고, 다른 구현은 여러 특화 모델을 결합하기도 합니다.
중첩 학습은 계산 비용이 많이 드나요?
그럴 수 있지만, 항상 크게 증가하는 것은 아닙니다. 추가 비용은 모델의 일반적인 학습과 병행해 상위 학습 과정을 유지하고 업데이트하는 데서 발생합니다. Hope 같은 최신 중첩 학습 아키텍처는 효율성을 염두에 두고 설계되어 많은 연구 환경에서 실용적입니다. 하지만 프로덕션에 중첩 학습을 배치하는 문제는 아직 열려 있습니다.
언제 중첩 학습 사용을 피해야 하나요?
데이터 분포가 변하지 않고 고정된 벤치마크에서 강한 성능만 필요하다면, 중첩 학습은 큰 보상 없이 복잡도만 높일 수 있습니다. 해석 가능성이 매우 중요한 경우에도 피하는 것이 좋습니다. 학습 과정이 스스로를 더 많이 적응할수록, 모델이 실제로 무엇을 왜 하는지 설명하기가 어려워집니다.
중첩 학습과 전이 학습 중 무엇을 선택해야 하나요?
두 방식은 서로 다른 문제를 풉니다. 전이 학습은 한 영역에서 배운 것을 다른 영역에 적용하는 것으로, 일회성 적응입니다. 중첩 학습은 새 정보가 도착할 때마다 시간이 지남에 따라 계속 적응하는 시스템을 만드는 것입니다. 목표 작업이 고정돼 있다면 전이 학습이 더 간단하고 대개 충분합니다. 환경이 동적이고 모델이 최신 상태를 유지해야 한다면 중첩 학습이 더 적절합니다.