셀프 어텐션 (Self-Attention)
"나는 사과를 먹었다"라는 문장에서 “먹었다”라는 단어는 다른 단어를 어떻게 주목해야 할까요?
셀프 어텐션은 문장 속 단어들이 서로 어떤 관계를 맺고 있는지 스스로(Self)
비교하면서, 어떤 단어에 주목(Attention)
해야 하는지 계산하는 방법입니다.
셀프 어텐션은 단어 간의 관계를 숫자로 계산해서, 각 단어가 다른 단어에 얼마나 집중해야 할지 결정합니다.
예를 들어 "먹었다"라는 단어가 각 단어에 주는 주목 점수는 다음과 같이 산출될 수 있습니다.
셀프 어텐션 예시
나는 → 0.1 사과를 → 0.8 먹었다 → 0.1
"먹었다"라는 단어는 "무엇을 먹었는지"가 중요하므로, "사과를"에 높은 점수를 부여합니다.
이러한 과정을 통해 트랜스포머는 문장 속 단어 간의 관계를 이해하고, 문맥을 파악할 수 있습니다.
단어 | 주목해야 할 단어 | 이유 |
---|---|---|
나는 | 없음 또는 사과를 | 주어지만 큰 연결 없음 |
사과를 | 먹었다 | 목적어-동사 관계 |
먹었다 | 사과를 | “무엇을 먹었다?”를 알려주는 단어 |
기존 RNN
은 순차적으로 단어를 처리했기 때문에, 멀리 떨어진 단어끼리의 관계를 파악하기 어려웠습니다.
하지만 Self-Attention
은 모든 단어 쌍을 한 번에 비교하면서, 문장 전체의 맥락을 고려합니다.
다음 수업에서는 이 Self-Attention을 여러 번 병렬로 사용하는 멀티헤드 어텐션
구조에 대해 알아보겠습니다.
Mission
0 / 1
셀프 어텐션 메커니즘은 문장 안에서 각 단어가 다른 단어에 얼마나 집중해야 할지를 결정한다.
True
False
Lecture
AI Tutor
Design
Upload
Notes
Favorites
Help