thunlp/OPD
Rethinking On-Policy Distillation of Large Language Models: Phenomenology, Mechanism, and Recipe
何を解決するか
このプロジェクトは、大規模言語モデルにおけるオンポリシー蒸留(OPD)の学習ダイナミクスと失敗モードについての理解不足に取り組んでいます。OPDが成功するか失敗するかの理由を体系的に調査し、蒸留が失敗した場合のパフォーマンス回復に向けた実用的な戦略を提供します。
動作方法
OPDは、教師モデルが提供するトークンレベルの報酬信号を使って学生モデルを訓練するプロセスです。本プロジェクトは、成功のための2つの重要な条件を特定しています:学生モデルと教師モデルは互換性のある思考パターンを持つ必要があり、教師モデルは学生モデルがまだ経験していない能力を提供しなければなりません。
失敗したOPDを改善するために、以下の2つの具体的な戦略を実装しています:
- オフポリシー・コールドスタート:モデル間のギャップを埋めるための初期化プロセス。
- 教師に合わせたプロンプト選択:学生モデルを教師モデルの能力により適応させるためのプロンプト選択。
技術的には、verlフレームワークを強化学習および蒸留に、LlamaFactoryを教師付き微調整(SFT)に使用しており、報酬信号を最適化するためのさまざまなTop-Kトークン選択および重み付け戦略をサポートしています。
対象ユーザー
モデル蒸留、大規模言語モデルのポストトレーニング、および大規模教師モデルから小規模学生モデルへの知識移行を最適化したい研究者や開発者。
主な特徴
- メカニズム分析:成功したOPDが、学生モデルが訪問する状態における高確率トークンの整合性に依存していることを、トークンレベルで示す。
- 回復戦略:失敗した蒸留を修正するためのオフポリシー・コールドスタートと教師に合わせたプロンプト選択を導入。
- 統合:診断メトリクス(
overlap_ratioとoverlap_token_advantage)をverlライブラリに統合。 - 柔軟な構成:複数のTop-K戦略(和集合、積集合など)と報酬重み付けスキームをサポート。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト