RLHF/DPO 小話（その３）
和地 瞭良 / Akifumi Wachi

April 25, 2024
RLHF 1 や DPO 2 に関して論文 [Wachi et al., 2024] を最近執筆した。やはり自分で研究すると理解がかなり深まるわけで、巷ではあまり議論されていないことが色々と分かった。なので、すでに公開済みの内容の中から話せる範囲で情報共有して、誰かの役に立てばいいな、と思っている次第である。やる気が持続すればその 4 くらいまでいく予定（多分力尽きる）。

RLHF = Reinforcement Learning from
Human Feedback [Ouyang et al., 2022]
1

DPO = Direct Preference Optimization[Rafailov et al., 2024]2

これまでのコラム（その１-２）• https://akifumi-wachi-4.github.io/website/jp.html

言語モデルのアライメント ̸= 「調整」
その 1 とその 2 で再三述べてきたとおりだが、これまで紹介してきた手法（RLHF, DPO, KTO など）は、すべて

maxπθ

E x∼ρ,y∼πθ (·| x) [ r ( x, y) ] − βDKL [ πθ (y | x ) ∥ πref (y | x ) ],(1)という問題を解いており、この問題の解析解はπr⋆ (y | x ) =1π (y | x ) exp
Zr ( x; πref ) ref
1r ( x, y) ,β(2)という形で書ける。
改めてこの式を見て、どのような印象を持つだろうか？RLHF/DPO/KTO
いずれの手法でも、 β は大抵の場合 0.1 前後の値が選ばれる。Zr は単なる正規化のための分配関数 Zr を一旦無視して β = 0.1 を代入すると

πr⋆ (y | x ) ∝ πref (y | x ) exp(10 · r ( x, y))(3)を得る。リファレンス方策 π (y | x ) に対し exp(10 · r ( x, y)) というなんとも恐ろしい関数を掛けていることに気づくだろうか？ 3 辞書を引くと、アライメント（Alignment） は日本語で「調整」と訳されることが多いが、この式を見るとそんな優しい言葉では表現できないほどの強制力を感じずにはいられない。このような強制力をもってアライメントをするからこそ、ChatGPT をはじめとする RLHF/DPO が施された大規模言語モデルは人間と見違えるほどの対話能力を持つわけである。しかし、こんな過激な操作をしてなにか弊害はないのだろうか？

RLHF/DPO の弊害
最近、RLHF や DPO が施された大規模言語モデルには色々な欠点があるらしい、ということが報告されている。代表的な例の一つが我々の論文では安全性に関してアライメントしているが、さらに小さな β ∼ 0.01を用いると良い、という実験結果が得られている。なんと exp(100 · r ( x, y))。
32

• 出力される文章の多様性が損なわれる 4である。たとえば、Kirk et al. [2023] では、SFT のみが施された言語モデルに比較して、RLHF が施された言語モデルの出力の多様性が大幅に減少することが実験的に示されている（Figure 1参照）。他にも、

