Redian新闻
>
追赶ChatGPT的难点与平替

追赶ChatGPT的难点与平替

公众号新闻


MLNLP社区是国内外知名的机器学习与自然语言处理社区,受众覆盖国内外NLP硕博生、高校老师以及企业研究人员。
社区的愿景是促进国内外自然语言处理,机器学习学术界、产业界和广大爱好者之间的交流和进步,特别是初学者同学们的进步。
转载自 | 李rumor
作者 | rumor

卷友们好,我是rumor。

最近ChatGPT真的太火爆了,让人很难静下心。一方面是对它的能力感到不安,以后各个NLP子任务可能就统一起来了,范式也会变成预训练+Prompt,不需要那么多精调模型的算法了。另一方面是对国内复现ChatGPT感到悲观,那么大的模型,真的需要很强的决心,投入足够的人力、财力和时间才能做出来。

调整了几周,终于回归开卷的心态,捋了一遍我认为复现ChatGPT的难点与平替方案。由于个人精力有限,以下调研肯定存在纰漏,欢迎大家一起讨论补全。

难点1:高效率的算法框架

大模型的训练并不如想象那样容易,需要一个强大的工程框架进行支持。参数量上去之后,需要把模型和数据分散放到多个GPU卡,卡之间如何通信、调度,进行高效的反向传播,都有很多坑等着大家去踩。就像前几年,即使阿里的技术那么强,双十一流量上来了也得崩一会。而且算法框架一旦出现bug,模型可能都收敛不了,或者效果上不去。同时,训练效率非常重要,可以极大地降低试错成本。

知道了训练框架的重要性后,我们再来看OpenAI做到什么地步:

早期的从业者一定对这张图有印象,当时Megatron-LM和DeepSpeed已经把模型提到了一个我们不敢想的尺寸(普通算法团队人均2张V100就很幸福了),结果20年中OpenAI一下发布了175B的GPT-3。从那时起,OpenAI算法框架的容量就领先了一到两个数量级。

好在大厂们在近两年的大模型竞赛中都迭代出了自己的框架,不过这次,强化学习范式RLHF的加入又给训练框架带来了新的挑战。我去年大概花了4个月的业余时间去做强化学习项目打比赛,有两点让我十分痛苦:

  1. 动不动就训崩了,在奖励很稀疏或者自己魔改奖励的情况下,模型往往走捷径往意想不到的地方发展。

  2. 不同的框架往往给出不一样的结果,开源框架百花齐放且不一定靠谱,我自己就前后换了3个。跟业内三个RL同学交流下来他们公司都选择了自研而不是用开源的,不像NLP一样大家都用transformers。

好在这次的奖励是连续的,损失函数也明确给出来了,而且基础PPO的复现门槛也没有那么高。

更好的消息是,最近已经出了一个平替方案ColossalAI[1],由国人打造,从一些介绍来看效率是超过Megatron-LM和DeepSpeed的,而且已经做了ChatGPT的部分实现(还不支持PPO-ptx),接下来就看大家使用的效果了。

难点2:先追上GPT3

从符尧大佬对于ChatGPT能力起源的追溯来看,一个好的预训练模型会涌现出诸多能力:

  1. 上下文学习能力(In-Context Learning):可以不经过精调直接理解输入的指令和示例

  2. 长距离理解能力:是之后多轮对话的基础

  3. 具有常识知识、并可以进行推理

  4. 跨语言能力

  5. 代码生成能力

而且从符尧另一篇对大模型能力的研究看来,至少要62B以上的模型才能有一定少样本效果。真的追上这些能力需要耗费很大财力、人力和时间,估计现在各个厂都在批发A100了,起码千张,预算上亿。

好在也有一些平替方案,支持中文的有mT5(176B)、GLM(130B)和BLOOM(176B),但其中只有BLOOM是GPT架构。另外还有mT0和BLOOMZ,是Instruction tuning后的版本。

难点3:获取真实的用户输入

从GPT3到ChatGPT,主要是基于用户的真实输入进行标注,再对模型进行精调,从而拟合了人的偏好(称为Alignment)。

所以前段时间让我最焦虑的就是它的马太效应,或者数据飞轮,它效果越好,用的人越多,从而不断帮它提升拟合效果。技术问题都有平替,但我们去哪儿找上亿的用户来源源不断的输送Prompt呢?

第一个平替方案,是借鉴Instruction tuning的论文,用各种NLP数据集构造Prompt。但这并不是最优解,因为InstructGPT也做过这个实验,用FLAN和T0的数据进行精调,效果如下:

如果要做通用模型,最好还是符合用户的分布,可以看到InstructGPT的分布统计:

