理解语言模型的策略(表示为 $ \pi_{\text{RL}} $)在强化学习阶段如何演变,对于成功对齐很是有帮助。仅仅最大化奖励模型(RM)的奖励信号是不够的;我们需要确保这种优化过程能带来有益性、无害性和诚实性的真正改进,同时避免意想不到的后果。分析策略变化能提供关于训练动态的信息,有助于及早发现潜在问题,并验证对齐过程是有效的。追踪策略变化的主要原因包括:监测对齐进展: 验证策略确实在学习RM以及(进而)人类标注员偏好的行为。识别奖励作弊: 识别策略找到捷径来最大化RM分数,但却不产生真正更好的输出的情况。这通常表现为不自然、重复或过于冗长的回复,它们利用了RM理解中的漏洞。管理策略稳定性: PPO中的KL散度项旨在使RL策略保持接近初始SFT策略($ \pi_{\text{SFT}} $)。监测这一点有助于确保模型在优化奖励的同时,不会忘记其基础知识或语言流畅性。诊断训练问题: 奖励、KL散度或输出质量的突然跳变或崩溃可能表明存在诸如梯度爆炸、超参数设置不正确或RM本身问题等情况。运用多种衡量指标和技术来分析这种变化:KL散度追踪Kullback-Leibler(KL)散度衡量当前RL策略($ \pi_{\text{RL}} $)和参考策略(通常是初始SFT模型,$ \pi_{\text{SFT}} $)在给定相同提示时,预测的token概率分布之间的差异。在RLHF的PPO中,我们明确惩罚高KL散度,以防止策略偏离SFT模型太远。追踪在批次上平均的每token KL散度是一种常规做法。{"layout": {"title": "RL训练期间的KL散度", "xaxis": {"title": "训练步数"}, "yaxis": {"title": "每token平均KL散度"}, "legend": {"title": {"text": "情况"}}}, "data": [{"type": "scatter", "mode": "lines", "name": "稳定训练", "x": [0, 1000, 2000, 3000, 4000, 5000], "y": [0, 0.5, 0.8, 1.0, 1.1, 1.2], "line": {"color": "#228be6"}}, {"type": "scatter", "mode": "lines", "name": "潜在不稳定/漂移", "x": [0, 1000, 2000, 3000, 4000, 5000], "y": [0, 0.6, 1.5, 2.8, 4.5, 6.0], "line": {"color": "#f03e3e"}}]}一个图表显示了RL策略和SFT策略之间,随训练步数变化的每token平均KL散度。稳定训练通常表现出受控的增长,而快速、无限制的增长可能预示不稳定或过度偏离基础模型。持续较低的KL散度可能表明策略没有学到太多,或者KL惩罚系数过高。反之,迅速增加的KL散度表明策略正在显著变化,如果奖励也在增加,这可能是好的,但如果奖励停滞或输出质量下降,则值得调查是否存在潜在的奖励作弊或能力丧失。奖励分数分析监测RM分配给策略生成内容的平均奖励分数是很重要的。我们预计该分数会随时间增加,因为策略会学习生成RM偏好的回复。绘制奖励分数分布也很有益。{"layout": {"title": "RM分数的分布", "xaxis": {"title": "奖励分数"}, "yaxis": {"title": "密度"}, "barmode": "overlay", "legend": {"title": {"text": "训练阶段"}}}, "data": [{"type": "histogram", "name": "开始(第0步)", "x": [-1.5, -1.0, -0.8, -0.5, -0.2, 0.0, 0.1, 0.3, 0.5, 0.8, 1.0, 1.2], "marker": {"color": "#adb5bd"}, "opacity": 0.75, "histnorm": "probability density"}, {"type": "histogram", "name": "中期(第2500步)", "x": [-0.5, 0.0, 0.2, 0.5, 0.8, 1.0, 1.2, 1.5, 1.8, 2.0, 2.2, 2.5], "marker": {"color": "#74c0fc"}, "opacity": 0.75, "histnorm": "probability density"}, {"type": "histogram", "name": "结束(第5000步)", "x": [0.5, 1.0, 1.5, 1.8, 2.0, 2.2, 2.5, 2.8, 3.0, 3.2, 3.5, 4.0], "marker": {"color": "#37b24d"}, "opacity": 0.75, "histnorm": "probability density"}]}直方图显示了在RL训练的不同阶段,RM分配给策略生成内容的奖励分数分布。分数向高位移动表明根据RM进行的优化是成功的。分布收紧在高奖励值附近通常表示收敛。然而,如果分布显著变化或出现异常形状,可能表明策略正在利用RM的某些特定方面,可能暗示奖励作弊。定性评估仅靠量化指标无法说明全部情况。在整个训练过程中,定期抽样并手动检查模型的输出(针对一组固定提示)是必不可少。比较以下生成内容:初始SFT模型 ($ \pi_{\text{SFT}} $)早期RL策略检查点(例如,训练10%后)训练中期RL策略检查点训练后期或最终RL策略 ($ \pi_{\text{RL}} $)寻找期望的改进(例如,有益性增加、更好的指令遵循能力、危害性降低),但也要警惕退步(例如,连贯性下降、重复、奉承、新故障模式的出现)。这种定性反馈循环对于理解策略如何变化非常重要。其他量化指标困惑度: 计算RL策略在留出数据集(通用文本语料库或SFT数据集)上的困惑度,以监测语言建模基础方面潜在的退化。困惑度的显著增加可能表明模型正在失去流畅性或通用知识。自动化评估基准: 如果计算上可行,定期在已建立的对齐基准(如HELM子集或特定的指令遵循测试)上运行评估,以获得客观的任务性能衡量。相对于参考的胜率: 以RM作为评判者,计算当前RL策略生成内容相对于SFT策略生成内容的胜率。这能直接衡量根据已学习的偏好模型所实现的改进。结合信号进行解读结合分析这些衡量指标能提供更全面的情况:奖励增加、KL受控、良好的定性示例: 理想的情形。策略正在学习对齐的行为,没有剧烈、可能有害的变化。奖励增加、KL高/迅速增加: 密切调查。这可能是对复杂偏好的有效学习,但也存在奖励作弊或遗忘SFT知识的风险。定性检查很重要。奖励停滞/下降、KL增加: 有问题。策略正在变化但未根据RM改进。可能表明训练不稳定、超参数选择不当或不足的RM。奖励停滞、KL停滞: 训练可能已收敛,或者学习率/KL惩罚可能阻碍进一步进展。考虑调整超参数或检查梯度。工具标准的机器学习实验追踪工具,如Weights & Biases或TensorBoard,对于记录和可视化这些衡量指标(KL散度、奖励分数、评估指标)随时间的变化非常有帮助。Hugging Face的TRL等库通常提供内置工具,用于在PPO训练期间计算和记录KL散度及奖励统计信息,从而简化分析过程。通过结合使用量化指标和定性检查,系统地分析RL微调期间策略如何变化,您可以确信RLHF过程正在实现有意义的对齐,并在潜在问题导致训练脱轨或产生行为不佳的模型之前发现它们。