피드로 돌아가기
Dev.toAI/ML
원문 읽기
O(n²) 복잡도의 Matrix Operation을 통한 토큰 간 관계 정량화 및 Contextual Representation 구현
How Self-Attention Works — QKV, Softmax, and Matrix Computation
AI 요약
Context
정적인 Embedding 구조로는 문맥에 따라 변하는 단어의 의미를 포착하는 데 한계가 존재함. 단순 순차 처리 방식은 병렬 연산 효율이 낮아 대규모 데이터 학습 시 심각한 Bottleneck을 초래함.
Technical Solution
- Query, Key, Value 세 가지 역할로 Projection하여 매칭과 정보 전달 공간을 분리한 설계
- Dot-product 기반의 Similarity Score 산출을 통한 토큰 간 연관성 수치화
- $\sqrt{d_k}$ Scaling 적용으로 Softmax의 Gradient vanishing 방지 및 학습 안정성 확보
- Softmax 가중치를 Value 벡터에 곱하는 Weighted Sum 구조를 통한 선택적 정보 혼합
- 개별 토큰 루프를 제거하고 Dense Linear Algebra 기반의 Matrix Multiplication으로 전환하여 GPU 가속 최적화
- Q, K, V를 하나의 Linear Layer로 통합 연산 후 분할하는 Tensor Layout 최적화 적용
실천 포인트
- 시퀀스 길이 증가에 따른 $O(n^2)$ 메모리 및 연산 비용 증가 가능성 검토 - Positional Encoding 부재 시 토큰 순서 정보 소실 위험 확인 - Softmax 입력값의 Scale 크기에 따른 학습 불안정성 및 수렴 속도 모니터링 - 연산 효율을 위한 QKV 통합 Projection 및 Matrix-level 병렬 처리 적용 여부 확인