AI 사카나 AI, LLM 메모리 최대 75% 절약 기술 개발
- BarryWhite
- 조회 수 168
- 2024.12.14. 15:11
사카나 AI가 언어 모델의 메모리 효율성을 향상시키는 새 기술을 개발했다고 합니다.
이 기술은 기업들이 대규모 언어 모델(LLM) 및 기타 트랜스포머 기반 모델을 기반으로 애플리케이션을 구축하는 데 드는 비용을 절감하는 데 도움이 될 것으로 기대됩니다.
'유니버설 트랜스포머 메모리'라고 불리는 이 기술은 특수 신경망을 사용해 LLM이 중요한 정보는 유지하고 문맥에서 중복되는 세부 정보는 삭제하도록 최적화합니다.
LLM의 근간이 되는 트랜스포머 모델의 응답은 사용자로부터 입력으로 받는 '컨텍스트 윈도우'의 내용에 따라 달라집니다. 컨텍스트 윈도우는 모델의 작업 메모리로 간주할 수 있습니다. 컨텍스트 윈도우의 내용을 조정하면 모델의 성능에 큰 영향을 미칠 수 있으며, 이는 '프롬프트 엔지니어링'이라는 새로운 분야를 탄생시켰습니다.
현재 모델은 수십만 또는 수백만 개의 토큰(사용자가 프롬프트에 입력한 단어, 단어 부분, 구문, 개념 및 숫자에 대한 LLM의 숫자 표현)으로 구성된 매우 긴 컨텍스트 윈도우를 지원합니다. 이를 통해 사용자는 프롬프트에 더 많은 정보를 담을 수 있습니다.
그러나 프롬프트가 길어지면 계산 비용이 증가하고 성능이 저하될 수 있습니다. 중요한 정보는 유지하면서 불필요한 토큰을 제거해 프롬프트를 최적화하면 비용을 절감하고 속도를 높일 수 있습니다.
기존의 프롬프트 최적화 기술은 리소스를 많이 사용하거나 사용자가 프롬프트 크기를 줄이기 위해 여러 구성을 수동으로 테스트해야 합니다.
유니버설 트랜스포머 메모리는 신경망 기반 메모리 모델(NAMM)을 사용해 프롬프트를 최적화합니다. NAMM은 LLM 메모리에 저장된 각 토큰을 '기억'할지 '잊을지' 결정하는 간단한 신경망입니다. 연구진은 "이 새로운 기능을 통해 트랜스포머는 유용하지 않거나 중복되는 세부 정보를 버리고 가장 중요한 정보에 집중할 수 있으며, 이는 장기 문맥 추론이 필요한 작업에 매우 중요하다"고 설명합니다.
NAMM은 LLM과 별도로 훈련되며 추론 시 사전 훈련된 모델과 결합되므로 유연하고 배포하기 쉽습니다. 그러나 모델의 내부 활성화에 액세스해야 하므로 오픈 소스 모델에만 적용할 수 있습니다. 사카나 AI에서 개발한 다른 기술과 마찬가지로 NAMM은 경사 기반 최적화 방법 대신 진화 알고리즘을 통해 훈련됩니다. 진화 알고리즘은 시행착오를 거쳐 최고 성능의 모델을 반복적으로 변형하고 선택함으로써 효율성과 성능을 위해 NAMM을 최적화합니다.
NAMM은 토큰을 유지하거나 삭제하는 차별화할 수 없는 목표를 달성하려고 하기 때문에 이는 특히 중요합니다. NAMM은 모델의 컨텍스트 윈도우에서 각 토큰의 관계와 중요도를 결정하는 트랜스포머 아키텍처의 핵심 구성 요소 중 하나인 LLM의 어텐션 레이어에서 작동합니다. NAMM은 어텐션 값을 기반으로 LLM의 컨텍스트 윈도우에서 어떤 토큰을 보존하고 어떤 토큰을 삭제할지 결정합니다. 이 어텐션 기반 메커니즘 덕분에 훈련된 NAMM을 추가 훈련 없이 다양한 모델에 사용할 수 있습니다.
유니버설 트랜스포머 메모리 개념을 실제로 테스트하기 위해 연구진은 오픈 소스 Meta Llama 3-8B 모델 위에 NAMM을 훈련시켰습니다. 실험 결과, NAMM을 사용하면 트랜스포머 기반 모델이 매우 긴 시퀀스에서 자연어 및 코딩 문제를 더 잘 수행하는 것으로 나타났습니다. 동시에 NAMM은 불필요한 토큰을 삭제함으로써 LLM 모델이 작업을 수행하는 동안 캐시 메모리를 최대 75%까지 절약할 수 있도록 했습니다.
연구진은 "벤치마크 전반에서 NAMM은 Llama 3-8B 트랜스포머에 대한 성능을 명확하게 개선했다"고 밝혔습니다. "또 메모리 시스템은 메모리 효율성을 위해 명시적으로 최적화된 적이 없음에도 불구하고 각 레이어의 컨텍스트 크기를 줄이는 등 주목할 만한 부수적인 이점을 제공합니다."
연구진은 또 70B 버전의 Llama와 Llava(컴퓨터 비전) 및 Decision Transformer(강화 학습)와 같이 다른 방식 및 작업을 위해 설계된 트랜스포머 모델에서도 모델을 테스트했습니다. 연구진은 "이런 분포 외 설정에서도 NAMM은 중복되는 비디오 프레임 및 차선의 동작과 같은 토큰을 삭제해 새로운 기본 모델이 성능을 향상시키는 데 가장 관련성이 높은 정보에 집중할 수 있도록 해 이점을 유지한다"고 설명했습니다.
또 긍정적인 부분은 NAMM이 작업에 따라 자동으로 동작을 조정한다는 것입니다. 예를 들어, 코딩 작업의 경우 모델은 코드 실행에 영향을 미치지 않는 주석과 공백에 해당하는 연속적인 토큰 덩어리를 삭제합니다. 반면에 자연어 작업에서는 시퀀스의 의미에 영향을 미치지 않는 문법적 중복성을 나타내는 토큰을 삭제합니다. 연구진은 자신만의 NAMM을 만들 수 있는 코드를 공개했습니다.
유니버설 트랜스포머 메모리와 같은 기술은 수백만 개의 토큰을 처리하고 속도 향상과 비용 절감의 이점을 누릴 수 있는 기업 애플리케이션에 매우 유용할 수 있습니다. 훈련된 NAMM의 재사용성은 또 기업의 다양한 애플리케이션에서 사용할 수 있는 다재다능한 도구입니다.
향후 연구진은 LLM 훈련 중에 NAMM을 사용해 메모리 기능을 더욱 확장하는 등 더욱 발전된 기술을 제안합니다. 연구진은 "이 연구는 미래 세대의 트랜스포머를 발전시킬 수 있는 많은 새로운 기회를 제공할 것으로 예상되는 새로운 종류의 메모리 모델의 잠재력을 활용하기 시작했을 뿐"이라고 말했습니다.