论文 · arXiv 2203.02155
使用人类反馈训练语言模型以遵循指令
Training language models to follow instructions with human feedback
三句话总结
- 单纯针对下个Token预测训练的大型语言模型往往无法遵循用户意图,生成有毒、不真实或无帮助的回答。
- 使用人类监督示范微调GPT-3,在排序输出上训练6B奖励模型,并通过带有预训练数据混合的PPO优化策略。
- 1.3B InstructGPT的输出表现优于175B GPT-3,同时175B InstructGPT对175B GPT-3的胜率达85%,并将幻觉率从41%降至21%。
摘要
仅仅增大语言模型的规模并不能本质上提高它们遵循用户意图的能力。例如,大型语言模型可能会生成不真实的、有毒的或对用户毫无帮助的输出。换句话说,这些模型并未与用户对齐。在本文中,我们展示了一种通过人类反馈微调来使语言模型在广泛任务上与用户意图保持对齐的方法。我们从标注员编写的提示以及通过OpenAI API提交的提示集出发,收集了标注员示范期望模型行为的数据集,并用其通过监督学习对GPT-3进行微调。随后,我们收集了模型输出排序的数据集,并利用人类反馈强化学习进一步微调该监督模型。我们把最终生成的模型称为InstructGPT。在基于我们提示分布的人类评估中,尽管参数量少100倍,1.3B参数的InstructGPT模型生成的输出依然优于175B的GPT-3。此外,InstructGPT模型在真实性方面表现出提升,在有毒输出生成方面有所减少,同时在公开NLP数据集上的性能回退极小。尽管InstructGPT仍会出现简单错误,但我们的研究结果表明,利用人类反馈进行微调是使语言模型与人类意图对齐的一个极具前景的方向。
英文原文摘要
Making language models bigger does not inherently make them better at following a user's intent. For example, large language models can generate outputs that are untruthful, toxic, or simply not helpful to the user. In other words, these models are not aligned with their users. In this paper, we show an avenue for aligning language models with user intent on a wide range of tasks by fine-tuning with human feedback. Starting with a set of labeler-written prompts and prompts submitted through the OpenAI API, we collect a dataset of labeler demonstrations of the desired model behavior, which we use to fine-tune GPT-3 using supervised learning. We then collect a dataset of rankings of model outputs, which we use to further fine-tune this supervised model using reinforcement learning from human feedback. We call the resulting models InstructGPT. In human evaluations on our prompt distribution, outputs from the 1.3B parameter InstructGPT model are preferred to outputs from the 175B GPT-3, despite having 100x fewer parameters. Moreover, InstructGPT models show improvements in truthfulness and reductions in toxic output generation while having minimal performance regressions on public NLP datasets. Even though InstructGPT still makes simple mistakes, our results show that fine-tuning with human feedback is a promising direction for aligning language models with human intent.
论文解读
问题与动机
标准的大型语言模型(LLM)针对网络语料库优化下个Token预测(next-token prediction)。这一预训练目标与用户希望助手以有用、真实且无害的方式遵循指令的目标并不一致。因此,像GPT-3这样的基线模型经常会产生事实幻觉、编造虚假上下文、输出带有毒性的文本或忽视明确的用户约束。单纯扩增模型参数量并不能消除这些问题。
核心思想
- 基于人类反馈强化学习(RLHF)的对齐: 利用人类评分来塑造模型输出,使其贴合用户意图,而非单纯追求原始续写概率。
- 三阶段训练流程: (1) 在提示-示范(prompt-demonstration)对上进行监督微调(SFT),(2) 在排序生成的成对比较数据上训练奖励模型(Reward Model, RM),以及 (3) 使用近端策略优化(PPO)进行策略优化。
- 缓解对齐税(Alignment Tax): 标准的PPO微调会导致模型在标准NLP基准测试(例如 SQuADv2、DROP)上性能下降。在PPO更新中混合预训练分布梯度(
PPO-ptx),可以在不牺牲人类偏好收益的情况下,缓解这些能力的损失。
方法(含核心公式)
- 监督微调(SFT): 在由标注员编写并通过OpenAI API Playground提交的大约1.3万条提示示范上微调基础GPT-3模型。
- 奖励模型训练: 针对每个提示 ,标注员对 个生成结果进行排序(),生成 个比较对。6B奖励模型 在一个批次元素内的所有成对数据上使用成对交叉熵损失进行训练: 其中 是相比 更受偏好的生成结果。
- 强化学习策略优化(PPO-ptx): 针对标量奖励优化策略 ,同时通过Token级别的KL散度惩罚其偏离SFT模型的程度,并可选择性地保留预训练对数似然: 此处 为KL惩罚系数, 控制预训练梯度的混合比例。
结果(含核心数据)
- 人类偏好: 标注员更青睐1.3B InstructGPT模型的输出,胜过175B基础GPT-3(参数量相差100倍)。175B InstructGPT的输出在 的情况下优于175B GPT-3,且在 的情况下优于few-shot提示的175B GPT-3。
- 真实性与幻觉: 在TruthfulQA上,InstructGPT生成真实且信息丰富输出的频率大约是GPT-3的两倍。在闭域API任务中,幻觉率从41%(GPT-3)降至21%(InstructGPT)。
- 毒性: 在RealToxicityPrompts上,当提示要求保持尊重时,InstructGPT产生的有毒输出比GPT-3少约25%。
- 泛化能力: InstructGPT能够可靠地泛化至留出标注员( 的一致性)以及分布外指令,例如代码问答/摘要和非英语指令,尽管训练数据中英语占比超过96%。
局限性与开放问题
- 安全性与对齐的权衡: InstructGPT在训练期间主要优先考虑对用户指令的遵循;如果提示带有恶意或偏见,它也会有效地遵循该指令。
- 简单错误: 模型仍会出现幻觉,可能因认识谦逊(epistemic humility)条件的调整而过度推诿,并在面对错误前提或复杂的多重约束时表现不佳。
- 代表性: 微调依赖于外包人员的反馈(约40名雇用的标注员)和API Playground客户查询,这无法完全覆盖广泛终端用户的多样性。
关键术语
- RLHF(基于人类反馈的强化学习)
- Reinforcement Learning from Human Feedback;一种利用人类偏好训练奖励模型并通过强化学习微调策略的方法。
- InstructGPT
- 通过监督示范和RLHF微调以遵循自然语言指令的GPT-3模型家族。
- Alignment tax(对齐税)
- 在将语言模型与人类偏好对齐时,在标准NLP基准测试(如DROP或SQuAD)上观察到的性能下降。
- PPO-ptx
- 一种PPO变体,将预训练数据的梯度混合到强化学习微调目标中,以保留基准测试能力。
- Reward Model (RM)(奖励模型)
- 一种训练用于为“提示-生成结果”对分配标量分数的模型,用以预测人类相比于其他备选生成结果的偏好。
- Supervised fine-tuning (SFT)(监督微调)
- 对齐流程的第一步,在此步骤中,基础语言模型在人类编写的提示-示范对上进行微调。
- Hallucination(幻觉)
- 语言模型在摘要或问答等闭域任务中凭空捏造无事实根据或虚构的信息。
常见问题
为什么1.3B的InstructGPT在人类评分中优于175B的GPT-3?
基础GPT-3优化的是预测未过滤网络文本中的下一个Token,往往会忽略指令或重复上下文。InstructGPT则显式地基于人类偏好信号进行优化,以产生有用且直接的回答,弥合了原始参数能力与任务意图之间的鸿沟。
该论文如何解决对齐税问题?
通过在PPO训练目标中引入预训练更新项(PPO-ptx),将预训练梯度乘以系数 。这在不影响人类偏好胜率的前提下,防止了在SQuAD和DROP等公开数据集上的性能回退。
奖励模型是如何在排序输出上进行训练的?
标注员对每个提示的 个生成结果( 介于4到9之间)进行排序。6B奖励模型在单个批次元素内同时对所有 个成对样本进行训练,减少了前向传播次数并防止了过拟合。
InstructGPT是否减少了人口统计学偏见?
没有。在Winogender和CrowS-Pairs上的评测表明,InstructGPT相比基础GPT-3并未展现出显著的偏见减少,并且尊重性的提示有时会降低熵(从而增加了测得的偏见)。
本页解读由 AI 根据论文生成,可能有错误;细节请以原文为准。