AL,ML 학부연구생/공부 기록
Query, Key, Value (Q, K, V)란 무엇인가?
김형준
2026. 3. 23. 17:31
반응형
Query, Key, Value (Q, K, V)
2.1 정의
Query, Key, Value는 Self-Attention에서 사용되는 세 가지 벡터로,
각 토큰이 다른 토큰과의 관계를 계산하기 위해 생성된다.
각각의 의미:
- Query: 내가 찾고 싶은 정보
- Key: 내가 가지고 있는 특징
- Value: 실제 전달할 정보
2.2 어디에 사용되는가
Q, K, V는 Self-Attention 연산의 핵심 입력이다.
즉, Transformer의 다음 위치에서 사용된다.
- Encoder의 Self-Attention
- Decoder의 Self-Attention
- Encoder-Decoder Attention
2.3 생성 방식
입력 벡터 X로부터 선형 변환을 통해 생성된다.
Q = XW_Q
K = XW_K
V = XW_V
특징:
- 동일한 입력에서 서로 다른 의미 공간으로 투영됨
- 각각 다른 가중치 행렬 사용
2.4 동작 원리
Self-Attention의 핵심은 다음 과정이다.
- Query와 Key를 비교하여 유사도 계산
- 유사도를 기반으로 가중치 생성
- Value를 가중합하여 출력 생성
2.5 핵심 수식
Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V
2.6 직관적 해석
어떤 토큰 i가 있을 때:
- Query_i는 “나는 어떤 정보를 찾고 있는가”
- Key_j는 “토큰 j는 어떤 특징을 가지고 있는가”
- Value_j는 “토큰 j가 전달할 실제 정보”
→ Query_i와 모든 Key_j를 비교
→ 관련성이 높은 Value_j를 더 많이 반영
2.7 예시 (문장 이해)
문장:
“그는 은행에 갔다. 돈을 찾았다.”
- “은행”이라는 단어의 Query는 의미를 정하기 위해 주변 단어를 참고
- “돈”이라는 단어의 Key와 높은 유사도 → 높은 attention score
- 결과적으로 “은행” = 금융기관 의미로 해석
2.8 Multi-Head Attention에서의 확장
- Q, K, V를 여러 개의 head로 나누어 병렬 처리
- 각 head는 서로 다른 관계를 학습
예:
- 문법 관계
- 의미 관계
- 위치 관계
2.9 핵심 요약
- Q, K, V는 Attention에서 관계 계산을 위한 3가지 표현
- Query는 “질문”, Key는 “색인”, Value는 “내용” 역할
- Attention은 Q-K 유사도를 기반으로 V를 가중합하는 과정
3. 최종 정리
- FFN은 각 토큰을 독립적으로 변환하는 비선형 계층이다.
- Q, K, V는 토큰 간 관계를 계산하기 위한 Attention의 핵심 구성이다.
- Transformer는
→ Attention(QKV)로 관계를 학습하고
→ FFN으로 표현을 강화하는 구조이다.
반응형