文章主题:近期,ChatGPT 问世并取得巨大成功,导致 RLHF、SFT、IFT、CoT 等缩写成为大众关注的焦点。这些缩写究竟代表什么含义?为何它们如此重要?本文调查了相关论文,梳理了至今的工作成果,并展望未来发展方向。首先,探讨基于语言模型的会话代理全景。虽然 ChatGPT 并非首创,但很多组织在 OpenAI 之前就已经发布了自己的语言模型对话代理。接下来,对比了四个知名的语言模型对话代理产品:Meta 的 BlenderBot、Google 的 LaMDA、DeepMind 的 Sparrow 和 Anthropic 的 Assistant。最后,分析了这些 AI 聊天机器人在训练数据、模型架构和评估方向上的差异,以及指令微调(IFT)和有监督微调(SFT)的应用情况。
近期,ChatGPT 的巨大成功使其成为人们关注的焦点,同时,RLHF、SFT、IFT、CoT 等一些晦涩的缩写也开始在大众的讨论中崭露头角。那么,这些首字母缩略词到底代表什么含义呢?它们为何如此关键?为了回答这些问题,我们对相关的重要论文进行了深入研究,以便对这些工作有一个全面的了解,并对其未来发展方向进行预测。
在深入探讨基于语言模型的会话代理全貌之前,我们需要先了解这一领域的发展历程。尽管 ChatGPT并不是首创者,但许多组织在 OpenAI 之前就已经推出了自己的语言模型对话代理。这些早期尝试包括 Meta 的 BlenderBot、Google 的 LaMDA、DeepMind 的 Sparrow,以及 Anthropic 的 Assistant。这些助手的发展不仅推动了人工智能技术的进步,还为人们提供了一个更自然、便捷的沟通渠道。
来自:Hugging Face
关注zenRRan
,可以快速了解到最新优质的NLP前沿技术和相关论文~
点击进入——>微信NLP技术交流群
语言模型对话代理产品论文链接:
Meta 的 BlenderBot:
https://arxiv.org/abs/2208.03188
Google 的 LaMDA:
https://arxiv.org/abs/2201.08239
DeepMind 的 Sparrow:
https://arxiv.org/abs/2209.14375
Anthropic 的 Assistant:
https://arxiv.org/abs/2204.05862
其中一些团队还公布了他们构建开源聊天机器人的计划,并公开分享了路线图 (比如 LAION 团队的 Open Assistant),其他团队肯定也有类似的内容,但尚未宣布。你可以在 Open Assistant 的 GitHub 仓库中找到其愿景 & 路线图文档: https://github.com/LAION-AI/Open-Assistant
在以下的表格中,我们对AI聊天机器人的性能进行了比较,主要依据的是其是否具备公开访问的特性、所使用的训练数据、模型的架构以及具体的评估方向。值得注意的是,ChatGPT并未提供上述信息,因此我们选择使用InstructGPT的详细信息来进行替代,这是一种由OpenAI开发的歌单微调模型,被广泛认为是ChatGPT的基石。
LaMDABlenderBot 3SparrowChatGPT / InstructGPTAssistant组织GoogleMetaDeepMindOpenAIAnthropic能否公开访问否能否有限否大小137B175B70B175B52B预训练基础模型未知OPTChinchillaGPT-3.5未知预训练语料库大小 (词数)2.81T180B1.4T未知400B模型是否可以访问网络✔✔✔✖️✖️有监督微调✔✔✔✔✔微调数据大小质量:6.4K安全性:8K真实性:4KIR:49K大小从 18K 到 1.2M 不等的 20 个 NLP 数据集未知12.7K (此为 InstructGPT,ChatGPT 可能更多)150K+ LM 生成的数据RLHF✖️✖️✔✔✔人为制定的安全规则✔✖️✔✖️✔评价标准1、质量 (合情性、具体性、趣味性)2、安全性 (偏见) 3、真实性1、质量 (参与度、知识运用)2、安全性 (毒性、偏见)1、校直 (有帮助,无害,正确)2、证据 (来自网络)3、是否违反规则4、偏见和刻板印象5、诚信度1、 校直 (有帮助、无害、真实)2、偏见1、校直 (有帮助、无害、诚实)2、偏见用于数据标注的众包平台美国供应商亚马逊 MTurk未知Upwork 和 Scale AISurge AI、Amazon MTurk 和 Upwork
在对大量训练数据、模型以及微调过程进行深入观察之后,我们发现尽管各个聊天机器人在具体实施过程中存在诸多不同之处,但在核心目标上却有着惊人的一致性。它们共同追求的目标是「指令依从 (Instruction Following)」,也就是严格遵循用户所输入的指令。举例来说,ChatGPT 就被要求创作一首关于微调的诗歌。
ChatGPT 指令示例
从预测文本到遵循指令
在实际应用中,我们发现基础模型的语言建模目标往往无法满足用户对于模型应具备的高效互动能力的需求。为了克服这一问题,模型创建者引入了“指令微调(Instruction Fine-Tuning,IFT)”策略。此方法不仅运用情感分析、文本分类、摘要等经典的自然语言处理(NLP)任务对模型进行微调,而且还通过展示各种书面指令及其输出,向基础模型学习各种实际应用场景下的书面指令。这样一来,就可以通过对基础模型的不断微调,使其能够更加灵活地响应和完成用户提出的各种任务。具体而言,这些指令示范主要包括三大核心部分:指令、输入和输出。其中,输入并非总是必需的,某些任务仅需指令即可,例如在之前的对话中,我们利用ChatGPT进行了开放式文本生成示例。而当存在输入时,输入和输出便构成了一个完整的“实例”。值得注意的是,针对某个指令,可能会有多个输入和输出实例。例如,在Wang等人(22)的研究中,就给出了一个具体的例子。
指令和实例示例
IFT 的训练数据一般由两部分构成:一部分是人工编写的指令,另一部分是由语言模型自动生成的实例。在生成实例的过程中,首先会利用少样本技术向语言模型提供一些初始样本,以便对其进行引导(如图所示)。接着,会要求语言模型基于这些引导生发出新的指令、输入和输出。在此过程中,每一轮都会从人工编写的样本和模型生成的样本中各自选取一部分提供给模型。这种人类与模型的互动,共同为创建数据集的过程做出了贡献,形成了以下的谱图(如下图所示):
IFT 谱图
在谱图的一侧,我们可以看到纯模型生成的IFT数据集,这些数据集是由Unnatural Instructions (Honovich等,22)等研究团队所创建。相反,另一侧则是经过社区大量努力精心打造的指令,例如Super-natural instructions (Wang等,22)。为了连接这两者,我们需要利用一组高质量种子数据集,通过自举生成最终的数据集,如Self-Instruct (Wang等,22)。除了上述方法之外,我们还可以将现有用于各种任务(包括提示)的高质量众包NLP数据集,通过统一模式或不同的模板转化为指令。这一系列工作涵盖了T0 (Sanh等,22)、Natural instructions数据集 (Mishra等,22)、FLAN LM (Wei等,22)以及OPT-IML (Iyer等,22)等多个研究项目。
论文链接:
Unnatural Instructions (Honovich 等, 22):
https://arxiv.org/abs/2212.09689
Super-natural instructions (Wang 等, 22):
https://arxiv.org/abs/2204.07705
Self-Instruct (Wang 等, 22):
https://arxiv.org/abs/2212.10560
T0 (Sanh 等, 22):
https://arxiv.org/abs/2110.08207
Natural instructions 数据集 (Mishra 等, 22):
https://arxiv.org/abs/2104.08773
FLAN LM (Wei 等, 22):
https://arxiv.org/abs/2109.01652
OPT-IML (Iyer 等, 22):
https://arxiv.org/abs/2212.12017
安全地遵循指令
尽管经过指令微调的 LM 在某些情况下能够生成有帮助和安全的响应,但这并不是 always 如此。有时,它可能会通过提供无用的回应来回避问题,比如“对不起,我不明白。”这样的回应。此外,对于涉及敏感话题的用户输入,LM 也可能会产生不安全的响应。为了解决这个问题,模型开发人员采用了有监督微调(Supervised Fine-tuning,简称 SFT)的方法。他们利用大量高质量的人类标注数据,对基础语言模型进行微调,以提升其有用性和无害性。具体而言,这种方式包括在训练过程中加入人类反馈,以便更好地理解用户需求并生成合适的响应。如 Sparrow 论文的附录 F 所示,以下是这种方法的示例。
SFT 和 IFT 联系非常紧密。指令微调可以看作是有监督微调的一个子集。在最近的文献中,SFT 阶段经常被用于提高响应的安全性,而不是接在 IFT 后面提高指令相应的具体性。将来,这种分类和划分应该日臻成熟,形成更清晰的使用场景和方法论。
人工安全规则
谷歌的 LaMDA 也根据一组规则 (论文附录 A) 在带有安全标注的对话数据集上进行微调。这些规则通常由模型创建者预先定义和开发,涵盖广泛的主题,包括伤害、歧视、错误信息。
微调模型
同时,OpenAI 的 InstructGPT、DeepMind 的 Sparrow 和 Anthropic 的 Constitutional AI 使用 人类反馈强化学习 (Reinforcement Learning From Human Feedback,RLHF) 来微调模型,该方法使用基于人类偏好的标注数据。在 RLHF 中,根据人类反馈来对模型的响应进行排序标注 (如,根据人类偏好选择文本简介)。然后,用这些带标注的响应来训练偏好模型,该模型用于返回 RL 优化器的标量奖励。最后,通过强化学习训练对话代理来模拟偏好模型。有关更多详细信息,请参阅我们之前关于 RLHF 的文章: ChatGPT 背后的“功臣”——RLHF 技术详解。
思维链 (Chain-of-thought,CoT) 提示 (Wei 等,22) 是指令示范的一种特殊情况,它通过引发对话代理的逐步推理来生成输出。使用 CoT 微调的模型使用带有逐步推理的人工标注的指令数据集。这是 Let’s think step by step 这一著名提示的由来。下面的示例取自 Chung 等,22,橙色高亮的部分是指令,粉色是输入和输出,蓝色是 CoT 推理。
CoT 图解
如 Chung 等,22 中所述,使用 CoT 微调的模型在涉及常识、算术和符号推理的任务上表现得更好。
如 Bai 等,22 的工作所示,CoT 微调也显示出对无害性非常有效 (有时比 RLHF 做得更好),而且对敏感提示,模型不会回避并生成 “抱歉,我无法回答这个问题” 这样的回答。更多示例,请参见其论文的附录 D。
CoT 和 RLHF 的对比
论文链接:
思维链提示 (Wei 等, 22):
https://arxiv.org/abs/2201.11903
Let’s think step by step:
https://arxiv.org/abs/2205.11916
CoT 图解示例 (Chung 等, 22):
https://arxiv.org/abs/2210.11416
CoT 微调也显示出对无害性非常有效 (Bai 等, 22):
ttps://http://www.anthropic.com/constitutional.pdf
要点
与预训练数据相比,您只需要非常小的一部分数据来进行指令微调 (几百个数量级);使用人工标注的有监督微调使模型输出更安全和有用;CoT 微调提高了模型在需要逐步思考的任务上的性能,并使它们在敏感话题上不那么回避。
对话代理的进一步工作
这个博客总结了许多关于使对话代理有用的现有工作。但仍有许多悬而未决的问题有待探索。我们在这里列出了其中的一些。
RL 在从人类反馈中学习有多重要?我们能否通过在 IFT 或 SFT 中使用更高质量的数据进行训练来获得 RLHF 的性能?为了安全的角度看,Sparrow 中的 SFT+RLHF 与 LaMDA 中仅使用 SFT 相比如何?鉴于我们有 IFT、SFT、CoT 和 RLHF,预训练有多大的必要性?如何折衷?人们应该使用的最佳基础模型是什么 (公开的和非公开的)?本文中引用的许多模型都经过 红蓝对抗 (red-teaming) 的精心设计,工程师特地搜寻故障模式并基于已被揭示的问题改进后续的训练 (提示和方法)。我们如何系统地记录这些方法的效果并重现它们?
红蓝对抗 (red-teaming) 论文地址:
https://arxiv.org/abs/2209.07858
P.s. 如果您发现本博客中的任何信息缺失或不正确,请告知我们。
引用:
Rajani et al.,”What Makes a Dialog Agent Useful?”, Hugging Face Blog, 2023.
BibTeX 引用:
author = {Rajani, Nazneen and Lambert, Nathan and Sanh, Victor and Wolf, Thomas},
title = {What Makes a Dialog Agent Useful?},
journal = {Hugging Face Blog},
year = {2023},
note = {https://huggingface.co/blog/dialog-agents},
}
❝英文原文:
https://huggingface.co/blog/dialog-agents译者: Matrix Yao (姚伟峰) ,英特尔深度学习工程师,工作方向为 transformer-family 模型在各模态数据上的应用及大规模模型的训练推理。
关注zenRRan,可以快速了解到最新优质的NLP前沿技术和相关论文~
点击进入——>微信NLP技术交流群
历史文章
AAAI2023 | 百度+中科院提出USM:一种信息抽取的大一统方法
COLING2022 | 中科院+北邮提出:具有Event-Argument相关性的事件因果关系提取方法
邱锡鹏提出:DiffusionBERT – 用扩散模型改进生成式掩码语言模型
谷歌提出Flan预训练方法,一个模型解决可所有NLP任务,并发布Flan-T5模型
COLING22 | SelfMix:针对带噪数据集的半监督学习方法
近200篇文章汇总而成的机器翻译非自回归生成最新综述,揭示其挑战和未来研究方向
一种全新易用的基于Word-Word关系的NER统一模型,刷新了14种数据集并达到新SoTA
NAACL2021 | 陈丹琦又打破常规,最近流行的实体识别和关系抽取要回到最初状态?
清华刘知远联合新加坡国立大学提出CPT:基于预训练视觉-语言模型的跨模态Prompt-Tuning
让人深思:句法真的重要吗?邱锡鹏组提出一种基于Aspect的情感分析的强大基线
复旦邱锡鹏Lab提出:一个统一的面向基于Aspect的所有情感分析子任务的生成式方法
清华提出:用于细粒度实体分类的Prompt-Learning,并提出可训练Prompt模板
ACL2021 | 一种巧妙解决NER覆盖和不连续问题的方法
NAACL2021 | 苏大&阿里提出:一种统一的基于跨度的意见挖掘方法
近期,ChatGPT 问世并取得巨大成功,导致 RLHF、SFT、IFT、CoT 等缩写成为大众关注的焦点。这些缩写究竟代表什么含义?为何它们如此重要?本文调查了相关论文,梳理了至今的工作成果,并展望未来发展方向。首先,探讨基于语言模型的会话代理全景。虽然 ChatGPT 并非首创,但很多组织在 OpenAI 之前就已经发布了自己的语言模型对话代理。接下来,对比了四个知名的语言模型对话代理产品:Meta 的 BlenderBot、Google 的 LaMDA、DeepMind 的 Sparrow 和 Anthropic 的 Assistant。最后,分析了这些 AI 聊天机器人在训练数据、模型架构和评估方向上的差异,以及指令微调(IFT)和有监督微调(SFT)的应用情况。
AI时代,拥有个人微信机器人AI助手!AI时代不落人后!
免费ChatGPT问答,办公、写作、生活好得力助手!
搜索微信号aigc666aigc999或上边扫码,即可拥有个人AI助手!