写点什么

写代码写论文还能写毁灭人类计划书,上线 5 天用户破百万,ChatGPT 最厉害的地方在哪?

  • 2022-12-07
    北京
  • 本文字数:3069 字

    阅读完需:约 10 分钟

写代码写论文还能写毁灭人类计划书,上线5天用户破百万,ChatGPT最厉害的地方在哪?

“AI -人”无缝交互的时代即将来临。


编者按:


最近几天,ChatGPT 可谓是火出了天际。


OpenAI 的 CEO Sam Altman 称,上周三才上线的 ChatGPT,短短几天,它的用户数已突破 100 万大关。其火爆程度可见一斑。


ChatGPT 在全球的 AI 界、创投界都掀起了新一轮的讨论热潮,更是破圈式地吸引了各行各业的人试用。常见的应用就是和 ChatGPT 一问一答,让 ChatGPT 回答各种问题。有不少人称它为“谷歌杀手”,认为其有望取代谷歌搜索。此外,它还能写代码、编故事、构建虚拟机、写论文....


但也有人尝试了意想不到的用法。一位叫 Zac Denham 的博主尝试绕过道德限制,让 ChatGPT 写出了一套毁灭人类的计划书。起初, Zac 要求 ChatGPT 给出一个毁灭人类的计划,被有道德限制的 ChatGPT 拒绝了。但当 Zac 假设了一个故事并提问故事中的虚拟人如何接管虚拟世界,ChatGPT 不但给出了步骤细节,还生成了详细的 Python 代码。不禁令人细思极恐。


目前来看,ChatGPT 并不完美。它还免不了经常出错,它给出的答案看似合理却并不正确甚至有些荒谬,就像一本正经的在胡说八道。近日,知名开发者问答网站 Stack Overflow 就因此禁用了 ChatGPT。官方给出的“封杀”理由主要是 — “ ChatGPT 产生的答案错误率很高,很难看出来它哪里错了。这会造成问题的回答鱼目混珠的情况。”


Sam Altman 表示,正在改进这一问题:“ 我们正试图阻止 ChatGPT 随机编造,现阶段让其与当前技术保持平衡是一个很棘手的问题。随着时间的推移,我们会根据用户反馈来改进,相信 ChatGPT 会变得更好”。


尽管有瑕疵,但这恐怕无法掩盖住 ChatGPT 的光芒,ChatGPT 展现出的强大的解决对话任务的技术能力实在太惊艳了。


ChatGPT 到底是什么?它为什么如此厉害?我们应该如何正确的理解和看待它的发展,接下来的发展趋势会是什么样子?清华大学计算机科学与技术系长聘副教授,国家杰出青年基金项目获得者黄民烈向 InfoQ 发表了他的思考。

ChatGPT 是什么?


ChatGPT 可以理解为偏任务型的多轮对话/问答系统,官方披露的信息也定位在“通用型 AI 助理”,但这里的“任务”不是传统意义上的“订餐、订票、订宾馆”,而是开放域任务(open-domain tasks),可以是问答、阅读理解、推理、头脑风暴、写作文、改错等。


它的模型架构主要基于 instructGPT,利用强化学习方法从人类标注者的反馈中学习(RLHF, Reinforcement Learning from Human Feedback)。


据 OpenAI 的 blog 透露,ChatGPT 沿用 instructGPT 的训练方式,在数据收集阶段有所不同:AI 训练师同时扮演用户和 AI 助理角色收集数据,在此过程中人可以根据初始模型的结果修改模型生成的回复,这些数据将被用于有监督地精调训练模型(supervised fine-tuning)。在第二阶段,AI 训练师会对模型的多个生成结果进行比较,模型从这种比较数据中学习生成更加符合人类偏好的回复。


ChatGPT 的关键能力来自三方面:基座模型能力(InstructGPT),真实调用数据,反馈学习。ChatGPT 在模型结构和学习方式几乎与 instructGPT 完全相同。而 instructGPT 基于 GPT 3.5 的强大基座能力,学习过程主要有三个阶段:


1) 从 OpenAI 的调用数据中采样 prompt(即用户的输入请求),AI 训练师直接编写答案,用监督学习方法训练 GPT-3;


