Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
論文紹介:Direct Preference Optimization: Your Langu...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kazutoshi Shinoda
August 19, 2024
Technology
4
1.3k
論文紹介:Direct Preference Optimization: Your Language Model is Secretly a Reward Model
第16回 最先端NLP勉強会(2024年8月25-26日)の発表スライドです
Kazutoshi Shinoda
August 19, 2024
Tweet
Share
More Decks by Kazutoshi Shinoda
See All by Kazutoshi Shinoda
LLMは心の理論を持っているか?
kazutoshishinoda
1
340
論文紹介:Safety Alignment Should be Made More Than Just a Few Tokens Deep
kazutoshishinoda
0
170
論文紹介:Minding Language Models’ (Lack of) Theory of Mind: A Plug-and-Play Multi-Character Belief Tracker
kazutoshishinoda
0
490
Other Decks in Technology
See All in Technology
"共通化"と"Embed"のブレンドでスケール可能な運用を!M&Aを支えるGENDA SREの実践 / GENDA Tech Talk #3
genda
0
150
Prox Industries株式会社 会社紹介資料
proxindustries
0
190
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
170
新規事業開発でのAWS活用
amixedcolor
1
140
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
640
OpenShiftでllm-dを動かそう!
jpishikawa
0
210
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
0
440
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
190
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.5k
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
140
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
250
なぜ令和の今ゲームボーイを触るのか
kimkim0106
0
110
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Being A Developer After 40
akosma
91
590k
It's Worth the Effort
3n
188
29k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Utilizing Notion as your number one productivity tool
mfonobong
3
220
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
73
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
150
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
190
A Soul's Torment
seathinner
5
2.3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
450
Transcript
Direct Preference Optimization: Your Language Model is Secretly a Reward
Model Rafael Rafailov, Archit Sharma, Eric Mitchell, Stefano Ermon, Christopher D. Manning, Chelsea Finn (NeurIPS2023) 第16回 最先端NLP勉強会(2024年8月25-26日) 紹介者:篠田 一聡(NTT人間情報研究所)
はじめに ◼ DPO が arXiv に出たのは 2023年5月で,被引用数は1000以上 ◼ DPO は
RLHF と等価で扱いやすい ◼ DPO の派生手法が山のようにある(IPO, KTO, SimPO, …) ◼ 一方で,最近のLLMではまだDPOが使われている? ✓ Meta の Llama-3 ✓ PFN の PLaMo DPOの何がいいの? DPO にも課題はあるのか?? 2
この発表の目的 ◼ 目的 ✓ DPOの良さを理解する ◼ 目標 ✓ DPO の目的関数を理解する
✓ DPO と RLHF の違いを理解する ✓ DPO と派生手法の違いを理解する 3
背景:LLM のアラインメント ◼ アラインメントの目的 ✓ プロンプトに対して,LLMがより人が好むような出力をすること ➢ 有用性,安全性,事実性, etc. ◼
問題設定 ✓ 𝐷 = 𝑥, 𝑦𝑤 , 𝑦𝑙 𝑛, 𝑥: プロンプト, 𝑦𝑤 : 人が好む出力, 𝑦𝑙 : 人が好まない出力 ✓ LLM に 𝑥 が入力されたら 𝑦𝑙 よりも 𝑦𝑤 を生成するように学習したい 4 「𝑥」 「𝑦1 」 「𝑦2 」 SFT後のLLMが 候補を生成 ユーザーの プロンプト 人がどちらを好むか をアノテーション 𝑦𝑤 𝑦𝑙
背景:RLHF (1/2) ◼ 1. 報酬モデル 𝑟𝜙 𝑥, 𝑦 の学習 出力
𝑦1 が 𝑦2 よりも好まれる確率 を使って 𝐷 = 𝑥, 𝑦𝑤 , 𝑦𝑙 𝑛 で最尤推定 … 直感的には,𝑟𝜙 𝑥, 𝑦𝑤 > 𝑟𝜙 (𝑥, 𝑦𝑙 ) になるように学習 5 𝑝 𝑦1 ≻ 𝑦2 |𝑥 = exp(𝑟𝜙 (𝑥, 𝑦1 )) exp(𝑟𝜙 𝑥, 𝑦1 , +exp(𝑟(𝑥, 𝑦2 ))) 𝐿𝑅 = −𝔼𝐷 [log𝜎( 𝑟𝜙 𝑥, 𝑦𝑤 − 𝑟𝜙 (𝑥, 𝑦𝑙 ))] ← Bradley-Terry model ← 報酬モデルの目的関数
(導出)報酬モデルの目的関数 𝐿𝑅 6 𝐿𝑅 = −𝔼𝐷 log 𝑝 𝑦𝑤 ≻
𝑦𝑙 |𝑥 = −𝔼𝐷 log exp 𝑟𝜙 𝑥,𝑦𝑤 exp 𝑟𝜙 𝑥,𝑦𝑤 +exp 𝑟𝜙 𝑥,𝑦𝑙 = −𝔼𝐷 log 1 1+exp − 𝑟𝜙 𝑥,𝑦𝑤 −𝑟𝜙 𝑥,𝑦𝑙 = −𝔼𝐷 [log 𝜎(𝑟𝜙 𝑥, 𝑦𝑤 − 𝑟𝜙 𝑥, 𝑦𝑙 )]
背景:RLHF (2/2) ◼ 2. 強化学習 (PPO) 𝜋𝜃 (𝑦|𝑥) を学習中のLLM, 𝜋ref
(𝑦|𝑥) をSFT後のLLMとして, 𝜋ref から 𝜋𝜃 (𝑦|𝑥) が離れすぎないようにしながら報酬 𝑟𝜙 を最大化 𝜋𝜃 と 𝜋ref が離れすぎてしまうと,報酬モデルが正確でなくなる,出力の多 様性がなくなる,などの弊害がある 7 max 𝜋𝜃 𝔼𝑥~𝐷,𝑦~𝜋𝜃(𝑦|𝑥) 𝑟𝜙 𝑥, 𝑦 − 𝛽𝔻KL [𝜋𝜃 𝑦 𝑥 ||𝜋ref 𝑦 𝑥 ] ↑𝑦 は 𝜋𝜃 から生成
DPO ◼ 目的関数 8 𝜋𝜃 (𝑦|𝑥) :学習中のLLM 𝜋ref (𝑦|𝑥) :SFT後のLLM
𝐿DPO = −𝔼𝐷 log𝜎 𝛽 log 𝜋𝜃 𝑦𝑤 𝑥 𝜋ref 𝑦𝑤 𝑥 − 𝛽 log 𝜋𝜃 𝑦𝑙 𝑥 𝜋ref 𝑦𝑙 𝑥
(導出)RLHF の目的関数の最適解 9 ← RLHFの目的関数 ← KLの定義 ← -1/β倍 ←
log (確率/確率)の 形を作る 𝔻KL [𝜋(𝑦|𝑥)||𝜋∗(𝑦|𝑥)] は 𝜋 𝑦 𝑥 = 𝜋∗(𝑦|𝑥) の時に最小値を取る. よって最適解は = 𝜋∗(𝑦|𝑥) ※ 𝑍(𝑥) は分配関数
(導出)DPO の目的関数 10 ← RLHF の最適解 ← 式変形(Your Language Model
is Secretly a Reward Model) 𝐿DPO = −𝔼𝐷 log𝜎 𝛽 log 𝜋𝜃 𝑦𝑤 𝑥 𝜋ref 𝑦𝑤 𝑥 − 𝛽 log 𝜋𝜃 𝑦𝑙 𝑥 𝜋ref 𝑦𝑙 𝑥 ← 報酬モデルの目的関数に代入 分配関数 𝑍(𝑥) が消える
実験設定 タスク ◼ Controlled sentiment generation ✓ 入力:映画のレビューのプレフィックス ✓ 出力:ポジティブなレビュー
✓ データセット:IMDb ◼ Summarization ✓ 入力:Redditのポスト ✓ 出力:要約 ✓ データセット:Reddit TL;DR summarization dataset ◼ Single-turn dialogue ✓ 入力:ユーザーのクエリ ✓ 出力:応答 ✓ データセット:Anthropic Helpful and Harmless dialogue dataset 11 評価 ◼ 参照文と生成文をGPT-4 が比べて勝率を出す ✓ 高い方がいい ◼ (IMDbは)感情分類器 で報酬を計算 ✓ 高い方がいい ◼ 𝔻KL [𝜋||𝜋ref ](トークンご とに計算して合計) ✓ 低い方がいい
DPOは… 12 𝜋ref と離れずに高い報酬を達成 = 目的関数の最適化に成功 温度に対して頑健で,PPOよりも高い勝率 対話では,対等な評価では DPOのみが勝率5割ごえ 訓練の早い段階で勝率が収束
分布外に対して PPOより頑健
DPO と RLHF の違いまとめ ◼ 数学的に両者は等価だが,DPO は報酬モデルの学習と強化学習が不要 ◼ DPO は
RLHF よりハイパラが少ないので最適化が成功しやすく,性能も高 い 13
派生手法たち 14 Wang et al. 2024. A Comprehensive Survey of
LLM Alignment Techniques: RLHF, RLAIF, PPO, DPO and More (左から順に) RM1: 報酬モデルを明示的に作るか? RM2: 出力ごとに報酬スコアを返すか? RM3: 報酬は文 or トークンレベル? RM4: 人が書いた負例のみを使うか? F1: 選好(ペア)データが必要か? F2: 人 or AI がフィードバック F3: 3つ以上のランクリストを使うか? RL1: 参照方策(SFTモデル)が必要か? RL2: 出力長に対して制約があるか? RL3: KL以外のダイバージェンス RL4: 学習モデルでサンプリングするか? O1: 学習中に選好データを作り直すか? O2: SFTとアラインメントは別々に行う? DPO →
派生手法たち ◼ IPO ✓ RLHF/DPO の報酬モデルが過学習する問題を,報酬ではなく選好確率を 目的関数にすることで回避 ◼ KTO ✓
ペアデータがいらず,ある出力が良いか悪いか,だけで学習可能 ◼ SimPO ✓ 出力長に制約を設ける + 参照モデルをなくして計算量を軽減 ◼ NPO ✓ DPO の負例の項だけで訓練して,好ましくない出力を忘却 ◼ Iterative DPO ✓ DPOは分布シフトに弱かったが,最新のモデルでサンプリング・アノテ ーションを繰り返すことで分布シフトの問題を回避 ✓ 参考: https://tech.preferred.jp/ja/blog/plamo-100b-post-training/ 15
まとめ ◼ RLHF の最適解が定まるところから,DPOの目的関数が導出できる ◼ DPO は RLHF と等価だが,報酬モデルの訓練と強化学習が不要で, ハイパラが少なく最適化が上手くいって性能も高い
◼ DPO の課題としては,SFT後のモデルで確率を評価する必要がある, 人が好む出力と好まない出力のペアが必要,分布シフトに弱い,など があり,それらに対応するための派生手法が存在 16