ChatGPT「秘方」竟在拖LLM后腿?Karpathy、LeCun联手开怼RLHF!

新智元报道

编辑:乔杨 好困

【新智元导读】RLHF到底是不是强化学习?最近,AI大佬圈因为这个讨论炸锅了。和LeCun同为质疑派的Karpathy表示:比起那种让AlphaGo在围棋中击败人类的强化学习,RLHF还差得远呢。

昨天,Andrej Karpathy又发了长推,不过用了一句很有争议的话开头——「RLHF只是勉强的RL」。

这条推特可谓「一石激起千层浪」,瞬间点燃了LLM社区的讨论热情。

毕竟RLHF作为刚提出没几年的方法,又新颖又有争议。一边遭受质疑,一边又在工业界和学界迅速流行。

5G冲浪的LeCun也赶来声援Karpathy,但他的话很短,只有一句——「RLHF不是真正的RL」。

RLHF最早可以追溯到OpenAI安全团队2017年发表的论文:

论文地址:https://arxiv.org/abs/1706.03741

当时,Jan Leike还在DeepMind、Dario Amodei还没创办Anthropic,而OpenAI还没all in语言模型,仍是一家研究范围更广泛的AI公司。

他们提出,通过人类反馈,让AI模型更好地学习「如何翻出一个漂亮的后空翻」。

训练时,AI agent在环境中不断观察并行动,并得到奖励模型的反馈进行自我改进。但比较特别的是,奖励函数是由拟合人类反馈得到的。

2019年,这项技术被用到了NLP领域,用于微调语言模型。

论文地址:https://arxiv.org/abs/1909.08593

这篇论文附带的代码也很好地定义了RLHF的标准流程。

仓库地址:https://github.com/openai/lm-human-preferences?tab=readme-ov-file

到了2022年3月,ChatGPT发布前夕,OpenAI发布了使用RLHF微调过的大模型InstructGPT,这是弥合GPT-3和GPT-3.5 Turbo之间差距的关键一步,后者为ChatGPT的推出提供了关健动力。

论文地址:https://arxiv.org/abs/2203.02155

此后,RLHF就成为了OpenAI、DeepMind、谷歌、Anthropic等AI巨头们训练模型的必备环节。

所以,Karpathy为什么会突然对此发难?我们先来看一下他的推特原文是怎么说的。

Karpathy原帖的大意如下:

RLHF全称为「从人类反馈中进行强化学习」(Reinforcement Learning from Human Feedback),是训练LLM的第三个阶段,也是最后一个主要阶段,接在预训练和监督微调(SFT)之后。

我对RLHF的批评是:它几乎算不上是真正的强化学习,而且我认为这一点没有被广泛理解。强化学习很强大,而RLHF则不然。

让我们来看一个AlphaGo的例子,它的训练用到了实际的RL算法:计算机通过下围棋,在最大化奖励函数(即赢得比赛)的推演过程中进行训练,最终超越了最优秀的人类棋手。AlphaGo并不是用RLHF训练的,否则它的效果就不会这么好。

那么,用RLHF训练AlphaGo会是什么样子呢?首先,你需要让人类标注者看到两个围棋局面,并询问他们更喜欢哪个:

你需要收集大概10万条这类的对比数据,并训练一个「奖励模型」RM(Reward Model)来模仿人类对棋盘状态的这种「直觉判断」(vibe check),使RM的判断在平均水平上与人类一致。

有了奖励模型的直觉判断,就可以在此基础上运行强化学习,让原模型学习下出能够让人类直觉上认为不错的棋步。

显然,这在围棋中不会产出太好的结果,有两个根本且独立的原因:

1. 直觉可能会产生误导。这并不是真正的奖励(赢得比赛),而是个很差的替代目标。但更糟的是——

2. 强化学习优化会失控,因为它很快就会发现对抗奖励模型的棋盘状态。RM是一个拥有数十亿参数的庞大神经网络,用来模仿直觉。有些棋盘状态超出了训练数据的分布范围,可能并不是好的状态,但由于偶然性,也会从RM得到了很高的奖励。

出于完全相同的原因,有时我惊讶于RLHF对LLM的效果,因为其中的RM也在进行同样的直觉判断。它对人类评分员似乎喜欢的那类响应打出高分,但这不是正确解决问题的「实际」目标,只是人类觉得不错的替代目标。

其次,RLHF不能运行太久,因为原模型很快就能学会操控奖励模型,从而预测出一些看起来很奇怪的token。比如,LLM助手会开始对提示词响应一些无厘头的内容,像「the the the the the the」。

