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의 핵심은 다음 과정이다.

  1. Query와 Key를 비교하여 유사도 계산
  2. 유사도를 기반으로 가중치 생성
  3. 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으로 표현을 강화하는 구조이다.
반응형