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

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

로그인
학습 메뉴
도움말

Causal·Cross 어텐션과 마스킹

마일스톤 학습법으로 단계별 완전 정복
LLM
어텐션
Causal Attention
Cross Attention
마스킹
GPT
BERT
트랜스포머
KV 캐시
이 개념 직접 실험하기 — 어텐션 시뮬레이터
이 학습을 통해 달성할 수 있는 목표
기초 이해
  • • 양방향·causal·cross 세 어텐션 형태의 차이 이해
  • • causal 마스크 행렬이 하삼각 모양인 이유 파악
  • • 마스크 유무가 이해 모델과 생성 모델을 가른다는 점 이해
심화 학습
  • • 마스크가 음의 무한대 덧셈과 softmax로 가중치를 0으로 만드는 원리 이해
  • • cross-attention에서 Q와 K·V의 출처가 분리되는 구조 파악
  • • causal 마스크가 문장 하나로 병렬 학습을 가능하게 하는 이유 설명
실무 적용
  • • 인코더·디코더·인코더-디코더 3계열 아키텍처 지형의 구분 기준 이해
  • • KV 캐시가 causal 구조에서만 성립하는 이유와 생성 효율에의 영향 파악
  • • 작업 성격(이해 vs 생성)에 따라 모델 계열을 선택하는 판단 기준 습득
한눈에 보기

어텐션은 마스킹 방식에 따라 세 형태로 나뉜다. 양방향 self-attention(BERT류)은 문장 전체를 보고, causal self-attention(GPT류)은 하삼각 마스크로 미래 토큰을 가려 다음 토큰을 생성하며, cross-attention(인코더-디코더)은 디코더가 인코더 출력을 참조한다.

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

학습 로드맵

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

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

학습 진도 (완료한 단계)

0%

기초 이해어텐션의 세 가지 사용 형태

기초 이해: 어텐션의 세 가지 사용 형태

난이도 2/5
약 15분

어텐션이라는 계산 자체는 하나지만, "누구를 볼 수 있는가"를 정하는 규칙에 따라 세 가지 형태로 나뉩니다. 첫째, 양방향 self-attention은 문장 안의 모든 토큰이 서로를 자유롭게 봅니다(BERT류 — 문장 이해에 적합). 둘째, causal self-attention은 각 토큰이 자기보다 앞(왼쪽)의 토큰만 보도록 미래를 가립니다(GPT류 — 다음 토큰 생성에 적합). 셋째, cross-attention은 한 문장(디코더)이 다른 문장(인코더 출력)을 참조합니다(번역 등). 미래를 가리는 장치가 마스크(mask)이며, 마스크가 있느냐 없느냐가 모델의 용도를 결정합니다.

셀프 어텐션 — 문장이 자기 자신에 집중같은 입력에서 쿼리·키·값을 만들어 모든 토큰 쌍의 관련도를 계산합니다고양이잔다키 (어디에 집중하나)0.550.300.050.100.150.550.100.200.100.350.450.100.100.350.100.45고양이잔다쿼리 (누가 보나)※ 진한 칸일수록 강한 관련 · 순서 무관하게 모든 쌍을 한 번에 계산 → 병렬 처리·장거리 의존성
핵심 포인트
  • 양방향 self-attention: 모든 토큰이 문장 전체를 봄 — 문장 이해(BERT류)에 적합
  • causal(masked) self-attention: 미래 토큰을 마스크로 가려 왼쪽만 봄 — 다음 토큰 생성(GPT류)에 적합
  • cross-attention: 디코더가 인코더 출력을 참조 — 번역처럼 다른 시퀀스를 봐야 할 때 사용
  • 마스크는 가릴 위치에 음의 무한대를 더하는 장치로, 마스크 행렬은 하삼각(아래 삼각형) 모양
간단한 예시

문장: "나는 통계를 배운다" → 토큰 3개 [나는, 통계를, 배운다] causal 마스크 행렬 (행 = 보는 토큰, 열 = 보이는 대상, O = 볼 수 있음, X = 가림): 나는 통계를 배운다 나는 O X X 통계를 O O X 배운다 O O O O가 대각선 아래쪽(하삼각)에만 있습니다. - "나는"은 자기 자신만 봅니다. - "통계를"은 "나는"과 자기 자신을 봅니다. - "배운다"는 세 토큰을 모두 봅니다. 양방향 어텐션이라면 아홉 칸이 전부 O가 됩니다.

이해도 확인하기

정답: 학습 목표가 "지금까지의 토큰만 보고 다음 토큰을 맞히기"이기 때문입니다. 미래 토큰을 볼 수 있으면 정답을 미리 보는 셈이 되어, 학습은 쉽게 되지만 실제 생성 시(미래가 존재하지 않는 상황)에는 쓸모없는 모델이 됩니다.

정답: 대각선을 포함한 아래쪽 삼각형(하삼각)만 볼 수 있는 모양입니다. 첫 토큰은 1칸, 둘째 토큰은 2칸, 셋째 토큰은 3칸을 볼 수 있어 O가 계단식으로 늘어납니다.

정답: self-attention은 한 문장 안의 토큰끼리 서로를 참조하지만, cross-attention은 디코더의 토큰이 인코더가 처리한 다른 시퀀스(예: 번역 원문)를 참조합니다. 보는 대상이 자기 자신이 아니라 외부 시퀀스라는 점이 다릅니다.

LLM 이론 페이지로 돌아가기