📌 통계적 언어 모델과 N-gram 언어 모델
1. 통계적 언어 모델(Statistical Language Model, SLM)
통계적 언어 모델은 말 그대로 통계적 확률을 기반으로 언어를 모델링하는 방법입니다.
문장에 확률을 부여하고, 더 자연스러운 문장을 선택하는 것이 목적입니다.
1.1 조건부 확률과 연쇄 법칙(Chain Rule)
조건부 확률은 앞의 단어가 주어졌을 때 다음 단어가 등장할 확률을 의미합니다.
P(w1,w2,...,wn)=t=1∏nP(wt∣w1,...,wt−1)
즉, 문장의 확률은 각 단어가 이전 단어들 뒤에 나올 확률을 모두 곱한 값입니다.
1.2 카운트 기반 접근
SLM은 **코퍼스에서 단어 시퀀스 등장 빈도(count)**를 기반으로 확률을 계산합니다.
예:
P(is | An adorable little boy) =
count("An adorable little boy is") / count("An adorable little boy")
- 예를 들어 학습 데이터에서
"An adorable little boy"
가 100번 등장했고,
그 뒤에 "is"
가 30번 나왔다면 확률은 **30%**입니다.
1.3 한계 — 희소 문제(Sparsity Problem)
- 실제 언어에는 무한히 많은 문장 조합이 존재합니다.
- 학습 코퍼스에 특정 단어 시퀀스가 전혀 등장하지 않으면 해당 확률은 0이 됩니다.
- 현실에서 가능한 문장임에도 불구하고, 데이터 부족으로 확률이 정의되지 않는 문제를 희소 문제라고 합니다.
2. N-gram 언어 모델
SLM의 한계를 완화하기 위해 등장한 것이 N-gram 언어 모델입니다.
2.1 N-gram이란?
- n개의 연속된 단어 시퀀스를 하나의 토큰 단위로 보고 확률을 계산
- n = 1 → Unigram
- n = 2 → Bigram
- n = 3 → Trigram
- n ≥ 4 → 그대로 4-gram, 5-gram …
예:
문장: An adorable little boy is spreading smiles
Unigram: an | adorable | little | boy | is | spreading | smiles
Bigram: an adorable | adorable little | little boy | ...
Trigram: an adorable little | adorable little boy | ...
2.2 작동 원리
- 이전 모든 단어를 고려하는 대신 n-1개의 단어만 사용해 다음 단어 예측
- 예: 4-gram 모델에서
"boy is spreading"
다음 단어 예측 시, 앞의 3단어만 고려
2.3 장점
- 필요한 카운트 데이터의 양이 줄어듦
- SLM보다 계산 가능성이 높음
2.4 한계
-
여전히 희소 문제 존재
-
Trade-off 문제
- n이 크면 문맥 반영은 좋아지지만 데이터 희소성 심화, 모델 크기 증가
- n이 작으면 데이터는 충분하지만 문맥 이해 능력 약화
-
긴 문맥 반영 불가
- 수식어·문장 앞부분과 뒷부분의 의미 연결 약함
2.5 성능 예시 — Perplexity
Perplexity ↓ = 더 좋은 성능
모델 | Perplexity |
---|
Unigram | 962 |
Bigram | 170 |
Trigram | 109 |
3. 결론
- SLM과 N-gram 모델은 전통적인 언어 모델의 핵심 기법
- 하지만 희소 문제 + 긴 문맥 처리 한계 때문에
→ 인공 신경망 기반 언어 모델(NNLM, RNNLM, Transformer)로 발전
- LLM 이해를 위해서는 여전히 기본 개념으로 중요
📌 정리
- SLM: 통계 + 카운트 기반 확률
- N-gram: 일부 단어만 고려하는 간소화된 SLM
- 한계: 희소성·긴 문맥 처리 불가 → 현대 LLM의 출발점