어느 정도는 비슷한 철학이 있습니다. 특히 “단어 간 관계를 통해 의미를 표현한다” 는 점에서 연결됩니다.
하지만 실제 방식은 꽤 다릅니다.
핵심만 먼저 말하면:
GloVe는:
“같이 자주 등장하는 단어는 의미가 비슷하다”
라는 아이디어를 사용한다.
예:
처럼 동시 등장(co-occurrence)을 이용한다.
즉:
같은 전역 통계(global statistics) 를 본다.
Self-Attention도 결국:
어떤 단어가 다른 단어와 얼마나 관련 있는가?
를 계산한다.
예:
"The animal didn't cross the street because it was tired."
여기서 "it" 이 "animal" 을 강하게 참고한다.
즉 단어 간 관계를 weight로 계산한다.
GloVe의 핵심 중 하나는:
같은 벡터 내적(dot product) 이다.
Self-Attention도 핵심이:
이다.
즉 둘 다:
는 공통점이 있다.
그래서 수학적으로 보면 꽤 연결감이 있다.
GloVe에서:
는 항상 같은 벡터다.
즉:
모두 동일 벡터.
문맥을 모른다.
Transformer에서는:
가 문맥마다 달라진다.
예:
attention이 주변 단어를 참고해서 representation을 계속 업데이트한다.
이게 현대 NLP가 강력해진 핵심 중 하나다.
단어 통계
→ 단어 벡터 학습
→ 끝
입력 임베딩
→ Self-Attention
→ 문맥 반영
→ 새로운 표현 생성
→ 반복
| 항목 | GloVe | Self-Attention |
|---|---|---|
| 관계 사용 | O | O |
| 벡터 내적 사용 | O | O |
| 문맥 반영 | X | O |
| 동적 계산 | X | O |
| 전역 통계 기반 | O | 부분적으로 |
| 문장 내부 관계 계산 | 제한적 | 매우 강함 |