Skip to content

Transformer와 어텐션 메커니즘: 대형 모델의 핵심 엔진

2017년, Google이 논문 《Attention Is All You Need》에서 제안한 Transformer 아키텍처는 자연어 처리의 게임 규칙을 완전히 바꾸었습니다. 이는 전통적인 순환 신경망(RNN)을 버리고 어텐션 메커니즘만으로 더 강력한 성능과 더 높은 학습 효율을 달성했습니다. 오늘날 거의 모든 대형 언어 모델——GPT, BERT, T5, LLaMA——는 Transformer를 기반으로 구축되어 있습니다.

🔄
RNN 的困境
顺序处理,长距离依赖衰减
Transformer 突破
并行计算,全局注意力
🎯
注意力机制
动态关注重要信息
🚀
大模型基石
GPT、BERT 的核心架构

1. RNN의 한계와 Transformer의 돌파구

Transformer가 등장하기 전, 시퀀스 데이터(텍스트, 음성 등)를 처리하는 주류 방법은 순환 신경망(RNN)과 그 변형인 LSTM, GRU였습니다. 이 모델들은 순환 구조를 통해 시퀀스의 요소를 하나씩 처리하고 숨겨진 상태를 유지하여 이력 정보를 기억합니다.

1.1 RNN의 세 가지 치명적 결함

순차적 의존성, 병렬 처리 불가: RNN은 이전 시간 단계의 계산이 완료되어야 다음 단어를 처리할 수 있습니다. 이로 인해 학습 속도가 극도로 느리고 현대 GPU의 병렬 계산 능력을 충분히 활용할 수 없습니다.

장거리 의존성 감쇠: 개선된 LSTM조차 긴 텍스트를 처리할 때 초기 정보가 점차 "잊혀집니다". 예를 들어 500단어의 글에서 모델이 초반에 언급된 핵심 정보를 기억하기 어렵습니다.

그래디언트 소실/폭발: 역전파 시 그래디언트가 시간 단계를 따라 층층이 전달되어 그래디언트 소실이나 폭발이 발생하기 쉽고, 이로 인해 학습이 불안정해집니다.

1.2 Transformer의 혁명적 돌파구

Transformer는 자기 어텐션 메커니즘(Self-Attention) 을 통해 모델이 전체 시퀀스를 "한눈에" 볼 수 있게 하여, 임의의 두 위치 간 관계를 직접 계산하고 정보를 단계적으로 전달할 필요가 없습니다.

RNN / LSTM
顺序处理:词1 → 词2 → 词3
❌ 长距离依赖衰减
❌ 无法并行训练
Transformer
并行处理:所有词同时计算
✅ 全局注意力
✅ 高效并行

Transformer의 핵심 장점

  • 병렬 계산: 모든 위치의 어텐션을 동시에 계산 가능, 학습 속도 수십 배 향상
  • 전역 시야: 장거리 의존성을 직접 포착, 시퀀스 길이 제한 없음
  • 확장성: 아키텍처가 간결하고 통일되어 있어 더 깊은 네트워크 적층 용이

2. Transformer 완전한 아키텍처: 전체에서 세부로

Transformer의 완전한 아키텍처는 인코더(Encoder)디코더(Decoder) 두 부분으로 구성되며, 각각 입력 이해와 출력 생성을 담당합니다.

Encoder(编码器)
× N 层
Multi-Head Self-Attention
捕获输入序列内部依赖
Add & Norm
Feed Forward Network
位置独立的非线性变换
Add & Norm
输入
Token Embedding + Positional Encoding
Decoder(解码器)
输出
Linear + Softmax → 概率分布
× N 层
Masked Self-Attention
只看当前位置之前的词
Add & Norm
Cross-Attention
关注 Encoder 的输出
Add & Norm
Feed Forward Network
位置独立的非线性变换
Add & Norm
输出(移位)
Token Embedding + Positional Encoding

2.1 인코더(Encoder)

문장 "은행 계좌의 잔액이 부족합니다"를 예로 들면, 모델이 "잔액"이라는 단어를 처리할 때 다른 단어들과의 관련성을 자동으로 계산합니다:

  • "잔액"과 "계좌"는 높은 관련성(0.35)
  • "잔액"과 "은행"은 중간 관련성(0.20)
  • "잔액"과 "의", "이" 등 기능어는 낮은 관련성(0.05-0.10)

이러한 관련성은 사람이 규정한 것이 아니라 모델이 대량의 데이터를 통해 자동으로 학습한 것입니다.

