パープレキシティ

Perplexity

パープレキシティとは

パープレキシティ(Perplexity)とは、言語モデルの性能を評価するための指標で、モデルがテストデータに対してどれだけ「困惑しているか」を数値化したものです。パープレキシティが低いほど、モデルがテキストをより正確に予測できていることを意味します。

表:パープレキシティの要点まとめ
ひとことで言うと言語モデルが次の語をどれだけ迷ったかを表す指標。低いほど良い。
読み方「平均して何個の候補で迷っているか」。10なら10択で迷っている感覚。
注意点モデルやデータが違うと単純比較できない。実際の使い勝手とも一致しない場合がある。

パープレキシティの直感的理解

パープレキシティは「次の単語を予測する際に、平均的にいくつの候補の中から選んでいるか」と解釈できます。例えばパープレキシティが50であれば、平均的に50個の候補から正解を選んでいるような状態です。パープレキシティが1に近いほど、モデルの予測が正確であることを示します。

図:パープレキシティの求め方
1テストデータ学習に使っていない文章
▶
2各語の確率モデルに予測させる
▶
3平均を取る対数の平均を計算
▶
4指数に戻す迷いの度合いを数値化
▶
5低いほど良いモデル同士を比較

数学的定義

パープレキシティは、テストデータに対する言語モデルの対数尤度の指数関数として定義されます。具体的には、テスト文のトークン数をNとすると、PP = exp(-1/N × Σlog P(w_i | w_1,...,w_{i-1}))で計算されます。クロスエントロピーの指数関数とも等価です。

パープレキシティの活用と限界

パープレキシティは同一のテストデータ・語彙で比較した場合に有効な指標です。ただし、生成テキストの品質や有用性を直接評価するものではないため、BLEUやROUGEなどのタスク固有の指標や、人間による評価と組み合わせて使用することが推奨されます。