リソース/モデルのトレーニング/トレーニング手法

設定

蒸留設定

教師モデル、生徒モデル、2つの回答長制限、およびダイバージェンスβ:各蒸留設定の機能、適用されるルート、およびその選択方法について説明します。

第7章読了時間 2分参考文献 4件

各設定の適用箇所

設定オフポリシー(教師モデルが記述)オンポリシー(教師モデルが評価)
教師モデルはいはい
生徒モデルはいはい
最大回答長はい(一部のサービスのみ)いいえ
最大練習回答長いいえはい
ダイバージェンスβいいえはい
エポック数、学習率はいはい

設定

教師モデル一般的 予算内で利用可能であり、すでにお客様の質問に適切に回答できる最も高性能な教師モデル#

振る舞いの継承元となるモデルです。お客様の質問に対するこのモデルの品質が、生徒モデルの品質の上限となります。また、誤り、長さ、スタイルも学習されるため、蒸留前に生徒モデルと比較評価してください。オフポリシーの場合、テキストのみが引き継がれるため、どの教師モデルでも機能しますが、マネージドサービスではリストにある「教師 → 生徒」のペアのみが許可されます。オンポリシーの場合、教師モデルは生徒モデルと語彙を共有する必要があるため、通常は同じファミリーの大規模モデルとなり、生徒モデルとともにGPUに収まる必要があります。回答前に詳細な推論を行う思考型教師モデルは、複雑な多段階の問題に有効です。一方、短いチャットの返答には、通常、非思考型の教師モデルの方が小規模な生徒モデルに適しています。

生徒モデル(ベースモデル)一般的 適切に回答できる範囲で最小のモデル#

訓練対象となる小規模なモデルであり、実際にデプロイされるモデルです。そのため、運用コストと処理速度はこのモデルによって決まります。モデルが小さいほど低コストかつ高速になりますが、教師モデルの振る舞いを吸収する余地は少なくなり、生徒が教師を上回ることは稀です。Scalataでは、選択したベースモデルが生徒モデルとなります。選択した教師モデルやプロバイダーに対して生徒モデルとして使用できないモデルは、その理由とともにグレーアウトされます。

最大回答長一般的 適切な回答の長さ程度(例: 1,000)#

オフポリシー(公開しているサービス上): 教師モデルが1つのプロンプトにつき記述できる最長の回答(トークン単位)です。回答が長いほど、教師モデルの出力トークンと生徒モデルのトレーニングトークンのコストが増加し、生徒モデルはその長さを学習します。短すぎると、教師モデルの回答が途切れてしまい、生徒モデルは切り捨てられたテキストを学習することになります。

最大練習回答長一般的 適切な回答の長さを少し上回る程度(例:512)#

オンポリシーのみ: 各ステップで生徒モデルが1つのプロンプトにつき記述する最長の回答です。生成はステップの中で最も時間のかかる部分であるため、これがGPU時間を調整する主な要因となります。制限を超える回答は切り捨てられ、生徒モデルは自身が記述した部分についてのみフィードバックを受け取ります。

ダイバージェンス β一般的 1(ライブラリのデフォルト)#

オンポリシーのみ: 各トークンで生徒モデルと教師モデルを比較するダイバージェンスです。0は順方向KLであり、生徒モデルは教師モデルが発する可能性のあるすべてを網羅しようとするため、より広範で多様な回答が得られますが、選択肢の境界が曖昧になる可能性があります。1は逆方向KLであり、生徒モデルは教師モデルの最も可能性の高い回答に集中するため、より鋭く決定的なものになります。0.5はJensen-Shannonダイバージェンス(JSD)であり、対称的な混合です。中間の値は補間されます。強化学習によるファインチューニングにおけるKL βとは異なり、このβはモデルを初期状態に固定するものではなく、尺度そのものを選択します。

選択方法