自注意力示例:「他」关注「小明」
小明 把 苹果 给了 的 母亲
小明
65%
5%
苹果
10%
给了
10%
5%
3%
母亲
2%
「他」把 65% 注意力投向「小明」,识别代词指代关系

2.2 어텐션 계산 과정

자기 어텐션 메커니즘은 세 가지 핵심 단계를 통해 구현됩니다:

  1. Q, K, V 벡터 생성: 각 단어가 세 개의 서로 다른 선형 변환을 통해 Query(질의), Key(키), Value(값) 세 벡터를 생성
  2. 어텐션 가중치 계산: Query와 모든 Key의 내적을 계산하여 유사도 점수 획득
  3. 가중 합산: 어텐션 가중치로 Value 벡터를 가중 합산하여 최종 출력 획득

3. Query, Key, Value: 어텐션의 삼총사

Transformer의 어텐션 메커니즘은 정보 검색의 아이디어를 차용하여 각 단어를 세 개의 서로 다른 벡터 공간에 매핑합니다.

3.1 세 벡터의 역할

Query(질의): "무엇을 찾고 싶은지"를 나타냄. 현재 단어의 질의 의도로, 다른 단어의 Key와 매칭하는 데 사용됨.

Key(키): "내가 무엇인지"를 나타냄. 각 단어의 특징 식별자로, Query에 의해 검색됨.

Value(값): "내 내용이 무엇인지"를 나타냄. 실제 전달할 정보로, 어텐션 가중치에 따라 가중 합산됨.

이 설계의 교묘함은: 유사도 계산(Q·K)과 정보 전달(V)이 분리되어 있다는 점입니다. 모델은 "어떤 단어에 주목해야 하는지"와 "주목 후 어떤 정보를 추출해야 하는지"가 별개의 문제임을 학습할 수 있습니다.

🔍
Query
我想找什么
🔑
Key
我是什么
💎
Value
我的内容
Attention(Q, K, V) = softmax(QKT / √dk) V

3.2 어텐션 계산 공식

완전한 어텐션 계산 공식은:

Attention(Q, K, V) = softmax(QK^T / √d_k) V

여기서:

  • QK^T: Query와 Key의 내적을 계산하여 유사도 행렬 획득
  • √d_k: 스케일링 팩터, 내적 값이 너무 커져 softmax 그래디언트가 소실되는 것을 방지
  • softmax: 유사도를 확률 분포(어텐션 가중치)로 변환
  • 마지막으로 V와 곱함: 어텐션 가중치로 Value를 가중 합산

4. 멀티헤드 어텐션: 여러 각도에서 의미 이해하기

단일 어텐션 헤드는 한 가지 유형의 의존 관계만 포착할 수 있습니다. 모델이 여러 각도에서 문장을 이해하도록 하기 위해 Transformer는 멀티헤드 어텐션(Multi-Head Attention) 을 도입했습니다.

4.1 멀티헤드의 작동 메커니즘

멀티헤드 어텐션은 입력을 여러 개의 서로 다른 부분 공간에 투영하고, 각 "헤드"가 독립적으로 어텐션을 계산한 후, 마지막에 모든 헤드의 출력을 연결합니다.

전형적인 Transformer는 8개 또는 16개의 어텐션 헤드를 사용하며, 각 헤드는 서로 다른 언어 현상에 집중할 수 있습니다:

  • 문법 헤드: 주어-술어-목적어, 한정어-보어 등 문법 관계 식별
  • 의미 헤드: 단어 의미 관련성 포착("은행"과 "계좌" 등)
  • 위치 헤드: 인접 단어의 국소적 의존성에 주목
  • 지시 헤드: 대명사 지시 대상 해석("그"가 "철수"를 가리킴)
  • 감정 헤드: 긍정/부정 색채와 감정 성향 식별
  • 개체 헤드: 인명, 지명 등 명명된 개체 식별
语法头
主谓宾关系
语义头
词义关联
位置头
距离关系
指代头
代词消解
情感头
情绪倾向
实体头
命名实体
修饰头
定状补
全局头
整体语境
8 个头从不同角度理解语义,最后拼接融合

4.2 멀티헤드의 장점

더 강한 표현력: 서로 다른 헤드가 서로 다른 유형의 의존 관계를 포착하여 단일 시각의 한계를 극복.

병렬 계산: 여러 헤드를 동시에 계산할 수 있어 계산 시간 증가 없음.

더 나은 견고성: 일부 헤드의 학습이 실패해도 다른 헤드가 여전히 유효한 정보를 제공.

멀티헤드 어텐션의 수학적 표현