4
人間が (3) で服従させにきたのに、「今度は多様性がない！」って LLM くんも辛いですな・・・• 学習データのバイアスが RLHF/DPO によって助長されるなどの報告が多数報告されている。バイアスと一口に言ってもさまざまで、政治的志向 [Liu et al., 2021] やジェンダー [Sun et al., 2019] などのいわゆる「バイアス」はもちろんこと、言語モデルで特に顕著なバイアスなど多岐にわたる。せっかくなので、面白いバイアスを２つ紹介しよう。１つ目が「冗長性バイアス（verbosity bias）」 [Singhal et al., 2023,Saito et al., 2023] である。これは、言語モデルが「長い回答をより好む」ということであり、その傾向は人間と比較してより強い、ということが実験的に分かっている [Saito et al., 2023]。たしかに ChatGPT は「必要以上にペラペラ喋るなぁ」という印象を持っている人は多いのではないだろうか？この現象、Preference data 自体が、長い回答を好むように人間がラベル付けされて作成されているからでは、というような仮説が立てられていたりする [Zheng et al., 2023]。また、自己強化バイアス（self-enhancement bias） [Zheng et al., 2023] もなかなか面白い。言語モデルは、自分自身の回答を高く評価してしまう、というものである。
GPT-4 は 10%高い勝率で、Claude-v1 は 25%高い勝率で自分自身を好む [Zheng et al., 2023]、という実験的な結果が得られている。言語モデ
ルの特性上、自分が高く評価する文章を生成するわけで、至極当然の現象と言えるが、「ある言語モデル A が生成した文章を、言語モデル A 自身ないしはそれの派生モデルで評価するのはやめましょうね」というキーメッセージはちゃんと理解しておいたほうがいいだろう。
上記で紹介した実験的結果は、あくまで状況証拠を集めただけであり、その真偽ははまだ定まっていない。しかし、(3) を眺めるとなんかそういう現象が起こりそうだなぁ、というのを直感的に掴んでいただけると嬉しい。exp (10 · r ( x, y)) で方策の確率分布を強烈に変形させたら、多様性は減りそうな気がしてくるし、自分の回答を高く評価しやすくなるのも、なんとなくそんな気がしてこないだろうか？実はバイアスに関しては、非常に簡単な式変形 1 回で、バイアスが助長されるのを説明することができる。それについてはその 4 のいちばん大事なアイデアにつながるので、ここではあえて秘密にしておく。

exp はどこから来たのか？
式 (2) と (3) において exp

1β · r ( x, y )が弊害を生んでいるとして、なぜexp は登場しているのだろうか？ 5式 (1) から (2) をどのように導出したかを復習しよう。以降は、その 1に記載した証明から抜粋するので、証明全体を追いたい方はその 1 を参照されたい。いま、(1) に関し、Reverse KL divergence の定義から、以5β を大きくすればよいのでは？という読者もいるかと思うが、実用上は β を大きくするとうまくいかないことが大半である。

3Figure 1: 図はKirk et al. [2023] から拝借。EAD, Sent BERT, NLO は多様性の指標であり、値が大きいほど多様であることを示す。それぞれ
EAD = Expectation-adjusted distinct
N-grams
Sent BERT = Sentence-BERT embedding
cosine similarityNLI = Natural language inferencediversity

下のような関係が成り立つ。
max E ρ,π r ( x, y) − βDKL [ π (y | x ) ∥ πref (y | x ) ]ππ (y | x )= max E ρ,π r ( x, y) − β log
ππref (y | x )π (y | x )1= min E ρ,π log− r ( x, y)ππref (y | x )βπ(y|x)
.
= min E ρ,π logπ1πref (y | x ) exp β r ( x, y)(4) の最後によく見た exp

1β · r ( x, y )(4)の形が登場している。逆を追っていくと、exp が登場しているのは、log が存在していたからで、それはReverse KL divergence DKL の定義が log を用いているから、であることが分かる。言い換えるならば、Reverse KL divergence を他のものに変えれば、exp を登場させずに済む、ということになる。

他の divergence を使うことはできるのか？
では、Reverse KL divergence 以外の divergence を使うことは出来るのか？結論から言えば可能である。
Wang et al. [2024] は、Reverse KL divergence を、 f -divergence に拡張した手法を提案している。具体的には、DKL を 任意の f -divergence
D f に置き換えて、

maxπθE x∼ρ,y∼πθ (·| x) [ r ( x, y) ] − βD f [ πθ (y | x ) ∥ πref (y | x ) ](5)のような問題を解くことを目指す。なお、 f (1) = 0 を満たし x = 1 6 の周辺で狭義凸なる任意の凸関数 f : R + → R に対し、 f -divergence は以下のように定義される。
 p( x )D f [ p ∥ q ] : = E q( x ) f.
(6)q( x )ただし、 p と q は任意の確率分布である。 f -divergence の例とそれに対応する関数 f としては Figure 2 にまとめたので参照していただきたい。

この x はプロンプトの x とは異なることに注意。
6

4

Figure 2: 図はWang et al. [2024] から拝借。

ここで (6) を (7) に代入すると、以下の式を得る。
 πθ (y | x )max E x∼ρ,y∼πθ (·| x) [ r ( x, y) ] − βE y∼πref (·| x) fπθπref (y | x )(7)

