【とっぷぴー】

Top-p(トップピー) とは?

最終更新:
💡 AIの候補を「累積確率」で絞るフィルター

AIの出力候補を確率の高い順に並べ、累積確率がp以上に達する最小の候補集合を残し、確率を正規化して次のトークンを選ぶ手法。Temperatureと並ぶ重要な生成制御パラメータ。

📌 このページのポイント
Top-p = 0.8 の例確率順に並べて累積する天気40%40%気温25%65%空模様15%80%風10%90%雲5%95%その他5%100%確率累積緑の3候補:合計80%を残して正規化残した候補から抽選。正しさを保証する処理ではない
上位3候補の40%+25%+15%で初めて80%に達する例。枠外は除外し、残した確率を合計1に正規化して選ぶ。
ひよこ ひよこ
Top-pってTemperatureとどう違うの?
ペンギン先生 ペンギン先生
Temperatureは全候補の確率分布を「なだらか」にしたり「とがらせたり」する調整だけど、Top-pは候補そのものを絞り込む仕組みだよ。たとえば10個の候補があるとき、Temperatureは10個全部の選ばれやすさを変えるけど、Top-pは上位3個だけに絞ってから選ぶイメージだね。
ひよこ ひよこ
p=0.9ってよく見るけど、どういう意味?
ペンギン先生 ペンギン先生
確率の高い順に候補を足していって、合計が初めて90%以上になるところまでの候補だけを使うという意味だよ。たとえば1位が60%、2位が20%、3位が10%なら合計90%でこの3つだけが候補になる。低確率の候補を除く仕組みで、内容の正しさを保証するものではないよ。
ひよこ ひよこ
TemperatureとTop-p、両方設定しても大丈夫?
ペンギン先生 ペンギン先生
両方を使える実装もあるよ。ただ、Temperatureで分布が変わるとTop-pで残る候補も変わるから、効果を比べるときは一方ずつ変えると理解しやすいね。対応するパラメータは使うモデルや実装で確認しよう。
ひよこ ひよこ
Top-pとTop-kってどう違うの?
ペンギン先生 ペンギン先生
Top-kは「確率の高い上位k個の候補だけ使う」という固定数の絞り込み。Top-pは「累積確率がp以上に達するまでの候補を使う」という動的な絞り込みだよ。Top-kだと確率が極端に偏っているときに不要な候補まで含んでしまうけど、Top-pなら状況に応じて候補数が自動調整されるのが利点なんだ。
ひよこ ひよこ
Top-pを極端に小さくしたらどうなるの?
ペンギン先生 ペンギン先生
同じ確率分布なら残る候補は少なくなるけど、必ず1〜2個になるわけではないよ。たとえば100候補が各1%ならp=0.1でも10候補を残す。p=1.0はTop-pでの除外をしない設定で、最適値や初期値はモデル・実装・用途によって違うんだ。
もっと詳しく知りたい人へ

累積確率がpを超える候補も残すの?

はい。たとえば候補の確率が60%、25%、15%でp=0.8なら、2番目までの85%を残します。80%以下だけを残す方式ではありません。残した確率は合計1になるよう正規化して抽選します。この例では約70.6%と29.4%です。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Top-p」って出てきたら「AIが次の単語を選ぶとき、確率上位の候補だけに絞る仕組みのことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Top-p」 = 上位p(累積確率)
💬 pは確率(probability)のこと。上位の確率を合計してpに達するまでの候補だけを使うことからこの名前がついたよ

参考資料

← 用語集にもどる