パープレキシティ(LLM評価)(パープレキシティ)
LLMの言語モデリング能力を数値化する基本的な評価指標。モデルが次のトークンをどれだけ正確に予測できるかを表し、値が低いほど予測精度が高い(=モデルが言語をよく理解している)。学習の進捗監視やモデル比較に広く使用される。
パープレキシティ(LLM評価)とは
パープレキシティ(Perplexity, PPL)は言語モデルの性能を測定する最も基本的な指標の一つである。直感的には「モデルが次のトークンを予測する際にどれだけ困惑するか」を表し、値が低いほどモデルの予測精度が高いことを意味する。
数学的定義
パープレキシティはクロスエントロピー損失の指数関数として定義される。
PPL = exp(-1/N × Σ log P(token_i | context))
- N: トークン数
- P(token_i | context): モデルが文脈から i 番目のトークンを予測する確率
- 各トークンの予測確率の幾何平均の逆数に相当
パープレキシティが10の場合、モデルは「平均して10個の等確率な候補から1つを選ぶ程度の不確実性」を持っていることを意味する。
パープレキシティの解釈
| PPL 値 | 解釈 | 典型的なモデル |
|---|---|---|
| 3〜5 | 非常に高い精度 | GPT-4, Claude 3.5 クラス |
| 5〜10 | 高い精度 | Llama 3 70B, Mistral Large |
| 10〜20 | 中程度の精度 | 7B〜13B クラスのモデル |
| 20〜50 | やや低い精度 | 小型モデル、ファインチューニング前 |
| 50+ | 低い精度 | 学習初期段階、ドメイン外テキスト |
注意: PPL 値は評価データセットに大きく依存するため、異なるデータセットでの PPL を直接比較することは適切でない。
学習中の PPL モニタリング
LLM の学習(pre-training / fine-tuning)では、パープレキシティの推移が学習の進捗を示す重要な指標となる。
- 学習初期: PPL は数千〜数万の非常に高い値からスタート
- 学習中盤: 急速に低下し、対数スケールでほぼ直線的に減少
- 学習後半: 低下が緩やかになり、収束に向かう
- 過学習の兆候: 訓練データの PPL は低下し続けるが、検証データの PPL が上昇し始める
学習曲線で訓練 PPL と検証 PPL を同時にプロットし、乖離が始まるポイントを監視するのが一般的な手法である。
パープレキシティの限界
パープレキシティには以下の限界がある。
- タスク性能との相関が不完全: PPL が低くてもタスク(要約・翻訳・コード生成等)の実用性能が高いとは限らない
- トークナイザー依存: トークナイザーが異なるモデル間では PPL の直接比較が困難。語彙サイズが大きいほど PPL は低く出やすい
- 長文脈での問題: コンテキスト長全体の平均なので、長文の特定部分での予測精度は見えない
- 生成品質の非反映: 自然で有用なテキストを生成できるかは PPL だけでは判断できない
BPB(Bits Per Byte)との関係
トークナイザー依存を解消するために、BPB(Bits Per Byte)という指標が使われることがある。PPL をバイト単位に正規化することで、異なるトークナイザーを使うモデル間の公平な比較が可能になる。
BPB = log2(PPL) × tokens_per_byte
FAQ
Q1: パープレキシティが低ければそのモデルは「賢い」のですか?
A1: PPL が低いのは「次のトークン予測が上手い」ことを意味するが、推論能力・指示追従能力・安全性など「賢さ」の多面的な要素は PPL だけでは測れない。実用評価にはベンチマークスイートや人間評価が必要。
Q2: 異なるモデルのパープレキシティを比較できますか?
A2: 同じ評価データセット・同じトークナイザーを使う場合のみ比較可能。トークナイザーが異なる場合は BPB に変換するか、タスクベースのベンチマークで比較する方が適切。
Q3: ファインチューニングでパープレキシティは必ず下がりますか?
A3: ファインチューニング対象のドメインテキストでは通常下がるが、汎用テキストでの PPL は上昇することがある(catastrophic forgetting)。これは特定ドメインへの特化と汎用性のトレードオフである。