DPOとは
DPO(Direct Preference Optimization:直接選好最適化)とは、RLHFの代替手法として2023年にスタンフォード大学の研究者らが提案した、LLMを人間の選好に合わせて最適化する手法です。RLHFで必要な報酬モデルの訓練と強化学習のプロセスを省略し、選好データから直接モデルを最適化できる点が革新的です。
| ひとことで言うと | 「どちらの回答が好ましいか」のデータで、直接モデルを調整する手法。 |
|---|---|
| どこで使う | LLMの応答品質の改善。RLHFをもっと簡単に行いたいとき。 |
| 注意点 | 好みデータの質と偏りが、そのまま結果に反映される。 |
DPOの仕組み
DPOは、人間の選好データ(好ましい回答と好ましくない回答のペア)から導出される損失関数を用いて、通常の教師あり学習と同様の手順でモデルを最適化します。理論的には、報酬モデルの最適解とRL最適化の解析解を統合することで、報酬モデルを明示的に訓練する必要をなくしています。この数学的な簡略化により、実装の複雑さが大幅に低減されます。
1回答を2つ出す同じ質問に別々の答え
▶
2人が選ぶ好ましい方をマーク
▶
3確率を直接調整良い方を上げ、他方を下げる
▶
4好みに沿う応答評価の高い書き方に寄る
※ RLHFと違い、報酬モデルを別に作らないため手順が少なくて済みます。
DPOの利点と現在の動向
DPOの主な利点は、実装の容易さ、訓練の安定性、計算コストの低さです。RLHFでは報酬モデルの訓練、PPOによる強化学習、参照モデルの管理といった複雑なパイプラインが必要でしたが、DPOではシンプルな教師あり学習パイプラインで同等以上の性能を達成できます。LLaMA 3やZephyrなど多くのモデルでDPOが採用されており、現在のLLM開発における主要な選好最適化手法の一つとなっています。