최근 Google은 새로운 신경망 아키텍처인 Titans를 발표했습니다. 기존 Transformer 모델의 한계를 넘어, 인간과 유사한 기억력을 갖추도록 설계된 혁신적인 접근 방식을 제안하며, 긴 문맥 데이터를 효과적으로 처리할 수 있는 새로운 방법을 제공합니다. 특히, Titans는 장기 기억(long-term memory)과 단기 기억(short-term memory)을 효과적으로 통합하여 대규모 데이터 처리와 정보 활용에서 기존 모델보다 뛰어난 성능을 보여줍니다.
이에 관한 더 자세한 내용은 구글에서 발표한 논문 "Titans: Learning to Memorize at Test Time"을 참고하면 좋을 것 같습니다.
✅ Transformer에서 Titans로
Transformer는 현대 인공지능의 핵심 기술로, 입력 데이터의 각 부분이 서로 어떤 관계를 가지고 있는지를 정밀하게 분석할 수 있는 강력한 모델입니다. 특히 번역, 생성과 같은 작업에서 뛰어난 성능을 보여주며 AI 모델의 근본이라고 할 수 있죠. Transformer의 핵심 원리인 어텐션(attention) 매커니즘은 입력 데이터의 중요 요소를 비교하고 그 관계를 계산하여 특정 정보에 초점을 맞추는 방식으로 작동합니다. (이 매커니즘 관련 논문은 Paper review에 해놨슴미다) 그러나 Transformer에는 근본적인 한계가 존재합니다.
📍 Transformer의 한계
Transformer는 한 번에 처리할 수 있는 데이터의 길이에 제한이 있습니다. 이는 '컨텍스트 윈도우(Context Window)' 크기라고 불리는 값에 의해 결정됩니다. 이 제한은 데이터가 길어질수록 과거 데이터를 효과적으로 활용하기 어렵게 만듭니다. 예를 들어, 긴 문맥을 분석하거나 시계열 데이터와 같은 시간 순서의 데이터 처리는 Transformer에서 매우 비효율적일 수 있습니다. 이는 데이터 길이가 증가함에 따라 어텐션 메커니즘의 연산량이 비례적으로 증가하고, 메모리와 계산 시간이 급격히 늘어나기 때문입니다.
또한, Transformer는 길이 예측 문제(Length Extrapolation)에도 취약합니다. 이 문제는 모델이 훈련 데이터에서 본 적 없는 길이의 데이터를 처리하는 데 어려움을 겪는 것을 의미합니다. 기존의 순환 신경망(RNN)이나 LSTM 모델도 이 문제를 해결하지 못했으며, Transformer 역시 데이터의 과거 정보를 효율적으로 저장하고 활용하지 못하는 한계를 드러냈습니다.
📍 Titans의 의의는?
Titans가 이 한계를 해결하기 위한 실마리를 제공한 것입니다. Titans는 Transformer의 컨텍스트 윈도우 제한을 넘어, 긴 문맥 데이터를 효율적으로 처리하고 기억하는 AI 모델의 새로운 가능성을 제시합니다. 이로 인해 AI 모델은 보다 복잡한 데이터 구조와 장기간의 문맥적 관계를 다룰 수 있게 되었으며, 긴 데이터 처리 및 정보 손실 문제를 해결할 수 있는 기반을 마련했습니다. 쉽게 생각해 보자면, 학생이 시험 중에 과거에 작성했던 노트를 참조하는 방식과 유사하지 않을까 합니다.
✅ Titans 주요 기술
Titans는 인간 뇌의 기억 메커니즘에서 영감을 받아 설계된 신경망 구조로 데이터의 짧은 기억(단기)과 오래 기억하는 메커니즘(장기)을 결합하여 데이터를 처리합니다. 그래서 과거 정보와 현재 정보를 효율적으로 연결할 수 있으며, 중요한 정보를 장기적으로 저장하여 다양한 작업에서 뛰어난 성능을 발휘하게 됩니다.
📍 단기 기억(Core)
Titans의 단기 기억 모듈은 현재 입력된 데이터를 바로 처리하는 데 집중합니다. 기존 Transformer 모델의 어텐션 메커니즘을 활용해 입력 데이터 내에서 각 요소를 비교하고 관계를 계산합니다. 하지만 단기 기억은 한 번에 처리할 수 있는 데이터의 길이에 제한이 있어, 과거 데이터를 길게 기억하지는 못합니다.
📍 장기 기억(Long-term Memory)
Titans의 장기 기억 모듈은 단기 기억의 한계를 보완합니다. 이 모듈은 과거 입력 데이터의 중요한 정보를 요약하여 기억하고 새로운 데이터가 들어올 때마다 업데이트합니다. 특히, Titans는 'Surprise(놀라움)' 지표를 활용하여, 이전 데이터와 비교했을 때 얼마나 새로운 정보가 포함되어 있는지를 판단합니다. 이를 통해 입력 데이터에서 중요한 변화를 자동으로 감지하고 기존 정보와 결합해 더욱 깊은 이해를 제공합니다.
이러한 설계는 기존 AI가 놓칠 수 있었던 중요한 데이터 요소를 장기적으로 보존할 수 있도록 하여, 긴 문맥 데이터를 처리하는 데 강력한 성능을 발휘하게 합니다. 또한, 지속적 메모리 모듈을 추가하여 특정 작업과 관련된 핵심 정보를 장기간 유지합니다. 예를 들어, 한 번 학습한 특정 데이터 패턴이나 작업의 특징적인 정보를 저장하고, 이후 동일한 작업에 이를 재사용할 수 있습니다. 이러한 기능은 모델의 작업 효율성을 높이고, 불필요한 데이터 재학습을 줄이는 데 기여할 것입니다.
📍 Surprise 지표를 이용한 효율적 메모리 관리
새로운 데이터를 처리할 때 중요한 정보와 그렇지 않은 정보를 구분하기 위해 Surprise 지표를 활용합니다. 이 지표는 예상치 못한 새로운 데이터나 이벤트가 발생할 때 이를 더 효과적으로 기억하는 동시에 덜 중요한 정보는 자연스럽게 잊도록 합니다. 쉽게 말하면... 새롭게 들어온 데이터가 이전에 모델이 보았던 데이터와 얼마나 다른지를 측정하는 방식?이랄까? 우리의 기억 체계 진짜 유사한 방식으로 메모리를 관리하는 것 같습니다.
구체적으로, 입력 데이터가 모델 내부에서 발생시키는 Gradient 크기를 기반으로 데이터를 평가합니다. 그래디언트는 모델이 입력 데이터와 기존 데이터를 비교하여 얼마나 큰 변화를 나타내는지를 나타내기 때문에 그래디언트가 클수록 새 데이터가 더 놀라운 것으로 간주됩니다. 그러나 단순히 놀라움 지표만 사용하면 특정 순간에 큰 변화가 발생한 이후의 데이터를 충분히 평가하지 못할 수도 있기 때문에 계산된 놀라움 값(과거 놀라움)과 새로 들어온 데이터에서 발생한 값(순간적 놀라움)을 결합하여, 시간이 따라 변화하는 데이터의 중요도를 반영합니다.
✅ Titans 메모리 연결 아키텍처
📍 컨텍스트로서의 메모리 (MAC, Memory as Context)
MAC 방식은 과거 데이터를 현재 컨텍스트에 통합하여 긴 문맥 데이터를 다룰 수 있도록 설계되었습니다. 입력 데이터가 일정한 크기의 segment으로 나뉘며, 각 segment는 ‘현재 컨텍스트’로 처리됩니다. 이후 세 segment 는 ‘역사적 정보’를 간주하며, 모델은 과거의 데이터를 기반으로 중요한 정보를 선택적으로 기억하고 활용합니다.
이 방식의 핵심은 모든 과거 데이터를 단순히 저장하는 대신, 유용한 정보만 선별적으로 기억하여 메모리 오버플로우 문제를 방지하는 데 있습니다. 이로 인해 테스트 단계에서도 장기 메모리를 지속적으로 업데이트하고, 필요한 정보를 효율적으로 재사용할 수 있습니다.
📍 게이트를 통한 메모리 (MAG, Memory as Gating)
MAG 방식은 단기 메모리와 장기 메모리 사이의 연결을 게이트 메커니즘으로 제어하는 방식입니다. 단기 메모리는 슬라이딩 윈도우 어텐션을 사용하여 현재 데이터를 세밀하게 처리하는 데 초점을 맞추고, 장기 메모리는 과거 데이터를 요약하여 보존합니다. 게이트는 비선형 연산을 통해 단기 메모리와 장기 메모리 중 어느 쪽이 더 중요한지 판단하여 데이터 흐름을 조절합니다.
예를 들어, 현재 데이터가 중요한 경우 단기 메모리가 우선적으로 사용되며, 과거 데이터가 더 유의미한 경우 장기 메모리가 적극 활용됩니다. 이 설계를 통해 모델은 긴 문맥 데이터를 처리하면서도 과거 데이터를 잊지 않고 유지할 수 있습니다. 이를 시각적으로 표현한 구조에서는 현재 데이터의 단기 메모리와 장기 메모리가 적절히 상호작용하는 모습을 확인할 수 있습니다.
📍 계층으로서의 메모리 (Memory as a Layer)
계층 방식은 장기 메모리를 신경망 계층으로 통합하는 접근법입니다. 입력 데이터는 먼저 장기 메모리를 통해 처리되고, 이 과정에서 데이터가 요약되고 압축됩니다. 이후 슬라이딩 윈도우 어텐션을 추가로 적용하여 복잡한 작업에 필요한 정보를 전달하는 구조를 갖습니다.
이 방식의 장점은 구현이 단순하며, 기존의 RNN이나 어텐션 기반 모델과 쉽게 결합할 수 있다는 점입니다. 하지만 단기 메모리와 장기 메모리 사이의 긴밀한 상호작용이 부족할 수 있어, MAC이나 MAG 방식에 비해 긴 문맥 처리 성능이 낮을 가능성도 존재합니다.
- 설명 출처 : 데일리 데이터 허브
✅ 성능 및 RAG와의 비교
📍 성능
초기 테스트 결과, Titans는 언어 모델링, 시계열 데이터 분석, DNA 데이터 처리 등 다양한 작업에서 기존 AI 모델보다 뛰어난 성능을 보였습니다. 특히 긴 문맥 데이터를 처리하면서도 정보의 정확도를 유지하는 데 탁월한 성능을 발휘했습니다.
🧮 언어 모델링
입력된 문맥을 이해하고, 다음 단어를 예측하는 능력을 측정하는 Perplexity 지표(모델이 문맥을 얼마나 잘 이해하고 예측하는지를 평가하는 척도로, 낮은 수치는 더 뛰어난 성능을 의미)에서 매우 낮은 수치를 기록했습니다. 특히 MAC (Memory as Context) 방식이 요구되는 작업에서 인공지능 모델 중 선두권의 성능을 발휘했습니다. 과거 데이터를 효율적으로 저장하고, 필요한 정보를 선별적으로 활용할 수 있는 메모리 설계 덕분이 아닐까 합니다.
🧮 정보 탐색
"Needle-in-Haystack" 작업(매우 큰 데이터 속에서 특정 정보를 찾아내는 작업)에서도 뛰어난 성과를 기록했습니다. 예를 들어, 200만 개 이상의 토큰으로 이루어진 긴 문맥 데이터에서도 안정적으로 작동하며 필요한 정보를 정확히 찾아냈습니다. 이는 Titans의 메모리가 불필요한 데이터를 자동으로 필터링하고, 긴 문맥에서도 메모리 오버플로우 없이 효율적으로 작동할 수 있음을 보여줍니다.
🧮 초소형 모델
BABLLong 벤치마크 실험에서는 340M~760M 파라미터 크기의 소형 Titans 모델이, 기존 GPT-4와 Llama2-70B 모델에 비해 긴 문맥 데이터 분석에서 더 높은 성능을 발휘했습니다.
🧮 패턴 포착 및 예측 작업
DNA 모델링과 같은 데이터 예측 작업에서도 주목할 만한 결과를 보여주었습니다. DNA 데이터 분석에서는 시간에 따라 변하는 패턴을 포착하고 이를 예측해야 하는 작업이 중요한데, Titans는 이를 수행하며 중요한 정보를 효과적으로 보존하고 필요할 경우 이를 다시 활용할 수 있는 메모리 기능을 입증했습니다.
📍 RAG와의 비교
RAG (Retrieval-Augmented Generation)는 대형 언어 모델이 외부 데이터베이스나 메모리에 실시간으로 접근하여 최신 정보를 활용할 수 있게 하는 연결 기술로, 챗봇이나 검색 엔진과 같은 정보 검색 기반의 AI 응용에 필수적입니다.
Titans 방식은 RAG와 근본적으로 다른 접근법을 취하고 있습니다. Titans는 외부 시스템에 의존하지 않고, 자체 메커니즘을 통해 데이터를 직접 기억하고 관리합니다. 그래서 RAG처럼 외부 데이터를 검색하여 연결하는 과정을 거치지 않기 때문에 데이터 검색 비용과 시간 소모를 줄이고, 모델의 독립성과 안정성을 높입니다.
정리하자면 RAG는 외부 데이터 활용에 적합한 기술이며, Titans는 독립적인 메모리 관리로 대규모 데이터의 일관된 처리를 가능하게 하는 기술입니다. 두 기술은 각각의 강점이 있으니까 응용이나 필요에 따라 선택적으로 활용될 수 있을 것 같습니다.
✅ 과제와 전망
Titans는 기존 AI 기술의 한계를 극복하며 긴 문맥 데이터를 처리하고 기억하는 새로운 가능성을 열었지만 여전히 극복해야 할 과제가 남아 있습니다. 근데 이는 모든 AI 모델에도 적용되는 사항이 아닐까 생각합니다.
1. 훈련 비용과 효율성
2. 확장 가능성
Titans의 메모리 설계는 현재 긴 문맥 데이터 처리에 특화되어 있지만, 다른 응용 분야에서의 활용성은 아직 제한적입니다. 의료, 금융, 과학 연구 등 다양한 도메인에서 Titans가 보다 범용적인 기술로 자리 잡으려면 도메인 특화된 데이터와의 통합 및 커스터마이징이 필요합니다.
3. 프라이버시와 보안 문제
Titans는 데이터를 내부 메모리에 저장하고 처리하는 방식으로 높은 보안성을 제공하지만, 데이터의 저장 및 업데이트 과정에서 발생할 수 있는 잠재적인 데이터 유출 리스크를 최소화하기 위한 강화된 보안 체계가 필요합니다.
4. 윤리적 AI 설계
Titans는 인간의 기억 체계를 모방한 설계로 보다 "인간과 같은" 사고 방식을 구현하려는 목표를 가지고 있습니다. 그래서 더욱 데이터를 왜곡하거나 편향된 정보를 학습하는 경우를 대비한 투명한 메커니즘이 필수적입니다.
뭔가 쓰다보니 논문 리뷰처럼 됐네요ㅎㅎ.. Titan으로 의료 분야에서 과거 데이터를 바탕으로 이상 패턴을 감지하거나, 의료 데이터 분석하는데 더 유용할거라 기대가 됩니다.
'AI & DATA > AI' 카테고리의 다른 글
AI개발자가 준비하는 면접 기초 개념 (2) (0) | 2024.06.12 |
---|---|
AI개발자가 준비하는 면접 기초 개념 (1) (0) | 2024.05.29 |
우당탕탕 MLflow 입문기 (1) | 2024.05.07 |
딥러닝 프레임워크 비교 및 분석(Tensorflow / Keras / PyTorch) (0) | 2024.05.07 |