RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习),它通过人类手把手教的方式,用强化学习来微调模型,让模型学会理解好坏的主观概念,它也是让大语言模型(LLM)变得“更像人”的核心技术之一。
它的核心思想就是:用一个由人类偏好训练出来的奖励模型作为评价标准,来引导大模型自我优化,朝着符合人类期望的方向对齐。
PART 01
实现流程
RLHF的三个核心步骤:
监督微调 (Supervised Fine-Tuning, SFT)
先从一个预训练好的基础模型开始,用一小部分高质量的人类标注数据(如问题-理想答案对)对模型进行初步的微调,让模型学会基本的对话和指令遵循能力。
训练奖励模型 (Reward Modeling, RM)
这是最核心的一步,让SFT模型对同一问题生成多个不同的回答,然后让人类标注员 对这些回答进行偏好排序, 之后,训练一个专门的奖励模型,让它学习预测这些排序的规律,学会为“好”的回答打高分,为“坏”的回答打低分。
强化学习优化 (RL Fine-Tuning)
使用近端策略优化(Proximal Policy Optimization, PPO)等强化学习算法,利用训练好的奖励模型作为“奖励信号”,来微调SFT模型。这个过程让模型在一次次尝试中,学会生成更符合奖励模型“口味”的高质量回答。
开源框架与工具链:
实际落地六步:
PART 02
核心算法 (PPO)
PPO(近端策略优化,Proximal Policy Optimization)的核心在于“近端”二字,通过一种巧妙的“裁剪”机制,在追求更好策略的同时,严格限制每一步的更新幅度 ,以避免训练不稳定或性能崩溃 。这个设计使它兼具了稳定与高效,从而成为了目前最主流、应用最广的强化学习算法之一。
核心原理拆解
新老策略对比 :PPO会同时维护一个用于与环境交互的“旧策略”,和一个正在学习优化的“新策略”。通过对比两者在选择同一个动作上的概率差异,来高效地评估“新策略”的进步,而不是每次从头学习。
“裁剪”机制(Clipping) :这是PPO最精妙的设计。PPO会预设一个“安全区间”(例如[0.8, 1.2]),来限制新旧策略的概率比值。无论数据如何变化,策略更新的步伐都将被限制在这个安全的范围内,从而确保了训练的平稳,防止“一步错,步步错”。
优势函数(Advantage Function) :光知道哪个动作被选择的概率变了还不够,还要知道这个动作本身是好是坏。优势函数就是用来量化一个动作相对于平均水平究竟“好”多少,为策略更新提供了稳定的指导。
近端约束 :PPO这个名字本身就说明了其核心思想——策略的每次更新都必须在旧策略的“邻近”(Proximal)范围内进行。这种“温和、稳定地推进”的理念,是PPO成功的关键。
算法流程
具体操作上,PPO的训练就像一个有明确分工的“小剧组”:
PPO的优势与局限
这些机制协同工作,让PPO具备了以下突出优势,同时也带来了一些固有的局限。
优势
局限
与其他主流算法对比
算法 | 策略类型 | 数据利用方式 | 关键特点与最佳场景 |
|---|---|---|---|
PPO | 随机策略 | 在线策略,无法重用数据 | 通用性强,在连续控制(机器人)和游戏AI领域表现出色。 |
DQN | 确定性策略 | 离线策略,可重用数据 | 适合离散动作空间,如玩Atari游戏。 |
DDPG | 确定性策略 | 离线策略 | 专为连续动作空间设计,常用于机械臂控制。 |
SAC | 随机策略 | 离线策略 | 连续控制领域SOTA,稳定且高效,适合精细操作任务。 |
TRPO | 随机策略 | 在线策略 | PPO的前身,稳定性极高但实现复杂,如今已被PPO取代。 |
A3C | 随机策略 | 在线策略 | 并行训练提高效率,可处理连续或离散动作空间。 |
PPO通过精巧的“裁剪”设计,在 训练稳定性和实现简便性 之间找到了一个黄金平衡点,尽管它也有一些局限性,但这不妨碍它成为现代强化学习,特别是RLHF领域的事实标准。当面对一个复杂的连续控制问题(如清洁机器人)或希望让语言模型生成更符合偏好的内容时,PPO都是一个值得首先尝试的强大工具。
PART 03
RLHF的主要变体
为了降低RLHF的复杂度,提出了多种简化变体:
PART 04
总结
总的来说,选择哪种算法,需要在效果、成本和复杂度之间做权衡。PPO效果最好但代价高;DPO等变体则提供了更高效的折中方案
