首页  >  区块链

ChatGPT的发展历程及技术原理

2022-12-07

最近, OpenAI发布了 ChatGPT,这是一款能够以对话方式进行交互的模型,因为它的智能而受到众多用户的欢迎。ChatGPT也和 OpenAI之前发布的 InstructGPT有很大关系,它使用 RLHF (RLHF)来训练 ChatGPT模型,也许 ChatGPT的到来也就是GPT-4正式发布之前的序章。

GPT是什么?GPT-1与GPT-3

GenerativePre-trained Transformer (GPT)是基于因特网上可用数据训练的文本生成深度学习模型。它用于问答,文本摘要产生,机器翻译,分类,代码产生和对话人工智能。

2018年,GPT-1诞生,也就是自然语言处理(NLP)预训练模型的一年。性能方面,GPT-1有一定的泛化能力,可以应用于非监督任务的 NLP任务。它的常用任务有:

自然语言推理:判断句子关系(包含,矛盾,中立)

问答与常识推理:输入一篇文章和几个答案,输出正确率

语义相似度识别:判断句子的语义关系

分类:判断输入文本所指定的类别

虽然GPT-1对未调试的任务有一定的影响,但是它的泛化能力比经过微调的有监督任务要低得多,所以GPT-1只能算是一种不错的语言理解工具。

GPT-2也在2019年如期而至,不过GPT-2在结构上并没有做太多的创新和设计,只是增加了网络参数和数据集,最大模型有48层,参数量达15亿,学习目标采用无监督预训练模型进行有监督任务。在性能方面,除了理解之外,GPT-2第一次展现了它强大的能力:阅读摘要,聊天,续写,编故事,甚至制造假新闻,钓鱼邮件,或者在线扮演角色都是轻而易举的事情。在“变得更大”之后,GPT-2的确展现出了它的普适性和强大的性能,并且在许多特定语言的建模任务中实现了最好的性能。

后来,GPT-3作为一种无监督模型(现在人们常说的自监督模型)出现了,它几乎能完成大部分自然语言处理的任务,例如面向问题的搜索,阅读理解,语义推断,机器翻译,文章生成,自动问答等。此外,该模型在很多任务中都表现出色,比如法语—英语—德语—英语—机器翻译任务,它能自动生成几乎不分人和机器的文章(正确率只有52%,和随机猜测一样),而且还能根据任务描述自动生成代码。一种无监督模型功能多好,似乎给人们带来了一种通用人工智能的希望,也许这就是GPT-3如此有影响力的原因。

到底什么是GPT-3模型?

实际上,GPT-3仅仅是统计语言的简单模型。从机器学习的角度来看,语言模型是用已讲过的片段作为条件,来预测下一时刻不同词语出现概率分布的概率分布。一方面,语言模型能够衡量句子是否符合语言语法(例如,人机对话系统自动生成的回复是否自然流畅),另一方面,它还能预测新句子的生成。举例来说,在“中午12点,我们一起去餐厅吃饭”的片断中,语言模型就能预测出“餐厅”后面可能出现的词语。通常的语言模型预测下一个单词是“吃饭”,强大的语言模型能够捕捉时间信息并预测出“吃午饭”这个词。

通常情况下,语言模型的强大取决于两个因素:第一,模型是否能充分利用历史信息,如果不能捕捉到“中午12点”这一远程语义信息,那么语言模型就无法预测下一个单词“吃午饭”了。其次,还要看模型学习中是否有足够丰富的历史背景,即训练语料是否足够丰富。由于语言模型属于自监督学习,其优化目标是最大化所见文本的语言模型概率,因此任何文本都可以作为训练数据而无需标注。

由于GPT-3性能更好,参数也更多,因此它包含的主题文字也比上一代GPT-2要好。GPT-3是目前最大的密集神经网络,它可以把网页描述转换成相应的代码,模仿人类的叙述,创作自定义的诗歌,制作游戏的脚本,甚至模仿每一位死去的哲学家。而且GPT-3无需微调,只需要少量的输出样本即可解决语法难题。可以说,GPT-3似乎满足了我们对语言专家的所有想象。

注:以上主要参考以下文章:

1.GPT4发布后,堪比人脑,业内很多大佬都坐不住了!徐杰承,云昭-公众号51 CTO技术栈-2022-11-2418:08

2.一文为您解答GPT-3!什么是GPT-3?为何如此优秀?2020-11-1117:25中国科学院自动化研究所张家俊发表在北京

GPT-3是怎么回事?

但是GTP-3也不是最完美的,目前最让人担心的是,人工智能的聊天机器人和文字生成工具,很可能会无差别地学习网络上的文字,从而产生错误的、恶意的、甚至是攻击性的语言。

OpenAI曾经提出过,将在不久的将来发布更强的功能。

据说GPT-4明年就会发布,它可以通过图灵测试,并能与人类无异。

在2022年初, OpenAI发布了图形 GPT;与GPT-3相比, OpenAI采用了对齐研究(alignment research),训练出更加真实、无害、更符合用户意图的语言模型 InstructGPT。

InstructGPT是如何工作的?

开发人员将监督学习和人类反馈相结合来强化学习。提高GPT-3输出的质量.在这一学习过程中,人类根据模型的潜在输出排序;强化学习算法会奖励产生与高级输出材料相似的模型。

训练数据集从创建提示开始,有些提示是基于GPT-3用户输入的,例如:“给我讲讲青蛙故事”或者“用几句话向6岁儿童解释登月”。

开发人员把提示分成三部分,每个部分都有不同的响应:

人类作家会回应第一组提示。开发人员对经过训练的GPT-3进行了微调,并将其转化为 InstructGPT,为每个提示生成已有的响应。

下一步就是对模型进行训练,使之能够获得更好的响应。对于第二组提示,优化后的模型将产生多个响应。人工评分将根据每个回复排名。在给出一条提示和两条回复之后,奖励模式(另一种预习GPT-3)学习计算较高得分的奖励,而低得分的答案则较低。

开发人员利用第三套提示与强化学习方法近端策略优化(PPO)对语言模型进行了微调。在给出提示之后,该语言模型会生成相应的响应,并给出相应的奖励。PPO利用奖励机制更新语言模型。

有什么重要的?核心问题是,人工智能需要有责任感。

OpenAI语言模型对教育、虚拟治疗师、写作辅助工具、角色扮演游戏等都有很大的帮助。


相关推荐