LLM在技术上取得了突破,但它们在实际应用中的表现仍然受限于训练数据的质量和多样性。为了使LLMs更符合人类的偏好和需求,研究者们采用了多种方法来微调这些模型,其中包括基于人类反馈的强化学习(RLHF)和直接策略优化(DPO)。本文将探讨这两种方法的基本原理,并分析它们如何帮助我们根据人类的偏好来微调LLMs

大型语言模型(LLMs)的发展历程

在2020年,OpenAI发布了GPT-3,这是一个能够通过观察几个例子来执行任意NLP任务的大型语言模型。GPT-3的革命性在于,它不需要复杂的编程或定制化的训练,只需要通过编写巧妙的输入(即提示)就能让模型执行期望的任务。然而,GPT-3在实际应用中的表现并不完美,它生成的内容可能对用户没有价值,或者包含有毒和冒犯性的内容。因此,需要进一步的训练来将GPT-3转变为更符合人类偏好的模型,如ChatGPT和InstructGPT。

基于人类反馈的强化学习(RLHF)

强化学习(RL)是一种让模型通过试错来学习的方法。在RLHF中,模型的预测会根据训练过程中的奖励进行更新。与实时训练中人类直接为模型输出分配奖励不同,RLHF通过训练一个奖励模型来代理人类的偏好。这个奖励模型是通过人类对GPT-3生成的多个响应进行排名来训练的,排名基于详细的有用性和无害性指导方针。

奖励模型的构建

为了训练奖励模型,需要对单个提示生成多个GPT-3响应,然后由人类标注者根据有用性和无害性的详细指南对这些响应进行排名。这个过程的关键在于,人类评估响应的相对质量(即对它们进行排名)比从头开始编写最优响应要容易得多,也快得多。这样做的结果是,为奖励模型提供了更高质量、更大量的训练数据。

近端策略优化(PPO)

奖励模型随后用于通过近端策略优化(PPO)来训练InstructGPT。PPO是一种高效的RL算法,它根据奖励值更新模型参数。PPO结合了两个关键思想,以创建一个比强化学习的真正目标(即找到一个最大化所有可能轨迹的预期累积奖励的政策/模型)更简单、更稳定的优化。

RLHF的局限性

尽管经过RLHF训练的InstructGPT在人类偏好指标上优于GPT-3及其SFT检查点,但它有一个关键局限性:最终模型的表现只能和用于创建奖励模型的训练数据一样好。这与其他RL方法形成对比,后者原则上可以通过额外的训练无限期地提高性能。

直接策略优化(DPO)

直接策略优化(DPO)将RLHF重新表述为一个简单的文本分类问题。DPO的作者展示了在KL散度约束下,RLHF的最优策略可以以封闭形式导出。因此,我们可以最小化模型和最优策略之间的对数概率差异,这是相对于优选和非优选响应训练对的。

DPO的优势

DPO的关键优势在于,我们可以用一个更简单的训练设置获得与RLHF相同的性能提升。DPO通过将偏好数据直接用于训练LLM,简化了训练过程,从而提高了效率。

实际应用:微调Qwen2.5–0.5B模型

为了展示DPO的实际应用,我们可以通过一个具体的例子来说明如何使用DPO来微调Qwen2.5–0.5B模型,以生成符合个人偏好的YouTube视频标题。在这个例子中,我们首先需要生成偏好数据集,然后使用DPO进行微调。

步骤1:生成偏好数据集

生成偏好数据集是整个过程中最耗时的部分。我们首先列出视频创意,然后为每个创意生成多个标题,最后手动比较这些标题并选择更好的一个。这个过程涉及到大量的手动工作,但为了获得高质量的训练数据,这是必要的。

步骤2:使用DPO进行微调

一旦准备好了偏好数据,微调模型就变得相对简单。我们首先导入必要的库,然后加载训练数据集和基础模型。接着,我们定义DPO的训练参数,并使用DPOTrainer进行训练。训练过程中,模型会根据偏好数据进行优化,以生成更符合我们偏好的标题。

步骤3:评估微调模型

虽然通过单个例子可以对新模型的性能进行初步检查,但这并不是一个稳健的评估策略。我们可以通过比较基础模型和微调模型生成的标题来进行评估。由于口味和偏好难以用标准评估捕捉,我们可能需要进行一些手动数据标注来完成这一过程。

LLMs能够执行广泛的任务,但通过提示工程或监督式微调来优化它们基于人类偏好的响应可能是具有挑战性的。RLHF和DPO通过根据相对人类偏好(即排名模型完成)来微调LLM,提供了一种解决方案。通过DPO,我们可以将Qwen-0.5B生成的YouTube视频标题与个人偏好对齐。这些方法展示了如何通过微调来提高LLMs在特定任务上的表现,同时也指出了未来研究的方向,包括使用更大的模型、进行更多的实验以及探索不同的训练策略。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注