banner
NEWS LETTER

对xxPO的思考

Scroll down

贝尔曼方程

贝尔曼方程可以写作:
整个传统RL的基础,都建立在最大化未来期望的回报上。即

LLM任务下的马尔科夫链

自回归框架下,状态是,即之前生成的所有长度和用户的输入query,action被视作输出一个token。

稀疏奖励问题

由于OPENAI在RLHF那篇文章中所定义的reward,只有最后一个步骤被赋予了奖励,前面步骤的奖励仅仅是服从kl限制的一个basic reward。
这是一个非常稀疏的奖励框架。尤其是数学问题上,模型常常在走了几千个step之后才能得到一步奖励。传统RL要做的事情是,每输出一个action,就不断的去逼近那个最大的未来期望。也就是去得到那一步奖励。
这是一个非常难的事情,由于指数的爆炸效应,即便gamma=0.99,我们也极难预测几千步之后是否会输出那个答案token。所以PPO的实践中,一般最佳的gamma都是1。但是即便是1,想要预测如此长时间的一个序列也是很难的一件事。Critic很难做到这一点。

GRPO做了什么?

从表面上来看,GRPO改变了优势的定义,不再是最大化未来的奖励的期望,而是组内对比的一个相对优势。他颠覆了传统RL对于最大化未来期望这一行为逻辑。
但是实际上,我认为他隐式地修改了LLM任务下的马尔科夫链的定义,从token level修改为了sequence level+verifiable reward。
- 状态:用户的输入q
- 动作:模型的完整回复r
- 奖励:完整回复r有没有答对
由于没有下一个状态,因此也不需要最大化未来的奖励的期望了。直接对完整的回复r评分就行。反正模型的语言能力不会很差,在RL之前解决掉语言能力的问题就行了,kl散度会保留语言能力的。这也体现出了为什么R1-Zero的语言能力那么差。因为它压根就不在乎除了答案之外输出了什么。

DPO做了什么?

DPO把RLHF通过推导,建模为了一个隐式reward的形式。从公式来看如下所示:
它其实是做了一个探索的鼓励。在action正确的情况下,且当前模型的输出分布和ref模型的输出分布差距很大的情况下,他认为可以得到一个很高的奖励。在DPO中,action的正确与否,实际上是又数据集指定的。

冲突所在

经过以上的探索,我们发现了冲突。无论是xxPO,最终的目的都是通过奖励,优化每一个token的输出的偏好。但是事实是,我们又没法判断每一token到底在句子中起到了什么样的作用。我们的reward的粒度和现有方法的粒度存在巨大的不匹配的问题。
为了判断每一个token在句子中的作用,现有的方法可以这样总结
- GRPO:自一致性方法,通过大量采样来模糊的判断当前的token最后能不能推出正确答案。但是由于每次的采样路径不一致,无法达到无偏的对比。
- DPO:隐式的reward,本质是logits的变体形式。通过鼓励探索这一思想来决定每一个token的reward。从粒度来看是最好的,但是依旧很难确定,模型的探索是否是正确的。很可能探索了,虽然最后的答案没变,但是最后输出答案的概率反而变低了。或者一次对好几个高熵token进行探索,但是不知道具体是哪里出了问题。
- PPO:基于Critic和GAE的模型预测方法,通过预测几千个step之后的reward,通过贝尔曼方程来为当前的token赋予reward,本质其实是一种process reward.

如何解决冲突?

Pass@k能力的丢失

从GRPO的算法上来看,很显然,如果要能够得到高优势,首先这一组内必须有能够得到reward的response。因此如果你本身就没有解决问题的能力,那么肯定不会有这样的response。
这是GRPO作为一个没有PRM,同时还是on-policy算法导致的。提升pass@k必须要引入外部知识,而不是内部自我激发,提纯能力。

目前的一些解决手段

  • 提高rollout个数,来生成更高质量的回答。但不改变其无法提升pass@k的本质

现阶段的难题

  • PRM很难做,如果PRM能够突破,我敢肯定PPO会薄纱GRPO。
  • 把PPO算法发展为off-policy的算法,学习ground truth的轨迹,也许是一条路
  • 我个人觉得,学习GRPO这种,颠覆传统强化学习的算法,也许也是一个很好的机会。我们没有next state了。单纯的强化这一步得到的奖励。只不过这一步基本有无数种可能。

如果您喜欢我的文章,可以考虑打赏以支持我继续创作.

其他文章
目录导航 置顶
  1. 1. 贝尔曼方程
  2. 2. LLM任务下的马尔科夫链
  3. 3. 稀疏奖励问题
  4. 4. GRPO做了什么?
  5. 5. DPO做了什么?
  6. 6. 冲突所在
  7. 7. 如何解决冲突?
  8. 8. Pass@k能力的丢失
  9. 9. 目前的一些解决手段
  10. 10. 现阶段的难题
请输入关键词进行搜索