万字长文,探讨关于ChatGPT的五个最核心问题
M小姐走四方 M小姐研习录 由“微信搬运工”搬运(点击进入)关于AI,ChatGPT 的文章铺天盖地,但是真正讨论得深度有内容永远稀缺。这次是M小姐第一次正式约稿,来自数据科学大牛,也是B站上小有名气的 Up 主:课代表立正!
一项新的技术开始,总会有太多或高或低的噪音,对于要做决策的人,常常会觉得抓不住重点,真假难辨。这篇文章,是M小姐看过的关于大语言模型(LLM)最为直击本质的分析之一。其中的思考框架,可以指导你一直follow整个领域日新月异的发展,让你从爆炸又良莠不齐的信息中抽丝剥茧,找到做出对个人和企业最有价值的决策思路。
文章开始之前,也推荐你去收藏并收听M小姐和课代表分别录制的两个 podcast. 一个重在技术,一个重在应用。都是干货满满,相信会让你对整个大势的理解更加完善。
NOTE: 如果你希望进一步探讨 AI 的话题,欢迎在后台给M小姐留言!想要跟本文作者交流,可以直接邮件至 kedaibiaolizheng艾特gmail.com
NOTE 2: 扫码收藏本文的腾讯文档,后续作者会持续更新!
以下就是正文,enjoy!
我们判断,如果ChatGPT不犯大错,两年内,整个科技行业甚至人类社会都会被颠覆一遍。倒计时已经开始了。
在ChatGPT纪元中,提问题的能力和判断力也许是人类最重要的两个能力。我们这里提出五个关键问题,并且试图抛开网络上的二手观点,做出基于原理的判断。围绕这五个问题,我们会把所需要知道的相关技术背景,尽量简洁,但是尽量无损地总结清楚,不说废话。
哪五个问题?
- 是什么:ChatGPT是范式突破,还是过往AI的延伸?
- 会怎样:ChatGPT两年内会达到什么水准?
- 行业格局:ChatGPT以及GPT有壁垒吗?
- 如何参与:我们未来应该如何使用ChatGPT?
- 人文:人类和ChatGPT的本质区别是什么?对人类社会的冲击?
还有一个不需要讨论的重要问题:ChatGPT不会开源的,因为AGI是一个危险品。依赖开源+抄的公司可以死心了。指望原子弹开源吗?
我们搞清楚这五个问题,就能判断市面上大多数解读ChatGPT的观点,无论从技术、商业、投资,等等角度,是否靠谱了。其实就两个关键:
对ChatGPT新能力的认知:这新能
match
力到底是什么,有多大“不一样”?那个“不一样”能带来多少新的可能性?
对“能力获取难度”的认知:ChatGPT如何获得的?别人获取类似能力,难度有多大?
文章结尾我们会做一下总结。让你下次见到某大模型,可以判断这是ChatGPT的80%还是0%。也可以判断自己的工作会被ChatGPT取代多少。
为什么这样问?
最近到处都在讨论ChatGPT,宛如6000点时候的A股,但是对于ChatGPT这样一个人类高科技结晶的新物种,不先搞清楚它“是什么”和“如何牛逼的”,那就没有办法形成自己的判断。没有自己基于原理的判断,看ChatGPT就像看元宇宙、Web3、自动驾驶一样,觉得好像牛逼,也有一套看似自洽的逻辑,以及振聋发聩的“洞见”,其实只能被别人牵着走。
搞清楚ChatGPT“是什么”和“如何牛逼的”是一件困难的事情,因为最顶尖的人工智能大佬们也没有达成共识。
比如Meta的AI负责人,深度学习三大佬之一的LeCun就不看好,认为这就是个基于auto-regressive(自回归)的LLM(large language model,大语言模型),从方法上来讲没有啥范式突破。只是因为OpenAI是个创业公司,大家宽容度比较高,ChatGPT在乱说话,大家也能容忍。
另一面,ChatGPT的火热就不说了,比如特斯拉的首席AI科学家就选择回到OpenAI,共建AGI(artificial general intelligence,通用人工智能,也是OpenAI的追求目标);Meta的VR创始人卡马克选择离开Meta,自己开一家AGI公司。另外一篇文章截取了大佬们的赞誉:
神奇的点就在于,双方也许都是对的。ChatGPT的确不是一个“新的模型”,而是即有模型的发展与组合;但ChatGPT又足够不一样,让包括我在内的很多AI相关的从业者,有第一次见到光的感觉。我们第一章会花大篇幅去讲一下为什么ChatGPT的原理是填词,但它的新能力却远远不是“填词”而已。
技术插播:“自回归”“大语言模型”是两个关键词
自回归的意思是,我先用模型预测下一个词是什么,然后把预测出来的词带入模型,去预测再下一个词是什么,不断迭代。这是过往语言模型的通用范式。也能让各类语言类任务统一成“生成式”任务
语言模型的大是指海量参数,从而能吸取海量数据中的信息。这是在transformer模型之后成为可能的。大语言模型本身也值得技术科普一下,我们在第一个问题中展开
1 开头:ChatGPT的最基本版历史
开始问问题之前,有一些必要的技术科普。我们着重参考两篇综述,尽量抓重点:
- 大语言模型技术精要(链接)(知乎,by 张俊林)
- ChatGPT的各项超能力从哪里来(链接)by 符尧
第一份综述主要讲了大语言模型发展中的关键技术突破,第二份综述主要讲了ChatGPT发展过程中的几个重要模型“做到了什么”和“有什么与众不同的做法”。我们把两篇文章的重点挑出来,标注一下里程碑事件,和其意义。
事件
意义
Transformer问世 让深度学习模型可以“自由吸收”数据中的知识
大语言模型突破了参数和算力限制,从此语言模型也进入参数越多,数据越大,模型效果越好的时代。
LLM内战,逐渐吊打老NLP
Google的Bert路线和OpenAI的GPT路线各有所长
GPT通过“自然语言生成任务”,兼容了几乎所有NLP问题;但是Bert比GPT2表现好。此时大语言模型已经开始吊打传统NLP模型了
GPT3问世
展示in-context learning能力,简单调教下就能吊打精调过的很多模型
一方面让GPT模式初现一统江湖的潜质,一方面GPT3的 in-context learning能力,展示了和过往ML的fine-tuning模式的本质区别,我们在下面单独详细展开
- InstructGPT
ChatGPT的交互模式,让GPT的能力,更加贴近人类真实交互方式
在in-context learning基础之上,进一步降低了prompting的门槛;一定程度解决了GPT-3生成结果与用户期望不一致的非预期输出,大幅降低了有害的、错误或偏差的输出结果,让GPT更符合人类胃口
- GPT读代码
代码训练能力的提升是GPT3到GPT3.5的重要迭代之一,模型可从而可以生成代码和理解代码
Codex模型读了大量代码,之后的GPT3.5模型涌现出了“乌鸦”的能力(第一问详解)。不光能读懂和生成代码,对语言本身的理解和推理能力也解锁了
- RLHF
ChatGPT背后的核心技术之一,让模型学习人类的偏好
全称是reinforcement learning from human feedback,通过构建人类反馈数据集,训练一个reward模型,模仿人类偏好对结果打分,是GPT-3后时代LLM越来越像人类对话的核心技术
ChatGPT
InstructGPT的亲戚,但一些优化方式也带来了ChatGPT的更泛化和准确能力,再次引爆了AIGC
ChatGPT总体来说和InstructGPT一样是使用RLHF进行训练,但模型是基于GPT3.5,而且数据设置上也不同。ChatGPT是一个输入,模型给出多个输出,然后人给结果排序,让模型可以学习人类的排序策略,即使是一本正经的胡说八道看起来也很合理的样子。
这里面再强调一个关键点。GPT3之后,很多能力是“涌现”的。即不是线性发展,可预测的,而是突然就有了。至于这对于OpenAI的人是早晚会发生,还是完全未预料,我们就不知道了。
这几个“涌现”出的能力,尤其是“乌鸦”的能力,是ChatGPT和过往AI的范式不同,也会是我们这次讨论关注的重点。“涌现”也是大语言模型很神奇的一点,这些能力我们发现模型随着数据量和模型大小的提升,就突然具备了,但是我们对这些能力怎么出现的,只有猜想,没有共识。这篇文章有一个比较全面的总结和比较。
下图是GPT-3到ChatGPT的演变历史
如何分辨真假ChatGPT
结合上面的图和表格,我们简单梳理一下:
GPT-3是一个非常令人惊艳的LLM,
有当时early-adopter的视角,但GPT-3还勉强属于“量变”,到现在,也不是最厉害的LLM
GPT-3.5通过InstructGPT的模式 + 阅读代码,
涌现了“乌鸦”能力,产
生了质变。
但是还没找到合适的应用界面,也不符合人类喜好
ChatGPT在RLHF的帮助下,找到了GPT-3.5和人类自然语言的合理接口,解锁了模型应用的前景
所以我们要记得,厉害的模型是GPT-3.5,厉害的应用方式是ChatGPT。应用方式相对很容易复制,RLHF有难度但也不太难,真正难的是“乌鸦”能力的复现。如果我们要关注能不能做出来ChatGPT,要关注的是各家LLM离GPT-3.5的“乌鸦”能力有多远,在一个没有乌鸦能力的LLM上套一个ChatGPT的应用方式,只是东施效颦,但估计也是国内各个公司会普遍采用的方法。
这里说“应用方式相对容易复制”,但是不意味着这个应用方式不够颠覆。iPhone出现时,很多人也只是觉得没有什么颠覆技术,只是个不错的集成方案。但那些人没看到的是,iPhone是第一个“为了适应人而设计的智能手机”而非“为了解决问题而设计的智能手机”。iPhone的交互方式和各种传感器,让iPhone慢慢变成了人类的身体的一部分,一个带来更多信息,高效交互的器官。
ChatGPT已经接近人类调用算力和数据的最终极形态了,其应用方式本身当然是足够厉害的。我们在第二问,ChatGPT会取代哪些工作里,详细展开。
这里也牵涉到了一个重要的题外话,我们在讨论中发现,很多资深AI从业者,如果不去深究LLM的细节,而是用过往经验猜想ChatGPT的能力来源时,会产生严重的错误理解。我们总结了一下,发现这误解大概是发生在in-context learning和instruct这一模式,和过往模型调教有什么区别上。尤其是对“fine-tuning”这个词的理解上。这里就单独展开一下。
重要的题外话 -- AI从业者为什么对ChatGPT有错误理解?
过往的NLP模型是按照具体任务和具体数据来训练的。所以数据质量越好,模型效果越好。而且最好只有正确数据,没有错误数据。
大语言模型有一个重要不同,是“数据越多”越好,而数据质量变成了重要,但稍显次要因素。
在一开始,大模型想要在特定任务上取得较好效果,也需要那个领域的具体数据去“fine-tune”一下。通过大量的例子,先教给模型,那个领域中什么是好,什么是坏,调节一下模型的权重,从而输出恰当的结果。
这和过往模型的范式是差不多的。这样的应用明显非常有局限。每做一些新的事情,或者数据分布有明显变化,都要重新训练一遍模型。而新事情和新数据无穷无尽,模型就只能刷新。但是模型的刷新也可能导致过去做得好的事情突然做不好了,进一步限制了应用。
而GPT-3涌现出的in-context learning能力(现在其他大模型也有,比如Google的PaLM,同时不确定GPT-3是第一个涌现的,希望得到指正)和上述范式有本质不同,“过往的fine-tuning”需要更改模型参数,也就是说,换了个新模型。但是in-context learning,模型并没有变化,却能在新数据上表现更好。研究甚至发现,你给大模型一堆范例,只要对应关系整体是对的,这时候改变具体对应的顺序,大模型仍然能输出正确的结果。这真的很神奇。
再重新强调一遍,模型没有变化,没有被重新训练,但是能“理解”新数据,并且表现更好!
接下来还有更神奇的。在GPT-Codex版本解锁了推理能力,以及InstructGPT提出了instruct这一方法,他们合体的ChatGPT在in-context learning的基础之上,展示出了具备理解、推理、演绎能力的样子。我们在下一章详细展开。节省篇幅,虽然能力是在GPT-3.5上涌现的,我们接下来都说ChatGPT了。
ChatGPT是范式突破吗?
机器学习发展了这么多年,遵循同一个范式。哪怕2016年大火的AlphaGo,也完全没有脱离这个范式 -- 鹦鹉学舌。
过往机器学习的范式 -- 鹦鹉学舌
机器学习,包括深度学习,所遵循的范式是“data fitting”,即找到数据中的“对应关系”并应用。具体来说,就是Y=f(X),给定一些优化目标,机器学习寻找X和Y的对应关系,来优化一个特定的方程。对应关系找得好,让我们在见到一个未知的X‘的时候,也能根据规律,总结出Y‘是什么,能最好达到设定的目标。
从信息论的角度,这样的范式,所能总结的规律,应该是在“已有X所包含信息的范畴之内”。换句话说,遇到一个新的X‘,虽然没见过,但是应该和过去的X长得差不多。用图像识别举例,如果模型只在小狗小猫的数据上训练过,是无法区分马车和汽车的。
这就很像鹦鹉学舌的机制。鹦鹉是不知道那段话的意义的,它用自己的方式去理解了这个发音,并且模仿了出来。计算机能更加精准地进行控制和编程,配合其他模块能力,就能让“寻找对应关系”这个能力,发挥更大作用,比如:
图像识别 + 搜索,就能高效找人
Matrix completion + 用户数据收集,就能高效推荐
把游戏规则恰当转化为优化方程 + 问题的局部抽象 + 自己生成对局训练,就能下围棋
举例:推荐算法的原理
想象一个矩阵,横着是不同的人,竖着是不同的短视频,格子里是这个人对这个短视频的兴趣指数,我们要想方设法填满这个格子,给每个人推荐最感兴趣的短视频。
核心问题是在每个人都没看过99.9999999%短视频的情况下,这题怎么解。
有很多种方式,传统的运营、策略,也是一些方式。现有算法的主要做法是
1. 把每个视频抽象成特征
2. 把每个人抽象成特征
3. 通过特征对特征的方式进行泛化和填表,如果用人来理解的角度,可能是
中年男人喜欢看钓鱼(内容+画像推荐)
你同事们喜欢看老板点赞过的视频(关系链)
看过
AB的人喜欢看C(collaborative filtering)
但是记得,模型抽象出来的特征是适合机器理解,而不是适合人类理解的。用人类能描述的方式去描述机器的优化,注定是降低效率的。
由此可见。过往AI应用的拓展主要是来自几点:
高质量的数据,模型的发展,算力的提升,让模型越来越准、快、和发现更多更深的“对应关系”,能进行更好的优化
更好地把商业问题转化为优化问题
和其他能力的深度结合
但是这些都是基于“鹦鹉学舌”这一范式的。过往的NLP(natural language processing,自然语言处理)就是一个很好的例子。
发展了那么多年,语音助手能根据指令来达成一些目标,但是从来都没有真的“懂”那些指令。过往的NLP只能做“填表”,必须背后有一个人设定好具体的任务,规划好如何把语音或者文字形成固定的function,该function如何调用相应的能力。如果没有人提前规划,那模型就无法实现。
这篇文章总结的非常好,这里就不赘述了。
亚马逊Alexa的思路和大多数商业语音助手的思路就是招一群程序员来写if then,高情商说法是针对具体使用场景做深度优化。
谷歌的思路是用一个大模型做底座,一堆小模型做输入,另一堆小模型做输出。这条路也遇到明显瓶颈
归根结底,离开了“懂”的能力,鹦鹉的设计师,是很难穷尽世界上所有的语言应用组合的。说这么多,是为了告诉大家,“懂”这件事,是过往AI梦寐以求都想突破的瓶颈。
“懂”字,如果深究的话,会发现大家对它的定义其实存在很大分歧。我如果让狗狗伸手,狗狗伸手了,是“懂”吗?过去NLP的懂和ChatGPT的懂,又有什么区别呢?同样的问题存在其他词汇中,比如理解、推理、演绎、创新,等等。所以想要真的抓住ChatGPT新能力的本质,描述就要更加精确和具体。
正好,华人最厉害的AI学者之一,朱松纯教授,在2017年有一篇思考人工智能和智能本质的文章,开篇所举的例子,就非常深刻、精确、具体地抓到了这一本质。我这里复述一下。这篇文章80%的价值,可能就在这一个例子上。
ChatGPT可能的新范式 -- 乌鸦
下面是原文,介绍了乌鸦是如何“感知、认知、推理、学习、和执行”的:
总结一下,城市中的乌鸦通过观察,自主串通了
汽车能压碎坚果
红绿灯能控制汽车
车能撞死我
这三件事情,从而利用红绿灯和汽车,来帮自己达到“安全打开坚果”这一任务结果。
如果类比成机器学习模型,过往“鹦鹉学舌”范式的解法,是要求所有乌鸦可以共享一个大脑,它们有很清晰的优化目标,即“保住性命的前提下打开坚果”。它们的方式是,随机尝试所有事件的组合,并向着最优解的方向不断演化。
但现实世界的乌鸦无法共享大脑,也不能去冒着死亡风险去尝试所有可能。乌鸦只有一次机会,把观测到的两个现象,产生了一个新的可能性,并应用在一个全新的场景下。这里最接近的词汇可能是“inference”,是“基于证据和逻辑推演,得到结论”的过程,有的时候,还要加入很多猜测、抽象、泛化。举个例子,这篇文章把朱教授对于乌鸦的比喻,跟ChatGPT最本质的能力联系起来,就是在做inferencing这件事。
但很明显,inferencing不是乌鸦智能的全部。而且在机器学习领域里,inferencing特指使用训练好的深度学习模型来预测新的数据这一件事,会产生误解。其他词汇也有类似问题,所以我们在自己文章里,会直接使用“乌鸦能力”来指代ChatGPT的新能力。在对外交流时,我们没办法每次都把乌鸦能力是什么解释一遍,所以我们会用“理解”能力来进行指代。
从“乌鸦”到“理解”,当然是一个信息量损失很大的过度概括。但是好处是可以把ChatGPT的本质能力凸显出来。过往互联网的两次能力跃进一次来自于搜索,一次来自于推荐,现在ChatGPT带来了“理解”,也非常有结构感。
ChatGPT看似拥有乌鸦能力的证据
之所以说“看似”,是因为我们并不知道乌鸦为什么会有inference的能力,我们也不完全知道LLM为什么会有“达成inference效果”的能力。
我们知道的是,LLM激活inference能力的方式一定与人类和乌鸦不一样。所以我们不把话说死,只说看似拥有,不确定真的拥有。为了节省笔墨,我们接下来就不说“看似”了。
是否真的理解真的很难说,但是有这几点感受很明显:
ChatGPT拥有in-context correction的能力,即如果说错了,给出矫正,ChatGPT能“听懂”错在哪儿了,并向正确的方向修正。in-context correction要比in-context learning难了太多
描述越详细清楚,ChatGPT回答得越好。要知道,越详细的描述,在预训练的文本里越难匹配到
在询问ChatGPT互联网上并不存在内容的时候,能给出较好答案(案例:我用ChatGPT学UE5)
ChatGPT能通过信息猜你心中的想法(案例:跟ChatGPT玩20 questions)
你可以制定一个全新的游戏规则让ChatGPT和你玩,ChatGPT可以理解
前两点是本质,后三点是体感。
回过来对比过往NLP模型范式如何能达到类似效果,就能看到ChatGPT的神奇之处。过往模型一定需要针对具体的问题进行具体设计,而且只要说的话稍稍不够“结构化”,模型的表现就很难保证,更别提在模型资料库里,没有出现过的问题了。
如果认为ChatGPT范式创新的本质是乌鸦能力,那就应该想办法像图灵测试一样,有办法去定义和测量这一能力。我们承认,这里的思考和条件还不够成熟,也许下期再说。
打比方时间到
把该说的细节说清楚,我们现在可以稍负责任地打比方,方便各位老板帮助别人快速了解了。虽然朱教授关于鹦鹉和乌鸦的比方是最精确的,但毕竟人不是鹦鹉和乌鸦,鹦鹉和乌鸦的能力到底有什么区别,也需要一番解释,我们还是打一个“人”的比方。
我们可以继续用“鹦鹉”来理解过往的ML,只是这只鹦鹉记忆力和检索能力都特别强,而且有自己的一套理解事物对应关系的方式,让你给他看足够多东西的时候,TA就能找到对应关系。所以你给TA看的东西越多,离你的目标越近,TA的表现越好。问题是TA其实完全听不懂你在说什么,你没教的TA也不可能会。
ChatGPT是一个“开窍”之后拥有“理解”能力的人。理解能力带来了举一反三的能力,逻辑推演的能力,“知错”就改的能力。
所以说,我们如果用人去类比ChatGPT,问题也不大。提炼对比一下的话
过往ML:需要“喂”,之后“模仿”,基于的是“对应关系”
ChatGPT:需要“教”,之后“懂”,基于的是“内在逻辑”
后者的能力上限和应用空间,比起前者岂止百倍。这也是为什么大家如此兴奋和焦虑。兴奋是因为可能性,焦虑是因为目前只有OpenAI一家做出来了ChatGPT,而且并不开源。
如果ChatGPT如此重要且牛逼,但所有人只能基于ChatGPT做应用的话,每个人都要重新考虑自己的商业模式了。这两个问题都属于“猜想未来”,一不小心就会变成科幻小说,我们基于事实和底层理解,用科学的方式去尽量负责任地推演。
2 ChatGPT两年内可能达到的上下限是什么?
通过Prompt催眠ChatGPT,让它突破OpenAI的政策限制
比方
比过去的技术:过往模型是弓箭,ChatGPT是后膛枪
。我们在观望马克沁什么时候出现。后膛枪也许一开始打不过弓箭,但是是
热兵器迟早会淘汰冷兵器
人类的作用:ChatGPT是不断迭代的交通工具。
是需要驾驶员,但是能跑多快,跑多远,取代多少“人力运输”,确实也需要道路、司机、交通规则的配合(产品、商业模式等),可是纤夫肯定是大规模淘汰了