최근 AI 분야를 혁신하고 있는 거대 언어 모델(LLM)의 근간에는 트랜스포머(Transformer) 아키텍처가 있습니다. 이 글에서는 원본 트랜스포머 구조부터 BERT와 GPT에 이르기까지 트랜스포머의 세가지 주요 변형과 그 핵심 작동 원리를 깊이 있게 탐구해볼 예정입니다.
트랜스포머 아키텍처 : 인코더와 디코더의 역할
트랜스포머는 본래 2017년 논문 Attention is All You Need에서 소개된 인코더-디코더 구조입니다. 하지만 LLM 시대에 들어서면서 이 구조는 목적에 따라 세 가지 형태로 진화했습니다.
아래 링크는 해당 논문의 링크입니다.

| 모델 | 사용 모듈 | 핵심 역할 | 학습 방식 |
| 원본 트랜스포머 | 인코더 + 디코더 | 입력 → 출력 변환 | Seq2Seq(시퀀스 투 시퀀스) |
| GPT(Generative) | 디코더 전용 | 텍스트 생성 | 자기 회귀(Autoregressive) 언어 모델링 |
| BERT(Understanding) | 인코더 전용 | 문맥 이해, 분류 | 마스킹된 단어 예측(MLM) |
인코더란?
- 입력 문장(시퀀스)을 읽고 문맥 정보를 압축한 벡터 표현으로 변환합니다. 문장의 이해와 의미 추출을 담당합니다.
- 입력 문장의 모든 단어를 동시에 처리하여 문맥적 의미를 파악합니다. (양방향 문맥 파악)
- 핵심은 셀프 어텐션(Self-Attention)으로, 문장 내 각 단어가 다른 단어들과의 관계를 통해 자신의 의미를 강화합니다.
- BERT와 같이 텍스트 분류나 이해 작업에 특화된 모델은 인코더 블록만을 사용합니다.
- 복잡한 외국어 문장을 완전히 읽고 그 핵심 의미를 파악하는 통역사와 같습니다.
- 입력 문맥을 이해하고 벡터로 압축 합니다.
디코더란?
- 인코더에서 전달 받은 문맥 정보(혹은 자기 자신이 생성한 이전 단어들)를 기반으로 새로운 출력 문장을 생성합니다. 텍스트 생성을 담당합니다.
- 한번에 하나의 단어만 자기회귀적(Autogressive) 방식으로 작동합니다.
- Causal Masking을 사용하여 아직 생성되지 않은 미래의 단어는 보지 못합니다.
- 원본 트랜스포머에서는 인코더의 출력(Key, Value)을 받아 번역 등 작업을 수행합니다.
- GPT와 같이 대화, 작문 등 텍스트 생성에 특화된 모델은 디코더 블록만을 사용합니다.
- 파악된 핵심 의미를 바탕으로 새로운 언어(출력)로 문장을 만들어내는 작가와 같습니다.
- 압축된 정보를 바탕으로 새로운 문장을 생성합니다.
GPT : 생성에 특화된 디코더의 힘
GPT 모델은 디코더 블록만을 사용하며, 구조가 비교적 단순합니다. GPT의 핵심은 자기회귀(Autoregressive) 방식입니다.
자기 회귀란?
이전에 생성된 토큰을 입력으로 받아 다음 토큰을 순차적으로 예측하며 텍스트를 완성하는 방식입니다. 이는 마치 사람이 문장을 읽고 다음 단어를 예측하는 방식과 유사합니다. 이 때문에 GPT는 대화, 스토리 생성 등 일관성 있는 텍스트 생성 작업에 탁월합니다.
LLM의 작동 원리 : 임베딩과 어텐션
트랜프로머 기반 모델이 언어를 이해하고 생성하는 비결은 임베디오가 어텐션 두 가지 메커니즘에 있습니다.
언어의 의미를 담는 그릇, 임베딩
컴퓨터가 단어를 이해하려면 숫자로 변환해야 합니다. 단순히 구분하는 One-Hot Encoding 과 달리, LLM은 임베딩(Embedding)을 사용합니다.
| 방식 | 역할 | 특징 |
| One-Hot Encoding | 단어 구분 | 희소(Spare) 벡터, 의미 없음 |
| 임베딩 | 단어 의미 표현 | 밀집(Dense) 벡터, 의미적 유사성 반영 |
임베딩 덕분에 왕과 여왕 같은 유사한 단어들은 벡터 공간에서 가까운 위치에 놓이며, 벡터 간의 코사인 유사도를 통해 의미적 관계를 측정할 수 있게 됩니다.
문맥을 파악하는 레이더, 어텐션(Attention)
트랜스포머의 핵심은 셀프 어텐션(Self-Attention)입니다. 이는 문장 내의 모든 단어들이 서로에게 얼마나 관련 있는지 파악하여 단어의 문맥적 의미를 추출하는 과정입니다.
Q, K, V의 역할
현재 단어의 Q(Query) 벡터와 문장 내 모든 단어의 K(Key) 벡터 간의 내적을 계산합니다. 이 내적 값은 두 단어 간의 유사도, 즉 관련성을 나타냅니다. 이 유사도에 따라 V(Value) 벡터를 가중 평균하여 최종 출력 벡터를 만듭니다.
쉽게 말해, Q와 K를 본다는 것은 문맥적 유사도를 본다는 의미입니다.
신조어 처리를 하는 토큰화(Tokenization)
LLM은 단어 전체가 아닌 토큰(Token) 단위를 처리합니다. 대부분 LLM은 BPE(Byte Pair Encoding) 같은 서브워드 토큰화 방식을 사용합니다.
이 방식 덕분에, LLM은 어휘 집합(Vocabulary) 크기를 효율적으로 유지하면서도 처음 보는 신조어나 복합어도 의미 있는 서브워드로 쪼개어 처리할 수 있습니다.
어텐션(Attention) 메커니즘 심층 이해
어텐션은 트랜스포머 모델의 핵심이며 문장을 이해할 때 가장 중요한 정보를 선택적으로 집중하는 방식입니다. 쉽게 말해, 사람이 중요한 것에 주목하듯이, 모델도 입력 시퀀스에서 현재 처리하는 단어와 가장 관련성이 높은 다른 단어들에 주목하게 해주는 기술입니다.
어텐션의 정의 및 목적
- 정의
- 어텐션은 입력 시퀀스의 각 요소(토큰)에 가중치(Weight)를 할당하여, 현재 처리 중인 토큰과 관련 정보를 선택적으로 추출하는 메커니즘입니다.
- 목적
- 문맥 이해 강화 : 단어의 의미는 주변 단어와 관꼐 속에서 결정됩니다. 어텐션은 이 관계를 파악하여 단어의 문맥적 의미를 풍부하게 만듭니다.
- 정보 압축 : 긴 시퀀스에서 필요한 정보만 효율적으로 조합하여 다음 단계(예 : 다음 단어 예측)로 전달합니다.
어텐션의 동작 원리 : Q, K, V
Q, K를 보는 것이 유사도를 보는 것입니다.. 어텐션은 세 가지 벡터 $\mathbf{Q}$ (Query), $\mathbf{K}$ (Key), $\mathbf{V}$ (Value)를 사용하여 작동합니다.
| 벡터 | 역할 | 비유적 이해 |
| Q(Query) | 질문자 | 내가 찾는 정보는 무엇인가?(현재 단어) |
| K(Key) | 라벨/색인 | 나에게 이 정보가 얼마나 관련 있는가?(모든 단어) |
| V(Value) | 정보/내용 | 전달해야 할 정보의 내용(모든 단어) |
동작 단계(Scaled Dot-Product Attention)
1. 유사도 계산(Q와 K의 내적)
- 현재 단어의 Q와 문장 내 모든 단어의 K를 내적하여 유사도 점수를 계산합니다.
- 점수가 높을 수록 두 단어는 관련성이 높다는 의미입니다. 이것이 바로 유사도를 본다는 과정입니다.
- $\text{Score} = \mathbf{Q} \cdot \mathbf{K}^{\text{T}}$
2. 가중치 변환(Softmax)
- 계산된 점수들을 $\sqrt{d_k}$로 나눠 스케일링한 후, Softmax 함수를 적용하여 점수들을 모두 더하면 1이 되는 확률 분포(가중치)로 변환합니다.
- 이 가중치는 현재 단어가 각 다른 단어에 얼마나 집중해야 하는지를 나타냅니다.
3. 컨텍스트 추출(가중 평균)
- 이 가중치를 문장 내 모든 단어의 $\mathbf{V}$에 곱하고 합산합니다. (가중 평균)
- 결과 : 현재 단어의 $\mathbf{Q}$가 질문한 내용에 따라, 문장 내에서 가장 중요한 $\mathbf{V}$ 정보들만 조합된 새로운 벡터가 생성됩니다. 이 벡터는 해당 단어의 문맥적 표현이 됩니다.
어텐션의 활용 : Self-Attention 과 Causal Attention
트랜스포머 기반 모델들은 목적에 따라 어텐션 메커니즘을 다르게 활용합니다.
1. Self-Attention(셀프 어텐션)
- 활용 모델 : BERT의 인코더 블록( 및 원본 트랜스포머 인코더)
- 특징 : 문장 내의 모든 단어가 서로에게 $\mathbf{Q}, \mathbf{K}, \mathbf{V}$ 역할을 수행하며, 양방향으로 정보를 교환합니다.
- 결과 : 문장의 전체적인 문맥을 한 번에 파악할 수 있어 텍스트 이해(NLU)에 유리합니다.
2. Causal(Masked) Attention(인과적 어텐션)
- 활용 모델 : GPT의 디코더 블록
- 특징 : 현재 단어를 처리할 때 오직 이전에 나온 단어들만 참조할 수 있도록 마스크(Mask)를 씌웁니다. 미래의 단어는 볼 수 없습니다.
- 결과 : 이전 단어에만 기반하여 다음 단어를 예측하는 자기회귀적 텍스트 생성이 가능해집니다.
'AI > 인공지능(CNN)' 카테고리의 다른 글
| [인공지능] 컨볼루션과 푸리에 해석: 딥러닝이 패턴을 찾는 원리 (0) | 2025.11.03 |
|---|---|
| [인공지능] ResNet 전이 학습 : 에포크 설정이 성능에 미치는 영향 분석 (0) | 2025.11.02 |
| [인공지능] 머신 러닝의 핵심 열쇠 : 베이즈 정리(Bayes' Theorem) (0) | 2025.11.01 |
| [인공지능] 전이 학습(Transfer Learning) 완벽 가이드: CNN 기반 Fine-tuning 및 Feature Extraction 분석 (0) | 2025.10.31 |
| [인공지능] 잔차 신경망(ResNet)으로 기울기 소실 문제 해결 (0) | 2025.10.30 |