
KLダイバージェンスは非負の値を取り、二つの分布が完全に一致する場合のみ0 になりま
す。値が大きいほど、二つの分布の違いが大きいことを示します。
目的関数におけるKLダイバージェンス
目的関数
J
(
z
)の第 2項では、この KLダイバージェンスにマイナスをかけることで、現在の
方策が教師あり学習済みモデル、すなわちRLHF 学習前の方策から大きく乖離することを防
いでいます。これにより、言語モデルとしての基本的な能力を保持しながら、人間の好みに適
合するように最適化を行うことができます。
b
は、この第2項の重みを制御するハイパーパラメータです。
b
の値を大きくすると、教師
あり学習済みモデルの方策からの乖離に対するペナルティが強くなり、現在の方策は教師あり
学習済みモデルの方策に近づくように学習されます。逆に、βの値を小さくすると、事前学習
済みの方策からの乖離に対するペナルティが弱くなり、現在の方策は報酬モデルのスコアを最
大化することを優先するようになります。
b
の値は、タスクや目的に応じて適切に設定する必要があります。
b
の値を適切に設定する
ことで、人間の好みに適合しつつ、言語モデルとしての性能を維持した方策を学習できると考
えられています。
PPO損失関数
RLHFでは、報酬モデルから得られた報酬と、現在の方策と教師あり学習済みモデルの方策
とのKL ダイバージェンスを用いて、次のような目的関数
J
(
z
)を定義しました。
J
(
z
)=
E
(x, y)aD
r
[r
i
(
x
,
y
)-
bD
KL
(r
z
(y | x )||