RLHF 和 DPO:简化和增强语言模型的微调

发布时间:2024年01月17日

什么是 RLHF?

人类反馈强化学习 (RLHF) 是人工智能领域的一种前沿方法,它利用人类偏好和指导来训练和改进机器学习模型。
RLHF的核心是一种机器学习范式,它结合了强化学习和监督学习的元素,使人工智能系统能够以更加人性化的方式学习和做出决策。
RLHF的重要性在于它有可能解决人工智能中的一些基本挑战,例如需要模型来理解和尊重人类的价值观和偏好。传统的强化学习模型通过与环境交互产生的奖励来学习,而 RLHF 则不同,它引入了人类反馈作为宝贵的指导来源。这种反馈可以帮助人工智能系统导航复杂的决策空间,与人类价值观保持一致,并做出更明智和道德的选择。RLHF 已经在从自然语言处理和推荐系统到机器人和自动驾驶汽车的广泛领域中找到了应用。通过将人类反馈纳入训练过程,RLHF有能力提高模型性能,增强用户体验,并为人工智能技术的负责任发展做出贡献。

为什么 RLHF 很重要?

基于人类反馈的强化学习 已成为人工智能(AI)领域一个重要且有影响力的概念。

  1. 以人为本的人工智能: RLHF 的主要动机之一是创建更加以人为本的人工智能系统。传统的人工智能模型往往缺乏理解和尊重人类价值观和偏好的能力。RLHF 试图通过将人类反馈和指导纳入培训过程来弥补这一差距。这种方法确保人工智能系统符合人类价值观,使其在现实世界的应用中更安全、更有用。
  2. 解决奖励规范挑战: 在标准强化学习中,定义准确代表人工智能代理所需行为的奖励函数可能具有挑战性。RLHF提供了一种替代方法,允许人类提供有关智能体行为的反馈。这种人类提供的反馈可以作为一种更直观、适应性更强的方式来指导人工智能学习,特别是在复杂而细致的任务中。
  3. 道德的人工智能开发: 确保人工智能系统行为符合道德,不??从事有害或有偏见的行为,这一问题日益引起人们的关注。RLHF提供了一种将道德考虑注入人工智能培训的方法。通过让人类参与反馈循环,RLHF可以帮助检测和减轻偏见、促进公平并减少不良的人工智能行为。
  4. 改进的用户体验:RLHF 可以使人工智能系统提供更加个性化和令人满意的用户体验。通过学习人类偏好和反馈,这些系统可以适应个人用户的需求和偏好,从而提高用户满意度和参与度。
  5. 跨领域应用:RLHF 适用于各个领域,包括自然语言处理、机器人、自动驾驶汽车、医疗保健等。其多功能性使其成为在各种应用中提高人工智能能力的宝贵工具。
  6. 安全可靠的人工智能部署: 随着人工智能系统日益融入社会,确保其安全性和可靠性至关重要。RLHF有助于开发更安全且不易出现意外和不良行为的人工智能模型。它使模型能够从现实世界的人类反馈中学习,从而降低灾难性故障的风险。
  7. 持续的研究和进展:RLHF是一个快速发展的领域,不断进行研究和开发。它的重要性在于它有潜力突破人工智能所能实现的界限,使其更具适应性、更负责任、更符合人类价值观。

RLHF 如何运作?

人类反馈强化学习 (RLHF) 是一个多阶段过程,利用人类指导的力量有效地训练人工智能模型。
它涉及几个核心步骤,可以概括为:

1. 预训练语言模型:

  • 从使用传统方法预先训练的语言模型开始。这个初始模型是 RLHF 的起点。
  • 基础语言模型的选择可能会有所不同,从较小的模型到具有数十亿参数的最先进的大型模型。

2. 收集数据和训练奖励模型:

  • 在RLHF中,生成数据来训练奖励模型,这在指导AI模型的行为方面发挥着至关重要的作用。
  • 收集数据的一种方法是通过人际互动。用户或专家对人工智能代理的行为提供反馈和评估。
  • 例如,在语言任务中,用户可以对人工智能生成的不同响应进行评分,表明哪些响应是首选。
  • 或者,可以从演示中收集数据,人类在演示中执行所需的任务,提供监督学习信号。
  • 收集到的数据用于训练奖励模型,该模型根据人类反馈预测给定的人工智能动作有多“好”或“优选”。