这在人类看来很荒谬,但由于某种原因,RM认为这些响应看起来很棒。

这就是LLM找到的对抗性案例(adversarial examples),对于RM的训练数据而言,这是未定义领域的分布外数据。

你可以反复将这些特定例子添加到训练集中来缓解这种情况,但下次还会有其他对抗性案例出现。因此,RLHF不能运行过多步骤,几百/几千步后就必须停下,因为模型的优化过程将开始操控RM。这不是像AlphaGo那样的强化学习。

然而,在构建LLM助手时,RLHF依旧是利大于弊。其中有几个微妙的原因,但我最喜欢指出的是,LLM可以通过RLHF过程受益于生成器和判别器之间的难度差距(generator-discriminator gap)。

对于许多类型的问题,相比于从零开始撰写理想答案,人类标注者会觉得从几个候选中选择最佳答案要容易得多。比如这样的提示:「生成一首关于回形针的诗」,普通的人类标注者很难写出一首好诗作为SFT示例,但在给出几个候选答案的情况下,他们可以选出一个看起来不错的诗。

因此,RLHF相当于利用了这种人类监督的「简便性」差距。

还有其他几个原因,例如,RLHF也有助于减少幻觉现象。如果RM是一个足够强大的模型,可以捕捉到LLM的虚构内容,就能通过低奖励来惩罚这种行为,教会模型在不确定时避免冒险使用事实知识。但对幻觉及其令人满意的缓解措施是另一个话题,此处不再赘述。

总之,RLHF确实是净有用的,但它不是传统的强化学习。

迄今为止,在开放领域还没有出现生产级的「实际」RL方法,可以大规模地在LLM上实现,并给出令人信服的演示。从直观上讲,这是因为在开放式的问题解决任务中给出奖励值(等效于AlphaGo赢得比赛)确实很困难。

在一个封闭的、类似游戏的环境中,比如围棋,动态受到限制,奖励函数易于评估且无法操控。但你如何为总结一篇文章提供明确的奖励?或者回答关于pip安装的略显模糊的问题?或者讲个笑话?或者将一些Java代码重写为Python?

原则上,朝这个方向发展是可能的,但并不简单,它需要一些创造性的思考。如果有人给出令人信服的解决方案,就能运行实际的强化学习,那种让AlphaGo在围棋中击败人类的强化学习,只是最后得到的LLM将有可能在开放领域问题解决中击败人类。

强化学习到底是什么

如果RLHF「不是RL」,那真正的RL是什么?

Karpathy的描述比较简洁而直观——就是AlphaGo用的那种。

幸好,「强化学习」是一个人为提出的概念,更容易厘清;而且「强化学习之父」Richard Sutton专门写过一本书来解释这个领域的基本问题。

https://web.stanford.edu/class/psych209/Readings/SuttonBartoIPRLBook2ndEd.pdf

开头第一章第一节,强化学习的基本概念。虽然不是严谨完备的数学定义,但基本阐明了要点。

除了agent和环境的存在,强化学习系统中还有以下四个要素:

策略(policy),定义正在学习的agent在指定时间的行为

奖励信号(reward signal),定义强化学习问题的目标,是对agent行为的即时反馈

值函数(value function),定义长期的优化目标

环境模型(model of the enviroment),模拟环境行为

那么问题来了,根据Sutton书中对强化学习的定义,你同意Karpathy的说法吗?

谁赞同,谁反对?

非常明显的是,Karpathy的观点吸引了许多LLM领域的学者和研究员的关注。

谷歌大脑、DeepMind研究科学家Kevein Murphy:

Allen AI机器学习研究员Nathan Lambert回复:

这张图出自Lambert自己撰写的博客:

之后,他又专门发推进一步解释:

很罕见的是,以上是为数不多力挺Karpathy的观点。多数人还是站在了Karpathy的对立面反驳他。

评论区有网友直接回怼:「你就是看奖励函数不顺眼」。

Karpathy只能继续解释:

马里兰大学副教授Furong Huang的观点更强调RLHF对LLM的价值。

Mila在读博士、Meta研究员Pierluca D'Oro自己就在为agent开发奖励模型,他同意Karpathy「RLHF不是真正的RL」的说法,但并不认为Karpathy预期的那种奖励模型能够实现。

华盛顿大学助理教授、谷歌AI高级研究科学家Natasha Jaques的反对态度更鲜明,力挺RLHF方法:

参考资料:

https://the-decoder.com/ai-researcher-says-that-chatgpts-secret-ingredient-may-be-holding-back-llm-capabilities/

https://x.com/karpathy/status/1821277264996352246 https://x.com/ylecun/status/1821478966365962255