这些技术,ChatGPT和它的潜在竞争者们都在用

简介: 这些技术,ChatGPT和它的潜在竞争者们都在用

如今的人工智能圈,ChatGPT 等 AI 聊天机器人火的一塌糊涂,甚至让 Stack Overflow 访问量暴跌。那么这些 AI 聊天机器人背后的技术以及异同点有哪些呢?本文作者探索并试图回答这些问题。


随着 ChatGPT 的出现以及随之而来的广泛讨论,RLHF、SFT、IFT、CoT 等晦涩的缩略词出现在公众面前,这都归功于 ChatGPT 的成功。这些晦涩的缩略词是什么?为什么它们如此重要?本文作者查阅了所有关于这些主题的重要论文,进行了分类总结。

ChatGPT 并不是第一个基于语言模型(LM)的对话智能体,事实上,许多机构在 OpenAI 之前发布过语言模型对话智能体,包括 Meta BlenderBot、Google LaMDA、DeepMind 的 Sparrow 和 Anthropic Assistant。一些机构也宣布建立开源聊天机器人的计划,并公开了路线图(如 LAION 的 Open-Assistant)。肯定还有其它机构在做同样的工作,只是没有宣布。

下表根据上面提到的 AI 聊天机器人是否可公开访问、训练数据、模型架构和评估的详细信息,对它们进行了比较。ChatGPT 没有相关数据,这里使用的是 InstructGPT 的资料,它是 OpenAI 的一个微调模型,被认为是 ChatGPT 的基础。

尽管在训练数据、模型和微调方面存在许多差异,但这些聊天机器人也存在一些共性 —— 指令遵循(instruction following),即根据用户的指令,给出响应。例如让 ChatGPT 写一首关于微调的诗。

从预测文本到遵循指令

通常而言,基础语言建模的目标不足以让模型高效地遵循用户的指示。模型创建者还使用指令微调(Instruction Fine-Tuning,IFT),它可以在多样化任务上对基本模型进行微调,还能应用在情感分析、文本分类、摘要等经典 NLP 任务。

IFT 主要由三个部分组成:指令、输入和输出。输入是可选的,有些任务只需要指令,如上面的 ChatGPT 示例。输入和输出构成实例(instance)。给定的指令可以有多个输入和输出。相关示例如下([Wang et al., ‘22])。

IFT 的数据通常使用人类的指令和语言模型 bootstrapped 的指令集合。对于 bootstraping,LM 会在零样本的情况下根据 prompt,生成新的指令、输入和输出。在每一轮中,模型都会得到从人类编写和生成模型中选择的样本的 prompt。人类和模型贡献数据集的情况可以用频谱表示,如下图所示。

一种是纯模型生成的 IFT 数据集如 Unnatural Instructions,另一种是集社区努力、手动创建的指令如 Super natural Instructions。位于这两者之间,选用高质量种子数据集然后进行 bootstrap 如 Self-instruct。为 IFT 收集数据集的另一种方法是将现有高质量众包 NLP 数据集用于各种任务(包括 prompting),并使用统一的模式或不同的模板将这些数据集作为指令,相关工作包括 T0、Natural instructions 数据集、FLAN LM 和 OPT-IML。

安全遵循指令

LM 使用微调后的指令,可能并不总是生成有用安全的响应。这种行为的示例包括无效回应(托词),总是给出诸如「对不起,我不明白」之类的无效回答,或者对用户关于敏感话题的输入做出不安全的回应。

为了解决这种问题,模型开发人员使用监督式微调(Supervised Fine-tuning, SFT),在高质量的人类标记数据上微调基础语言模型,以实现有效和安全的响应。

SFT 和 IFT 紧密相连。指令调优可以看作是监督式微调的子集。在最近的文献中,SFT 阶段通常用于安全主题,而不是在 IFT 之后进行的指令特定主题。未来这种分类和描述会有更清晰的用例和方法。

谷歌的 LaMDA 也是根据一组规则对带有安全注释的对话数据集微调。这些规则通常是由模型创建者预先定义和制定的,包含一系列广泛的主题,如有害、歧视和错误信息。模型微调

另一方面,OpenAI 的 InstructGPT、DeepMind 的 Sparrow 和 Anthropic 的 ConstitutionalAI 均使用从人类反馈中强化学习(reinforcement learning from human feedback, RLHF)的技术。在 RLHF 中,模型响应基于人类反馈(如选择一个更好的答案)进行排序,然后用这些带注释的响应训练模型,以返回 RL 优化器的 scalar 奖励,最后通过强化学习训练对话智能体来模拟偏好模型。

