/ EN
首页 > 热门话题
ChatGPT的特点与原理
2023 年 02 月 21 日
ChatGPT的特点与原理

           今年12月1日,OpenAI推出人工智能聊天原型ChatGPT,再次赚足眼球,引起AI界的大讨论。

       据报道,ChatGPT在开放试用的短短几天,就吸引了超过 100 万互联网注册用户。并且社交网络流传出各种询问或调戏ChatGPT的有趣对话。甚至有人将ChatGPT比喻为“搜索引擎+社交软件”的结合体,能够在实时互动的过程中获得问题的合理答案。

       ChatGPT 是一种专注于对话生成的语言模型。它能够根据用户的文本输入,产生相应的智能回答。这个回答可以是简短的词语,也可以是长篇大论。其中GPT是Generative Pre-trained Transformer(生成型预训练变换模型)的缩写。


0.jpeg


01 ChatGPT的特点

1.1 ChatGPT的主要特点

        ChatGPT 是基于GPT-3.5Generative Pre-trained Transformer 3.5)架构开发的对话AI模型,是InstructGPT的兄弟模型。ChatGPT很可能是OpenAI GPT-4 正式推出之前的演练,或用于收集大量对话数据。

        OpenAI使用 RLHFReinforcement Learning from Human Feedbac,人类反馈强化学习) 技术对 ChatGPT 进行了训练,且加入了更多人工监督进行微调。

        此外,ChatGPT 还具有以下特征:

1)可以主动承认自身错误。若用户指出其错误,模型会听取意见并优化答案。

2ChatGPT 可以质疑不正确的问题。例如被询问哥伦布 2015 年来到美国的情景的问题时,机器人会说明哥伦布不属于这一时代并调整输出结果。

3ChatGPT 可以承认自身的无知,承认对专业技术的不了解。

4)支持连续多轮对话。


截屏2023040717.35.30.png


        与大家在生活中用到的各类智能音箱和人工智障不同,ChatGPT在对话过程中会记忆先前使用者的对话讯息,即上下文理解,以回答某些假设性的问题。ChatGPT可实现连续对话,极大的提升了对话交互模式下的用户体验。

        对于准确翻译来说(尤其是中文与人名音译),ChatGPT离完美还有一段距离,不过在文字流畅度以及辨别特定人名来说,与其他网络翻译工具相近。

        由于 ChatGPT是一个大型语言模型,目前还并不具备网络搜索功能,因此它只能基于2021年所拥有的数据集进行回答。例如它不知道2022年世界杯的情况,也不会像苹果的Siri那样回答今天天气如何、或帮你搜索信息。如果ChatGPT能上网自己寻找学习语料和搜索知识,估计又会有更大的突破。

        即便学习的知识有限,ChatGPT 还是能回答脑洞大开的人类的许多奇葩问题。为了避免ChatGPT染上恶习, ChatGPT 通过算法屏蔽,减少有害和欺骗性的训练输入。,查询通过适度 API 进行过滤,并驳回潜在的种族主义或性别歧视提示。关注制造前沿公众号,获取更多AI知识。


02 ChatGPT/GPT的原理

2.1 NLP

        NLP/NLU领域已知局限包括对重复文本、对高度专业的主题的误解,以及对上下文短语的误解。

        对于人类或AI,通常需接受多年的训练才能正常对话。NLP类模型不仅要理解单词的含义,还要理解如何造句和给出上下文有意义的回答,甚至使用合适的俚语和专业词汇。


4.jpeg

    NLP技术的应用领域    


        本质上,作为ChatGPT基础的GPT-3GPT-3.5 是一个超大的统计语言模型或顺序文本预测模型。


2.2 GPT v.s.BERT

        与BERT模型类似,ChatGPTGPT-3.5都是根据输入语句,根据语言/语料概率来自动生成回答的每一个字(词语)。从数学或从机器学习的角度来看,语言模型是对词语序列的概率相关性分布的建模,即利用已经说过的语句(语句可以视为数学中的向量)作为输入条件,预测下一个时刻不同语句甚至语言集合出现的概率分布。

        ChatGPT 使用来自人类反馈的强化学习进行训练,这种方法通过人类干预来增强机器学习以获得更好的效果。在训练过程中,人类训练者扮演着用户和人工智能助手的角色,并通过近端策略优化算法进行微调。

       由于ChatGPT更强的性能和海量参数,它包含了更多的主题的数据,能够处理更多小众主题。ChatGPT现在可以进一步处理回答问题、撰写文章、文本摘要、语言翻译和生成计算机代码等任务。


5.jpeg

BERT与GPT的技术架构(图中En为输入的每个字,Tn为输出回答的每个字)


03 ChatGPT的技术架构

3.1 GPT家族的演进

       说到ChatGPT,就不得不提到GPT家族。

         ChatGPT之前有几个知名的兄弟,包括GPT-1GPT-2GPT-3。这几个兄弟一个比一个个头大,ChatGPTGPT-3更为相近。


6.jpeg

ChatGPT与GPT 1-3的技术对比


        GPT家族与BERT模型都是知名的NLP模型,都基于Transformer技术。GPT-1只有12Transformer层,而到了GPT-3,则增加到96层。


