LLM常见问题(强化学习部分)-灵析社区

算法无限

1. 简单介绍强化学习

强化学习(Reinforcement learning)是一种机器学习技术,可以训练模型做出决策,以实现最佳结果。它模仿了人类为实现目标所采取的反复试验的学习过程。有助于实现目标的模型决策会得到加强,而偏离目标的操作将被忽略。

RL 算法在处理数据时使用奖惩模式。这些算法从每个操作的反馈中学习,并自行发现实现最终结果的最佳处理路径。此类算法还能够实现延迟满足。最好的整体策略可能需要短期的牺牲,因此其发现的最佳方法可能包括一些惩罚,或在过程中有一些迂回。RL 是一种强大的方法,可以帮助人工智能(AI)系统在看不见的环境中实现最佳结果。

2. 简单介绍一下 RLHF

RLHF就是基于人类反馈(Human Feedback)对语言模型进行强化学习(Reinforcement Learning),一般分为以下三个步骤:

1.预训练语言模型:我们使用经典的预训练目标训练一个语言模型。这里可以用额外的文本或者条件对这个 LM 进行微调,例如 OpenAI 对 “更可取” (preferable) 的人工生成文本进行了微调,而 Anthropic 按 “有用、诚实和无害” 的标准在上下文线索上蒸馏了原始的 LM。

2.训练奖励模型:RM 的训练是 RLHF 区别于旧范式的开端。这一模型接收一系列文本并返回一个标量奖励,数值上对应人的偏好。我们可以用端到端的方式用 LM 建模,或者用模块化的系统建模 (比如对输出进行排名,再将排名转换为奖励) 。这一奖励数值将对后续无缝接入现有的 RL 算法至关重要。

3.用强化学习微调:长期以来出于工程和算法原因,人们认为用强化学习训练 LM 是不可能的。而目前多个组织找到的可行方案是使用策略梯度强化学习 (Policy Gradient RL) 算法、近端策略优化 (Proximal Policy Optimization,PPO) 微调初始 LM 的部分或全部参数。

3. 奖励模型需要和基础模型一致吗?

奖励模型和基础模型在训练过程中可以是一致的,也可以是不同的。这取决于你的任务需求和优化目标。

如果你希望优化一个包含多个子任务的复杂任务,那么你可能需要为每个子任务定义一个奖励模型,然后将这些奖励模型整合到一个统一的奖励函数中。这样,你可以根据任务的具体情况调整每个子任务的权重,以实现更好的性能。

另一方面,如果你的任务是单任务的,那么你可能只需要一个基础模型和一个对应的奖励模型,这两个模型可以共享相同的参数。在这种情况下,你可以通过调整奖励模型的权重来控制任务的优化方向。

总之,奖励模型和基础模型的一致性取决于你的任务需求和优化目标。在实践中,你可能需要尝试不同的模型结构和奖励函数,以找到最适合你任务的解决方案。

4. RLHF 在实践过程中存在哪些不足?

  1. 人类反馈的代价高昂:获取高质量的人类反馈通常需要大量的人力和时间成本。需要大量人工花费时间来评估模型的行为并提供准确的反馈,这可能限制了 RLHF 方法的可扩展性和应用范围。
  2. 人类反馈的主观性:人类反馈往往是主观的,不同的人可能会有不同的意见和判断。这可能导致模型在不同专家之间的反馈上存在差异,从而影响模型的训练和性能。
  3. 错误反馈的影响:人类反馈可能存在错误或误导性的情况,这可能会对模型的训练产生负面影响。如果模型在错误的反馈指导下进行训练,可能会导致模型产生错误的行为策略。
  4. 缺乏探索与利用的平衡:在 RLHF 中,人类反馈通常用于指导模型的行为,但可能会导致模型过于依赖人类反馈而缺乏探索的能力。这可能限制了模型发现新策略和优化性能的能力。

5. 如何解决人工产生的偏好数据集成本较高,很难量产问题?

  1. 引入模拟数据:使用模拟数据来代替或辅助人工产生的数据。模拟数据可以通过模拟环境或模型生成,以模拟人类用户的行为和反馈。这样可以降低数据收集的成本和难度,并且可以大规模生成数据。
  2. 利用已有的高质量数据:收集互联网中现存的高质量问答数据并处理为数据集,可以快速收集到大量的数据。
  3. 众包和协作:利用众包平台或协作机制来收集人工产生的偏好数据。通过将任务分发给多个人参与,可以降低每个人的负担,并且可以通过众包平台的规模效应来提高数据收集的效率。
  4. 数据增强和迁移学习:通过数据增强技术,如数据合成、数据扩增等,来扩充有限的人工产生数据集。此外,可以利用迁移学习的方法,将从其他相关任务或领域收集的数据应用于当前任务,以减少对人工产生数据的需求。

6. 如何解决三个阶段的训练(SFT->RM->PPO)过程较长,更新迭代较慢问题?

可以采用 DPO (Direct Preference Optimization)的训练模式,DPO 提出了一种使用二进制交叉熵目标来精确优化 LLM 的方法,以替代基于 RLHF 的优化目标,从而大大简化偏好学习 pipeline。也就是说,完全可以直接优化语言模型以实现人类的偏好,而不需要明确的奖励模型或强化学习。

与现有的算法一样,DPO 也依赖于理论上的偏好模型(如 Bradley-Terry 模型),以此衡量给定的奖励函数与经验偏好数据的吻合程度。然而,现有的方法使用偏好模型定义偏好损失来训练奖励模型,然后训练优化所学奖励模型的策略,而 DPO 使用变量的变化来直接定义偏好损失作为策略的一个函数。鉴于人类对模型响应的偏好数据集,DPO 因此可以使用一个简单的二进制交叉熵目标来优化策略,而不需要明确地学习奖励函数或在训练期间从策略中采样。

7. 如何解决 PPO 的训练过程同时存在4个模型(2训练,2推理),对计算资源的要求较高问题?

可以采用 RRHF(Rank Response from Human Feedback)的训练模式,RRHF 不需要强化学习,可以利用不同语言模型生成的回复,包括 ChatGPT、GPT-4 或当前的训练模型。RRHF通过对回复进行评分,并通过排名损失来使回复与人类偏好对齐。RRHF 通过通过排名损失使评分与人类的偏好(或者代理的奖励模型)对齐。RRHF 训练好的模型可以同时作为生成语言模型和奖励模型使用。

RRHF算法可以有效地将语言模型输出概率与人类偏好对齐,其训练思路非常简单,训练完成的模型有几个特点:

  • 仅需要1到2个模型,而PPO需要4个模型,因此RRHF算法更加简单高效。
  • 监督微调(SFT)可以被看作是RRHF算法的一种特殊形式。
  • RRHF 算法可以同时被用作语言模型和奖励模型。
  • RRHF 算法可以在较低的训练难度下拟合奖励模型的偏好,达到PPO算法的效果,并且避免了PPO算法中的复杂性和不稳定性问题。

阅读量:465

点赞量:0

收藏量:0