近段时间,ChatGPT 横空出世并取得巨大成功,使得 RLHF、SFT、IFT、CoT 等这些不流畅的缩写开始出现在普罗群众的评论中。这些不流畅的首字母缩略词究竟是什么意思?为什么它们如此重要?咱们调查了相关的一切重要论文,以对这些作业进行分类,总结迄今为止的作业,并对后续作业进行展望。
咱们先来看看依据言语模型的会话署理的全景。ChatGPT 并非首创,事实上许多安排在 OpenAI 之前就发布了自己的言语模型对话署理 (dialog agents),包含 Meta 的 BlenderBot,Google 的 LaMDA,DeepMind 的 Sparrow,以及 Anthropic 的 Assistant (Anthropic 的 Claude 便是部分依据 Assistant 继续开发而得的)。
其间一些团队还公布了他们构建开源谈天机器人的方案,并揭露分享了路线图 (比如 LAION 团队的 Open Assistant),其他团队必定也有类似的内容,但尚未宣告。
下表依据是否能揭露拜访、练习数据、模型架构和评价方向的详细信息对这些 AI 谈天机器人进行了比较。 ChatGPT 没有这些信息的记载,因而咱们改为运用 InstructGPT 的详细信息,这是一个来自 OpenAI 的指令微调模型,据信它是 ChatGPT 的根底。
LaMDA | BlenderBot 3 | Sparrow | ChatGPT / InstructGPT | Assistant | |
---|---|---|---|---|---|
安排 | Meta | DeepMind | OpenAI | Anthropic | |
能否揭露拜访 | 否 | 能 | 否 | 有限 | 否 |
巨细 | 137B | 175B | 70B | 175B | 52B |
预练习 根底模型 |
不知道 | OPT | Chinchilla | GPT-3.5 | 不知道 |
预练习语料库巨细 (词数) | 2.81T | 180B | 1.4T | 不知道 | 400B |
模型是否能够 拜访网络 |
✔ | ✔ | ✔ | ✖️ | ✖️ |
有监督 微调 |
✔ | ✔ | ✔ | ✔ | ✔ |
微调 数据巨细 |
质量:6.4K 安全性:8K 实在性:4K IR: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 AI | Surge AI、Amazon MTurk 和 Upwork |
咱们观察到,虽然在练习数据、模型和微调方面存在许多差异,但也存在一些共性。上述一切谈天机器人的一个共同目标是「指令依从 (instruction following)」,即遵从用户指定的指令。例如,要求 ChatGPT 写一首关于微调的诗。
从猜测文本到遵从指令
通常,根底模型的言语建模目标不足以让模型学会以有用的办法遵从用户的指令。模型创立者运用「指令微调 (Instruction Fine-Tuning,IFT)」办法来到达该目的,该办法除了运用情感分析、文本分类、摘要等经典 NLP 使命来微调模型外,还在十分多样化的使命集上向根底模型演示各种书面指令及其输出,然后完成对根底模型的微调。这些指令演示由三个首要部分组成 —— 指令、输入和输出。输入是可选的,一些使命只需要指令,如上文运用 ChatGPT 做开放式文本生成的示例。当存在输入时,输入和输出组成一个「实例 (instance)」。给定指令能够有多个输入和输出实例。如下例 (摘自 Wang 等,’22):
IFT 的练习数据通常是人工编写的指令及用言语模型自举 (bootstrap) 生成的实例的调集。在自举时,先运用少样本技能输入一些样本给 LM 用于提示它 (如上图所示),随后要求 LM 生成新的指令、输入和输出。每一轮都会从人工编写的样本和模型生成的样本中各挑选一些送给模型。人类和模型对创立数据集的奉献构成了一个谱图,见下图:
谱图的一端是纯模型生成的 IFT 数据集,例如 Unnatural Instructions (Honovich 等,’22);另一端是经由社区的很多努力精心制作的指令如 Super-natural instructions (Wang 等,’22)。在这两者之间的作业是运用一小组高质量的种子数据集,然后进行自举生成最终数据集,如 Self-Instruct (Wang 等,’22)。为 IFT 收拾数据集的另一种办法是将现有的用于各种使命 (包含提示)的高质量众包 NLP 数据集运用统一模式或不同模板转换为指令。这一系列作业包含 T0 (Sanh 等,’22)、Natural instructions 数据集 (Mishra 等,’22)、FLAN LM (Wei 等,’22) 和 OPT-IML (Iyer 等,’22)。
安全地遵从指令
然而,经过指令微调的 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 推理。
如 Chung 等,’22 中所述,运用 CoT 微调的模型在触及知识、算术和符号推理的使命上表现得更好。
如 Bai 等,’22 的作业所示,CoT 微调也显示出对无害性十分有效 (有时比 RLHF 做得更好),并且对灵敏提示,模型不会逃避并生成 “抱愧,我无法答复这个问题” 这样的答复。更多示例,请参见其论文的附录 D。
关键
- 与预练习数据比较,您只需要十分小的一部分数据来进行指令微调 (几百个数量级);
- 运用人工标示的有监督微调使模型输出更安全和有用;
- CoT 微调进步了模型在需要逐渐思考的使命上的功能,并使它们在灵敏话题上不那么逃避。
对话署理的进一步作业
这个博客总结了许多关于使对话署理有用的现有作业。但仍有许多悬而未决的问题有待探究。咱们在这里列出了其间的一些。
- RL 在从人类反应中学习有多重要?咱们能否经过在 IFT 或 SFT 中运用更高质量的数据进行练习来取得 RLHF 的功能?
- 为了安全的角度看,Sparrow 中的 SFT+RLHF 与 LaMDA 中仅运用 SFT 比较怎么?
- 鉴于咱们有 IFT、SFT、CoT 和 RLHF,预练习有多大的必要性?怎么折衷?人们应该运用的最佳根底模型是什么 (揭露的和非揭露的)?
- 本文中引证的许多模型都经过 红蓝对抗 (red-teaming) 的精心设计,工程师特别搜寻故障模式并依据已被揭示的问题改进后续的练习 (提示和办法)。咱们怎么系统地记载这些办法的作用并重现它们?
P.s. 如果您发现本博客中的任何信息缺失或不正确,请告知咱们。
引证
Rajani et al.,"What Makes a Dialog Agent Useful?", Hugging Face Blog, 2023.
BibTeX 引证:
@article {rajani2023ift,
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},
}
英文原文: huggingface.co/blog/dialog…
译者: Matrix Yao (姚伟峰),英特尔深度学习工程师,作业方向为 transformer-family 模型在各模态数据上的使用及大规模模型的练习推理。