3. 微调语言模型

  • 使用强化学习技术对预训练的语言模型进行微调。
  • 在微调过程中,奖励模型指导模型的动作。该模型寻求根据奖励模型的预测最大化累积奖励。
  • 人工智能代理在环境中采取行动,奖励模型提供有关这些行动质量的反馈。
  • 然后,代理调整其行为以优化产生更高奖励的操作,有效地从人类反馈中学习。
  • 微调 通常涉及运行多次迭代,其中人工智能代理会随着时间的推移完善其行为。

4. 部署与迭代

  • 经过微调后,RLHF 模型可以部署在实际应用中,与用户交互或自主运行。
  • 部署期间用户 的反馈可用于在迭代过程中进一步完善模型。
  • 通过不断收集用户反馈并重新训练模型,RLHF系统可以随着时间的推移适应并提高其性能。

5. 评估和监测

  • 持续评估和监控对于确保RLHF模型按预期运行至关重要。
  • 监控用户满意度、任务成功率和道德考虑等指标来评估模型的性能。
  • 如果出现问题,可以更新模型并重新训练以解决缺陷。

RLHF将预先训练的语言模型与人类提供的反馈 相结合,以有效地微调 AI 模型。它弥合了人工智能和人类偏好之间的差距,从而实现了更有用、更一致的人工智能系统。这种从人类反馈中学习的过程是一个动态和迭代的过程,推动了人工智能能力和行为的改进。

什么是近端策略优化(PPO)?

近端策略优化(PPO) 是一种强化学习算法,用于训练语言模型和其他机器学习模型。它旨在优化代理(在本例中为语言模型)的策略函数,以最大化其在给定环境中的预期累积奖励。PPO 以其训练复杂模型的稳定性和效率而闻名。
以下是 PPO 对于语言模型的工作原理:

  1. 策略和价值函数: PPO 涉及两个关键组成部分:策略函数(通常由神经网络表示)和价值函数。策略函数根据输入数据定义模型的操作或决策,而价值函数则估计遵循特定策略的预期累积奖励。
  2. 策略迭代: PPO遵循策略迭代方法。它从初始策略开始,并迭代地完善它以提高性能。在每次迭代期间,模型通过与环境交互来收集数据。对于语言模型,这种交互可能涉及根据输入提示生成文本。
  3. 目标函数: PPO旨在通过最大化目标函数来优化策略。该函数结合了两个关键术语:代理目标和正则化项。替代目标使用当前迭代期间收集的数据来衡量新策略与旧策略相比的执行情况。正规化术语阻止政策发生太大变化。
  4. 裁剪: PPO 的显着特点之一是使用裁剪来确保策略更新不会过于极端。裁剪将策略更新限制在一定范围内,防止策略发生较大变化而导致训练过程中的不稳定。
  5. 多个 Epoch: PPO 通常在每次迭代期间进行多个优化 epoch。在每个时期,它使用收集的数据来更新策略。重复此过程直到找到令人满意的策略。
  6. 策略评估: 价值函数在策略评估中起着至关重要的作用。它估计了遵循当前策略的预期回报。这一估计有助于评估策略的质量并指导其完善。
  7. 稳定性和样品效率: PPO因其稳定性和样品效率而受到青睐。与其他一些强化学习算法相比,它往往提供更平滑的策略更新,使其适合训练文本生成质量至关重要的语言模型。

PPO 可用于文本生成、对话系统和自然语言理解等任务。它有助于优化模型的响应并根据强化学习信号调整其行为,使其在各种语言相关应用中更加有效。

总体而言,近端策略优化是一种强化学习技术,可用于训练语言模型以生成连贯且上下文相关的文本,使其在自然语言处理和理解任务中具有价值。

直接偏好优化(DPO)


