关于人工智能:ChatGPT-背后的功臣RLHF-技术详解

59次阅读

共计 5670 个字符,预计需要花费 15 分钟才能阅读完成。

OpenAI 推出的 ChatGPT 对话模型掀起了新的 AI 热潮,它面对多种多样的问题对答如流,仿佛曾经突破了机器和人的边界。这一工作的背地是大型语言模型 (Large Language Model,LLM) 生成畛域的新训练范式:RLHF (Reinforcement Learning from Human Feedback),即以强化学习形式根据人类反馈优化语言模型。

过来几年里各种 LLM 依据人类输出提醒 (prompt) 生成多样化文本的能力令人印象粗浅。然而,对生成后果的评估是主观和依赖上下文的,例如,咱们心愿模型生成一个有创意的故事、一段实在的信息性文本,或者是可执行的代码片段,这些后果难以用现有的基于规定的文本生成指标 (如 BLUE 和 ROUGE) 来掂量。除了评估指标,现有的模型通常以预测下一个单词的形式和简略的损失函数 (如穿插熵) 来建模,没有显式地引入人的偏好和主观意见。

如果咱们 用生成文本的人工反馈作为性能衡量标准,或者更进一步用该反馈作为损失来优化模型 ,那不是更好吗?这就是 RLHF 的思维:应用强化学习的形式间接优化带有人类反馈的语言模型。RLHF 使得在个别文本数据语料库上训练的语言模型能和简单的人类价值观对齐。

看看 ChatGPT 是如何解释 RLHF 的:

ChatGPT 解释的很好,但还没有齐全讲透;让咱们更具体一点吧!

RLHF 技术合成

RLHF 是一项波及多个模型和不同训练阶段的简单概念,这里咱们按三个步骤合成:

  1. 预训练一个语言模型 (LM);
  2. 聚合问答数据并训练一个处分模型 (Reward Model,RM);
  3. 用强化学习 (RL) 形式微调 LM。

Step 1. 预训练语言模型

首先,咱们应用经典的预训练指标训练一个语言模型。对这一步的模型,OpenAI 在其第一个风行的 RLHF 模型 InstructGPT 中应用了较小版本的 GPT-3; Anthropic 应用了 1000 万 ~ 520 亿参数的 Transformer 模型进行训练;DeepMind 应用了自家的 2800 亿参数模型 Gopher。

这里能够用额定的文本或者条件对这个 LM 进行微调,例如 OpenAI 对“更可取”(preferable) 的人工生成文本进行了微调,而 Anthropic 按“有用、诚恳和有害”的规范在上下文线索上蒸馏了原始的 LM。这里或者应用了低廉的加强数据,但并不是 RLHF 必须的一步。因为 RLHF 还是一个尚待摸索的畛域,对于”哪种模型”适宜作为 RLHF 的终点并没有明确的答案。

接下来,咱们会基于 LM 来生成训练处分模型 (RM,也叫偏好模型) 的数据,并在这一步引入人类的偏好信息。

Step 2. 训练处分模型

RM 的训练是 RLHF 区别于旧范式的开始。这一模型接管一系列文本并返回一个标量处分,数值上对应人的偏好。咱们能够用端到端的形式用 LM 建模,或者用模块化的零碎建模 (比方对输入进行排名,再将排名转换为处分)。这一处分数值将对后续无缝接入现有的 RL 算法至关重要。

对于模型抉择方面,RM 能够是另一个通过微调的 LM,也能够是依据偏好数据从头开始训练的 LM。例如 Anthropic 提出了一种非凡的预训练形式,即用偏好模型预训练 (Preference Model Pretraining,PMP) 来替换个别预训练后的微调过程。因为前者被认为对样本数据的利用率更高。但对于哪种 RM 更好尚无定论。

