Top-pサンプリングって何?
モデルが次の単語を選ぶとき、候補は何千もあります。Top-pサンプリング(ニュークリアスサンプリング)は、確率の高い順に単語を並べ、累積確率がちょうどp(例:0.9)に達するまで足していきます。そして、その「核」の中だけでランダムに単語を選びます。Top-kとの違いは?
Top-kは常に上位k個分布がどうであれ、確率上位k個を取ります。問題はkの決め方。小さくすれば創造性を失い、大きくすればゴミが混ざります。
Top-pは累積確率を見る
個数は数えず、「どれだけの確率を覆うか」だけを気にします。分布が集中していれば小さく、散らばっていれば大きく。自動で適応します。
何を解決する?
自然言語の確率分布は非常に不均一。上位2語で90%を占めることもあれば、100語必要なことも。固定個数のTop-kは両方を扱えません。Top-pは「確率のカバー率」を物差しにし、候補プールの大きさを動的に変えて、出力を安定かつ硬くなく保ちます。実務での使い方
温度とセットで使うのが普通。温度で分布の形を変え、Top-pで範囲を区切ります。多くのAPIの既定値はp=0.9か1.0。安定させたいならpを小さく、多様性が欲しいなら大きく、温度と一緒に調整します。まとめ:Top-pは「確率で範囲を区切って」単語を引く手法。範囲の広さは候補の散らばり次第です。
コメント