Interactive

デコーディング戦略可視化

言語モデルが返すのは確率分布であって「答え」そのものではありません。 そこから1トークンを選ぶ規則がデコーディング戦略です。p=softmax(z/T)のtemperatureスライダーとtop-k/top-pの候補フィルタを実際に動かして分布の変化を確認できるほか、 貪欲法とビームサーチを同じトイの文生成で走らせ、ビーム幅を広げると局所最適を脱出できることを具体的な数値で確認できます。

プロンプト「今日の天気は」に続くトークンのロジット(説明用に固定した10語彙のトイの例)。temperatureで分布の鋭さを変え、top-k/top-pで候補を絞り込めます。

絞り込み方式

晴れ
54.9%
曇り
24.7%
13.5%
とても
2.7%
最高
1.8%
少し
1.4%
予報
0.6%
変わり
0.3%
不安定
0.1%
台風
0.0%

候補数 10 / 10(フィルタなし=全語彙が候補)

Tを1未満にすると上位トークンにさらに確率が集中し(T→0で貪欲法に一致)、1より大きくすると分布が平らになり裾(低確率トークン)にも確率が回ります。top-pのしきい値p=0.9はTによって必要な候補数が変わる(T=0.5なら2個、T=1なら3個、T=2なら6個)のに対し、top-kのKは常に固定数——これが記事の言う「top-pは文脈の確信度に追従できる」の実例です。

すべてブラウザ内でsoftmax・累積確率・系列対数確率を実際に計算しています。ロジット・遷移表は説明用に固定した値で、実在の言語モデルの出力ではありません。

ここが分かる

  • temperature `T` はsoftmaxに通す前のロジットをTで割るだけ。T→0では最大確率トークンにほぼ全ての確率が集中し貪欲法に一致、Tを上げるほど分布は平らになる——「サンプリング」タブでTを動かすと棒グラフの形が連続的に変わるのを確認できる。
  • top-pの核(nucleus)は文脈の確信度に応じて大きさが変わる。同じp=0.9でも、T=0.5なら候補2個、T=1なら3個、T=2なら6個と自動的に変化する——top-kのKが常に固定数なのとは対照的。
  • ビーム幅B=1はビームサーチと貪欲法が完全に一致することを実際のコードで確認できる(両者は独立に実装した上で検算済み)。
  • 「貪欲法 vs ビームサーチ」タブのトイ例では、貪欲法は確率最大の「犬」を選び続けて最終的に確率14.8%の文にたどり着くが、ビーム幅2以上では次点の「猫」も生き残らせることで最終的に確率27.7%という、より高い系列全体の確率を見つけられる——「各ステップの局所最適が文全体での最適とは限らない」という記事の指摘そのものを数値で再現している。