对于训练文本方面,RM 的提醒 – 生成对文本是从预定义数据集中采样生成的,并用初始的 LM 给这些提醒生成文本。Anthropic 的数据次要是通过 Amazon Mechanical Turk 上的聊天工具生成的,并在 Hub 上可用 (https://huggingface.co/datasets/Anthropic/hh-rlhf),而 OpenAI 应用了用户提交给 GPT API 的 prompt。

对于训练处分数值方面,这里须要人工对 LM 生成的答复进行排名。起初咱们可能会认为应该间接对文本标注分数来训练 RM,然而因为标注者的价值观不同导致这些分数未通过校准并且充斥乐音。通过排名能够比拟多个模型的输入并构建更好的标准数据集。

对具体的排名形式,一种胜利的形式是对不同 LM 在雷同提醒下的输入进行比拟,而后应用 Elo 零碎建设一个残缺的排名。这些不同的排名后果将被归一化为用于训练的标量处分值。

这个过程中一个乏味的产物是目前胜利的 RLHF 零碎应用了和生成模型具备 不同 大小的 LM (例如 OpenAI 应用了 175B 的 LM 和 6B 的 RM,Anthropic 应用的 LM 和 RM 从 10B 到 52B 大小不等,DeepMind 应用了 70B 的 Chinchilla 模型别离作为 LM 和 RM)。一种直觉是,偏好模型和生成模型须要具备相似的能力来了解提供给它们的文本。

接下来是最初一步:利用 RM 输入的处分,用强化学习形式微调优化 LM。

Step 3. 用强化学习微调

长期以来出于工程和算法起因,人们认为用强化学习训练 LM 是不可能的。而目前多个组织找到的可行计划是应用策略梯度强化学习 (Policy Gradient RL) 算法、近端策略优化 (Proximal Policy Optimization,PPO) 微调初始 LM 的局部或全副参数。因为微调整个 10B~100B+ 参数的老本过高 (相干工作参考低秩适应 LoRA 和 DeepMind 的 Sparrow LM)。PPO 算法曾经存在了绝对较长的工夫,有大量对于其原理的指南,因此成为 RLHF 中的无利抉择。

事实证明,RLHF 的许多外围 RL 提高始终在弄清楚如何将相熟的 RL 算法利用到更新如此大的模型。

让咱们首先将微调工作表述为 RL 问题。首先,该策略 (policy) 是一个承受提醒并返回一系列文本 (或文本的概率分布) 的 LM。这个策略的口头空间 (action space) 是 LM 的词表对应的所有词元 (个别在 50k 数量级),察看空间 (observation space) 是可能的输出词元序列,也比拟大 (词汇量 ^ 输出标记的数量)。处分函数是偏好模型和策略转变束缚 (Policy shift constraint) 的联合。

PPO 算法确定的处分函数具体计算如下:将提醒 输出初始 LM 和以后微调的 LM,别离失去了输入文本,将来自以后策略的文本传递给 RM 失去一个标量的处分。将两个模型的生成文本进行比拟计算差别的惩办项,在来自 OpenAI、Anthropic 和 DeepMind 的多篇论文中设计为输入词散布序列之间的 Kullback–Leibler (KL) 散度的缩放,即。这一项被用于惩办 RL 策略在每个训练批次中生成大幅偏离初始模型,以确保模型输入正当连贯的文本。如果去掉这一惩办项可能导致模型在优化中生成乱码文原本愚弄处分模型提供高处分值。此外,OpenAI 在 InstructGPT 上试验了在 PPO 增加新的预训练梯度,能够预见到处分函数的公式会随着 RLHF 钻研的停顿而持续进化。

最初依据 PPO 算法,咱们按以后批次数据的处分指标进行优化 (来自 PPO 算法 on-policy 的个性)。PPO 算法是一种信赖域优化 (Trust Region Optimization,TRO) 算法,它应用梯度束缚确保更新步骤不会毁坏学习过程的稳定性。DeepMind 对 Gopher 应用了相似的处分设置,然而应用 A2C (synchronous advantage actor-critic) 算法来优化梯度。

作为一个可选项,RLHF 能够通过迭代 RM 和策略独特优化。随着策略模型更新,用户能够持续将输入和晚期的输入进行合并排名。Anthropic 在他们的论文中探讨了迭代在线 RLHF,其中策略的迭代蕴含在跨模型的 Elo 排名零碎中。这样引入策略和 RM 演变的简单动静,代表了一个简单和凋谢的钻研问题。


RLHF 的将来

只管 RLHF 获得了肯定的成绩和关注,但仍然存在局限。这些模型仍然会毫无不确定性地输入无害或者不实在的文本。这种不完满也是 RLHF 的长期挑战和能源 —— 在人类的固有畛域中运行意味着永远不会达到一个完满的规范。

收集人类偏好数据的品质和数量决定了 RLHF 零碎性能的下限。RLHF 零碎须要两种人类偏好数据:人工生成的文本和对模型输入的偏好标签。生成高质量答复须要雇佣兼职人员 (而不能依赖产品用户和众包)。另一方面,训练 RM 须要的处分标签规模大略是 50k 左右,所以并不那么低廉 (当然远超了学术实验室的估算)。目前相干的数据集只有一个基于通用 LM 的 RLHF 数据集 (来自 Anthropic) 和几个较小的子工作数据集 (如来自 OpenAI 的摘要数据集)。另一个挑战来自标注者的偏见。几个人类标注者可能有不同意见,导致了训练数据存在一些潜在差别。

除开数据方面的限度,一些有待开发的设计选项能够让 RLHF 获得长足进步。例如对 RL 优化器的改良方面,PPO 是一种较旧的算法,但目前没有什么结构性起因让其余算法能够在现有 RLHF 工作中更具备劣势。另外,微调 LM 策略的一大老本是策略生成的文本都须要在 RM 上进行评估,通过离线 RL 优化策略能够节约这些大模型 RM 的预测老本。最近,呈现了新的 RL 算法如隐式语言 Q 学习 (Implicit Language Q-Learning,ILQL) 也实用于以后 RL 的优化。在 RL 训练过程的其余外围衡量,例如摸索和开发 (exploration-exploitation) 的均衡也有待尝试和记录。摸索这些方向至多能加深咱们对 RLHF 的了解,更进一步晋升零碎的体现。


参考资料

首先介绍一些相干的开源工作:

对于 RLHF 的第一个我的项目,来自 OpenAI: https://github.com/openai/lm-human-preferencesy

一些 PyTorch 的 repo:

  • https://github.com/lvwerra/trl
  • https://github.com/CarperAI/trlx
  • https://github.com/allenai/RL4LMs

此外,Huggingface Hub 上有一个由 Anthropic 创立的大型数据集:
https://huggingface.co/datase…

相干论文包含在现有 LM 前的 RLHF 停顿和基于以后 LM 的 RLHF 工作:

  • TAMER: Training an Agent Manually via Evaluative Reinforcement (Knox and Stone 2008)
  • Interactive Learning from Policy-Dependent Human Feedback (MacGlashan et al. 2017)
  • Deep Reinforcement Learning from Human Preferences (Christiano et al. 2017)
  • Deep TAMER: Interactive Agent Shaping in High-Dimensional State Spaces (Warnell et al. 2018)
  • Fine-Tuning Language Models from Human Preferences (Zieglar et al. 2019)
  • Learning to summarize with human feedback (Stiennon et al., 2020)
  • Recursively Summarizing Books with Human Feedback (OpenAI Alignment Team 2021)
  • WebGPT: Browser-assisted question-answering with human feedback (OpenAI, 2021)
  • InstructGPT: Training language models to follow instructions with human feedback (OpenAI Alignment Team 2022)
  • GopherCite: Teaching language models to support answers with verified quotes (Menick et al. 2022)
  • Sparrow: Improving alignment of dialogue agents via targeted human judgements (Glaese et al. 2022)
  • ChatGPT: Optimizing Language Models for Dialogue (OpenAI 2022)
  • Scaling Laws for Reward Model Overoptimization (Gao et al. 2022)
  • Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback (Anthropic, 2022)
  • Red Teaming Language Models to Reduce Harms: Methods, Scaling Behaviors, and Lessons Learned (Ganguli et al. 2022)
  • Dynamic Planning in Open-Ended Dialogue using Reinforcement Learning (Cohen at al. 2022)
  • Is Reinforcement Learning (Not) for Natural Language Processing?: Benchmarks, Baselines, and Building Blocks for Natural Language Policy Optimization (Ramamurthy and Ammanabrolu et al. 2022)

本文翻译自 Hugging Face 官网博客 (https://huggingface.co/blog/rlhf)
参考资料局部链接请点击原文博客查看。你也能够查看咱们的直播流动回放理解更多: RLHF: From Zero to ChatGPT

本文译者:

李泺秋,浙江大学计算机科学硕士,次要钻研 NLP 畛域。

咱们正在招募更多翻译志愿者帮忙咱们裁减官网公众号内容,如果你感兴趣,欢送 点击这里 填写志愿者招募表单。谢谢!

正文完
 0