펄플렉서티(Perplexity, PPL)

허허맨·2025년 7월 31일
0

LLM

목록 보기
4/12
post-thumbnail

📌 펄플렉서티(Perplexity, PPL)

1. PPL이란?

**펄플렉서티(Perplexity)**는 언어 모델의 성능을 평가하기 위한 지표입니다.
보통 줄여서 PPL이라 부릅니다.

  • 영어 perplexed → “헷갈리는”과 비슷한 의미
  • PPL은 모델이 다음 단어를 예측할 때 얼마나 헷갈리는지를 수치로 나타냄
  • 값이 낮을수록 모델 성능이 좋음 (높을수록 혼란스러운 모델)

2. PPL의 정의

PPL은 문장의 길이로 정규화된 문장 확률의 역수입니다.

PPL(W)=P(w1,w2,...,wN)1NPPL(W) = P(w_1, w_2, ..., w_N)^{-\frac{1}{N}}
  • WW : 문장 전체
  • NN : 문장의 단어 수

Chain Rule 적용

문장 확률은 조건부 확률로 풀 수 있습니다.

P(W)=t=1NP(wtw1,...,wt1)P(W) = \prod_{t=1}^{N} P(w_t | w_1, ..., w_{t-1})

예: Bigram 모델

PPL(W)=(t=1NP(wtwt1))1NPPL(W) = \left( \prod_{t=1}^{N} P(w_t | w_{t-1}) \right)^{-\frac{1}{N}}

3. PPL의 의미 — 분기 계수(Branching Factor)

PPL은 모델이 다음 단어를 선택할 때 평균적으로 몇 개의 후보를 두고 고민하는지를 나타냅니다.

예:

  • PPL = 10 → 평균적으로 10개의 단어 후보 중에서 정답을 고르는 수준
  • PPL이 작을수록 모델이 더 **결정적(Confident)**이라는 의미

4. 사용 시 주의사항

  • PPL ↓ = 테스트 데이터에서 높은 정확도
    → 사람이 느끼는 "좋은 모델"과 반드시 동일하진 않음
  • PPL은 테스트 데이터 의존
    → 모델 비교 시 반드시 같은 데이터셋을 사용해야 신뢰 가능
  • 도메인에 맞는 데이터 사용 필수

5. N-gram vs Neural LM — PPL 비교 예시

페이스북 AI 연구팀이 발표한 결과:

모델PPL
5-gram + Interpolated Kneser-Ney67.6
RNN 기반 Neural LM
LSTM 기반 Neural LM↓↓
기타 Neural LM 변형더 낮은 값

💡 Neural LM(인공 신경망 언어 모델)이 대체로 N-gram 모델보다 PPL이 낮음
→ 더 정확한 다음 단어 예측 가능


6. 결론

  • PPL은 빠르게 언어 모델의 성능을 비교하는 지표
  • 낮을수록 좋음
  • 단, 실제 사용자 경험과 완전히 일치하지 않을 수 있음
  • Neural LM이 N-gram 기반 모델보다 PPL이 낮은 경향

📌 정리

  1. PPL = "헷갈리는 정도" → 낮을수록 좋은 모델
  2. 계산식은 문장 확률의 역수를 사용
  3. 모델 비교 시 같은 테스트 데이터로 측정해야 의미 있음

profile
사람은 망각의 동물입니다. 때로는 기록으로 과거의 나를 데려옵니다.

0개의 댓글