直接偏好优化 (DPO) 是一种微调大型语言模型 (LLM)以符合人类偏好的新颖方法。与涉及来自人类反馈的复杂强化学习 (RLHF) 的传统方法不同, DPO简化了流程。它的工作原理是创建人类偏好对的数据集,每个偏好对都包含一个提示和两种可能的完成方式——一种是首选,一种是不受欢迎。然后对法学硕士进行微调,以最大限度地提高生成首选完成的可能性,并最大限度地减少生成不受欢迎的完成的可能性。
与 RLHF 相比,DPO 具有多项优势:

  • 简单性: DPO更容易实施和培训,使其更易于使用。
  • 稳定性: 不易陷入局部最优,保证训练过程更加可靠。
  • 效率:与 RLHF 相比, DPO 需要更少的计算资源和数据,使其计算量轻。
  • 有效性: 实验结果表明,DPO在情感控制、摘要和对话生成等任务中可以优于 RLHF 。

DPO 的主要特性包括作为单阶段算法、对超参数变化的鲁棒性、效率以及跨各种自然语言处理任务的有效性。如果您的目标是微调 LLM 以满足特定的人类偏好,DPO 可以提供比 RLHF 更简单、更高效的替代方案。

DPO VS RLHF


直接偏好优化 (DPO) 和**人类反馈强化学习 (RLHF)**是两种不同的方法,用于微调大型语言模型 (LLM)以符合人类偏好。

方法

DPO:DPO是一种单阶段算法,可直接优化 LLM以生成首选响应。它将问题表述为使用人类偏好对数据集的分类任务,其中每一对都包含一个提示和两个可能的完成(一个首选,一个不首选)。DPO 最大化生成首选完成的概率并最小化生成非首选完成的概率。它不涉及多轮训练。
RLHF:RLHF 是一个两阶段过程。首先,它符合反映人类偏好的奖励模型。然后,它使用强化学习对LLM 进行微调,以最大化估计奖励,同时保持与原始模型的一致性。RLHF 涉及多轮训练,并且计算量可能很大。

复杂

DPO:与RLHF相比, DPO更易于实施和培训。它不需要创建单独的奖励模型、在微调期间从 LLM 采样或进行广泛的超参数调整。RLHF:由于奖励模型拟合和微调的两阶段过程, RLHF更加复杂,并且计算要求较高。

稳定

DPO:DPO对超参数的变化更加稳定和鲁棒。在训练过程中陷入局部最优的可能性较小。
RLHF:RLHF对超参数选择很敏感,可能需要仔细调整以避免不稳定。

效率

DPO:与RLHF相比, DPO 在计算和数据需求方面更加高效。它可以用更少的资源实现类似或更好的结果。
RLHF:RLHF 可能需要更多的计算资源和大量的数据才能获得类似的结果。

能力

DPO:DPO 已被证明在各种任务中都很有效,包括情绪控制、摘要和对话生成。在一些研究中它的表现优于 RLHF。
RLHF:RLHF在使法学硕士与人类偏好保持一致方面也很有效,但可能需要更广泛的实验和调整。

TRL - Transformer 强化学习

TRL(Transformer Reinforcement Learning)是一个全面的库,专为使用强化学习训练变换器语言模型而设计。它包含多种工具,可以支持从监督式微调(SFT)开始,通过奖励建模(RM)阶段,最终达到近端策略优化(PPO)阶段。此库与🤗 transformers框架无缝集成。

https://huggingface.co/docs/trl/index

dpo_trainer = DPOTrainer( 
    model, 
    model_ref, 
    args=training_args, 
    beta=script_args.beta, 
    train_dataset=train_dataset, 
    eval_dataset=eval_dataset, 
    tokenizer=tokenizer, 
    peft_config=peft_config, 
) 
dpo_trainer.train() 
dpo_trainer.save_model()

总之, DPO 为 RLHF 提供了一种更简单、更稳定且计算效率更高的替代方案,用于微调 LLM 以符合人类偏好。两种方法都有其优点,可以根据具体的项目要求和可用资源进行选择。

文章来源:https://blog.csdn.net/yanqianglifei/article/details/135636843
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。