3.2 人类反馈强化学习

        InstructGPT/GPT3.5ChatGPT的前身)与GPT-3的主要区别在于,新加入了被称为RLHFReinforcement Learning from Human Feedback,人类反馈强化学习)。这一训练范式增强了人类对模型输出结果的调节,并且对结果进行了更具理解性的排序。

        在InstructGPT中,以下是“goodness of sentences”的评价标准。

        真实性:是虚假信息还是误导性信息?

        无害性:它是否对人或环境造成身体或精神上的伤害?

        有用性:它是否解决了用户的任务?


3.3 TAMER框架

       这里不得不提到TAMERTraining an Agent Manually via Evaluative Reinforcement,评估式强化人工训练代理)这个框架。该框架将人类标记者引入到Agents的学习循环中,可以通过人类向Agents提供奖励反馈(即指导Agents进行训练),从而快速达到训练任务目标。


7.jpeg

TAMER框架论文


       引入人类标记者的主要目的是加快训练速度。尽管强化学习技术在很多领域有突出表现,但是仍然存在着许多不足,例如训练收敛速度慢,训练成本高等特点。特别是现实世界中,许多任务的探索成本或数据获取成本很高。如何加快训练效率,是如今强化学习任务待解决的重要问题之一。

        而TAMER则可以将人类标记者的知识,以奖励信反馈的形式训练Agent,加快其快速收敛。TAMER不需要标记者具有专业知识或编程技术,语料成本更低。通过TAMER+RL(强化学习),借助人类标记者的反馈,能够增强从马尔可夫决策过程 (MDP) 奖励进行强化学习 (RL) 的过程。


8.jpeg

       TAMER架构在强化学习中的应用


       具体实现上,人类标记者扮演对话的用户和人工智能助手,提供对话样本,让模型生成一些回复,然后标记者会对回复选项打分排名,将更好的结果反馈回模型中,Agents同时从两种反馈模式中学习——人类强化和马尔可夫决策过程奖励作为一个整合的系统,通过奖励策略对模型进行微调并持续迭代。

       在此基础上,ChatGPT 可以比 GPT-3 更好的理解和完成人类语言或指令,模仿人类,提供连贯的有逻辑的文本信息的能力。


3.4 ChatGPT的训练

ChatGPT的训练过程分为以下三个阶段:

第一阶段:训练监督策略模型

        GPT 3.5本身很难理解人类不同类型指令中蕴含的不同意图,也很难判断生成内容是否是高质量的结果。为了让GPT 3.5初步具备理解指令的意图,首先会在数据集中随机抽取问题,由人类标注人员,给出高质量答案,然后用这些人工标注好的数据来微调 GPT-3.5模型(获得SFT模型, Supervised Fine-Tuning)。

        此时的SFT模型在遵循指令/对话方面已经优于 GPT-3,但不一定符合人类偏好。

第二阶段:训练奖励模型(Reward ModeRM

       这个阶段的主要是通过人工标注训练数据(约33K个数据),来训练回报模型。在数据集中随机抽取问题,使用第一阶段生成的模型,对于每个问题,生成多个不同的回答。人类标注者对这些结果综合考虑给出排名顺序。这一过程类似于教练或老师辅导。

       接下来,使用这个排序结果数据来训练奖励模型。对多个排序结果,两两组合,形成多个训练数据对。RM模型接受一个输入,给出评价回答质量的分数。这样,对于一对训练数据,调节参数使得高质量回答的打分比低质量的打分要高。

第三阶段:采用PPOProximal Policy Optimization,近端策略优化)强化学习来优化策略。

        PPO的核心思路在于将Policy GradientOn-policy的训练过程转化为Off-policy,即将在线学习转化为离线学习,这个转化过程被称之为Importance Sampling。这一阶段利用第二阶段训练好的奖励模型,靠奖励打分来更新预训练模型参数。在数据集中随机抽取问题,使用PPO模型生成回答,并用上一阶段训练好的RM模型给出质量分数。把回报分数依次传递,由此产生策略梯度,通过强化学习的方式以更新PPO模型参数。

       如果我们不断重复第二和第三阶段,通过迭代,会训练出更高质量的ChatGPT模型。

9.jpeg

ChatGPT模型的训练过程      


       通过学习大量现成文本和对话集合(例如Wiki),ChatGPT能够像人类那样即时对话,流畅的回答各种问题。(当然回答速度比人还是慢一些)无论是英文还是其他语言(例如中文、韩语等),从回答历史问题,到写故事,甚至是撰写商业计划书和行业分析,“几乎”无所不能。甚至有程序员贴出了ChatGPT进行程序修改的对话。

       ChatGPT也可以与其他AIGC模型联合使用,获得更加炫酷实用的功能。例如上面通过对话生成客厅设计图。这极大加强了AI应用与客户对话的能力,使我们看到了AI大规模落地的曙光。

Leithon Insights - Get our latest thinking on your iPhone, iPad, or Android device. 京ICP备2022022765号
© 1996-2024 Leithon & Company