퍼플렉서티(Perplexity)는 자연어 처리(NLP)에서 언어 모델의 성능을 평가하기 위해 사용하는 지표입니다. 주어진 단어 시퀀스를 얼마나 잘 예측하는지를 측정하며, 값이 낮을수록 모델의 예측 정확도가 높다는 것을 의미합니다.
주요 특징:
• 확률 기반 지표
테스트 데이터의 단어들을 모델이 예측할 확률의 역수를 기반으로 계산합니다. 예측이 잘 될수록 퍼플렉서티 값이 낮아집니다.
• 해석 용이성
퍼플렉서티 값이 낮다는 것은 모델이 다음 단어를 더 자신 있게, 정확하게 예측한다는 뜻입니다.
• 로그 기반 계산
단어 예측 확률의 로그 값을 평균낸 후, 2를 밑으로 하는 지수함수 형태로 계산됩니다.
• 언어 모델 품질 지표
서로 다른 언어 모델(GPT, BERT, LSTM 등)의 성능을 비교할 때 널리 사용됩니다.
수식:
테스트 세트 TTT가 NNN개의 단어로 구성되어 있고, 모델이 각 단어 wiw_iwi에 대해 확률 P(wi)P(w_i)P(wi)를 부여할 때:
Perplexity=2−1N∑i=1Nlog2P(wi)\text{Perplexity} = 2^{ -\frac{1}{N} \sum_{i=1}^{N} \log_2 P(w_i) }Perplexity=2−N1∑i=1Nlog2P(wi)
• 확률이 높을수록 로그값이 덜 감소하므로 퍼플렉서티가 낮아짐
• 결국 낮은 퍼플렉서티 = 모델이 데이터를 더 잘 예측하고 있음
활용 사례:
• 언어 모델 평가
언어 모델이 문법, 문맥, 의미 구조를 얼마나 잘 학습했는지 판단
• 모델 비교
GPT, BERT, LSTM 등 다양한 언어 모델 간 성능 비교 시 지표로 사용
• 학습 진행 모니터링
학습 도중 퍼플렉서티 감소 여부를 통해 모델의 향상 여부를 확인
• 특정 작업 평가의 보조 지표
번역(BLEU), 요약(ROUGE) 등의 작업에서 퍼플렉서티는 보조적인 평가 지표로 활용됨
중요성
퍼플렉서티는 언어 모델이 주어진 데이터를 얼마나 잘 이해하고 예측하는지를 수치로 직관적으로 나타내 줍니다. 이 지표를 통해 모델을 미세 조정하거나 하이퍼파라미터를 최적화할 수 있으며, 출력 결과의 문맥 적합성과 일관성을 확보하는 데 핵심적인 역할을 합니다.