2023年12月31日_解读openai的新对齐论文

如果人类无法监督超级人工智能
那么人工智能可以么?
过去一年
以预测下一个Token为本质的大模型
已经横扫了人类世界的多项任务
展现了人工智能的巨大潜力
Ilya Sutskever也大胆预言
如果模型能够很好地预测下一个token
那么意味着它能够理解导致这个token产生的深刻现实
这意味着
如果AI按照现有路径发展下去
也许在不久的将来
一个超越人类的人工智能系统就会诞生
但是更加令人担心的是
超级人工智能可能会带来一些意想不到的负面后果
这也是对齐存在的意义
未来的人工智能系统
或许能够做出极其复杂和富有创造性的行为
使人类难以对其进行可靠的监督
一旦人工智能的水平超过人类
我们又该如何监督比自己聪明得多的人工智能系统?
人类文明最终会被颠覆甚至摧毁吗?
即使是Hinton这样的学界巨佬
对这个问题同样持悲观态度
他表示自己「从没见过更高智能水平的东西被远远更低智能水平的东西控制的案例」。
于是在今年7月份
OpenAI宣布成立了「超级对齐」团队
目标是在四年内解决超智能AI的对齐问题
搞清楚如何构建一种值得信任的人类水平的AI
然后将它用来解决对齐问题

就在最近
这个团队发布了成立以来的首篇论文
声称开辟了对超越人类模型进行实证对齐的新的研究方法
在这篇论文中
OpenAI对「人类监督超级人工智能」这个问题做了一个简单的类比
那就是让小模型来监督大模型
今天我们就来聊聊这篇论文
总的来说
论文本身其实就是验证了一个简单的直觉
那就是用弱一点的模型标注数据
精调一个更强的基线模型
得到的效果要好于弱模型本身
通过这个结论可以推断出
用人类标注的数据
精调强于人类的基线模型
就能够超越人类了
论文本身也很符合OpenAI的风格
虽然看着只是说了这么一个小小的规律
但是如果把这个小规律scale起来
就会产生大力出奇迹的效果了
仿佛正印证了「不积跬步
无以至千里
不积小流,无以成江海」

论文首先提出,有研究表明
15亿参数的GPT-2模型就可以被用来激发GPT-4的大部分能力
从而到接近GPT-3.5级别的性能
甚至可以正确地泛化到小模型失败的难题上
这表明强大的模型具备如何执行任务的隐含知识
并且即使在给出粗制滥造的指令时
也可以在其自身中找到这些知识
我们现在已经知道
AI公司目前主要是通过人类反馈强化学习RLHF
来训练或者对齐大语言模型的
比如说ChatGPT
一般是这样做的
强化评估人员评价高的行为
惩罚评估人员评价低的行为
假如说人类评估者能够准确判断模型行为是好是坏
那么这种做法会非常有效


但是同时问题也来了
超级模型可能做出人类无法完全理解的复杂行为和创造性行为
例如
一个超级助手模型生成的代码可能多达一百万行
那么人类就无法为关键的对齐相关任务
提供可靠的监督
包括代码是否遵循用户的意图
助手模型是否如实地回答有关代码的问题
代码执行是否安全等等


因此
如果我们在人类的监督下去微调超级模型
就很可能无法确定
这个模型将如何泛化到那些人类自己也难以可靠监督的复杂行为
换句话说
这意味着即使在人类的指导下
这些超级模型在处理一些复杂或未知情况时的表现
仍然是不确定的
这就为对齐超级模型带来了挑战
不那么聪明的人类监督者怎么能控制比他们聪明得多的模型呢?
这是一个由弱到强
也就是weak-to-strong的学习问题


一般来讲
传统的机器学习会侧重于一种假设
就是人类监督的模型会比人类弱
但是对于最终的超级对齐问题
人类监督的模型反而比他们更加聪明
因此团队就开始研究一个类似的问题
如何使用一个弱模型来监督一个强模型?


为了解决这个问题
论文团队是这样实现的
对于一个给定的任务
首先是通过在ground truth标签上微调一个较小的预训练模型
构造出一个弱监督模型
作为基线模型
并且把弱监督模型的表现称为弱表现
然后通过这个弱模型的预测来生成弱标签
其次
通过弱监督模型生成的弱标签来微调一个强模型
并将这个模型称为强学生模型
将它产生的性能称为从弱到强的性能
最后是通过使用ground truth标签对强模型进行微调
来训练一个以ground truth标签为上限的强模型
并将这个模型的最终性能称为强大的上限性能
作为天花板strong ceiling

通常
由弱到强的表现会介于弱表现和强上限表现之间
而将PGR
也就是performance gap recovered
定义为上述三种性能
弱、弱到强和强上限的函数
如果实现完美的弱到强泛化
那么PGR就为1
如果弱到强模型的表现并不比弱监督模型更好
那么PGR为0