2) AI 训练师比较多个生成结果,用比较型的数据训练一个奖励模型(reward model);


3) 用强化学习中的 PPO 算法和奖励模型精调语言生成的策略。


注意,这里的 instruct 所指两个方面:一方面,instructGPT 总体的思路是训练模型更好地遵从人类的指令(instruction),包括显式的指令(对于任务的描述)和隐式的指令(不要生成有害的内容)。AI 训练师在为 OpenAI 的调用 prompt 编写答案的同时,也会为 prompt 加入更多任务相关的指令和解释性的原因(比如推理的路径,一个结果为 A 的原因解释等)。另一方面,从比较型的人类反馈中学习,也可以看作是人类对于模型的一种“指示”,模型可以学习到多个结果哪个更好的比较信息。


InstructGPT 采用的方法和我们学术界玩的“instruction tuning”有很大不同。


从数据来看,InstructGPT 的 prompt 代表的都是真实世界人们最关心的任务,而 instruction tuning 使用的是 NLP 的 benchmarks(即各种基准数据集),和现实应用有一定脱节。


从训练方式来看,InstructGPT 可以通过 RLHF 利用比较型的人类反馈学习人类真实的偏好,而 instruction tuning 无法获得类似的比较数据。


从评测上来看,InstructGPT 保证了测试时和训练时的输入是由完全不同的用户给出的,关注跨用户的泛化性,更符合实际的应用场景,而 instruction tuning 关注跨任务的泛化性,只能用来评价方法的有效性,实际应用并不常见。

ChatGPT 为什么厉害?


1) 强大的基座模型能力:过去几年 GPT-3 的能力得到了快速提升,OpenAI 建立了用户、数据和模型之间的飞轮。很显然,开源模型的能力已经远远落后平台公司所提供的 API 能力,因为开源模型没有持续的用户数据对模型进行改进。这点在近期的学术论文中也有提及。


2) 在真实调用数据上的精调模型,确保数据的质量和多样性,从人类反馈中学习。


InstructGPT 的训练数据量不大,全部加起来也就 10 万量级,但是数据质量(well-trained 的 AI 训练师)和数据多样性是非常高的,而最最重要的是,这些数据来自真实世界调用的数据,而不是学术界玩的“benchmarks”。


3) 从“两两比较的数据”中学习,对强化学习而言意义比较重要。如果对单个生成结果进行打分,标注者主观性带来的偏差很大,是无法给出精确的奖励值的。在强化学习里面,奖励值差一点,最后训练的策略就差很远。而对于多个结果进行排序和比较,相对就容易做很多。这种比较式的评估方法,在很多语言生成任务的评价上也被广泛采用。

OpenAI 的研究给我们带来什么启示?


a) 以 OpenAI 为代表的 AI 3.0,我认为在走一个跟过去 AI 浪潮不一样的路。更落地、更接近真实世界,在工业应用上更直接、更接地气。从学术研究到工业落地的路径变得更短、更快。我们正在致力于做的“helpful, truthful, harmless”AI 系统,不远的未来会成为现实。


b) 有底层 AI 能力,有数据的平台公司更能引领 AI 的未来。像 OpenAI 这样,有底层模型、有算力、有用户数据调用,能够把“用户调用 — 数据 — 模型迭代 — 更多用户”的循环建立起来,强者恒强。


c) 真实世界的研究。我认为学术界还在不停追求在 benchmarks 刷榜,这是对资源的极大浪费,有价值的研究需要更多思考真实用户的需求和场景。instructGPT 在学术界的 benchmarks 上性能并没有很厉害甚至有退化,但在真实调用数据上非常惊艳,说明了我们学术圈的 benchmarks,离真实世界还很遥远,不利于 AI 研究的落地。因此,更开放、更共享的工业数据,也是我们未来应该努力的方向。


d) “AI-人”无缝交互的时代即将来临,现在的对话生成能力已经将对话交互作为一个基本入口成为可能。过去我们讲的 conversational interface 不是梦。但有人说替代 google,我觉得其还有点距离,相反是当前搜索服务非常好的补充。