MultiHead(Q, K, V) = Concat(head_1, ..., head_h) W^O
여기서 head_i = Attention(QW_i^Q, KW_i^K, VW_i^V)

각 헤드는 독립적인 가중치 행렬 W^Q, W^K, W^V를 가지며, 마지막으로 W^O를 통해 모든 헤드의 출력을 융합합니다.


5. Transformer 완전한 아키텍처: 인코더와 디코더

Transformer의 완전한 아키텍처는 인코더(Encoder)디코더(Decoder) 두 부분으로 구성되며, 각각 입력 이해와 출력 생성을 담당합니다.

5.1 인코더(Encoder)

인코더는 여러 층(보통 6-12층)의 동일한 구조가 적층되어 있으며, 각 층은 두 개의 하위 층을 포함합니다:

  1. 멀티헤드 자기 어텐션 층: 입력 시퀀스 내부의 의존 관계 포착
  2. 피드포워드 신경망(Feed Forward): 각 위치에 대해 독립적으로 비선형 변환 수행

각 하위 층 뒤에는 잔차 연결(Residual Connection)층 정규화(Layer Normalization) 가 있어, 심층 네트워크의 학습 안정성을 보장합니다.

5.2 디코더(Decoder)

디코더도 여러 층이 적층되어 있지만, 각 층에는 세 개의 하위 층이 있습니다:

  1. 마스크드 멀티헤드 자기 어텐션(Masked Multi-Head Attention): 현재 위치 이전의 단어만 볼 수 있어 "컨닝" 방지
  2. 교차 어텐션(Cross-Attention): 인코더와 디코더를 연결, 디코더가 입력 시퀀스에 주목하도록 함
  3. 피드포워드 신경망: 인코더와 동일
Encoder(编码器)
× N 层
Multi-Head Self-Attention
捕获输入序列内部依赖
Add & Norm
Feed Forward Network
位置独立的非线性变换
Add & Norm
输入
Token Embedding + Positional Encoding
Decoder(解码器)
输出
Linear + Softmax → 概率分布
× N 层
Masked Self-Attention
只看当前位置之前的词
Add & Norm
Cross-Attention
关注 Encoder 的输出
Add & Norm
Feed Forward Network
位置独立的非线性变换
Add & Norm
输出(移位)
Token Embedding + Positional Encoding

5.3 현대적 변형: 인코더 전용 vs 디코더 전용

원본 Transformer는 인코더와 디코더를 모두 포함하지만, 현대의 대형 모델은 보통 그중 하나만 사용합니다:

아키텍처 유형대표 모델적용 작업
인코더 전용BERT, RoBERTa텍스트 분류, 개체명 인식, Q&A
디코더 전용GPT, LLaMA, Claude텍스트 생성, 대화, 코드 완성
인코더-디코더T5, BART번역, 요약, 텍스트 재작성

GPT가 디코더만 사용하는 이유?

GPT 시리즈 모델은 자기회귀 생성 방식을 채택하여 다음 단어를 하나씩 예측합니다. 디코더 전용 아키텍처는 이러한 생성 작업에 자연스럽게 적합하며, 구조가 더 간결하여 천억 파라미터 규모로 쉽게 확장할 수 있습니다.


6. 위치 인코딩: 모델에 단어 순서를 알려주기

Transformer의 자기 어텐션 메커니즘 자체는 위치 무관합니다——문장을 단어의 집합으로 보며 단어의 순서를 신경 쓰지 않습니다. 하지만 단어 순서는 의미에 매우 중요합니다: "나는 너를 사랑한다"와 "너는 나를 사랑한다"는 완전히 다른 의미입니다!

6.1 위치 인코딩의 필요성

모델이 위치 정보를 감지하도록 하기 위해, Transformer는 입력 임베딩에 위치 인코딩(Positional Encoding) 을 추가합니다. 위치 인코딩은 단어 임베딩과 동일한 차원의 벡터로, 단어 임베딩에 직접 더해집니다.

问题:词序很重要
我爱你你爱我
解决:位置编码
Token Embedding + Positional Encoding
正弦余弦(Transformer 原始)
可学习(BERT、GPT)
旋转编码 RoPE(LLaMA)

6.2 사인-코사인 위치 인코딩

원본 Transformer는 고정된 사인-코사인 함수로 위치 인코딩을 생성합니다:

PE(pos, 2i) = sin(pos / 10000^(2i/d))
PE(pos, 2i+1) = cos(pos / 10000^(2i/d))