教師モデルと生徒モデルの選択(例)
  1. 候補: 評価用の質問に適切に回答するもののホスティングコストが高すぎる7Bモデルと、同ファミリーの0.5B、1.5B、3Bモデル。
  2. 7Bモデルをそれぞれと比較評価します。たとえば、ほとんどの質問で0.5Bを上回り、多くの質問で1.5Bを上回り、3Bとはほぼ同等であるとします。
  3. 3Bは学習すべきことがほとんどありません。0.5Bは学習すべきことが最も多いものの、それを吸収する余地が最も少なくなっています。したがって、1.5Bが最初の生徒モデルとして自然な選択となります。
  4. 同ファミリーであるため、オンポリシーの蒸留が可能です。練習用の回答の長さを一般的な返答よりも少し長めに設定し、β = 1とし、7Bと1.5Bの両方を保持できるGPUを使用します。
1トークンにおけるβの役割
  1. 教師モデルは回答を続ける際、その確信度を「Yes」50%、「Sure」40%、その他10%に分割します。
  2. 順方向KL(β = 0)の場合、生徒モデルは「Yes」と「Sure」の両方の確率を高く保つよう促され、どちらかにほとんど確率を与えないと厳しく罰せられます。
  3. 逆方向KL(β = 1)の場合、教師モデルが可能性が低いと判断したものに対して厳しく罰せられ、ほとんどの重みを「Yes」のみに置くことで満足します。
  4. 数千トークンにわたると、前者はより多様な生徒モデルを生み出し、後者はより一貫性のある生徒モデルを生み出します。短く事実に基づく返答の場合、通常は一貫性が求められます。
可能な回答 →β = 0 · 順方向KL教師モデルが提示し得るすべてを網羅するため、回答間のギャップにも重みが置かれます。より広範で多様ですが、時に曖昧になります。
可能な回答 →β = 1 · 逆方向KL教師モデルの主要な回答に絞り込み、その他を無視します。より鋭く決定的ですが、多様性には欠けます。
教師モデル(破線)生徒モデル(塗りつぶし)
小規模な生徒モデルは、2つの優れた回答を持つ教師モデルを完全に模倣することはできません。順方向KLは両方を網羅するように分布を広げ(モード網羅型)、逆方向KLは1つを選んでそれに適合させます(モード探索型)。0から1の間のβは、この2つをブレンドします。

コストの要因

  • オフポリシー: 教師モデルの推論(生成するすべての回答の入力および出力トークン)と、生徒モデルのトレーニング(プロンプトと教師モデルの回答、× エポック数)の合計です。教師モデルの回答の長さは事前には分からないため、見積もりは範囲で示されます。サービスによるプロンプト合成は、両方の部分を増加させます。
  • オンポリシー: GPU時間です。各ステップで回答を生成し、両方のモデルを実行するため、同じデータでの教師あり学習よりも遅く、GPUは両方のモデルを保持する必要があります。

よくある間違い

  • 自社の質問に対する評価ではなく、評判で教師モデルを選択すること。
  • 教師モデルの知識を保持するには小さすぎる生徒モデルを選択すること。
  • 教師モデルの最大回答長を一般的な返答よりもはるかに長く設定したままにすること。その長さに対してコストを支払い、生徒モデルもそれを学習してしまいます。
  • 2つのβを混同すること。蒸留のβはダイバージェンスを選択し、RFTのKL βはドリフトに対するペナルティです。
  • オンポリシーの実行において、教師モデル用のGPUメモリを予算に組み込まないこと。

参考文献および関連資料

外部ソースは新しいタブで開きます。

  1. 01Distillation TrainerHugging Face TRL docs · huggingface.coβ(0は順方向KL、1は逆方向KL、0.5はJSD)およびデフォルトの補完長を定義します。
  2. 02On-Policy Distillation of Language Models: Learning from Self-Generated MistakesAgarwal et al., 2024 · ICLR / arXiv · arxiv.orgダイバージェンスの選択が品質と多様性のトレードオフにどのように影響するかに関する実験です。
  3. 03Kullback–Leibler divergenceWikipedia · en.wikipedia.orgKLダイバージェンスの定義と、その2つの方向が異なる理由です。
  4. 04Jensen–Shannon divergenceWikipedia · en.wikipedia.orgβ = 0.5が対応する対称的なダイバージェンスです。

専門家が数週間かける作業を数分に短縮します

Scalataがお客様のチーム、データ、および統制にどのように適合するかをご確認ください。

営業へのお問い合わせ