最近,全球范围内有大量关于ChatGPT的新闻和讨论,已经引起各行各业的广泛关注。其实早在去年底,「OpenAI」就正式推出聊天机器人ChatGPT,一经推出风靡全球,其在翻译、问答、内容生成等领域的不俗表现,让业界看到了通用人工智能的希望。紧接着在今年3月14日,OpenAI 宣布推出 GPT-4.0,能力全面提升。目前ChatGPT主要基于预训练语言模型GPT-3.5,「ChatGPT Plus」、「微软New Bing」可以使用GPT-4.0。
那么,关注ChatGPT的用户自然就会提出疑问:ChatGPT是如何实现的?ChatGPT惊人的语言能力来自哪?在实际使用中具有哪些优越表现?
这篇文章将从关键技术+效果应用两个角度来揭秘ChatGPT爆火的原因。
关于关键技术,九方科技团队将从数据、算法以及算力这三个方面说明GPT大语言模型系列是如何一步步进化成目前的强大形态。
关于效果应用,九方科技团队将结合实际使用场景,来实际验证ChatGPT的出色表现。
01 关键技术
训练数据:庞大的高质量语言文本量
“数据是AI的原油”。「AI系统」构建的传统模式一般是以模型为中心的人工智能,关心如何迭代模型来提高效能,新兴模式则是以数据为中心的人工智能,侧重于数据的质量和数量,更关心如何系统性地迭代数据输入和数据标签来提高效能。
通过详细阅读GPT系列论文中有关数据的描述,我们可以明显看出OpenAI花了极大心血去提高数据的质量和数量。从GPT-1到ChatGPT/GPT-4.0,通过更好的数据收集、数据标注和数据准备策略,用于训练GPT模型的数据数量和质量都得到了显著提高:数据量逐渐增加,数据质量不断提升。
从GPT-1到ChatGPT/GPT-4.0,所用的训练数据大体经历了以下变化:
小数据—>大一点的高质量数据—>更大一点的高质量数据—>高质量人类(指能通过考试的标注者)标注的高质量数据
最终,ChatGPT 的训练数据集来源分为6大类:
ChatGPT在GPT-3的基础上,加入GitHub代码数据,人类对话数据,用人类反馈去微调模型,使得模型与人类期望相符。大量文本数据做有监督和强化学习指令微调训练才保证了ChatGPT回答问题的所用资料的完整性和逻辑的合理流畅度。
ChatGPT数据标注策略:
1)使用人类提供的答案来用有监督的方式微调模型。「OpenAI」对标注人员的选择极为严苛,对标注者进行了考试,最后甚至会发问卷确保标注者有比较好的体验。
2)收集比较数据(人类对产生的答案根据好坏程度排序)来训练一个奖励模型,然后基于该奖励模型使用从人类反馈中进行的强化学习(Reinforcement Learning from Human Feedback,RLHF)来微调。
从ChatGPT/GPT-4.0的成功,我们可以发现,高质量的标注数据是至关重要的。在AI的任何子领域几乎都是如此,即便是在很多传统上的无监督任务上,标注数据也能显著提高性能。这反映了「OpenAI」对数据和标签质量的重视程度,正是这种近乎“执念”的重视促成了GPT模型的成功。
模型架构:超强表达能力的大语言模型
在这部分,九方科技团队将大致介绍 ChatGPT 内部运作的机制,并探讨它为什么能够成功地生成令人满意的文本。需要说明的是,我们将重点关注 ChatGPT 的整体机制,虽然会提到一些技术细节,但不会做深入的探讨。
当前的人工智能大多是针对特定的场景应用进行训练,生成的模型难以迁移到其他应用, 属于「小模型」的范畴。整个过程不仅需要大量的手工调参,还需要给机器喂养海量的标注数据,这拉低了人工智能的研发效率,且成本较高。
「大模型」通常是在无标注的大数据集上,采用自监督学习的方法进行训练。之后,在其他场景的应用中,开发者只需要对模型进行微调,或采用少量数据进行二次训练, 就可以满足新应用场景的需要。
ChatGPT的核心正是所谓的「大语言模型」。
那么,什么是大语言模型?什么又是GPT模型?
「大语言模型」(LLM,Large Language Model)指的是一类自然语言处理模型。顾名思义,大语言模型指的是比较大的神经网络语言模型。语言模型在自然语言处理领域具有很长的研究历史,它们常常被用来根据上文来推理词语的概率。例如,大语言模型的一个基本功能是根据上文预测缺失词或短语的出现概率。我们常常需要用到大量的数据去训练模型,使得模型学到普遍的语言规律。
由此,语言模型的的核心任务始终是生成一个“合理的延续”,即根据已有的文本,生成一个符合人类书写习惯的下一个合理内容。所谓“合理”,是指根据数十亿个网页、数字化书籍等人类撰写内容的统计规律,推测接下来可能出现的内容。
例如,我们输入文本“花谢花飞花满_”,语言模型就会在数十亿页的人类文本中查找类似文本,然后统计下一个单词出现的概率。最终,语言模型会生成一个可能的单词列表,并给出每个单词的概率排名:
值得注意的是,当语言模型完成像“写文章”这样的任务时,它实际上只是一遍又一遍地询问:“在已有的文本的基础上,下一个词应该是什么?”——并且每次都会添加一个词,更准确地说,添加一个“token”,这可能只是单词的一部分,这就是为什么有时会“创造新词”的原因。在每一步中,语言模型都会得到一个带有概率的单词列表。
但是,应该选择哪个单词来添加到它正在写作的文章中呢?有人可能认为应该选择“排名最高”的单词,即被分配“最高概率”的单词。但这就是一些神秘的事情开始悄悄发生的地方。因为由于某种原因——也许有一天我们会有一种科学式的理解——如果我们总是选择排名最高的单词,我们通常会得到一篇非常“平淡”的文章,从不显示任何创造力,有时甚至逐字重复。如果我们随机地选择较低排名的单词,可能会得到一篇“更有趣”的文章。这里存在随机性意味着,如果我们多次使用相同的提示,很可能每次都会得到不同的文章。过程中会有一个特定的所谓“温度”(temperature)参数,它决定较低排名的单词会被使用的频率。
「GPT」(Generative Pre-trained Transformer,生成式预训练变换)模型是由「OpenAI」开发的一系列「大语言模型」,主要包括GPT-1,GPT-2,GPT-3以及最近发布的ChatGPT/GPT-4.0。
GPT模型是专门用于处理语言的巨大神经网络,最显著的特征是一个被称为「Transformer」的神经网络架构。其中,Transformer是由「Google团队」在2017年提出的NLP经典之作《Attention Is All You Need》。GPT 模型选择 Transformer 的 decoder 部分作为模型的主要模块,以多层Transformer 堆叠的方式构成了整个模型结构。
Transformer以文本和位置信息的向量为输入,使用注意力机制来建模词之间的关系,具有极强的并行计算能力和长距离依赖的建模能力,可以有效处理自然语言处理中的长序列数据。
在此之前,RNN和CNN已经广泛应用于序列模型、语言建模、机器翻译并取得不错效果,然而在算法上仍有一定限制和不足。
Transformer成功的核心原因是在算法设计中加入了注意力机制,这种机制具备的突破性在于:
1)突破了RNN模型不能并行计算的限制;
2)相比CNN模型,关联所需的操作次数不随距离增长;
3)模型解释力度明显加强。
从结果上看,Transformer的综合特征提取能力、远距离特征捕获能力、语义特征提取能力,全部明显增强,成为GPT模型的根基,进一步支撑GPT系列模型走向多模态。
因此,ChatGPT是站在巨人的肩上走出来的。
之后的GPT系列模型结构大体上都与GPT-1类似,主要区别在于更多参数(更多层,更多隐含层维度等)。当ChatGPT的“大脑”工作时,大脑中的“神经元”就会运作,也就会产生数据参数,而更多的参数产生,往往就会带来更精细的结果。
基于GPT-3.5的ChatGPT是在GPT-3的基础上更新了训练数据与训练策略,因此模型参数量保持GPT-3的1750亿不变。
2023年最新发布的GPT-4.0,虽然官方没有公布具体参数量,但业界猜测可能已经达到千亿级别的参数量。
训练策略:有监督微调(SFT)+ 基于人类反馈的强化学习(RLHF)
单纯的GPT存在两个非常大的问题:
1.只能像“鹦鹉学舌”一样模仿人类对一段文字进行续写,无法明白“续写任务”以外的需求;
2.续写的内容有很强的随机性,模型只能保证续写的内容是“人类语言”,而不能保证其是“合理、正确的人类知识”。
针对以上两点,ChatGPT分别采用了两大方案来解决上述问题:
1. 针对ChatGPT不明白续写以外的任务需求这一问题,「OpenAI」采用了有监督微调的方法,让专家及标注人员列举出尽可能多的任务场景(但每个场景都仅包含少量数据),让ChatGPT学会每一种任务需要“什么样”的回答。
2.针对ChatGPT生成的内容不可控的问题,「OpenAI」采用基于人类反馈的强化学习来让人类提供区分不同答案优劣的标准。
基于上述考量,「OpenAI」提出了以下ChatGPT/GPT-4.0 的模型训练方案,该方案包含三个阶段:有监督微调、奖励模型训练、强化学习训练。
第一阶段:训练有监督策略模型(Supervised Fine-Tuning,SFT)
GPT-3.5本身很难理解人类不同类型指令中蕴含的不同意图,也很难判断生成内容是否是高质量的结果。
为了让GPT-3.5初步具备理解指令的意图,首先会在数据集中随机抽取问题,由人类标注人员,给出高质量答案,然后用这些人工标注好的数据来微调 GPT-3.5模型,获得「SFT模型」。
此时的SFT模型在遵循指令/对话方面已经优于 GPT-3,但不一定符合人类偏好。
第二阶段:训练奖励模型(Reward Mode,RM)
这个阶段的主要是通过人工标注训练数据(约33K个数据),来训练奖励模型。
在数据集中随机抽取问题,使用第一阶段生成的模型,对于每个问题,生成多个不同的回答。人类标注者对这些结果综合考虑给出排名顺序。这一过程类似于教练或老师辅导。接下来,使用这个排序结果数据来训练「奖励模型」。对多个排序结果,两两组合,形成多个训练数据对。RM模型接受一个输入,给出评价回答质量的分数。这样,对于一对训练数据,调节参数使得高质量回答的打分比低质量的打分要高。
第三阶段:采用PPO(Proximal Policy Optimization,近端策略优化)强化学习来优化策略
PPO的核心思路在于将Policy Gradient中On-policy的训练过程转化为Off-policy,即将在线学习转化为离线学习,这个转化过程被称之为Importance Sampling。
这一阶段利用第二阶段训练好的「奖励模型」,靠奖励打分来更新预训练模型参数。在数据集中随机抽取问题,使用「PPO模型」生成回答,并用上一阶段训练好的「RM模型」给出质量分数。把回报分数依次传递,由此产生策略梯度,通过强化学习的方式以更新「PPO模型」参数。
不断重复第二和第三阶段,通过迭代,就会训练出更高质量的ChatGPT模型。
ChatGPT的完整模型训练策略如下图:
下图展示了从初代 GPT 到 ChatGPT 为止,「OpenAI」 公布的主要模型及其迭代路线。
训练算力:高阶GPU提供的充足算力
ChatGPT 的应用,背后离不开庞大的算力支撑。根据 Lambda 官网数据,「微软」为 「OpenAI 」设计了一个包含10000 块 Nvidia V100 GPU的分布式集群进行 GPT-3 的模型训练,由于模型参数量较大(共 1750 亿参数),训练完成共耗费 30 天,消耗总算力为 3640PF-days(即以每秒一千万亿次计算,需运行 3640 个整日)。以 Nvidia Tesla V100 的 Lambda GPU 实例定价为 1.50 美元/小时测算,GPT-3 的完整训练成本将达到 466 万美元/次。
GPT-4.0, 作为“更聪明的大脑”,算力成本又是一个新的台阶。这些,全部都是“聪明”的价格,也是使用高性能计算要付出的成本。
在数据、算法、算力三者的共同进步下,GPT模型也逐步强大起来,未来也会更强,而我们要思考的是如何用这些强大的技术解决现实问题。下面将介绍ChatGPT的惊艳表现。
02 效果应用
ChatGPT能做什么?
众所周知,ChatGPT可以出色地完成很多任务,如语言理解、文本生成、逻辑推理、图表分析等,在AIGC、聊天机器人、问答系统等领域都有广泛的应用。
理解用户问题,给出答案
2. 给定主题,撰写文章
3. 写代码
4. 主题信息抽取
ChatGPT能为投顾做什么?
目前ChatGPT能为投顾做什么?以下将借助「微软 New Bing」 来介绍 ChatGPT在投资咨询行业的应用。
「New Bing」结合了搜索引擎技术与ChatGPT(GPT4.0) , 依赖「Bing」强大的搜索库,基于事实回答问题,对于每个回答都会给出相应的链接。将「搜索+创造+聊天」融为一体,弥补了GPT-3.5时效性和知识性不足的问题,加入引用来源也使得答案更加可信,因此,相较GPT-3.5更适用于金融专业领域的应用场景。
1. 帮助投顾进行回复话术推荐
场景:客户想了解基金经理分别管理哪些基金,该如何向客户介绍?
Bing回答:
2. 协助投顾完成各种文章写作
鉴于其优秀的语言理解与生成能力,ChatGPT非常擅长文章撰写,包括日常工作汇报、总结、书信、邮件等,并且可以借助其为文章写作提供灵感,在此基础上进一步润色,美化。
场景:CTA策略最近一年回撤较大,客户表达了不满情绪。需要给客户写一封信,阐述策略回撤的原因,安抚客户情绪,对未来市场情况和策略表现进行展望,引导客户继续持有产品。
Bing回答:
3. 协助投顾整理投资建议等材料
投顾在完成相关投研材料的过程中,通常需要收集大量材料形成自己的观点,并准确、完整、合理的提供给客户。
场景:客户需要我们提供一份投资建议书,该如何利用ChatGPT来完成这项工作?
Bing回答:
GPT-4.0能快速生成投资建议的大体框架,提供相关资料,但无法提供具体、详细的资产配置情况。目前只能协助投顾完成材料收集、整理工作。
ChatGPT应用风险提示
1. 技术风险
1)大模型存在可解释性低、算法偏见的情况
2)后续GPT算法更新迭代不及预期,导致商业化落地受阻。
2. 知识产权风险
1)ChatGPT产生的内容是否会侵犯他人的知识产权;
2)ChatGPT 产生的内容是否具有知识产权。
3. 安全风险
1)存在用户隐私数据泄漏的风险
2)ChatGPT训练数据获取存在数据是否合规的问题
4. 政治风险
1)中美国际关系动荡,可能会导致技术封锁。
2)国内加强相关监管。
5. 社会风险
1)ChatGPT可能会加剧数字鸿沟。
2)滥用会产生数字垃圾,导致虚假信息泛滥。
3)产生有害言论,诱发网络犯罪。
03 总结
相比以往的人工智能聊天机器人,ChatGPT有三个显著优势:
1)进行文字对话和指令操作外可生成更多类型信息,覆盖回答问题、撰写文章、文本摘要、语言翻译和生成计算机代码等任务。
2)可简单进行反馈强化和监督微调。用户可直接在对话过程中要求ChatGPT做出调整,ChatGPT可快速理解并改进其算法。
3)可提供更为清晰、详细的信息。ChatGPT可显著对用户指令进行扩容和补充理解,不仅提供知识,也可提供多种解决方案供用户选择。
ChatGPT的这些技术特征表明生成式人工智能已经出现显著突破。这项技术虽然还远远没有达到通用人工智能的水平,但由于使用门槛低、有海量用户加以完善,该技术的算法学习速度将快于以往任何一种人工智能应用,推动人工智能出现“指数型”加速态势。除推进自身算法进步外,生成式人工智能能够以较低成本和门槛服务于更多领域。
ChatGPT对AI领域的影响无疑是深远的,我们毫不夸张的正在经历又一个Windows、iPhone和Model 3时刻。