大语言模型的拐杖——RLHF
在《大语言模型的演进》一文中提到，在2022年OpenAI发表了论文“Training language models to follow instructions with human feedback”（结合人类反馈信息来训练语言模型使其能理解指令），其中就引出了大型语言模型（LLM) 生成领域的新训练范式，即RLHF (Reinforcement Learning from Human Feedback 基于人类反馈的强化学习方式）。在此之前，传统的语言模型通常只能生成符合语法规则的句子，但往往无法理解用户意图，导致生成的输出与用户期望不符。为了解决这个问题，所以希望引入一种使用人类反馈微调语言模型的方法，以更好地对齐用户意图。通过使用人类反馈来微调模型，使其能够更好地遵循各种书面指令，并生成更准确、更有逻辑连贯性和可读性的输出。但是长期以来出于工程和算法原因，人们认为用强化学习训练LLM是不可能的，因为微调整个 10B～100B+ 参数的成本过高。本质上，RLHF技术使用了一种交互式学习方法，当模型生成一条文本时，它会请求用户对其进行评估，例如问用户是否觉得该文本合理、准确、有意义等等。通过分析用户的反馈，模型可以确定哪些方面需要改进，并尝试生成更高质量的文本。01 技术原理论文中描述了早期研究的大致过程：RLFH背后的原理是，基于大语言模型（LLM）上来生成训练奖励模型 (RM，也叫偏好模型) 的数据，RM 的训练是 RLHF 区别于旧范式的，这一模型接收一系列文本并返回一个标量奖励，数值上对应人的偏好。关于模型选择，RM 可以是另一个经过微调的LLM，也可以是根据偏好数据从头开始训练的LLM。因为前者被认为对样本数据的利用率更高。关于训练文本，RM指令对文本是从预定义数据集中采样生成的，并用初始的LLM 给这些提示生成文本。关于训练奖励数值，需人工对LLM 生成的回答进行排名，通过排名可以比较多个模型的输出并构建更好的规范数据集。最后利用 RM 输出的奖励，用强化学习方式微调优化LLM。RLHF 可以通过迭代RM和策略共同优化，这样引入策略和 RM 演变的复杂动态，代表了一个复杂和开放的研究问题。02 关于AI幻觉的问题前一段时间，OpenAI 的联合创始人、首席科学家Ilya Sutskever接受了前纽约时报的总编辑Craig Smith采访，大篇幅的谈到了他对RLFH的看法。其中也回应了在《ChatGPT面临的主要问题及解决思路》一文中谈到的Yann LeCun对于ChatGPT的看法，“计算机需要通过观察来学习以获得这种非语言知识，GPT这种语言模型的聪明程度和准确性是有限度的，因为他们没有现实世界的经验，而这实际上是语言的潜在现实”，意思是“只通过语言解决了不了现实世界的问题”。Ilya是如此回答的：虽然Yann的想法可能与当前范式存在着一些的差异，但在我看来，它们并不是非常重要的。Yann的第一个观点是系统最好具有多模态理解（multimodal understanding），而不仅仅从大语言中了解世界，这点Ilya是认可的，因为可以更多地了解世界，了解人，了解他们的状况，因此系统将能更好地理解它所要解决的任务，以及人和人更想要的东西。OpenAI也是为此搭建了的两个主要神经网络，一个是Clip，另一个是Dall-E，都朝着这个多模态的方向发展。但Ilya也认为，多模态并不是必须的，就好像如果一个人没有视觉，或者不能从视觉或视频中理解世界，那么系统就不能运转了么。他认为有些东西从图像和图表中学习起来要容易得多，但是我要说你依然可以只通过文本学习它们，只是学习的速度会更慢**。**例如关于“颜色”这个概念，语言模型知道紫色比红色更接近蓝色，知道红色比紫色更接近橙色，只是从文本中就可以知道。如果你拥有视觉，颜色之间的区别就会立即引起你的注意，能立即感知到它们。然而在文本中，这需要你花更长的时间，也许你知道如何说话，并且已经理解了句法和单词以及语法，只有在很久之后你才会真正开始理解颜色。因此，Ilya关于多模态是否必要的观点是多模态不是必要的，但肯定是有用的，但没必要一定二者选其一。关于如何解决AI幻觉的问题。Ilya有信心在两年后可以解决这些问题。但他也认为这些模型只是学习统计规律，并不真正知道世界的本质。Ilya认为**学习统计规律比看到表象要重要得多。**随着生成模型变得非常出色，Ilya认为它们将具有对世界惊人的理解程度，这是通过文字（text）视角看到的世界，试图通过人们在互联网上表达的文字将世界投影到文字的空间中，以了解关于世界的信息。为什么产生AI幻觉（Hallucinations，特指人工智能给出的“事实性错误”），是因为语言模型很擅长学习世界，但它们不太擅长输出好的结果。为什么语言模型在学习世界，学习概念、人和已知过程的惊人能力要强得多，但输出的结果却并不如人们所希望的那样好，或者说不如它们本应该可以的那样好。这也就是为什么，对于像ChatGPT这样的一种语言模型，需要额外的强化学习训练RLHF过程。在从人类反馈的强化学习中，我们关心输出的结果。每当输出结果不合适时，就告诉它不要再这样做了。大语言模型很快就通过学习产生了良好的输出结果。因此，Ilya认为RLHF的这种方法非常有可能解决AI幻觉的问题。03 局限性和未来发展这些模型虽然更好，但仍然可以在没有任何不确定性的情况下输出有害或事实不准确的文本。这种缺陷代表了RLHF的长期挑战和动机——在固有的人类问题领域中运行意味着永远不会有明确的最终界限来跨越模型，从而将其标记为完整。当使用RLHF部署系统时，由于训练循环之外的其他人类工作者的直接集成，收集人类偏好数据是非常昂贵的。RLHF的性能与人工标注的质量一样好，生成写得很好的人工文本来回答特定的提示是非常昂贵的，因为这通常需要雇佣兼职员工（而不是依靠产品用户或众包）。RLHF数据的另一个挑战是，人类标注者往往会持不同意见，在没有基本事实的情况下，给训练数据增加了巨大的潜在方差。微调LLM策略的反馈部分的一个巨大成本是，需要在奖励模型上评估策略中生成的每一段文本（因为它的作用类似于标准RL框架中环境的一部分），为了避免大型模型的这些昂贵的前向传递，可以使用离线RL作为策略优化器。04 工具支撑2019年，TensorFlow中的OpenAI发布了第一个在LMs上执行RLHF的代码。TRL旨在通过PPO微调Hugging Face生态系统中预训练的LMs。TRLX是CarperAI构建的TRL的扩展分支，用于处理在线和离线训练的大型模型。目前，TRLX有一个API，能够在LLM部署所需的规模（例如330亿个参数）下，通过PPO和隐式语言Q-Learning ILQL进行生产上线RLHF。TRLX的未来版本将允许高达200B参数的语言模型。因此，与TRLX的接口针对具有这种规模经验的机器学习工程师进行了优化。RL4LM通过各种RL算法（PPO、NLPO、A2C和TRPO）、奖励函数和指标为LLM的微调和评估提供了构建块。此外，该库易于定制，允许基于任何任意用户指定的奖励函数来训练任何编码器-解码器或基于encoder transformer 的LM。值得注意的是，在最近的工作中，它在一系列任务上得到了很好的测试和基准测试，总计2000个实验，突出了数据预算比较（专家演示与奖励建模）、处理奖励黑客攻击和训练不稳定性等方面的一些实际见解。RL4LM当前的计划包括更大模型和新RL算法的分布式训练。参考《ChatGPT背后的技术之理解人类反馈强化学习（RLHF）》