728x90
반응형
Language Model
- 언어를 이루는 구성 요소(글자, 형태소, 단어, 단어열(문장), 문단 등)에 확률값을 부여하여 이를 바탕으로 다음 구성 요소를 예측한거나 생성하는 모델
통계적 언어 모델(Statistical Language Model, SLM)
- 단어열이 가지는 확률 분포를 기반으로 각 단어의 조합을 예측하는 전통적인 언어 모델
- 모델의 목표는 실제로 많이 사용하는 단어열(문장)의 분포를 정확하게 근사하는데 있음
조건부 확률(conditional Probabilities) 언어 모델
조건부 확률을 기준으로 글자나 형태소의 결합 확률을 기반으로 모델링
- corpus 내에서 각 단어들의 조합이 나오는 횟수를 카운트한 후 이에 기반하여 확률을 계산
- 스마트폰의 자동 완성
N-gram 언어 모델
문장 내 단어는 주변의 여러 단어와 연관되는 경우가 많기 때문에 게산의 정확도를 위해 특정 단어가 주변에 있는 몇 개의 단어와 연관된다고 가정하는 것
N-1차 마르코프 가정
특정 단어가 등장하는 확률을 계산할 때에 이전 N-1개의 단어가 등장하는 확률만을 고려
- 1-gram(유니그램, unigram): 이전 0개의 단어를 고려, 모든 단어는 독립적이라고 봄
- 2-gram(바이그램, bigram)
- 3-gram(트라이그램, trigram)
- 4-gram
N값 선택
- 데이터셋과 과제에 따라 적절한 N을 선택해야 함
- 계산 효율성 측면에서도 고려되어야 함
- N=3인 모델을 주로 사용
SLM 한계
- 테스트 데이터셋이 훈련 데이터셋과 유사해야 예측 성능이 좋아짐
- N이 증가할수록 문장은 훈련에 사용된 코퍼스와 지나치게 유사해짐
- 희소성 문제(Sparsity Problem): corpus에 없는 특정 단어열의 경우 확률이 0이 되면서 정확한 모델링이 어려움
로그 확률(Log probabilities)
- 언어 모델에서 확률을 계산할 때는 원래의 확률값에 로그를 취하는 로그 확률을 사용하는 것이 보편적
- 언더플로(underflow)를 피하기 위함
- 언더플로: 부동 소수점 연산에서 컴퓨터가 표현할 수 있는 것보다 작은 값이 발생하여 계산 결과를 표시할 수 없는 상태
Generalization
한정된 코퍼스 내에서 모델의 일반화 능력을 향상시키기 위한 일반화 기법 적용
Smoothing
- 코퍼스 내에 존재하지 않는 단어 조합, 즉 모델이 한번도 본 적 없는 단어 조합(unseen n-gram)에 대해 특정 값(α)을 부여하여 확률 분포에 약간의 변화를 주는 방법
- α는 0보다 크고 1보다 작거나 같은 상수로 지정(0<α≤1)
- 모든 단어열이 일정한 값을 가지게 되므로 코퍼스에 없는 단어열 때문에 전체 문장의 확룰 0이 되는 문제 방지
라플라스 스무딩(Laplace smoothing)
- α 값을 1로 지정하는 방법
- N-gram과 같이 희소 문제가 큰 언어 모델에서는 계산을 거듭할수록 원래 단어이 빈도수에서 크게 벗어나는 문제 야기되어 비효율적
보간법(Interpolation)
- 특정 N-gram의 확률을 이전 N-gram의 확률과 섞음으로써 일반화를 꾀하는 것
- 3-gram 모델에서 특정 단어의 확률을 구할 때 2-gram, 1-gram 모델의 확률까지 모두 구하고 일정한 비율의 가중치를 각각 곱한 후 모두 합함
Back Off
- 보간법과 유사하게 여러 N-gram을 고려하지만, 모두 합하지 않는다는 점에서 차이가 있음
- 3-gram 확률이 있을 경우(빈도수가 0 초과인 경우) 3-gram 확률 사용, 3-gram 빈도가 0이지만 2-gram에 대한 빈도가 0 초과인 경우 2-gram, 그마저도 아닌 경우 1-gram 모델의 확률을 사용하는 방식
Good-Turing Smoothing
Kneser-Ney Discounting
Witten-Bell Smothing
모델 평가
내부 평가(Intrinsic Evaluation)
- 짧은 시간 안에 간단히 모델을 평가할 때 모델 내에서 성능을 자체적으로 평가하는 방법
Perplexity(PPL)
- 언어 모델에서 모델이 선택할 수 있는 경우의 수를 의미하는 분기계수(branching factor)
- 주어진 확률 모델이 샘플을 얼마나 잘 예측하는가에 대한 측정 지표
- PPL 점수가 낮을수록 좋은 모델
References
728x90
반응형
'Generative AI > Language Model' 카테고리의 다른 글
[Language Model] BERTopic (0) | 2021.06.14 |
---|---|
[Language Model] KR-BERT (0) | 2021.04.13 |
[Language Model] T5(Text-to-Text Transfer Transformer) (0) | 2021.04.08 |
[Language Model] Multilingual BERT (0) | 2021.04.08 |
[NLP] LDA(Latent Dirichlet Allocation) (0) | 2021.03.12 |