본문 바로가기

컴퓨터이야기

Perplexity

Perplexity(PPL)는 텍스트 생성(Text Generation) 언어 모델 성능 평가지표 중 하나입니다. 

 

언어 모델에서 Perplexity, 즉 분기계수는 이전 단어로 다음 단어를 예측할 때 몇 개의 단어 후보를 고려하는지를 의미합니다. 여기서 고려해야 할 단어 후보가 많다는 것은 그 만큼 언어 모델이 쉽게 정답을 못 내고 있다고 해석할 수 있습니다. 즉, Perplexity 값이 낮을수록 언어 모델이 쉽게 정답을 찾아내는 것이므로 성능이 우수하다고 평가합니다. 단, 이때 모델 평가에서 활용한 테스트 데이터셋의 신뢰도가 높은 경우에만 이렇게 말할 수 있습니다. 

수학에서 시퀀스(Sequence)는 순서를 고려하여 나열된 여러 객체들의 묵음을 의미한다는 점에서, 문장은 어순을 고려하여 여러 단어로 이루어진 단어 시퀀스(Word Sequence)라고도 부릅니다. 단어의 개수가 N인 문장 W의 Perplexity(PPL)의 수식은 아래와 같습니다.

 

 

위 수식은 언어 모델이 성능 평가를 위한 테스트 데이터셋에서 이전 단어들을 기반으로 다음 단어를 예측할 때마다 평균적으로 N개의 단어 후보 중 정답을 찾는다고 해석할 수 있습니다.