LLM 시각화
(bbycroft.net)- GPT 기반 대형 언어 모델 nano-gpt의 작동 과정을 간략히 소개함
- 이 모델은 6개의 문자 시퀀스를 받아 알파벳 순서로 정렬하는 것이 목표임
- 각 문자는 토큰으로 간주되며, 모든 토큰은 고유의 토큰 인덱스를 가짐
- 각 토큰 인덱스는 48차원 임베딩 벡터로 변환되어 일련의 트랜스포머 레이어를 통과함
- 모델은 다음에 올 토큰을 예측하며, 결과는 반복하여 입력 시퀀스를 발전시킬 수 있음
GPT 언어 모델 소개
- 본 문서는 GPT 대형 언어 모델의 작동 과정을 시각적으로 설명하는 자료임
- 여기서는 nano-gpt라는 매우 소형 모델(파라미터 약 85,000개)을 활용함
- 모델의 목표는 6개의 문자로 이루어진 시퀀스를 받아 이를 알파벳 순서로 정렬(예: "ABBBCC")하는 것임
토큰과 어휘
- 각 문자는 토큰(token) 으로 정의되며, 모델이 인식하는 모든 토큰 집합을 어휘(vocabulary) 라고 부름
- 테이블에서 각 토큰에는 고유의 번호(token index) 가 부여됨
- 이 토큰 인덱스의 숫자 시퀀스를 모델의 입력으로 사용함
입력 변환과 임베딩
- 3D 시각화에서 초록색 셀은 처리 중인 숫자를, 파란색 셀은 모델의 가중치(weight) 를 나타냄
- 각 입력 숫자는 48차원의 임베딩 벡터로 변환됨
- 이 임베딩은 모델 구조 내 여러 트랜스포머 레이어를 연속적으로 통과함
출력과 예측 과정
- 모델의 출력은 해당 시퀀스에서 예측되는 다음 토큰의 확률로 나타남
- 6번째 입력 위치에서는 다음 토큰이 'A', 'B', 'C'일 확률 분포를 예측함
- 예시에서는 모델이 'A'일 확률이 가장 높다고 예측함
- 이 예측 결과를 다시 입력에 넣어 과정을 반복하면서 전체 시퀀스를 만들어냄
Hacker News 의견
- 정말 복잡하면서도 감탄스러움, 과정을 시각화하는 방식이 정말 멋짐
- 관련된 자료가 있음, 혹시 다른 것도 궁금하다면 참고 가능함
LLM Visualization - 2023년 12월, 댓글 131개 - 조지아텍 연구자들이 만든 또 다른 transformer 시각화 자료가 있음
https://poloclub.github.io/transformer-explainer/
그리고 'The Illustrated Transformer'라는 유명한 시각화 자료도 추천함
https://jalammar.github.io/illustrated-transformer/
Sebastian Raschka, PhD가 아키텍처에 대해 쓴 게시글도 있음
https://magazine.sebastianraschka.com/p/…
해커뉴스의 이 댓글에서는 다양한 리소스를 한 번에 볼 수 있음
https://news.ycombinator.com/item?id=35712334 - 시각화가 정말 흥미로움, 전체 과정을 시각적으로 볼 수 있지만 모델의 내부 의사결정 기준을 완전히 이해하지 못한다는 점이 아이러니함, 1년쯤 전에 찾아봤을 땐 아직 이 부분에서 진전이 없었음
- 이 시각화 콘텐츠가 정말 훌륭해서 5살 아들이 다니는 컴퓨터 동아리에서 아이들에게 보여주려고 계획 중임
- 그 방식이면 아이들 낮잠 자게 하는 데 최고일 듯함
- 정말 대단하고 감탄스러운 예술 작품 같음, 작업해줘서 고마움
- 예전부터 이 시각화 자료를 정말 좋아했음
https://alphacode.deepmind.com/
(모바일이면 플레이를 누르고 끝까지 줌 아웃한 뒤 아래로 스크롤하면 됨) - LLM 시각화가 이런 식으로 교육 도구가 되면 정말 멋질 것 같음, 예를 들어 생성 과정에서 attention이 어떻게 움직이는지나 프롬프트가 출력에 어떻게 영향을 주는지 보여줄 수 있을 듯함, 이런 인터랙티브한 시각화가 뒷단에서 실제로 무슨 일이 일어나는지 이해하는 데 정말 도움이 될 것 같음
- 정말 훌륭하다고 생각함, 시간이 되면 깊이 있게 탐구해보고 싶음, 관측 도구와 결합하면 이 자료가 과학자들에게 "블랙박스"라고 알려진 모델 내부를 파헤칠 수 있게 해준다고 생각함
- 이제야 이해가 됨, 이 자료는 정말 대단한 리소스임, 시간과 노력에 감사함