LLM 기초 (Large Language Model Fundamentals)¶
대규모 언어 모델의 이론적 기반과 핵심 원리. 언어 모델링의 수학적 정의부터 현대 LLM의 작동 방식까지 상세히 다룬다.
1. 언어 모델링의 이론적 기반¶
1.1 언어 모델의 정의¶
언어 모델(Language Model)은 단어 시퀀스에 확률을 부여하는 함수다.
Chain Rule(확률의 곱 법칙)을 적용하면:
즉, 전체 시퀀스의 확률은 각 단어가 이전 문맥에서 등장할 조건부 확률의 곱.
핵심 과제: \(P(w_i | w_{1:i-1})\) 추정 — 이전 단어들이 주어졌을 때 다음 단어의 확률 분포를 학습하는 것.
1.2 Shannon의 정보 이론과 언어¶
Claude Shannon(1948)의 "A Mathematical Theory of Communication"은 언어를 확률적 정보 소스로 모델링했다.
| 개념 | 수식 | 언어 모델에서의 의미 |
|---|---|---|
| 엔트로피 | \(H(X) = -\sum P(x) \log_2 P(x)\) | 언어의 본질적 불확실성 (bits/symbol) |
| 교차 엔트로피 | \(H(P,Q) = -\sum P(x) \log_2 Q(x)\) | 모델 Q가 실제 분포 P를 얼마나 잘 근사하는가 |
| KL Divergence | \(D_{KL}(P \| Q) = H(P,Q) - H(P)\) | P와 Q의 차이 (항상 ≥ 0) |
| Perplexity | \(PPL = 2^{H(P,Q)}\) | 모델이 평균적으로 고려하는 선택지 수 |
Shannon은 영어의 엔트로피를 0.6~1.3 bits/character로 추정했다. 이는 영어가 75% 이상 압축 가능함을 의미함.
1.3 Cross-Entropy Loss의 이론적 근거¶
모델 \(Q_\theta\)를 학습시켜 실제 언어 분포 \(P\)에 가깝게 만드는 것이 목표:
왜 Cross-Entropy인가?
- \(H(P, Q) = H(P) + D_{KL}(P \| Q)\)
- \(H(P)\)는 상수 (데이터 분포의 엔트로피)
- 따라서 \(\min H(P,Q) \Leftrightarrow \min D_{KL}(P \| Q)\)
Cross-Entropy 최소화 = KL Divergence 최소화 = 모델이 실제 분포에 가까워짐
1.4 Perplexity 상세 분석¶
| PPL 값 | 해석 | 예시 |
|---|---|---|
| 1 | 완벽한 예측 (다음 토큰 100% 확신) | 불가능 |
| 10 | 평균 10개 선택지 중 고민 | 매우 좋음 |
| 50 | 평균 50개 선택지 | 양호 |
| 100+ | 매우 불확실 | 개선 필요 |
현대 LLM의 PPL (Wikipedia 기준): - GPT-2 (1.5B): ~29 - GPT-3 (175B): ~20 - Llama 2 (70B): ~5-7
2. 언어 모델의 역사적 발전¶
2.1 통계적 언어 모델: N-gram (1980s-2000s)¶
Markov 가정: 다음 단어는 직전 n-1개 단어에만 의존
| N-gram | 조건 문맥 | 파라미터 수 | 예시 |
|---|---|---|---|
| Unigram | 없음 | O(V) | \(P(\text{dog})\) |
| Bigram | 1개 | O(V²) | \(P(\text{dog} \| \text{the})\) |
| Trigram | 2개 | O(V³) | \(P(\text{dog} \| \text{the}, \text{big})\) |
Maximum Likelihood Estimation:
스무딩 기법 (희소성 해결): - Add-k Smoothing: \(P(w_i|w_{i-1}) = \frac{C(w_{i-1}, w_i) + k}{C(w_{i-1}) + k|V|}\) - Kneser-Ney Smoothing: 더 정교한 백오프 방식 - Good-Turing Estimation
한계: - 차원의 저주: n이 커지면 파라미터가 기하급수적 증가 - 희소성: 대부분의 n-gram은 학습 데이터에서 관찰되지 않음 - 일반화 불가: "the big dog"을 봐도 "the large dog"을 이해 못함
2.2 신경망 언어 모델 (2003)¶
핵심 논문: A Neural Probabilistic Language Model (Bengio et al., 2003)
혁신적 아이디어: 단어를 연속 벡터 공간에 임베딩
왜 혁신적이었나: 1. 분산 표현: 유사한 단어는 유사한 벡터 → 일반화 가능 2. 파라미터 공유: 비슷한 문맥 → 비슷한 예측 3. 연속 공간: 보간(interpolation) 가능
2.3 Word2Vec과 분산 가설 (2013)¶
핵심 논문: Efficient Estimation of Word Representations (Mikolov et al., 2013)
분산 가설 (Distributional Hypothesis):
"You shall know a word by the company it keeps." — J.R. Firth (1957)
단어의 의미는 그것이 등장하는 문맥에 의해 결정됨.
Word2Vec 학습 목표:
Skip-gram: 중심 단어로 주변 단어 예측 $\(\max \sum_{t=1}^{T} \sum_{-c \leq j \leq c, j \neq 0} \log P(w_{t+j} | w_t)\)$
CBOW: 주변 단어로 중심 단어 예측 $\(\max \sum_{t=1}^{T} \log P(w_t | w_{t-c}, ..., w_{t-1}, w_{t+1}, ..., w_{t+c})\)$
임베딩의 대수적 구조:
| 관계 유형 | 예시 벡터 연산 |
|---|---|
| 성별 | king - man + woman ≈ queen |
| 국가-수도 | Paris - France + Japan ≈ Tokyo |
| 시제 | walking - walk + swim ≈ swimming |
| 비교급 | bigger - big + small ≈ smaller |
2.4 순환 신경망: RNN, LSTM, GRU (2014-2016)¶
RNN의 핵심: 은닉 상태 \(h_t\)가 전체 이전 문맥을 압축
문제: Vanishing/Exploding Gradient
LSTM (Hochreiter & Schmidhuber, 1997):
게이트 메커니즘으로 장기 의존성 학습:
GRU (Cho et al., 2014): LSTM의 단순화 버전 (2개 게이트)
한계: - 순차 처리: 병렬화 불가능 → 학습 속도 제한 - Bottleneck: 모든 정보가 고정 크기 벡터에 압축
2.5 Attention 메커니즘 (2014-2015)¶
핵심 논문: Neural Machine Translation by Jointly Learning to Align and Translate (Bahdanau et al., 2014)
아이디어: 디코더가 인코더의 모든 은닉 상태에 동적으로 집중
이것이 나중에 Transformer의 Self-Attention으로 발전함.
2.6 Transformer (2017)¶
핵심 논문: Attention Is All You Need (Vaswani et al., 2017)
핵심 혁신: RNN 없이 Self-Attention만으로 시퀀스 처리
왜 \(\sqrt{d_k}\)로 나누는가?
\(Q\)와 \(K\)가 평균 0, 분산 1인 독립 성분을 가지면: $\(\text{Var}(q \cdot k) = d_k\)$
내적 값이 커지면 softmax가 포화(saturation) → gradient 소실 \(\sqrt{d_k}\)로 나눠 분산을 1로 유지
RNN vs Transformer 비교:
| 특성 | RNN | Transformer |
|---|---|---|
| 장거리 연결 | O(n) 스텝 | O(1) 직접 연결 |
| 병렬화 | 불가능 | 완전 병렬 |
| 계산 복잡도 | O(n·d²) | O(n²·d) |
| 위치 정보 | 암묵적 (순서) | 명시적 (PE) |
3. 아키텍처 패러다임¶
3.1 Encoder-Only (BERT 계열)¶
핵심 논문: BERT: Pre-training of Deep Bidirectional Transformers (Devlin et al., 2018)
학습 목표:
-
Masked Language Model (MLM): 15% 토큰을 마스킹하고 복원 $\(\mathcal{L}_{MLM} = -\sum_{i \in M} \log P(x_i | x_{\setminus M})\)$
-
Next Sentence Prediction (NSP): 두 문장이 연속인지 분류
특징: - 양방향 문맥: 모든 토큰이 전체 문맥을 볼 수 있음 - 표현 학습: 풍부한 문맥 임베딩 생성 - 용도: 분류, NER, QA 등 이해 태스크
입력: [CLS] The cat [MASK] on the mat [SEP]
↓
문맥: ◀───────────────────────────────────▶ (양방향)
↓
예측: sat
3.2 Decoder-Only (GPT 계열)¶
핵심 논문: - Improving Language Understanding by Generative Pre-Training (GPT-1, Radford et al., 2018) - Language Models are Unsupervised Multitask Learners (GPT-2, 2019) - Language Models are Few-Shot Learners (GPT-3, Brown et al., 2020)
학습 목표: 다음 토큰 예측 (Autoregressive)
Causal Masking: 미래 토큰을 볼 수 없음
왜 Decoder-Only가 주류가 되었나?:
- 단순성: 하나의 목표 (다음 토큰 예측)
- 생성 능력: 자연스러운 텍스트 생성
- 스케일링: 모델 크기와 데이터에 따라 성능 예측 가능
- In-Context Learning: 추가 학습 없이 새 태스크 수행
3.3 Encoder-Decoder (T5 계열)¶
아이디어: 모든 NLP 태스크를 Text-to-Text로 통일
분류: "sentiment: I love this movie" → "positive"
번역: "translate English to German: Hello" → "Hallo"
요약: "summarize: [long text]" → "[summary]"
QA: "question: ... context: ..." → "[answer]"
4. 핵심 구성 요소¶
4.1 Tokenization¶
핵심 논문: Neural Machine Translation of Rare Words with Subword Units (BPE, Sennrich et al., 2015)
| 방식 | 알고리즘 | 사용 모델 |
|---|---|---|
| BPE | 빈도 기반 병합 | GPT-2, GPT-3, LLaMA |
| WordPiece | 우도 기반 병합 | BERT, DistilBERT |
| Unigram | 확률적 토큰화 | T5, mT5 |
| SentencePiece | 언어 무관 | LLaMA, Gemma |
BPE 알고리즘: 1. 문자 단위로 초기화 2. 가장 빈번한 인접 쌍 병합 3. 어휘 크기에 도달할 때까지 반복
초기: l o w </w> l o w e r </w> n e w e s t </w>
Step 1: lo w </w> lo w e r </w> n e w e s t </w>
Step 2: low </w> low e r </w> n e w e s t </w>
Step 3: low</w> low e r </w> n e w e s t </w>
...
4.2 Positional Encoding¶
문제: Self-Attention은 순서를 모름 (permutation equivariant)
Sinusoidal PE (Transformer 원본):
Rotary Position Embedding (RoPE):
핵심 논문: RoFormer: Enhanced Transformer with Rotary Position Embedding (Su et al., 2021)
여기서 \(R_m\)은 2D 회전 행렬: $\(R_m = \begin{pmatrix} \cos(m\theta) & -\sin(m\theta) \\ \sin(m\theta) & \cos(m\theta) \end{pmatrix}\)$
장점: - 상대 위치 자동 인코딩 - 외삽(extrapolation) 가능 - 대부분의 최신 LLM에서 사용 (LLaMA, Mistral, GPT-4)
4.3 Normalization¶
| 방식 | 위치 | 특징 | 사용 |
|---|---|---|---|
| Post-LN | Attention/FFN 후 | 원본 Transformer | BERT |
| Pre-LN | Attention/FFN 전 | 학습 안정성 | GPT-2+ |
| RMSNorm | Pre-LN 위치 | 더 효율적 | LLaMA, Mistral |
RMSNorm: $\(\text{RMSNorm}(x) = \frac{x}{\sqrt{\frac{1}{n}\sum x_i^2 + \epsilon}} \cdot \gamma\)$
LayerNorm보다 빠름 (평균 계산 생략)
5. 학습 패러다임¶
5.1 사전학습 (Pre-training)¶
목표: 언어의 통계적 구조 학습
데이터 규모:
| 모델 | 토큰 수 | 데이터 소스 |
|---|---|---|
| GPT-3 | 300B | 웹, 책, Wikipedia |
| LLaMA | 1.4T | 웹, GitHub, arXiv |
| LLaMA 2 | 2T | 웹, 책, 코드 |
| Llama 3 | 15T+ | 웹, 다국어 |
5.2 지시 미세조정 (Supervised Fine-Tuning, SFT)¶
핵심 논문: Training language models to follow instructions (InstructGPT, Ouyang et al., 2022)
목표: 지시를 따르는 응답 생성
데이터 형식:
User: 파이썬으로 피보나치 함수를 작성해줘.
Assistant: 네, 피보나치 수열을 계산하는 파이썬 함수입니다:
def fibonacci(n):
if n <= 1:
return n
return fibonacci(n-1) + fibonacci(n-2)
5.3 RLHF (Reinforcement Learning from Human Feedback)¶
핵심 논문: Training language models to follow instructions (InstructGPT, 2022)
3단계 프로세스:
PPO 목표 함수:
5.4 DPO (Direct Preference Optimization)¶
아이디어: Reward Model 없이 직접 선호도 학습
- \(y_w\): 선호되는 응답 (winner)
- \(y_l\): 비선호 응답 (loser)
- \(\beta\): Temperature
장점: - Reward Model 불필요 → 단순함 - 안정적 학습 (RL 불안정성 회피) - 메모리 효율적
6. 스케일링 법칙¶
6.1 Kaplan Scaling Laws (2020)¶
핵심 논문: Scaling Laws for Neural Language Models (Kaplan et al., 2020)
모델 성능(Loss)은 세 요소의 멱법칙:
| 요소 | 기호 | 지수 α |
|---|---|---|
| 파라미터 수 | N | ~0.076 |
| 데이터 크기 | D | ~0.095 |
| 컴퓨팅 | C | ~0.050 |
의미: - 10배 많은 파라미터 → Loss ~21% 감소 - 10배 많은 데이터 → Loss ~25% 감소
6.2 Chinchilla Scaling Laws (2022)¶
핵심 논문: Training Compute-Optimal Large Language Models (Hoffmann et al., 2022)
핵심 발견: 기존 모델들은 과소 학습(undertrained)!
Chinchilla 최적 비율: $\(\text{Optimal Tokens} \approx 20 \times \text{Parameters}\)$
| 모델 | 파라미터 | 토큰 | 최적 토큰 | 상태 |
|---|---|---|---|---|
| GPT-3 | 175B | 300B | 3.5T | 과소 학습 |
| Gopher | 280B | 300B | 5.6T | 과소 학습 |
| Chinchilla | 70B | 1.4T | 1.4T | 최적 |
| LLaMA | 65B | 1.4T | 1.3T | 근접 |
실용적 함의: 같은 컴퓨팅으로 더 작은 모델을 더 오래 학습시키는 게 효율적
6.3 창발적 능력 (Emergent Abilities)¶
핵심 논문: Emergent Abilities of Large Language Models (Wei et al., 2022)
특정 스케일을 넘으면 갑자기 출현하는 능력:
| 능력 | 출현 임계값 (대략) | 설명 |
|---|---|---|
| Few-shot Learning | ~10B | 예시만으로 새 태스크 |
| Chain-of-Thought | ~100B | 단계별 추론 |
| Word in Context | ~10B | 문맥 기반 의미 파악 |
| Multi-step Arithmetic | ~100B | 다단계 계산 |
논쟁:
Are Emergent Abilities of Large Language Models a Mirage? (Schaeffer et al., 2023)
- 창발이 실제인가, 측정 방식의 artifact인가?
- 비선형 지표(accuracy)를 선형 지표(log-likelihood)로 바꾸면 점진적 향상
- 여전히 활발히 논의 중
7. 추론 최적화¶
7.1 KV Cache¶
문제: 자기회귀 생성에서 매 토큰마다 이전 토큰들의 K, V 재계산
해결: 이전 토큰들의 K, V를 캐시
메모리 비용: $\(\text{KV Cache} = 2 \times L \times n \times d \times \text{batch}\)$
- L: 레이어 수
- n: 시퀀스 길이
- d: 히든 차원
7.2 샘플링 전략¶
| 방법 | 설명 | 파라미터 |
|---|---|---|
| Greedy | 가장 확률 높은 토큰 | - |
| Temperature | 확률 분포 조절 | T (0.1~2.0) |
| Top-k | 상위 k개에서 샘플링 | k (10~100) |
| Top-p (Nucleus) | 누적 확률 p까지 | p (0.9~0.95) |
| Beam Search | 여러 경로 탐색 | beam width |
Temperature: $\(P(x_i) = \frac{\exp(z_i / T)}{\sum_j \exp(z_j / T)}\)$
| T 값 | 효과 |
|---|---|
| T < 1 | 더 확신 (deterministic) |
| T = 1 | 기본 |
| T > 1 | 더 다양 (creative) |
8. 토픽 목록 (하위 문서)¶
| 토픽 | 내용 | 링크 |
|---|---|---|
| Transformer | 아키텍처 상세, 변형 | 바로가기 |
| Attention | Multi-Head, Efficient Attention | 바로가기 |
| Embedding | Token, Position Embedding | 바로가기 |
| Tokenization | BPE, SentencePiece 상세 | 바로가기 |
| Prompting | CoT, Few-shot, ReAct | 바로가기 |
| Fine-tuning | LoRA, QLoRA, PEFT | 바로가기 |
9. LLM 발전 연대기¶
| 연도 | 모델/논문 | 파라미터 | 핵심 기여 |
|---|---|---|---|
| 2017 | Transformer | 65M | Self-Attention 아키텍처 |
| 2018 | GPT-1 | 117M | Generative Pre-training |
| 2018 | BERT | 340M | 양방향 사전학습 |
| 2019 | GPT-2 | 1.5B | 스케일업, Zero-shot |
| 2019 | T5 | 11B | Text-to-Text 통합 |
| 2020 | GPT-3 | 175B | Few-shot, 창발적 능력 |
| 2021 | Codex | 12B | 코드 생성 |
| 2022 | Chinchilla | 70B | 최적 스케일링 |
| 2022 | ChatGPT | - | RLHF, 대화 최적화 |
| 2023 | GPT-4 | ~1T? | 멀티모달, 추론 강화 |
| 2023 | LLaMA | 65B | 오픈소스, 효율적 학습 |
| 2023 | Claude 2 | - | 긴 컨텍스트 |
| 2024 | LLaMA 3 | 405B | 오픈 SOTA |
| 2024 | Claude 3 | - | 멀티모달 통합 |
| 2024 | GPT-4o | - | 네이티브 멀티모달 |
| 2025 | Claude 4 | - | 추론, 코딩 강화 |
10. 필수 논문 목록¶
기초 이론¶
| 논문 | 연도 | 핵심 내용 |
|---|---|---|
| A Mathematical Theory of Communication (Shannon) | 1948 | 정보 이론 |
| A Neural Probabilistic Language Model (Bengio) | 2003 | 신경망 LM |
| Word2Vec (Mikolov) | 2013 | 단어 임베딩 |
| GloVe (Pennington) | 2014 | 전역 벡터 |
아키텍처¶
| 논문 | 연도 | 핵심 내용 |
|---|---|---|
| Sequence to Sequence (Sutskever) | 2014 | Seq2Seq |
| Attention Mechanism (Bahdanau) | 2014 | 어텐션 |
| Transformer (Vaswani) | 2017 | Self-Attention |
| BERT (Devlin) | 2018 | 양방향 사전학습 |
| GPT-2 (Radford) | 2019 | 스케일업 |
| T5 (Raffel) | 2019 | Text-to-Text |
스케일링 & LLM¶
| 논문 | 연도 | 핵심 내용 |
|---|---|---|
| GPT-3 (Brown) | 2020 | Few-shot Learning |
| Scaling Laws (Kaplan) | 2020 | 스케일링 법칙 |
| Chinchilla (Hoffmann) | 2022 | 최적 스케일링 |
| InstructGPT (Ouyang) | 2022 | RLHF |
| LLaMA (Touvron) | 2023 | 오픈 LLM |
| Llama 2 (Touvron) | 2023 | 오픈 + RLHF |
효율적 학습¶
| 논문 | 연도 | 핵심 내용 |
|---|---|---|
| LoRA (Hu) | 2021 | 저랭크 적응 |
| RoPE (Su) | 2021 | 회전 위치 인코딩 |
| DPO (Rafailov) | 2023 | 직접 선호 최적화 |
| QLoRA (Dettmers) | 2023 | 양자화 + LoRA |
추론 & 프롬프팅¶
| 논문 | 연도 | 핵심 내용 |
|---|---|---|
| Chain-of-Thought (Wei) | 2022 | 단계별 추론 |
| Self-Consistency (Wang) | 2022 | 다중 경로 |
| ReAct (Yao) | 2022 | 추론 + 행동 |
| Tree of Thoughts (Yao) | 2023 | 탐색 기반 추론 |