Skip to content

Latest commit

 

History

History
28 lines (16 loc) · 1.36 KB

File metadata and controls

28 lines (16 loc) · 1.36 KB

简介

KL 散度(Kullback-Leibler Divergence)判断的是两个分布的“相似程度”,使用MSE并不能得到想要的结果。

$D_{KL}(P||Q) = \sum^N_{i=1}[p(x_i)logp(x_i)-p(x_i)logq(x_i)] $

班里男生人数占40%,女生占60%,则班里随机抽取一个人的性别的概率分布是Q = [0.4, 0.6]。作为真实事件的概率分布。

小明猜测班里男生占30%,女生占70%,则小明拟合的概率分布P1 = [0.3, 0.7]。

小红猜测班里男生占20%,女生占80%,则小红拟合的概率分布P2 = [0.2, 0.8].

那么现在,小明和小红谁预测的概率分布离真实分布比较近?这时候就可以用KL散度来衡量P1与Q的相似性、P2与Q的相似性,然后对比可得谁更相似。

KL 散度示意

$KL1$比$KL2$更小,说明P1与Q更相近。

PPO中的应用

为了防止Reward Model带来的权重修改过大,在loss函数中添加了一个约束项,也可以理解为KL散度。

PPO loss 示意

这里的$\pi^{RL}_{\phi}$代表最终经过RL的模型权重概率分布,$\pi^{SFT}$代表SFT后得到的模型权重概率分布

如果$\gamma$等于0,则是PPO的迭代方式;如果带有$\gamma$,则会应用在预训练的时候的损失函数,防止模型过多的偏向Reward Model带来的改变。

Ref

https://zhuanlan.zhihu.com/p/339613080