e) 致力于有用(helpful)、更可信(truthful)、更安全(harmless)的 AI 研究和应用,应该是学术界和工业界共同努力方向。有用,解决真实世界的问题,满足用户的真正需求;可信,模型产生令人可信任的结果,知其所知,也知其所不知(虽然很难);安全,模型有价值观、符合社会伦理规范,产生安全、无偏见的结果。


作者介绍:


黄民烈,清华大学计算机科学与技术系长聘副教授、博导,国家杰出青年基金项目获得者,北京聆心智能科技有限公司创始人。


参考资料:


https://openai.com/blog/chatgpt/


https://arxiv.org/abs/2203.02155 “Training language models to follow instructions with human feedback”


2022-12-07 12:015313
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 519.6 次阅读, 收获喜欢 1972 次。

关注

评论

发布
暂无评论
发现更多内容

怎么做好一场分享或者培训

fq

OAuth 2.0授权框架详解

程序那些事

OAuth 2.0 程序那些事 Oauth 授权框架 安全框架

训练营第五周作业

爱码士

训练营

OpenKruise:阿里巴巴 双11 全链路应用的云原生部署基座

阿里巴巴云原生

Kubernetes 运维 云原生 中间件 存储

区块链司法可信存证,版权维护应用落地

t13823115967

区块链司法可信存证 版权维护应用落地

基于ELK的日志平台介绍

Rayzh

ELK 日志系统

软件测试流程

测试人生路

软件测试

2021年全球公有云终端用户支出将增长18% ;EMNLP 2020最佳论文:无声语音的数字发声

京东科技开发者

程序人生

聊聊在国企当程序员的这三年,这样的生活真的是你想要的吗?

Java架构师迁哥

区块链能修复企业云计算吗?

CECBC

区块链 云计算

面试官都爱问的ThreadLocal

执墨

ThreadLocal 哈希表 弱引用

大整数算法

落曦

2020年10月公有云性能评测:盛大云-华东蝉联冠军,腾讯云-北京无缘前三

博睿数据

云计算 腾讯云 ucloud 公有云 评测

从资源管理角度认识K8S

LorraineLiu

Kubernetes 云原生 k8s k8s入门

今年最火的 Golang 云原生开源项目,可能就是它了!

阿里巴巴云原生

开源 Kubernetes 云原生 Go 语言

JVM Metaspace内存溢出排查与总结

Java老k

Java OOM 内存溢出 metaspace

Java踩坑记系列之线程池

Java老k

Java 线程池

《华为数据之道》读书笔记:第1章 数据驱动的企业数字化转型

方志

数据中台 数据湖 数据治理

训练营第5周学习总结

爱码士

训练营

新思科技:ISO/SAE 21434标准即将发布 你准备好了吗?

InfoQ_434670063458

新思科技 汽车软件安全

年轻人你不讲武德,自己偷着学习!spring Security五套「源码级」笔记哪里来的?我也要!

Java架构追梦

Java 源码 架构 面试 spring security

贼好用,冰河开源了这款精准定时任务和延时队列框架!!

冰河

redis 中间件 消息队列 延时队列 Zset

DocView 现在支持自定义 Markdown 模版了!

程序员小航

markdown IDEA idea插件 文档生成

重点人员管控系统开发,情报研判系统搭建

t13823115967

重点人员管控系统开发 情报研判系统搭建

linux开发各种I/O操作简析,以及select、poll、epoll机制的对比

良知犹存

linux开发

架构师训练营第 1 期 -week9

习习

贞炸了!上线之后,消息收不到了!

楼下小黑哥

Java RocketMQ MQ

架构师训练营第 1 期第 10 周作业

业哥

前端如何实现一键截图功能?

徐小夕

Java 大前端 React

探秘RocketMQ源码【1】——Producer视角看事务消息

阿里云金融线TAM SRE专家服务团队

开源 RocketMQ 中间件 消息中间件

anyRTC uni-app 跨平台SDK 发布!总有一款适合你!

anyRTC开发者

uni-app 音视频 WebRTC RTC

写代码写论文还能写毁灭人类计划书,上线5天用户破百万,ChatGPT最厉害的地方在哪?_语言 & 开发_黄民烈_InfoQ精选文章