温度は、大規模言語モデルにおいてテキスト生成時の出力のランダム性を制御するために使用されるハイパーパラメータである。これは、モデルの最終層が生成するロジット(生の非正規化スコア)に、softmax関数が語彙全体の確率分布に変換する前に適用されるスケーリング係数である。温度を調整することで、開発者やユーザーは生成テキストにおける創造性と予測可能性のバランスに影響を与えることができる。
この概念は統計力学に由来し、温度は系のエントロピーを支配する。機械学習において、温度は「ソフトマックス温度」とも呼ばれるsoftmax関数の修正として導入され、出力分布を尖らせたり平坦にしたりするために用いられた。温度が1.0の場合は分布をそのまま維持する。1.0より大きい値はエントロピーを増加させ、分布をより一様にし、結果としてランダム性を高める。1.0より小さい値はエントロピーを減少させ、分布をよりピーク状にし、決定論的になる。温度が0.0(またはゼロに近い値)の場合は、事実上、最高確率のトークンを選択し、グリーディデコード(貪欲法)となる。
温度は、LLM推論におけるいくつかのサンプリング戦略の1つであり、top-kサンプリングや核サンプリング(top-p)と並ぶ。これらの方法は、生成テキストの品質と多様性を制御するためにしばしば併用される。実際には、温度は目的の用途に基づいて設定される。低い温度は、事実精度やコード生成を必要とするタスクに、高い温度は創造的な文章作成やブレインストーミングに使用される。
LLM推論における役割
推論中、LLMは語彙全体の確率分布を計算することで次のトークンを予測する。温度パラメータは、この分布をサンプリング前に修正する。ロジットの集合zに対して、トークンiの確率はsoftmax(z_i / T)として計算される。Tは温度であり、Tが低い場合、ロジット間の差は強調され、最も可能性の高いトークンが支配的になる。Tが高い場合、その差は減少し、可能性の低いトークンが選択される確率が高くなる。
このメカニズムにより、同一のモデルが同じプロンプトに対して多様な出力を生成できる。例えば、温度0.2は顧客サポートのチャットボットで一貫性と信頼性のある応答を保証するために使用される一方で、温度0.8は創造的な文章作成アシスタントでより想像力豊かな散文を生成するために使用されうる。多くのLLM API(例:OpenAI、Anthropic、Google DeepMind)は、温度を設定可能なパラメータとして公開している。
出力品質への影響
温度は、生成テキストの品質と一貫性に直接的な影響を与える。低い温度は、繰り返しの多い安全な出力を生む傾向があるが、「モード崩壊」を引き起こし、モデルがループに陥ることがある。高い温度は、文法的なエラー、論理的な不整合、あるいは無意味な内容を導入する可能性があり、モデルが非確率的なトークンを選択する可能性がある。最適な温度の選択には実験が必要であり、特定のタスクとモデルに依存することが多い。
研究と実務経験からは、適度な温度(例:0.7から0.9)が一般的なテキスト生成において良いバランスを取ることが示されている。しかし、コード生成のようなタスクでは、低い温度(例:0.1から0.3)が構文エラーを減らし、正確性を向上させるために推奨される。逆に、物語の生成や対話のようなタスクでは、高い温度はより魅力的で多様な反応を生むことがある。
他のサンプリング手法との関係
温度は、他のサンプリング技術と併用されることが多い。top-kサンプリングは、最も可能性の高いk個の次トークンにサンプリングプールを制限し、核サンプリング(top-p)は、累積確率がpの閾値を超える最小のトークンセットから選択する。これらの手法は温度と組み合わせて、さらにランダム性を制御することができる。例えば、温度0.8とtop-p 0.9を使用する場合、温度を先に適用し、その後に核フィルタが確率質量の90%を占める最も可能性の高いトークンを選択する。
実装によっては、温度がtop-kやtop-pフィルタリングの前に適用される場合と、後に適用される場合がある。正確な順序は分布に影響を与えるが、一般的な原理は変わらない。温度は全体的なランダム性を調整し、top-kとtop-pは最も可能性の高いトークンに焦点を当てる。
実際の考慮事項
LLMを本番環境にデプロイする際、温度は調整すべき重要なパラメータである。それは出力の品質だけでなく、コストや遅延にも影響を与える。高い温度では、モデルがより多くの多様な経路を探索するため、生成が長くなることがある。Hugging Face Transformers ライブラリなど一部のフレームワークでは、温度や他のサンプリングパラメータが組み込みでサポートされている。
温度は、ファインチューニングや強化学習でも関連がある。訓練中には、教師モデルの出力分布をsoftened(和らげる)技術として、温度が使用される。これにより、生徒モデルが教師の確率的な出力から学習できるようになる。このコンテクストでは、温度は「ラベル」の柔らかさを制御し、生徒モデルの汎化を向上させることができる。
歴史的背景
softmax関数における温度の使用は現代のLLMよりも前から存在し、1980年代から1990年代にかけてニューラベルネットワークの文脈で導入された。特に、ボルツマンマシンやニューラルネットワーク訓練に取り組んでいた研究者などが貢献した。この概念は、後にシークエンス・ツー・ツーモデルで採用され、最終的にtransformerベースのLLMの標準機能となった。2020年代初期の時点で、温度はLLM APIとオープンソース実装において広く使用されるパラメータである。
関連項目
- Top-P (Nucleus) Sampling
- Top-K Sampling
- ソフトマックス
- ロジット