Scaled Dot Product Attention 를 정의하시오.
스케일드 닷 프로덕트 어텐션은 쿼리(Query), 키(Key), 밸류(Value) 삼중 구조를 사용해, 유사도 계산 → 스케일 조정 → 확률 정규화 → 가중합의 네 단계를 거쳐 문맥 정보를 추출하는 어텐션 메커니즘이다.
트랜스포머 계열 모델에서 기본 블록으로 채택되는 이유는 계산 효율성과 병렬화 용이성에 있다.
1. 입력 구성 단계
-
입력 시퀀스의 각 토큰 임베딩을 쿼리, 키, 밸류로 독립 투영한다.
-
쿼리는 “질문자”, 키는 “후보 답변자”, 밸류는 “실제 답변 내용” 역할을 담당한다.
2. Dot-Product 유사도 계산 단계
-
한 토큰의 쿼리와 모든 토큰의 키 간에 내적(닷 프로덕트)을 수행해 유사도 행렬을 만든다.
-
내적은 두 벡터의 방향 유사도를 단일 숫자로 빠르게 환산하므로, 대규모 시퀀스에서 효율적이다.
3. 스케일링 단계
-
키 벡터 차원의 제곱근으로 유사도 값을 나누어 스케일을 조정한다.
-
차원이 클수록 내적값이 과도하게 커져 소프트맥스가 한두 항목에만 치우치는 현상이 생기므로, 이를 방지해 학습 안정성을 높인다.
4. 소프트맥스 정규화 단계
-
스케일링된 유사도 행렬에 소프트맥스를 적용해 각 행이 0~1 확률 분포가 되도록 만든다.
-
결과 분포는 “각 토큰이 다른 토큰에 얼마만큼 주목할지”를 나타내는 가중치 역할을 한다.
5. 가중합 단계
-
정규화된 가중치를 밸류 벡터에 곱해 가중합을 수행한다.
-
이 가중합 결과가 바로 각 토큰이 시퀀스 전체 문맥을 반영해 새로 얻은 표현(어텐션 결과)이다.
핵심 특징 정리
구분 | 목적 | 효과 |
---|---|---|
닷 프로덕트 | 토큰 간 유사도 산출 | 계산량이 작고 GPU 병렬화에 적합하다 |
스케일링 | 큰 차원에서의 값 폭주 방지 | 그래디언트 안정성 확보 |
소프트맥스 | 가중치 확률 분포화 | 직관적 해석·역전파 용이 |
밸류 가중합 | 문맥 정보 결합 | 입력 토큰을 문맥 기반으로 재표현 |
스케일드 닷 프로덕트 어텐션은 이렇듯 “유사도 측정 → 스케일 조정 → 확률화 → 문맥 통합”의 명확한 절차를 통해, 입력 시퀀스 내부 관계를 효과적으로 모델링하는 핵심 구성 요소이다.