導出が結構複雑なので気になる方は元論文を追っていただきたいのだ
が、DPO のときと同様に、(7) の最適解は解析的に得られて、

11πr⋆ (y | x ) =πref (y | x )( f ′ )−1r ( x, y) ,(8)br ( x; πref )βZ

br は Zr とは微妙に形は異なるものの依然として正規化のようになる。Zのための分配関数である。また、( f ′ )−1 は、関数 f の一階微分の逆関数であることに留意されたい。
具体的な例として Reverse KL と Forward KL を見ていくと、π ⋆ とπref について以下のような関係式が得られる。なお、簡単のため定数項は省略していることに留意されたい。
• Reverse KL divergenceπr⋆ (y | x ) ∝ πref (y | x ) exp

1r ( x, y)β• Forward KL divergenceπr⋆ (y | x ) ∝ −πref (y | x )1r ( x, y)β −1

そうすると、Forward KL については Reverse KL と比較すると、穏やかな操作をしていることが分かるだろう。事実、Wang et al. [2024] において、Forward KL を用いたほうが、Reverse KL を用いたときよりも アライメント後の言語モデルの出力が多様である、ということが実験的に示されている（Figure 3参照）。一方で、アライメントの度合いが小さいため、生成された文章の有用性（すなわち報酬）は低い、ということが分かっている。

データセットの分布が性能に与える理論的考察
この RLHF/DPO 小話シリーズ、どちらかというとアルゴリズムにばかり焦点が当てられてきたが、大事なものを一個忘れていないだろうか？

5Figure 3: 図はWang et al. [2024] から拝借。α の値が小さいときほど、方策のエントロピーが大きくなり、報酬が低下することが示されている。Forward KL
divergence と Reverse KL divergenceはそれぞれ、α = 0 と α = 1 のときのα-divergence であることに注意。

「データ」である。データは機械学習の肝であり、この研究分野でも結果的に得られる言語モデルの性能を大きく左右する。では、どの程度言語モデルの性能が影響されるか理論的に見てみよう。以降の理論解析は、
Xiong et al. [2023] および Wachi et al. [2024] をベースにして、キーとなるアイデアが伝わりやすいよう簡略化したものである。もし詳細が気になる方は元論文を御覧いただきたい。
いま、言語モデルの性能を表す関数として、任意の方策 π に対し