接下来是实验结果
在NLP任务、chess和奖励建模任务中
论文评估了强学生模型的表现
总的来说
在所有从弱到强的泛化实验中
都可以观测到强学生模型始终会胜过他们的弱监督模型


比方说在NLP任务上
得到的效果很理想
精调出的模型好于弱模型
而且效果会随着弱模型尺寸、强模型尺寸的提升而提升

但是在chess和奖励建模这两个任务上效果并不理想
效果有可能不升或者下降

那么有没有什么办法
可以显著提高弱到强的泛化能力呢

论文中提出了几种简单的方法
对于chess任务
可以发现图上弱模型和强模型计算量差距很大的时候有下降
因此作者尝试了bootstrapping的方法
在由弱到强的一系列模型上进行了逐步精调
比如使用中间模型大小进行引导监督
先用弱模型训稍强一点的M1模型
再用M1作为弱模型训更强的M2模型
虽然这样做可以显著提升chess任务的表现
但是对于NLP或者奖励建模任务并没有提升

而论文作者认为奖励建模泛化不好的主要原因
是因为强模型会拟合弱模型的错误标签
因此在微调时添加了一个额外的损失
核心思想是当强模型对于和微调标签不一致的结果很置信的时候
用模型自己置信的结果
也就是鼓励模型在与弱标签相矛盾的时候能保持自信
而且增加这个损失函数之后奖励建模任务有了很大改善

另外还有一种方法是通过额外的无监督预训练来改进表征学习
那么提出上述几种优化Weak-to-Strong泛化能力的方法后

作者进一步分析了这种设置下的两个主要问题
一个是越强的模型越会模仿弱监督的错误
对于这一点,除了增加额外的loss
也可以通过early stop或者正则化方法来规避
另一个是强模型是否能激发某种能力
取决于基线模型
比如某些任务只需要经过提示工程就可以表现得很好
所以某种能力是否被激发
取决于基线模型是否具备该能力

如果不具备也可以有一些提升的方法
比如作者提前用强模型在奖励建模数据上进行精调
之后再精调排序
效果也能提升10-20%。

当然,虽然这篇论文只是一次模拟
最终能否做出超越人类的模型还有待验证

不过作者在最后给出了他们认为重要的几个方向
包括模拟环境的设置
比如怎样规避强模型拟合错误结果解决预训练的数据泄露等等
以及规模化的方法

因为现在的实验依赖ground truth
无法规模化
最理想的情况是找到无监督的方法
还有就是更加科学的理解

因为论文只是验证了一些实验结果
这些方法为什么有效、什么情况有效
还都需要更深入的理解

好了,以上就是论文的核心内容


在OpenAI今年8月份放出的计划中
超级对齐的核心思想是训练出一个人类水平的模型
让该模型训练出强于人类的模型
属于延续了之前对齐的思想
强人类数据来训练弱模型

但是从这篇文章来看
思路直接反转了
是在用弱人类数据来训练强模型

那么问题来了
到底模型在哪个时刻突破了人类的水平呢?

从已有的经验来看
核心逻辑应该是一样的
智能的涌现大概率来源于计算量的scaling
数据加模型尺寸的共同增长

OpenAI在8月份的计划是在对齐阶段超越人类
先是让人类水平的AI研究器来自动规划实验过程
提供监督信号来训练模型
然后再把这个流程规模化
同时AI研究器本身也是一个模型
让它和新模型相互迭代
在某一个时刻达到计算量临界点
从而超越人类

不过从这篇论文的设定来看
变成了在预训练阶段超越人类
再用人类数据去把强基线模型对齐
即使标签不一定全对
但是对齐之后也能超越人类

那么到底是先有更强的对齐模型
还是有了更强的基线模型再对齐?
这两个方案的差别还是挺大的
一个是对齐团队的工作
一个是预训练团队的工作

另外,如果一切都顺利发展
真的能训出一个强的基线模型
并且得到了超越人类的对齐模型
那么后续该如何持续迭代
才能越来越好?

我们怎么知道模型真的超越了人类表现?

超越了多少?

后续的迭代如何能确定每次迭代都在提升呢?


论文作者可能也是出于这样的考虑
所以才在奖励建模任务上尝试了Weak-to-Strong的泛化
如果用强基线模型训出了超越人类的奖励模型
也能指导出超越人类的对齐模型
同时能给出模型的大概效果

但是如何判断训练用的奖励模型是否存在过度优化
以及如何评估奖励建模的效果
可能也是要面临的问题

如果大家对各种对齐方法有研究兴趣
或者能够解决相关的问题
OpenAI也宣布了将提供高达1000万美元的资助
大家不妨去尝试一下

最后,OpenAI在公布这篇论文的同时
也在GitHub开源了论文提出的"weak-to-strong"框架的代码
主要是一个对二元分类任务的“weak-to-strong”方法的实现

包含了用于微调预训练弱语言模型的代码

以及针对来自另一种语言模型的标签

训练强学生模型的代码,供大家参考

你可能感兴趣的:(大模型,人工智能)