AI VIDEO BRIEFING
어텐션 메커니즘 시각적 이해 — 임베딩과 유사도, 키·쿼리·값 행렬이 각각 하는 일 정리
임베딩과 유사도에서 출발해 키·쿼리·값 행렬이 각각 무슨 일을 하는지, 수식 대신 중력과 문맥의 비유로 풀어낸 루이스 세라노의 강연을 멀티헤드 어텐션과 청중 질의응답 내용까지 빠짐없이 한국어로 정리했습니다.

핵심 메시지
쉽게 이해하기
루이스 세라노가 Data Hack 2025에서 어텐션 메커니즘을 수식 없이 설명한 강연입니다. 그는 대규모 언어 모델이 한 단어씩 내놓는 방식 자체는 앞의 네다섯 단어만 기억해 맥락이 금세 흐트러지는 메신저 자동완성과 다르지 않다는 도발적인 비교로 시작하며, 지금의 모델로 넘어오게 한 개념적 도약이 어텐션이라고 말합니다. 설명은 임베딩에서 출발하는데, 컴퓨터는 숫자만 알기 때문에 단어를 숫자로 옮겨야 하고 임베딩에 최소한으로 요구할 것은 비슷한 단어를 비슷한 위치에 놓는 일입니다. 문제는 'Apple' 같은 단어로, 과일이기도 하고 회사이기도 해서 아무리 좋은 임베딩을 만들어도 어디에 둘지 정할 수 없습니다. 사람도 맥락 없이 '애플'이라는 말만 들으면 같은 처지입니다.
해법이 문맥이고, 그것이 어텐션입니다. '사과와 오렌지를 사 와'에서는 오렌지가, '애플이 새 폰을 공개했다'에서는 폰이 애플을 각각 자기 쪽으로 끌어당겨 임베딩 위치를 바꿉니다. 강연자는 이를 중력에 비유합니다. 가까운 단어는 세게, 먼 단어는 약하게 끌어당기는데, 임베딩이 비슷한 단어를 가까이 두었기 때문에 이 규칙이 곧 의미적 유사도로 작동합니다.
유사도를 재는 방법으로는 거리, 각도, 내적이 소개됩니다. 강연자는 내적을 '틴더 유사도'라 부르며, 두 사람이 같은 질문에 같은 답을 하면 1, 다르면 -1을 곱해 더하는 것과 같다고 풀어냅니다. 각도를 쓰는 이유도 설명하는데, 파리에서 방갈로르로 갈 때 지구를 뚫는 직선거리를 재지 않듯 임베딩도 바깥에서 거리를 보기보다 안에서 방향을 보는 편이 낫다는 것입니다. 'bad'와 'atrocious'처럼 거리는 멀지만 방향이 같은 단어들이 그 예입니다.
임베딩을 그대로 쓰지 않고 손보는 이유는 세 가지입니다. 첫째, 모든 차원이 유사도에 똑같이 기여하지 않습니다. 코끼리와 토끼는 크기가 달라도 둘 다 동물이라는 점이 더 중요합니다. 둘째, 수학을 좋아하는 학생과 물리를 좋아하는 학생을 가깝게 두려면 두 차원을 섞어야 합니다. 셋째이자 가장 중요한 이유는 끌어당김이 대칭이 아니라는 점입니다. '어부'는 '그물'을 강하게 끌어오지만 '그물'은 배드민턴 그물, 인터넷 등 여러 갈래라 어부를 잘 끌어오지 않습니다.
그래서 임베딩 하나로는 부족하고 키와 쿼리 두 벌이 필요합니다. 끌어당기는 쪽 특징이 키, 끌려오는 쪽 특징이 쿼리이며, 두 개의 서로 다른 임베딩을 두면 방향에 따라 다른 유사도를 얻을 수 있습니다. 마지막으로 여러 개의 어텐션 머리가 각자 다른 임베딩으로 판단하고 문맥에 따라 어느 쪽 의견을 더 들을지 투표하는 것이 멀티헤드 어텐션이고, 값 행렬은 유사도 계산에 좋은 임베딩을 다음 단어를 생성하기에 좋은 임베딩으로 한 번 더 옮기는 역할을 합니다.
주요 인사이트
- 끌어당김이 비대칭이라는 관찰이 키와 쿼리가 왜 두 개의 별도 행렬이어야 하는지를 설명한다. 임베딩이 하나면 유사도도 하나뿐이라 방향별로 다른 값을 만들 수 없다.
- 덜 흔한 단어가 더 세게 끌어당긴다는 규칙이 직관적이다. 흔한 단어는 온갖 대화에 끌려 들어가지만, 드문 단어는 자기가 다른 단어를 데려온다.
- 행렬을 숫자 배열이 아니라 선형 변환이라는 이야기로 읽자는 제안은 어텐션 수식의 각 부분이 무엇을 하는지 감각적으로 잡게 해준다. 대각 성분은 특징의 중요도 조절, 비대각 성분은 특징의 결합이다.
- 거리 대신 코사인을 쓰는 실질적 이유는 멀어질수록 값이 무한정 커지는 거리와 달리 코사인은 유사·무관·반대를 1, 0, -1로 깔끔히 구분해주기 때문이다.
- 신조어가 임베딩에 자리 잡으려면 시간이 걸린다. 임베딩은 함께 등장하는 빈도로 학습되기 때문에 새 단어는 충분히 많이 쓰인 뒤에야 제 위치를 찾는다.
자주 묻는 질문
어텐션이 하는 일을 한 문장으로 요약하면 무엇인가요?
문맥을 더해 임베딩을 수정하는 일입니다. 문장 안의 다른 단어들이 한 단어를 끌어당겨 그 단어의 벡터 위치를 옮기고, 그 결과 애매한 단어의 뜻이 문맥에 맞게 정해집니다.
키와 쿼리는 각각 무엇을 가리키나요?
끌어당기는 쪽이 키, 끌려오는 쪽이 쿼리입니다. 강연에서 든 예로 팝 음악을 좋아한다는 특징은 다른 사람을 대화로 끌어오는 키이고, 팝 음악을 만든다는 특징은 좋아하는 사람들의 대화로 끌려 들어가는 쿼리입니다.
값 행렬은 왜 따로 필요한가요?
유사도를 재기에 좋은 임베딩과 다음 단어를 생성하기에 좋은 임베딩이 다르기 때문입니다. 값 행렬은 선형 변환을 한 번 더 적용해 생성에 적합한 임베딩으로 옮기는 역할을 합니다.
왜 내적을 항목 수의 제곱근으로 나누나요?
강연자는 이를 숫자를 너무 크지도 작지도 않게 유지하는 일종의 요령이라고 설명했습니다. 항목이 두 개면 2의 제곱근으로, 천 개면 천의 제곱근으로 나눕니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