통계 실험실 차트
넘스탯 로고
넘스탯
LEARN · SIMULATE · VERIFY

확률부터 LLM까지 — 데이터 사이언스 자기주도 학습 플랫폼

로그인
학습 메뉴
도움말

Query·Key·Value

마일스톤 학습법으로 단계별 완전 정복
LLM
어텐션
Query
Key
Value
투영 행렬
내적
softmax
Transformer
이 개념 직접 실험하기 — 어텐션 시뮬레이터
이 학습을 통해 달성할 수 있는 목표
기초 이해
  • • Query·Key·Value의 역할을 도서관 검색 비유로 설명할 수 있다
  • • 세 벡터가 모두 같은 임베딩에서 투영됨을 이해한다
  • • Q·K 내적이 관련도 점수라는 것을 파악한다
심화 학습
  • • $W_Q, W_K, W_V$ 투영에서 softmax 가중합까지 손으로 계산할 수 있다
  • • 하나의 임베딩을 세 역할로 분리하는 이유(표현력 확보)를 설명할 수 있다
  • • K는 점수 계산에, V는 내용 전달에 쓰이는 분업 구조를 구분한다
실무 적용
  • • Q·K·V 투영을 저랭크 쌍선형 유사도 함수의 관점에서 해석할 수 있다
  • • 멀티헤드 어텐션이 Q·K·V 구조의 병렬 확장임을 이해한다
  • • KV 캐시·크로스 어텐션 등 역할 비대칭을 활용한 실무 최적화를 파악한다
한눈에 보기

Query·Key·Value는 어텐션에서 각 토큰의 임베딩을 학습되는 세 행렬 Loading...로 투영해 만든 세 벡터로, Q는 "무엇을 찾는가", K는 "나는 어떤 정보인가", V는 "실제로 전달할 내용"의 역할을 맡는다.

이 내용은 넘스탯의 어텐션 시뮬레이터에서 직접 실험으로 확인할 수 있습니다.

학습 로드맵

각 단계를 클릭하면 해당 학습 내용을 볼 수 있습니다

기초 이해
개념 정의와 기본 원리
15
클릭
심화 학습
공식 유도와 다양한 예시
35
클릭
실무 적용
실제 케이스와 고급 응용
50

학습 진도 (완료한 단계)

0%

기초 이해도서관 검색으로 보는 Q·K·V

기초 이해: 도서관 검색으로 보는 Q·K·V

난이도 2/5
약 15분

어텐션은 각 토큰이 문장 안의 다른 토큰들에게서 필요한 정보를 끌어오는 장치입니다. 이때 각 토큰은 임베딩 벡터 하나로 세 가지 일을 동시에 해야 합니다 — 질문을 던지고(무엇이 필요한가), 검색에 응답하고(나는 어떤 정보인가), 내용을 전달하는(실제로 줄 것은 무엇인가) 일입니다. 그래서 하나의 임베딩을 세 개의 벡터, 즉 Query(질의)·Key(색인)·Value(내용)로 투영해 역할을 나눕니다.

셀프 어텐션 — 문장이 자기 자신에 집중같은 입력에서 쿼리·키·값을 만들어 모든 토큰 쌍의 관련도를 계산합니다고양이잔다키 (어디에 집중하나)0.550.300.050.100.150.550.100.200.100.350.450.100.100.350.100.45고양이잔다쿼리 (누가 보나)※ 진한 칸일수록 강한 관련 · 순서 무관하게 모든 쌍을 한 번에 계산 → 병렬 처리·장거리 의존성
핵심 포인트
  • Query(질의): 이 토큰이 "무엇을 찾고 있는가"를 담은 벡터
  • Key(색인): 이 토큰이 "어떤 정보를 갖고 있다고 광고하는가"를 담은 벡터
  • Value(내용): 점수가 높을 때 "실제로 전달되는 내용"을 담은 벡터
  • 세 벡터 모두 같은 임베딩에서 학습되는 행렬 Loading...를 곱해 만든다
간단한 예시

문장 속 토큰 "먹었다"가 목적어를 찾는 상황을 아주 작은 숫자로 흉내 냅니다. "먹었다"의 Query: q = [1, 0] ("먹을 수 있는 것"을 찾는 질의라고 가정) "사과"의 Key: k1 = [1, 0] (음식 성질을 광고) "어제"의 Key: k2 = [0, 1] (시간 성질을 광고) 유사도 = 내적: q·k1 = 1×1 + 0×0 = 1 ← "사과"와 잘 맞음 q·k2 = 1×0 + 0×1 = 0 ← "어제"와는 무관 softmax로 가중치 변환: e^1/(e^1+e^0) ≈ 0.731, e^0/(e^1+e^0) ≈ 0.269 → "먹었다"는 "사과"의 Value를 73%, "어제"의 Value를 27% 비율로 섞어 가져옵니다.

이해도 확인하기

정답: Query는 검색창에 입력하는 검색어, Key는 책 등에 붙은 색인 라벨, Value는 책 속의 실제 내용입니다. 검색어와 색인을 대조해 관련도를 매기고, 관련도가 높은 책의 내용을 많이 가져옵니다.

정답: 모두 같은 토큰 임베딩 하나에서 만들어집니다. 임베딩에 학습되는 세 행렬 Loading...를 각각 곱해 서로 다른 세 벡터로 투영합니다.

정답: 한 토큰의 Query와 다른 토큰의 Key의 내적으로 판단합니다. 내적이 클수록 관련이 높다고 보고, softmax를 거쳐 그 토큰의 Value를 더 큰 비중으로 가져옵니다.

LLM 이론 페이지로 돌아가기