J (π ) := E x∼ρ,y ∼π (·| x) [r ( x, y)](9)を定義する。この関数は、「ある方策 π が真の報酬 r をどのくらい平均的に獲得できますか？」 というのを意味する。すると、今我々が気になる
b の（真の報酬 r に関のは、最適な方策 π ⋆ と自分の方策（言語モデル）πする）性能差であり、それはb ) := E x∼ρ,y ∼π ⋆ (·| x) [r ( x, y)] − E x∼ρ,y ∼πb(·| x) [r ( x, y)]J (π ⋆ ) − J (πhi= E x∼ρ E y ∼π ⋆ (·| x) [r ( x, y)] − E y ∼πb(·| x) [r ( x, y)]と表せる。これは、簡単な式変形（同じものと足して引いてるだけ）から

E y ∼π ⋆ (·| x) [r ( x, y)] − E y ∼πb(·| x) [r ( x, y)]= E y ∼π ⋆ (·| x) [r ( x, y) − br ( x, y)] − E y ∼πb(·| x) [r ( x, y) − br ( x, y)]+ E y ∼π ⋆ (·| x) [br ( x, y)] − E y ∼πb(·| x) [br ( x, y)]b ) を考えるうえで支配的なのは第二項のを得る。実は、 J (π ⋆ ) − J (πhiE x∼ρ E y ∼πb(·| x) [r ( x, y) − br ( x, y)]
なので、これに焦点を絞って分析してみよう。まず問題なのは、この項b に関して期待値が取られていることである。したがって、がπhiE x∼ρ E y ∼πb(·| x) [r ( x, y) − br ( x, y)]b (y | x )πb(r(x,y)−r(x,y))= E x∼ρ E y ∼π ⋆ (·| x)π ⋆ (y | x )というふうに式変形 7 してみる。

これはオフ方策評価（Off-policyEvaluation, OPE）とかでよく見る式変形ですね。
7

6b がそれぞれ、r と bπ⋆ と πr に関する最適解であることから、任意の
f -divergence に対し、
⋆
′ −1 1r ( x, y) ,π (y | x ) ∝ πref (y | x )( f )β′ −1 1bbπ (y | x ) ∝ πref (y | x )( f )r ( x, y)βを満たす。したがって、Reverse KL と Forward KL それぞれに対して、以下のような関係式が得られる。

• Reverse KL divergence のとき
b (y | x )π∝ expπ ⋆ (y | x )1(r ( x, y) − br ( x, y))β• Forward KL divergence のとき
b (y | x )πr ( x, y)∝⋆bπ (y | x )r ( x, y)
やはり、ここでも Reverse KL divergence の過激さが分かるだろうか？
真の報酬関数とデータから推定した報酬関数の間の誤差の絶対値

ε = | r ( x, y) − br ( x, y) |を定義すると、Reverse KL divergece を用いたときの真の方策 π ⋆ と得b の間の性能差は、られた方策 π1b ) ⪅ E x∼ρ E y ∼π ⋆ (·| x) expε( x, y) ε( x, y)J (π ⋆ ) − J (πβと大雑把に見積もることができる。なかなかやばい上界になっているのが分かるだろうか？このとき、注目すべき点が二点ある。

一点目は、最適方策からの性能の低下が、exp β1 ε( x, y) ε( x, y) で特徴づけられていること。つまり、データが疎であったり、ラベル付けが不正確な ( x, y) の領域があったりすると、ε( x, y) が大きくなるわけだが、

その推定誤差が exp

1
β ε ( x, y )ε( x, y) のレートで性能悪化に効いてしまう、ということを意味する。
二点目は、期待値が π ⋆ に関して計算されている、ということである。
つまり、最適方策からの性能の乖離を防ぐためには、最適方策が生成しうるような高品質なデータをまんべんなく集めて、正確にラベル付けする必要があるということを意味する。理論的には、低品質なデータをただただ大量に集めるだけでは不十分である、ということを示唆しているのである。 8

勘の鋭い読者は「あれ、ラベルは πSFTが集めるのが普通と言っていたじゃないか」と思うかもしれない。まさしくそれはいまホットなトピックで、Online DPOとか Iterative DPO という名前等で研究されており、雑に言えば「アライメントとデータ収集を交互に行う」というアプローチである。データを収集する方策がより高性能になることから、最終的に得られる言語モデルの性能が向上するすることが何件か報告されている。
87

Reverse KL divergence は悪なのか？
Reverse KL divergence にこだわる必要はないことが分かったが、では他の divergence を使うべきなのだろうか？ 9 Reverse KL divergence は悪なのか？個人的な答えとしては NO だと思う。 10 そのように考える理由をいくつか挙げると、• 回答の質。Reverse KL divergence を用いたときの回答の質がやはり良い。Figure 3で見た通り、Forward KL divergence 等を用いてしまうと、アライメントの「強制力」が低くなってしまい、質の低い回答が増えてしまうのである。

この辺の話は現在進行系で議論が進められている（ちなみに Wang et al. [2024] もICLR24 論文で新しい）。ここから先は私の個人的な感想だと思っていただきたい。
10
説明が回りくどくて申し訳ないという気持ちがありながらも、上の話を理解した
うえで Reverse KL を使うのと、何となく使うのとでは、（研究するなら）大きな差になるかなぁと思ってあえてこの書き方をした。
9• 多様性。 単一のモデルで多様な回答をできるようにすべきかは結構怪しいと思う。昨今、モデルマージや Mixture of Expert (MoE) の有用性が叫ばれているわけで、とても良質な回答を出力できるモデルを複数用意したうえで、なにか工夫を施す方が結果として好ましい可能性は高いと（個人的には）思う。
• バイアス。 こればかりは Reverse KL divergence を使う限りずっと悩まされる弊害だろう。一方で（関係者が見たらこいつ馬鹿だなぁと思うかもしれないが） OpenAI とか Google が考えているのはおそらく– 「めっちゃいいデータめっちゃ集めればいいんじゃないの？」
じゃないかと思う。たしかに、良質なデータを大量に集めれば 11 、Reverse KL divergence を使って強制的なアライメントをしても全く問題ない。全く問題ないどころか、あらゆる分野のエキスパートにスパルタ的にエリート教育された極めて良質な言語モデルが完成する、というわけである。 12

Reverse KL のメリットはそれだけではない
Reverse KL divergence の方がなんとなく良いような気がしてたと思う。
まだ釈然としない方もいるのではないかと推察するが、実は Reverse KL
divergence にはぐうの音も出ない実用的なメリットがあるのである。それが何かについては次回解説しよう。

References
Robert Kirk, Ishita Mediratta, Christoforos Nalmpantis, Jelena
Luketina, Eric Hambro, Edward Grefenstette, and Roberta
Raileanu. Understanding the effects of RLHF on LLM generalisation and diversity. In International Conference on Learning Representations (ICLR), 2023.
Ruibo Liu, Chenyan Jia, Jason Wei, Guangxuan Xu, Lili Wang, andSoroush Vosoughi. Mitigating political bias in language models

前章の言い方を使うならば理想的な方策
π ⋆ が生成しうる理想的な出力をまんべんなくラベル付けすれば
11

一方で、そこまで高品質なデータを集めることができないときは、Forward KL
divergence で緩いアライメントをすべき、という状況は生じるかもしれない。そのとき、RLHF/DPO をそもそもすべきなのか？という議論も当然すべきだが。
128through reinforced calibration. In AAAI Conference on Artiﬁcial
Intelligence (AAAI), 2021.
Long Ouyang, Jeffrey Wu, Xu Jiang, Diogo Almeida, Carroll Wainwright, Pamela Mishkin, Chong Zhang, Sandhini Agarwal, Katarina Slama, Alex Ray, et al. Training language models to follow
instructions with human feedback. Advances in Neural Information
Processing Systems, 35:27730–27744, 2022.
Rafael Rafailov, Archit Sharma, Eric Mitchell, Christopher D Manning, Stefano Ermon, and Chelsea Finn. Direct preference optimization: Your language model is secretly a reward model. Advances in Neural Information Processing Systems, 36, 2024.
Keita Saito, Akifumi Wachi, Koki Wataoka, and Youhei Akimoto.
Verbosity bias in preference labeling by large language models. InNeurIPS 2023 Workshop on Instruction Tuning and Instruction Following, 2023.
Prasann Singhal, Tanya Goyal, Jiacheng Xu, and Greg Durrett. A long
way to go: Investigating length correlations in RLHF. arXiv preprint
arXiv:2310.03716, 2023.
Tony Sun, Andrew Gaut, Shirlyn Tang, Yuxin Huang, Mai ElSherief,Jieyu Zhao, Diba Mirza, Elizabeth Belding, Kai-Wei Chang, andWilliam Yang Wang. Mitigating gender bias in natural language
processing: Literature review. Association for Computational Linguistics (ACL), 2019.
Akifumi Wachi, Thien Q Tran, Rei Sato, Takumi Tanabe, and Yohei
Akimoto. Stepwise alignment for constrained language model
policy optimization. arXiv preprint arXiv:2404.11049, 2024.
Chaoqi Wang, Yibo Jiang, Chenghao Yang, Han Liu, and Yuxin Chen.
Beyond reverse KL: Generalizing direct preference optimization
with diverse divergence constraints. In International Conference on
Learning Representations (ICLR), 2024.
Wei Xiong, Hanze Dong, Chenlu Ye, Han Zhong, Nan Jiang, andTong Zhang. Iterative preference learning from human feedback:Bridging theory and practice for RLHF under KL-constraint. arXiv
preprint arXiv:2312.11456, 2023.
L Zheng, WL Chiang, Y Sheng, S Zhuang, Z Wu, Y Zhuang, Z Lin,
Z Li, D Li, and E Xing. Judging llm-as-a-judge with mt-bench andchatbot arena. arxiv preprint arxiv: 230605685. 2023.