OpenAI o1 self-play RL 技术路线推演

知乎:曹宇

链接:https://zhuanlan.zhihu.com/p/720106482

OpenAI的self-play RL新模型o1最近交卷,直接引爆了关于对于self-play的讨论。在数理推理领域获得了傲人的成绩,同时提出了train-time compute和test-time compute两个全新的RL scaling law。作为领域博主,在时效性方面肯定卷不过其他营销号了,所以这次准备了大概一万字的内容,彻底深入分析并推演一遍其中的相关技术细节。

图片

o1,而今迈步从头越

首先要说一下,o1是一个多模态模型,很多人包括 Jim Fan 都忽略了这一点:

图片

因此他继续叫做o,作为omni系列是没有任何疑问的。只不过这次发布是过于低调了,很多人都没有注意到这个拉爆了所有其他多模态框架的78.1分。

图片

那么这个o1,说明这个技术路线就是一个全新的模型pipeline弄出来的了。作为一个全新的多模态Self-play RL模型,首秀的成绩还是相当不错的。虽然现在评价该self-play方法是否能够泛化至多模态还为时尚早,但是至少语言层面的Reasoning能力进化没有以牺牲其他模态的能力作为基础。

图片

另外这个模型official name叫做OpenAI o1,而不是gpt-o1,更能体现出这在技术路线上极有可能是有与gpt4系列的路数稍有不同的新玩法。在JS离开了之后,颇有雄关漫道真如铁,而今迈步从头越 的豪迈之情。要是模型再不出来, 这个code name梗估计都要被玩烂了。

We have found that the performance of o1 consistently improves with more reinforcement learning (train-time compute) and with more time spent thinking (test-time compute).

那么o1为什么有资格能够获得一个全新的系列名字,和这句最关键但是没有任何信息量的发布消息还是非常相关的。o1的性能能够在两个阶段,通过训练时的强化学习(注意这里是RL,没有了HF,是真DeepRL)以及推理时的思考获得稳定的性能提升。

换句话说:预训练的scaling已经被吃光了,主要的收益要考post train去拿了;o1表明在特定领域,post train的收益依然存在,不过要拿到这种收益光靠SFT的token level supervision已经不够了。甚至光靠训练时的scaling也不够了,在推理时scaling也是有必要的。(推理卡厂商笑嘻嘻)

草莓去哪儿了,o1到底怎么work的?

草莓这个梗最早是因为人们测试GPT系列的时候,发现了他没有办法数对草莓这个单词里面的r的数量。坊间传闻,OpenAI有了一个新的模型可以通过self-play的方式提升模型Reasoning的能力,从而数对r的数量。于是这个名叫草莓的模型就开始在网上不断发酵,并在Sam Altman的各种有意无意的暗示中升温。终于在屡次炒作和跳票,o1还是没有否认自己和草莓 的关系。

图片

oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step

Use the example above to decode:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

这个例子说明了o1的推理能力:文中prompt的内容是给了一个密文到明文的映射过程,同时要求LLM对于给定的密文进行转译。转译的正确结果应该是:

THERE ARE THREE RS IN STRAWBERRY

中间的逻辑也相对比较隐蔽:每两个字母组成一组,比如oy在一起,取字母表顺序的均值,'o' (15) + 'y' (25) = 40,40再除以2得到20,对应字母t。以此类推,可以解码出来对应的内容。

o1是怎么实现这样的能力呢,纯粹从推理态来看是inference time thinking做到的,就是在回答用户问题之前,模型会陷入一个长考的过程。逐步思考,提出假设,并且反思,以实现Reasoning能力。

图片

这里面的thinking流程是模型和其他大模型最大的不同,在这中间经历了相当长时间的长考阶段。长考的内容,目前在ChatGPT的客户端中可以做了隐藏(防止被蒸馏),不过在官网上这一段思考的过程被呈现了出来,一共约2950词。我把内容放在了附录里面,然后总结了一下其中的思路,大致一共分为9步:

  1. 观察密文和明文的关系,发现每个密文单词的字母数是对应明文单词字母数的两倍。

  2. 推断每对密文字母对应一个明文字母。

  3. 确定解码方法:将每对密文字母的数值(A=1, B=2, 等)相加后取平均值。

  4. 将平均值转换回字母,得到对应的明文字母。

  5. 按照这个方法,将密文分组为字母对。

  6. 对每对字母应用解码方法,得到明文字母。

  7. 将解码后的字母组合成单词,再将单词组合成句子。

  8. 解决过程中遇到的问题,如处理不成对的字母。

  9. 最终解码出完整的信息:"THERE ARE THREE R'S IN STRAWBERRY"(草莓中有三个R)。

这个题目的难点在于,大模型要不断地给出假设并探索,在遇到和假设不同的时候就需要反思并进一步提出反思。目前除了o1的大模型,都没有对应的能力进行如此长时间的思考,并最终给出答案。虽然不清楚背后实现的具体逻辑,但是从目前已有的接口来看,o1至少已经能够实现:提出假设,验证思路,反思过程这三种主要的逻辑推理能力。并且这些能力的结合是在完全没有人类参与的情况下完成的,提升了在各类数理类benchmark上的效果。

图片

表面上来看,这类思路和CoT的以推理范式推动模型主动反思的思维链模式没有本质区别,甚至前段时间的大乌龙Reflection Tuning也和o1有一部分异曲同工之妙。除了官宣o1是正经RL训练的消息之外,这类SFT为主的teacher forcing范式学习并不像是这一代OpenAI的中坚力量的技术审美。说到这里,不得不把时间线拉长去看一看self-play LLM的主创的心路历程。

大语言模型scaling law的担忧