思维链(Chain-of-thought, CoT)是指令演示的特殊情况,通过从对话智能体中引出逐步推理生成输出。用 CoT 进行微调的模型使用带有逐步推理的人类注释的指令数据集。如下示例所示,橙色标记代表指令,粉色标记代表输入和输出,蓝色标记代表 CoT 推理。

用 CoT 来微调的模型在涉及常识、算术和符号推理的任务上表现得更好。CoT 进行微调也显示出对实现无害性非常有效(有时比 RLHF 做得更好),并且模型不会回避并产生「对不起,我无法回答这个问题」等回复。


要点总结

本文要点总结如下:

1、 与预训练数据相比,只需要非常小的一部分数据来对指令进行微调。2、 监督式微调使用人工标注使模型输出更安全和更有帮助。3、 CoT 微调提高模型在逐步思考任务上的性能,并减少了它们在敏感话题上的无效响应或回避不答。

对话智能体的进一步工作思考

最后,作者对未来对话智能体的发展给出了自己的一些思考。

1、 RL 在从人类反馈中学习有多重要?可以通过 IFT 或 SFT 中的高质量数据训练获得与 RLHF 一样的性能吗?2、 与在 LaMDA 中使用 SFT 相比,在 Sparrow 中使用 SFT+RLHF 的安全性如何?3、 IFT、SFT、CoT 和 RLHF,需要怎样程度的预训练?tradeoff 是什么?应该使用的最好的基础模型是什么?4、 文中介绍的许多模型都是经过精心设计,工程师们专门收集导致失败的模式,并根据已处理的问题改善未来的训练(prompts 和方法)。要如何系统地记录这些方法的效果并重现它们?

原文链接:https://huggingface.co/blog/dialog-agents

相关文章
用 ChatGPT 编写英文技术文章要自己多审核,否则容易被严谨的同行喷
用 ChatGPT 编写英文技术文章要自己多审核,否则容易被严谨的同行喷
|
2月前
|
机器学习/深度学习 数据采集 存储
4个维度讲透ChatGPT技术原理,揭开ChatGPT神秘技术黑盒
4个维度讲透ChatGPT技术原理,揭开ChatGPT神秘技术黑盒
|
2月前
|
存储 自然语言处理 搜索推荐
ChatGPT 文本Embedding融合Qdrant向量数据库:构建智能问答系统的技术探索
向量数据库结合ChatGPT带来了什么 1. **语义搜索:** 使用向量数据库进行语义搜索,可以更准确地找到与查询相关的信息。ChatGPT可以理解用户的自然语言查询,而向量数据库可以根据语义相似性返回匹配的向量数据。 2. **智能推荐:** 结合ChatGPT的智能理解和向量数据库的相似性搜索,可以实现更智能的推荐系统。系统可以根据用户的历史行为和语境,向用户推荐相似的向量数据,如文章、产品或其他内容。 3. **自然语言处理与向量表示结合:** ChatGPT可以将自然语言转换为向量表示,这样就可以在向量数据库中进行更高效的查询。这种集成使得自然语言处理和向量数据库可以相互补充等
454 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【极客技术】ColossalChat用完整RLHF技术克隆ChatGPT的开源解决方案
【极客技术】ColossalChat用完整RLHF技术克隆ChatGPT的开源解决方案
61 0
|
9月前
|
自然语言处理 iOS开发
ChatGPT出圈,不在于技术牛
ChatGPT出圈,不在于技术牛
52 0
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】第一部分:ChatGPT的基本概念和技术背景
【人工智能】第一部分:ChatGPT的基本概念和技术背景
24 6
|
17天前
|
机器学习/深度学习 人工智能 算法
【人工智能】第四部分:ChatGPT的技术实现
【人工智能】第四部分:ChatGPT的技术实现
15 3
|
15天前
|
安全 测试技术 PHP
基础入门-ChatGPT&结合安全&融入技术&高效赋能&拓展需求
基础入门-ChatGPT&结合安全&融入技术&高效赋能&拓展需求
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
技术小白能看懂的ChatGPT原理介绍
网上有关 ChatGPT 的原理介绍文章一大堆,要么是从 NLP 的历史开始讲起,要么是上数 GPT 3 代,内容都相对冗长和复杂。其实 ChatGPT 的原理并不难理解,我将以最通俗易懂的方式为技术小白解读,帮助大家更好地了解这一技术
544 1
技术小白能看懂的ChatGPT原理介绍
|
8月前
|
人工智能
技术下午茶:初识ChatGPT,触碰未来(4)
技术下午茶:初识ChatGPT,触碰未来
67 1
技术下午茶:初识ChatGPT,触碰未来(4)

热门文章

最新文章