看到真实分布后,我的焦虑缓解了一些,感觉还是可以找到冷启动平替的。首先占比最高的生成任务,很多预训练模型都可以做,比如写诗写故事,大家之前应该见过很多了,刚开始不一定需要特别去优化。其次就是OpenQA,这个有不少数据可以爬,比如百度百科、知乎。头脑风暴可以通过关键词在爬到的问答数据中筛选。剩下几个任务有些是传统NLP任务,也有开源数据集。

难点4:趟过精调的坑

对于精调,OpenAI分了两个步骤:有监督精调(SFT,下图step1)、强化学习训练(RLHF,下图step2+3)。

虽然有看到一些观点,认为不用RL,有更好的监督数据也可以做ChatGPT,甚至RL+NLP近年来一直不被看好[2],但最近回顾了OpenAI在20年和22年的两篇RLHF文章之后,个人认为ChatGPT精调的重点在于RLHF阶段。

举个不一定恰当的栗子,假设我们把训模型当作带孩子:

  1. Pretrain:在孩子0-3岁的时候,我们没法讲太多道理,他也听不懂,更多的是让他自己观察这个世界,自由学习。

  2. Instruction Tuning:孩子学会说话了,也对世界有了基本认知,我们就可以开始通过示范教他一些东西,比如怎么穿衣服、怎么刷牙。

  3. RLHF:等孩子再大点,很多事情都会了,便不会再完全模仿父母,而是有自己不一样的行为,这时候父母就需要对这些不可预料的行为给出反馈,在他取得好成绩时奖励,在做坏事后惩罚。

再回到生成任务本身,长久以来NLP里的范式都是以最大似然为目标,用teacher forcing的方式拟合标注同学写出的句子。那万一标注同学偷懒呢?

对于「到底什么是好的回复」这个问题,每个人都有不同的答案,但必须定义好目标,才知道模型应该往哪里优化。谷歌训LaMDA对话模型时就给出了5个维度的定义,再朝着这5个方向拟合,而人类语言博大精深,5个维度真能评价一段话的好坏吗?

RLHF范式的关键就在于,它能真正让模型去拟合人的偏好,同时给予模型一定的自由度,这样才能让模型先模仿再超越,而不是重复Instruction tuning中的一些pattern。

上述的说法可能比较主观,接下来让我们看OpenAI官方给的实验数据:

在摘要生成任务中,RLHF精调后的模型大幅超越SFT的效果。另外论文中的其他实验也证实了RLHF模型具备更好的跨领域泛化能力:

在InstructGPT论文中,1.3B经过RLHF的模型可以超过175B模型SFT的效果:

从上述结果可以猜测,在人力、算力、时间有限的情况下,效率最优的路径是直接在1.3B模型上迭代,大概10万标注数据,复现一个低配小型ChatGPT,验证整个流程的有效性,再去做175B的模型。

遗憾的是目前RLHF这个部分趟过坑的人太少,没法找到平替,我只想到了用小模型快速迭代的方案,接下来的踩坑就看大家了。

另外,关于为什么以前一些RLHF工作不work,我认为关键的点是:

  1. 这篇工作[3]的标注同学更倾向抽取式答案,模型学偏了,而OpenAI这次在标注上下了狠功夫。另外该工作是用人作为RM,效率较低。

  2. DeepMind Sparrow[4]其实只在某个对话数据集上进行了训练,和真实分布不一样,另外它加入的Rule Reward可能也有影响。目前我觉得核心还是没在数据上下狠功夫,就是简单follow了一下OpenAI。但该论文有70多页,我实在读不动了,之后会不时重读刷新认知。

总结

在上文中,我列了4条我认为复现ChatGPT的难点,与一些替代方案,如果每个方案都打个折,确实是复现到60%的程度,和业内乐观的预测一样。

另外,我其实一直没提标注数据的重要性,因为标注数据的平替非常容易,直接跟老板要预算去调OpenAI接口吧。不过OpenAI论文里有一句话我特别喜欢,希望自己在以后做模型的时候谨记:

We train all labelers to ensure high agreement with our judgments, and continuously monitor labeler-researcher agreement over the course of the project.

