본문 바로가기
  • 공부한 것들과 여러가지를 기록해요
Python/NLP

펄플렉서티(Perplexity, PPL)

by 티권 2023. 3. 14.

펄플렉서티(Perplexity, PPL)

- 언어 모델의 평가 방법

- perplexed : 헷갈리는.  PPL : 헷갈리는 정도

- PPL이 낮을수록 언어 모델의 성능이 좋다

- 문장의 길이로 정규화된 문장 확률의 역수

 

N : 문장 W의 길이

 

chain rule 적용한 거

 

N=2 , bigram

 

- PPL은 이 언어 모델이 특정 시점에서 평균적으로 몇 개의 선택지를 가지고 고민하는지를 의미

- ex)

PPL = 10 : 다음 단어를 예측하는 모든 시점마다 평균 10개의 단어를 가지고 어떤 것이 정답인지 고민

다음 단어를 예측하는 모든 시점마다 1/10 확률

PPL이 작다면 이 확률이 줄어들어서 성능이 좋은 것!

 

- PPL이 낮다는 건 테스트 데이터 상에서 높은 정확도를 보인다는 뜻

- 사람이 직접 느끼기에 좋은 언어모델이라는 걸 바드시 의미하지는 않음

- 도메인에 알맞은 동일한 테스트 데이터를 사용해야 신뢰가 높

'Python > NLP' 카테고리의 다른 글

순환 신경망(RNN)  (0) 2023.03.14
피드 포워드 신경망 언어 모델(NNLM)  (0) 2023.03.14
N-gram 언어 모델  (0) 2023.03.14
언어 모델 - 통계적 언어 모델  (0) 2023.03.14
정제, 정규화  (0) 2023.02.19