연구진은 ChatGPT와 같은 대규모 언어 모델에서 모델 성능에 심각한 영향을 미칠 수 있는 난해한 문제에 대한 간결하고 효과적인 해결책을 찾아냈습니다.

여러 차례의 연속 대화가 포함된 AI 대화에서 ChatGPT와 같은 챗봇을 구동하는 강력한 대규모 언어 머신 러닝 모델이 갑자기 실패하여 봇 성능이 급격히 저하되는 경우가 있습니다.
MIT와 다른 기관의 연구팀은 이 문제의 놀라운 원인을 발견하고 챗봇이 충돌이나 속도 저하 없이 대화를 계속할 수 있는 쉬운 해결책을 제시했습니다.
이 접근 방식은 많은 대규모 언어 모델의 중앙에 있는 키 캐시(대화를 위한 메모리 저장소에 해당)를 조정합니다. 경우에 따라 캐시에 실제 용량보다 더 많은 정보를 저장해야 하는 경우 가장 최근의 데이터가 대체되어 모델 오류가 발생할 수 있습니다.
연구진의 계획은 초기 데이터 포인트 중 일부를 메모리에 유지함으로써 대화가 아무리 오래 진행되더라도 챗봇이 계속 소통할 수 있도록 합니다.
StreamingLLM이라고 하는 이 접근 방식은 대화가 400만 단어를 넘어 계속되는 경우에도 모델의 높은 효율성을 유지합니다. 이전 대화의 일부를 지속적으로 재계산하여 시스템 충돌을 방지하는 다른 접근 방식과 비교했을 때 StreamingLLM은 22배 이상 빠른 성능을 발휘합니다.
이렇게 하면 챗봇을 재시작할 필요 없이 하루 종일 긴 대화를 수행할 수 있어 코드 작성, 편집, 생성 등의 작업을 위한 AI 어시스턴트를 효과적으로 제공할 수 있습니다.
"오늘날 이러한 접근 방식을 통해 대규모 언어 모델을 지속적으로 배포할 수 있게 되었습니다. 언제든지 대화할 수 있고 최근 대화 내용을 기반으로 응답할 수 있는 챗봇을 만들면 다양한 새로운 응용 분야에서 이러한 챗봇을 활용할 수 있습니다."라고 전기 공학 및 컴퓨터 과학(EECS) 대학원생이자 논문의 주 저자인 Guangxuan Xiao는 말합니다.
샤오의 공동 저자로는 그의 지도교수이자 MIT-IBM 왓슨 AI 연구소의 일원이자 엔비디아의 저명한 과학자인 송 한(Song Han)과 메타 AI의 연구 과학자인 위안동 티안(Yuandong Tian), 카네기 멜론 대학교의 조교수인 베이디 첸, 메타 AI의 연구 과학자이자 논문 수석 저자인 마이크 루이스 등이 참여했습니다. 이 연구는 학습 표현에 관한 국제 컨퍼런스에서 발표될 예정입니다.
수수께끼 같은 현상
대규모 언어 모델은 사용자 쿼리의 어휘와 같은 데이터를 "토큰"이라는 표현 형식으로 인코딩합니다. 많은 모델은 이러한 토큰을 사용하여 새로운 텍스트를 생성하는 소위 '주의 메커니즘'을 사용합니다.
일반적으로 AI 챗봇은 본 텍스트를 기반으로 새로운 콘텐츠를 작성하므로 나중에 사용할 수 있도록 최근 토큰을 KV 캐시라는 메모리 뱅크에 저장합니다. 주의 메커니즘은 캐시의 모든 토큰이 포함된 그리드 맵, 즉 '주의 맵'을 생성하며, 여기에는 각 단어와 다른 단어 간의 상관관계 강도가 표시되어 있습니다.
이러한 관계를 이해하면 대규모 언어 모델이 인간과 유사한 텍스트를 생성하는 데 도움이 됩니다.
그러나 캐시 용량이 커지면 관심도 맵도 엄청나게 확장되어 계산 속도가 저하됩니다.
또한 콘텐츠를 인코딩하는 데 필요한 토큰이 캐시 한도를 초과하면 모델의 성능이 저하됩니다. 예를 들어, 널리 사용되는 모델은 4,096개의 토큰을 저장할 수 있지만 학술 논문에는 약 10,000개의 토큰이 포함될 수 있습니다.
이러한 문제를 피하기 위해 연구진은 가장 오래된 토큰을 제거하고 새로운 토큰을 추가하는 '슬라이딩 캐시' 전략을 채택했습니다. 그러나 첫 번째 토큰이 제거되면 모델의 성능이 급격히 저하되는 경향이 있으며, 이는 새로 생성되는 어휘의 품질에 직접적인 영향을 미칩니다.
이 새로운 논문에서 연구진은 슬라이딩 캐시에서 첫 번째 토큰을 일정하게 유지하면 캐시 크기가 초과되더라도 모델이 성능을 유지한다는 사실을 발견했습니다.
하지만 이 결과는 직관적이지 않은 것처럼 보일 수 있습니다. 소설에서 첫 단어가 마지막 단어와 직접적으로 연결되는 경우는 거의 없는데, 왜 첫 단어가 모델의 새로운 단어 생성 능력에 중요한 영향을 미칠까요?
연구진은 새로운 논문에서 이러한 현상의 원인에 대해서도 밝혔습니다.
초점 포인트
일부 모델은 주의 메커니즘에서 소프트맥스 연산을 사용하여 각 어휘 요소에 점수를 할당하여 서로의 관련성을 반영합니다. 소프트맥스 연산을 사용하려면 모든 주의 점수를 합산하여 총 1이 되어야 합니다. 대부분의 어휘 요소는 서로 밀접한 관련이 없기 때문에 주의 점수가 매우 낮습니다. 모델은 남은 주의도 점수를 첫 번째 어휘 요소에 할당합니다.
연구자들은 이 첫 번째 어휘 요소를 '주의 집중'이라고 부릅니다.
"우리는 관심의 초점이 필요하며, 모델은 다른 모든 어휘 요소에 표시되기 때문에 첫 번째 어휘 요소를 이 초점 지점으로 선택합니다. 모델의 역동성을 유지하려면 이 초점 지점을 캐시에 지속적으로 유지해야 한다는 것을 알게 되었습니다." 한은 이렇게 설명합니다.
StreamingLLM을 개발하면서 연구원들은 4개의 주의 집중 포인트 어휘 요소를 캐시의 맨 처음에 배치하면 최적의 성능을 얻을 수 있다는 사실을 발견했습니다.
또한 새 어휘 요소가 추가되고 기존 어휘 요소가 제거될 때 각 어휘 요소의 위치 인코딩은 동일하게 유지되어야 한다는 점에 유의하세요. 예를 들어, 다섯 번째 어휘 요소가 제거되면 여섯 번째 어휘 요소가 캐시에서 다섯 번째가 되더라도 인코딩은 여섯 번째를 유지해야 합니다.
이 두 가지 아이디어를 결합하여 StreamingLLM은 일관된 대화를 유지하고 재계산 기술을 사용하는 일반적인 접근 방식보다 뛰어난 성능을 발휘할 수 있습니다.
예를 들어 캐시 용량이 256단어인 경우 재계산 기법을 사용하는 방법은 새 단어를 디코딩하는 데 63밀리초가 걸리는 반면 StreamingLLM은 31밀리초밖에 걸리지 않습니다. 그러나 캐시 용량을 4096단어로 늘리면 재계산 기법은 새 어휘를 디코딩하는 데 1411밀리초가 걸리지만 StreamingLLM은 여전히 65밀리초밖에 걸리지 않습니다.
"StreamingLLM은 최대 400만 개의 토큰을 처리할 때 성능과 메모리 안정성 문제를 해결하는 혁신적인 주의 풀링 기법을 사용합니다." 싱가포르 국립대학교의 컴퓨터 과학 석좌교수인 용 양은 이 연구에 참여하지는 않았지만 다음과 같이 말했습니다. "이 기술의 성능은 인상적일 뿐만 아니라 다양한 AI 영역에서 StreamingLLM을 사용할 수 있는 획기적인 잠재력을 가지고 있으며, StreamingLLM의 성능과 다목적성은 우리가 AI를 사용하여 애플리케이션을 생성하는 방식을 주도할 혁신적인 기술이 될 수 있는 좋은 징조입니다. "
이 연구에 참여하지 않은 카네기 멜론 대학교의 기계 학습 및 컴퓨터 과학 조교수인 Tianqi Chen도 이러한 견해에 동의했습니다. 그는 "StreamingLLM을 사용하면 대규모 언어 모델의 대화 길이를 원활하게 확장할 수 있습니다. 우리는 이 기술을 사용하여 아이폰에 미스트랄 모델을 성공적으로 배포했습니다."라고 말했습니다.
연구팀은 또한 모든 훈련 샘플 앞에 여러 개의 자리 표시자를 포함시켜 모델 훈련 중에 주의 풀링을 적용하는 방법을 탐색했습니다.
연구팀은 주의 풀링과 함께 훈련된 모델은 캐시에서 하나의 주의 풀만 사용해도 성능을 유지할 수 있는 반면, 사전 훈련된 모델의 경우 일반적으로 성능을 안정화하기 위해 4개의 주의 풀이 필요한 것에 비해, 주의 풀링과 함께 훈련된 모델은 캐시에서 하나의 주의 풀만 사용해도 성능을 유지할 수 있음을 발견했습니다.
그러나 스트리밍LLM을 사용하면 모델이 지속적인 대화에 참여할 수 있지만, 캐시에 저장되지 않은 단어는 기억할 수 없습니다. 향후 연구진은 삭제된 토큰을 검색하거나 모델이 이전 대화를 기억할 수 있도록 하는 방법을 모색하여 이러한 한계를 극복할 계획입니다.
StreamingLLM은 NVIDIA의 빅 언어 모델 최적화 라이브러리에 통합되었습니다.TensorRT-LLM중간.
이 연구는 MIT-IBM 왓슨 인공지능 연구소, MIT 과학 센터 및 국립과학재단의 일부 지원을 받았습니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...