이 설계의 장점:

  • 유일성: 각 위치에 유일한 인코딩
  • 상대적 위치: 모델이 상대 거리 관계를 학습 가능
  • 외삽성: 학습 시보다 더 긴 시퀀스 처리 가능

6.3 현대적 위치 인코딩 방안

연구가 깊어짐에 따라 더 많은 위치 인코딩 방안이 등장했습니다:

학습 가능한 위치 인코딩: BERT, GPT는 위치 인코딩을 고정 함수가 아닌 학습 가능한 파라미터로 사용.

상대적 위치 인코딩: T5, DeBERTa는 절대 위치를 인코딩하지 않고 단어 간 상대적 거리를 인코딩.

회전 위치 인코딩(RoPE): LLaMA, GPT-NeoX가 사용하는 방안, Q와 K 벡터를 회전시켜 위치 정보를 주입, 외삽 성능이 더 우수.

ALiBi: 어텐션 점수에 바이어스 항을 추가하여 위치 인식 실현, 추가 파라미터 불필요.


7. Transformer의 영향과 미래

Transformer의 등장은 단순히 새로운 아키텍처의 탄생이 아니라, 전체 AI 연구 패러다임의 전환입니다.

7.1 통일된 사전 학습 패러다임

Transformer는 "사전 학습 + 파인튜닝"을 NLP의 표준 흐름으로 만들었습니다. 방대한 무라벨 텍스트에서 사전 학습을 통해 모델은 언어의 범용 표현을 배우고, 그 후 소량의 라벨 데이터만으로 다양한 하위 작업에 적응할 수 있습니다.

7.2 크로스모달 범용 아키텍처

Transformer의 성공은 텍스트에만 국한되지 않습니다. 이미 다음 분야에 성공적으로 적용되었습니다:

  • 컴퓨터 비전: Vision Transformer(ViT)가 이미지 분류에서 CNN을 능가
  • 음성 인식: Whisper가 Transformer로 다국어 음성-텍스트 변환 구현
  • 단백질 구조 예측: AlphaFold 2가 Transformer로 단백질 3D 구조 예측
  • 강화 학습: Decision Transformer가 RL 문제를 시퀀스 모델링으로 전환

7.3 대형 모델 시대의 기초

GPT-3의 1750억 파라미터에서 GPT-4의 1조 파라미터까지, Transformer는 놀라운 확장성을 보여줍니다. 병렬 계산 특성 덕분에 전례 없는 거대 모델을 학습할 수 있으며, 창발 능력(Emergent Abilities) 을 관찰할 수 있습니다——모델이 충분히 커지면 자동으로 추론, 코딩, 다국어 등 능력을 "깨닫는" 현상입니다.

7.4 미래의 도전과 방향

Transformer가 거대한 성공을 거두었지만 여전히 도전에 직면해 있습니다:

계산 복잡도: 자기 어텐션의 복잡도는 O(n²)로, 긴 텍스트 처리 시 계산량이 거대함.

긴 텍스트 모델링: 이론적으로는 임의의 길이를 처리할 수 있지만, 실제로는 GPU 메모리와 계산 리소스에 제한됨.

설명 가능성: 어텐션 가중치가 어느 정도 설명 가능성을 제공하지만, 심층 네트워크의 의사 결정 과정은 여전히 블랙박스입니다.

현재의 연구 방향은 다음을 포함합니다:

  • 효율적 Transformer: Linformer, Performer, Flash Attention 등으로 복잡도 감소
  • 긴 컨텍스트 모델링: Sparse Attention, Sliding Window, Memory 메커니즘
  • 멀티모달 융합: 텍스트, 이미지, 오디오를 통합 처리하는 네이티브 멀티모달 아키텍처

8. 요약

Transformer와 어텐션 메커니즘의 제안은 딥러닝이 "수동 특징 설계"에서 "엔드투엔드 학습"으로의 완전한 전환을 의미합니다. 이는 RNN의 기술적 병목을 해결했을 뿐만 아니라, 더 중요하게는 간결하고 범용적이며 확장 가능한 아키텍처를 제공하여 대형 모델 시대의 기초가 되었습니다.

Transformer를 이해하는 것은 현대 AI의 핵심을 이해하는 것입니다. BERT의 양방향 인코딩에서 GPT의 자기회귀 생성, 그리고 멀티모달 대형 모델의 통일된 표현에 이르기까지, 이 모든 돌파구는 Transformer의 어깨 위에 서 있습니다.

미래에는 연산력의 향상과 알고리즘의 최적화에 따라 Transformer는 계속 진화하여 AI를 더 강력하고 더 범용적인 방향으로 추진할 것입니다.