得先训练好标注同学,才能训好模型,请所有人跟我默念三遍(狗头。

最后,和大家分享使我焦虑下降的两个点:

  1. OpenAI最新一篇博文显示[5],他们后续的方向之一是在通用模型上做定制化模型,我估计不会失业了,又可以洗数据了。

  2. 自从发现1.3B的模型+RLHF就可以很强之后,我觉得在真正的落地中,训一个for单一生成任务的定制化ChatGPT不再那么遥不可及,一两张A100和十万级别的数据就可以了(可能过于乐观,但我就是经常在热血和焦虑之间横跳)。

参考资料

[1]ColossalAI: https://github.com/hpcaitech/ColossalAI

[2]知乎:当前(2020年)机器学习中有哪些研究方向特别的坑?: https://www.zhihu.com/question/299068775/answer/647698748

[3]Fine-tuning language models from human preferences: https://arxiv.org/abs/1909.08593

[4]Sparrow: https://www.deepmind.com/blog/building-safer-dialogue-agents

[5]How should AI systems behave, and who should decide?: https://openai.com/blog/how-should-ai-systems-behave/


技术交流群邀请函

△长按添加小助手

扫描二维码添加小助手微信

请备注:姓名-学校/公司-研究方向
(如:小张-哈工大-对话系统)
即可申请加入自然语言处理/Pytorch等技术交流群

关于我们

MLNLP 社区是由国内外机器学习与自然语言处理学者联合构建的民间学术社区,目前已经发展为国内外知名的机器学习与自然语言处理社区,旨在促进机器学习,自然语言处理学术界、产业界和广大爱好者之间的进步。
社区可以为相关从业者的深造、就业及研究等方面提供开放交流平台。欢迎大家关注和加入我们。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
很多人担心被ChatGPT取代,我们关心ChatGPT的歧视与遮蔽高迪的奎尔公园集成ChatGPT后必应日活量首破亿!微软推出Azure OpenAI ChatGPT 服务,GPT-4下周发布百度版ChatGPT确定为“文心一言”/ 戴尔裁员5%/ 苹果要开会应对ChatGPT…今日更多新鲜事在此Chatgpt的克星来了!澳洲留学生再用GPT写作业,98%概率会被抓!ChatGPT 或导致 20 种工作失业?恐怕远远不止,比尔盖茨 :ChatGPT 将改变世界反击!Google 版 ChatGPT 首次亮相,有一个功能「碾压」ChatGPT朋友圈全是ChatGPT! ChatGPT概念股大火ChatGPT到底有多聪明?我测试了ChatGPT的数学能力追赶ChatGPT,我们的差距在哪里?重磅!微软发布 ChatGPT 版搜索引擎,用上了比 ChatGPT 更强大的技术今天的一日三餐,精打细算的冬至,俱乐部party上的名言ChatGPT讲座:ChatGPT并不神秘,但ChatGPT很神奇ChatGPT能有意识吗:关于ChatGPT的误解与夸大重磅 | 我内测了微软最新的 ChatGPT 版必应:比 ChatGPT 更像人,但有一个大隐患Google 版 ChatGPT 大更新!用 GPT-4 给它出的难题全都满分回答紧急提醒!ChatGPT成神器!但这些“ChatGPT”是假的,小心被骗!华尔街交易员为何不担心ChatGPT抢饭碗?ChatGPT:我预测不了市场2000元训练比肩ChatGPT的开源大模型!GPT-4亲自盖章认证,模型权重均可下载ChatGPT因访问量激增崩了;抖音否认3月1日上线外卖服务;百度将于3月推出ChatGPT产品丨邦早报下载量暴增10倍!微软必应集成ChatGPT后需求大爆发;4省份上调最低工资标准;淘宝已屏蔽ChatGPT关键词丨邦早报人类“3.0”意识形态战场——ChatGPT的政治化终局ChatGPT的价值观及立场(四)ChatGPT 进军 B 端?消息称微软将允许企业创建定制版 ChatGPT微信回应头像褪色,部分C刊不准隐瞒ChatGPT使用,微软推进裁员,Opera新版集成ChatGPT,这就是今天的其它大新闻!微信上看来的,貌似有点科普:孟晚舟将首次出任华为轮值董事长/ 百度All in类ChatGPT项目/ 知乎因ChatGPT大涨50%…今日更多新鲜事在此剽窃、作弊,ChatGPT竟偷偷生成了12篇署名论文!Marcus炮轰Ta变成CheatGPT兔年快乐!讲讲将【农历新年确认为纽约法定假日】背后的难点与故事银耳羹!闲话人生(221)沉痛悼念敬爱的刘世策老师敲响警钟!追赶ChatGPT的最大瓶颈可能是它金融民工会因为ChatGPT下岗吗?刚刚,我问了ChatGPT 24个金融圈灵魂问题ChatGPT通过谷歌程序员面试,薪资达18.3万美元!ChatGPT通过谷歌程序员面试,薪资达18.3万美元!聊一聊现阶段ChatGPT的缺点与局限ChatGPT带火AI芯片,赚翻了的英伟达发布新核弹:ChatGPT专用GPU,让推理提速10倍!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。