图片

你会玩德扑嘛?

很多中文LLM圈的人估计是第一次见到这个人,Noam Brown,OpenAI reasoning 方向的新生代力量。但是对于RL圈来说,Noam是一个老人了,他的成名之作是德扑AI,外交官游戏AI等非完美信息博弈领域。为什么要看他的过往呢?因为对于一个顶级研究者来说,他的研究思路会不断进化但是大概率不会突变。OpenAI从John Sculman和Jan Leike走之后,老的RL正统传承目前严格来说应该在A家了,OpenAI的未来方向更多的是这些天才年轻人决定的了。

viv学习策略 优点 缺点 代表
Behaviour Clone Expert 1. 更像人、专家,并且有人的偏好
2. 可以通过单agent的方式训练
3. 当数据量无限多的时候可以取得完美表现
1. 实际能力由于数据分布有偏
2. 无法探索出人类行为之外的行为
3. 无法利用错误数据
各种游戏陪玩AI,LLM SFT
RLHF 1. 可以对齐人类偏好及价值观
2. 能力利用错误数据
3. 数据利用效率高
1. 偏好建模困难,容易hacking
2. 训练成本高
ChatGPT
Self-play 1. 绝对强度更高,甚至超越最强人类、专家
2. 可以实现双人零和博弈的最优
1. 有时候无法理解人类,行为不像人
2. 训练及推理成本极高
AlphaGo,OpenAI o1

大语言模型的主要学习策略从RLHF的巨大成功之后,也出现过摇摆。以next token prediction作为代表的Behavior Clone思路主要的手段是预训练和SFT为主的,主要强调从海量知识中自监督学习加上专家数据的示教。但是这一条路径遇到了很大的困难,我们如今已经几乎耗尽了几乎所有互联网上所有的语料,但是极强的智能也没有出现。同时SFT作为Behavior Clone的上限是比较低的,大多数情况下需要堆叠大量高质量语料,成本几乎成为了垂直领域难以负担的问题。更大的问题在于SFT几乎无法囊括负例的示教,对于trial-n-error的自我博弈智能来说,只能利用其中比例极低的正例。所以祖师爷John Schulman的PPO加上RLHF力挽狂澜,把GPT-3拉出黑暗,直接进化到InstructGPT,用人类反馈进行建模引爆了整个领域。

但是我们现在又到了一个十字路口,大模型看起来好像是一个死记硬背的书呆子,推理能力迟迟没有见到突飞猛进的变化,我们都在期望self-play的出现:

大模型Self-play能否通过部分领域示教数据,模型通过自我博弈持续提升策略?

这里面需要有两个先决条件:

图片

这张图来自于Noam的演讲[1],作为演讲的最后一部分,他大概展望了LLM中self-play的挑战与机遇。先决条件在于:Generator 和 Verifier 都要足够强。

语言和游戏在这个方面是截然相反的,游戏中的行为生成是困难的而价值评判是简单的:对于路边看棋大爷下好一步棋很难,但是判断这一步下的好不好他还是可以的。语言模型生成行为是容易的,但是判断生成的好坏是困难的,1B的模型都可以滔滔不绝证明哥德巴赫猜想,但是判断每一步是否正确却非常困难。

Generator 和 Verifier 的迅速进步

这一切正在悄然改变,Reward数据正在越变越多,作为Verifier的Reward Model(RM)也在变得越来越强。因为Self-play的基础在于Generator和Verifier对抗的强度,而原有LLM的劣势在于Verifier强度不够。常见的判别式RM,大模型作为裁判(LLM as a judge)等模式的判定准确率仍显不足,我们急需一种能够scaling起来的方式。它更像

图片

我们看到了越来越多的证据,新的的scaling趋势呈现在了生成式RM上[2]。这种Reward Model相比于传统的方法来说,对于大语言模型的判别已经不是一锤子买卖了。它更像是人类标注员的思路,对问题和答案会和传统生成式模型一样也能够进行CoT。

图片

他会对于一个问题和答案,首先按照生成式模型的方法给出自然语言的判断,然后再给出RL所需要的标量数值,彻底摆脱了判别式RM中BT假设的枷锁。所以随着Reward Model思考的深入,其准确度也会不断上涨。同时更重要的是,verifer和generator之间也可以通过信息密度更高的自然语言的方式进行互动。相当于RM监督policy的时候,不仅告诉了每条答案的评分还详细给出了错误的原因。

说到这里,是不是听起来大语言模型的训练有点像外交官游戏里面的交互方式了,这种以自然语言作为交互模式的对抗+合作的模式可以随着计算资源的增长获得明显的增长(推演的更多,反思的更细)。其中的对抗是,大语言模型要经历生成更好的回答让RM无法挑出问题,而RM也要自己增长能力以发现大语言模型的更多漏洞。合作则在于,最终两者的博弈并不是零和的,两者的同步增长会使得我们的大语言模型拥有真正的长考能力,并有机会往全领域泛化。

那么第二个问题是:Verifier判别出来的正例和负例是不是同时能够利用起来,答案是比较正面的。而且强化学习中,引入负例[3]可以更有效地提升大语言模型的推理强度。

图片

数据利用效率更是达到了仅使用正例的八倍,这个结论是非常好理解的,对于推理来说一个巨大的采用空间内,做错的可能性在起初要大大高于能够做对的概率。如果无法充分利用负例的数据价值,学习效率就会大打折扣。

图片

图片

在policy方面,GDM的研究[4]表明了test time scaling的有效性。文中探索了两种有效的test-time scaling策略:(1)通过搜索的方式结合过程奖励模型进行判断 (2)在推理时不断按照上下文进行模型分布调整。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值