AI VIDEO BRIEFING
셀프 어텐션 시각적으로 이해하기: 쿼리·키·값 벡터와 위치 인코딩으로 보는 트랜스포머 원리
트랜스포머의 핵심인 셀프 어텐션을 애니메이션 관점에서 풀어냈다. 쿼리·키·값 벡터가 단어 사이의 관계를 학습하는 방식과, 단어 순서를 담기 위한 위치 인코딩이 왜 필요한지, 그리고 여러 사인파를 쓰는 이유까지 단계별로 정리했다.

핵심 메시지
쉽게 이해하기
이 설명은 트랜스포머의 여러 구성 요소 가운데 셀프 어텐션 하나에 집중한다. 수학 공식이나 비유가 아니라, 알고리즘이 실제로 밟는 단계를 시각적으로 따라가며 '왜 어텐션이 필요한가'와 '어텐션이 무엇을 하는가'를 보여 준다.
텍스트가 이미지보다 다루기 어려운 이유로 장거리 의존성을 든다. 책에서 앞 장의 한 문단을 바꾸면 100페이지 뒤의 의미가 달라지듯, 어떤 단어든 멀리 떨어진 다른 단어의 의미에 영향을 줄 수 있다. 문제는 어떤 부분이 어떤 부분에 영향을 주는지 미리 알 수 없다는 점이며, 바로 이 관계를 학습하는 것이 어텐션의 역할이다.
동작 방식은 이렇다. 먼저 텍스트를 토큰으로 나누고 각 토큰을 숫자 목록(임베딩)으로 표현한다. 각 토큰을 세 개의 작은 신경망에 통과시켜 쿼리(Q)·키(K)·값(V)을 얻는다. 쿼리는 관련 있는 다른 토큰을 '검색'하는 데 쓰이고, 그 검색은 현재 단어의 쿼리를 다른 모든 단어의 키와 비교해 이뤄진다. 유사도가 높으면 그 단어의 값을 강하게, 낮으면 약하게 반영해 합치면 새로운 표현이 된다.
따라서 Q·K를 만드는 신경망은 관련된 토큰끼리 비슷한 벡터를 내도록, V는 그 토큰이 다른 토큰에 어떤 식으로 영향을 줄지를 담도록 학습된다. 이 과정을 모든 토큰에 대해 반복한다.
하지만 지금까지의 어텐션은 단어의 순서를 전혀 고려하지 않아 '사람이 배 밖으로 떨어졌다'와 '판자가 사람 위로 떨어졌다'를 구분하지 못한다. 이를 해결하는 것이 위치 인코딩이다. 0에서 1로 커지는 단일 차원이나 하나의 사인파는 너무 매끄럽거나 대칭이라 한계가 있어, 서로 다른 주파수의 사인파 여러 개를 차원으로 더해 순서 정보를 표현한다. 실제 LLM은 이런 어텐션 층을 여러 개 쌓아 더 풍부하고 추상적인 관계를 포착한다.
주요 인사이트
- 어텐션은 '어떤 부분이 서로 관련되는가'(Q·K 유사도)와 '어떻게 관련되는가'(V)를 분리해 학습한다.
- 토큰을 벡터로 표현하고 유사도를 색으로 비유하면, 고차원 벡터 연산을 직관적으로 이해할 수 있다.
- 쿼리·키·값이라는 이름은 검색(쿼리)-대조(키)-영향(값)이라는 실제 사용 방식에서 비롯된다.
- 위치 정보가 없으면 같은 단어들의 뒤섞인 배열과 올바른 문장을 구분할 수 없다.
- 단일 사인파는 대칭성 때문에 문장과 그 역순을 같게 보므로, 여러 주파수의 사인파가 필요하다.
자주 묻는 질문
셀프 어텐션에서 쿼리·키·값은 각각 무슨 역할인가요?
쿼리는 관련 있는 다른 토큰을 검색하는 데, 키는 그 검색과 대조되는 대상으로, 값은 관계가 있을 때 현재 토큰에 어떤 영향을 줄지를 나타냅니다.
텍스트를 이해하는 것이 왜 어려운가요?
어떤 단어나 단어의 일부가 멀리 떨어진 다른 단어의 의미까지 바꿀 수 있는 장거리 의존성이 있고, 어느 부분이 어느 부분에 영향을 주는지 미리 알 수 없기 때문입니다.
위치 인코딩은 왜 사인파를 사용하나요?
0에서 1로 커지는 단일 차원이나 하나의 사인파는 너무 매끄럽고 대칭이어서 순서를 제대로 표현하지 못하지만, 서로 다른 주파수의 사인파를 여럿 더하면 다양한 간격의 위치 관계를 학습할 수 있기 때문입니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