详细摘要 摘要
生成:2025-06-21 17:08摘要详情
- 音频文件
- 2025-06-21 | Stanford CS336 | Language Modeling from Scratch | Spring 2025 | Lecture 15: Alignment - SFT/RLHF
- 摘要类型
- 详细摘要
- LLM 提供商
- openai
- LLM 模型
- gemini-2.5-pro
- 温度
- 0.3
- 已创建
- 2025-06-21 17:08:28
摘要内容
概览/核心摘要 (Executive Summary)
本讲座深入探讨了语言模型在预训练之后进行“对齐”(Alignment)的关键技术,旨在将类似GPT-3的基础模型转化为如ChatGPT一样有用、真实且无害的指令遵循模型。核心方法论是RLHF(Reinforcement Learning from Human Feedback),一个通常包含两个主要阶段的流程。
第一阶段是监督微调(Supervised Finetuning, SFT)。此阶段通过收集高质量的“指令-回答”演示数据,对预训练模型进行模仿学习。讲座强调,SFT数据的质量、多样性和风格对模型行为有巨大影响。一个关键的警示是,用SFT教授模型其预训练阶段未掌握的新知识,可能会适得其反,导致模型学会“幻觉”或捏造事实,而非真正学习知识。此外,现代SFT实践已演变为在预训练后期(称为“中途训练”或mid-training)混合指令数据,模糊了预训练与微调的界限。
第二阶段是基于人类反馈的强化学习(RLHF)。该阶段旨在解决SFT成本高昂且无法完全反映人类偏好的问题(生成-验证差距)。其流程包括:首先,收集人类对模型不同输出的偏好排序数据;其次,利用这些数据训练一个“奖励模型”(Reward Model)来为模型输出打分;最后,使用强化学习算法(如PPO或DPO)优化语言模型,使其生成能获得更高奖励的回答。讲座对比了传统复杂的PPO算法和更简单高效的DPO(Direct Preference Optimization),后者已成为开源模型的主流选择。讲座最后警示了RLHF的潜在风险,如对奖励模型的过度优化可能导致性能下降(奖励过拟合)和模型输出多样性的降低(模式崩溃)。
从预训练到对齐:为何需要更好、更严格的控制
- 背景:预训练模型(如GPT-3)虽然具备强大的能力,但其输出并不可靠,不一定遵循用户指令,且可能生成有害内容。
- 目标:通过“对齐”(Alignment)过程,对语言模型的输出进行更好、更严格的控制,使其变得有用、真实且无害。
- 核心问题:
- 对齐所需的数据是什么样的?
- 如何最有效地利用这些数据?
- 如何规模化地实施对齐过程?
第一步:监督微调 (Supervised Finetuning, SFT)
SFT是模仿学习的一种形式,是RLHF流程的第一步,旨在教会模型遵循指令的基本行为。
SFT流程
- 收集演示数据:从提示数据集中采样一个提示(Prompt)。
- 人工标注:由专家或标注员为该提示撰写一个高质量的回答(Demonstration)。
- 微调模型:使用这些“提示-回答”对,通过监督学习的方式微调预训练好的基础模型。
SFT数据的构成与影响
SFT数据的质量和构成对模型最终行为有决定性影响。
- 数据来源与风格:
- FLAN:通过聚合现有的NLP任务数据集构建,格式较为刻板,有时不自然。
- Alpaca:使用语言模型生成指令和回答,格式更接近聊天机器人交互,但指令相对简单。
- OpenAssistant:由社区爱好者众包编写,包含复杂查询和高质量、长篇幅的回答,但收集成本高昂。
- 数据特征的关键影响:
- 长度偏见:研究表明,人类评估者和AI评估者都明显偏爱更长的输出。这可能导致模型优化方向偏向于风格而非质量。
- 知识与事实性:
> 讲座中的一个核心观点是:当SFT数据试图教授模型其在预训练中未曾见过的“新知识”时,存在巨大风险。模型可能不会学习事实本身,而是学会一种“行为模式”,即“为了匹配输出格式而捏造内容”。- 例子:如果微调数据要求模型为不熟悉的经济学概念提供引用,模型可能学会的不是具体的引用知识,而是在回答复杂问题后“附加一个看起来像引用的字符串”的行为,从而导致幻觉。
- 安全性:
- 少量(约500个样本)的安全相关指令微调数据就能显著提升模型的安全性,减少有害内容生成。
- 然而,过多的安全数据可能导致模型过度拒绝(Over-refusal),即对无害的请求(如“如何终止一个Python进程”)也拒绝回答。
SFT的现代实践:中途训练 (Mid-training)
为解决大规模SFT可能导致的“灾难性遗忘”问题,并更高效地利用数据,现代实践已将SFT融入预训练的后期阶段。
* 流程:在预训练的后期(学习率衰减阶段),将高质量的指令数据与预训练数据混合,继续训练模型。
* 优势:
* 允许大规模使用指令数据而无需担心灾难性遗忘。
* 使指令遵循的能力更深入地整合到模型中。
* 影响:这种做法模糊了“基础模型”和“指令微调模型”的界限。如今发布的许多所谓“基础模型”可能已经隐式地经过了指令微调。
第二步与第三步:基于人类反馈的强化学习 (RLHF)
RLHF是从模仿学习(SFT)到优化的转变,旨在更精细地对齐模型与人类偏好。
为何需要RLHF?
- 成本效益:收集偏好数据(即判断回答A和B哪个更好)比撰写一个完美的回答(SFT数据)更便宜、更容易。
- 生成-验证差距 (Generator-Validator Gap):人类自己撰写的回答,并不总是他们自己最偏爱的回答。通过比较和选择,可以获得比直接生成更高质量的对齐信号。
RLHF流程
这是一个标准的三步流程,紧接在SFT之后:
1. 收集比较数据:让SFT模型对同一提示生成多个回答。
2. 人工排序/奖励模型训练:让人类标注员对这些回答进行排序。然后,使用这些排序数据训练一个奖励模型(Reward Model, RM),该模型学会为“提示-回答”对打分。
3. 通过强化学习优化策略:将语言模型视为一个“策略”(Policy),使用奖励模型的分数作为强化学习信号,通过PPO或DPO等算法更新模型参数,使其倾向于生成能获得更高奖励的回答。
RLHF的数据收集与挑战
- 标注指南:需要为标注员提供详细的指南,定义什么是“有用、真实、无害”的回答。
- 众包挑战:
- 难以保证标注员的质量和事实核查的严谨性。
- 标注员的人口统计学特征会显著影响模型的偏见和行为。
- 存在伦理问题,如薪酬过低。
- AI反馈(AIAF)的兴起:
- 研究发现,GPT-4等强大模型在提供成对偏好反馈方面与人类具有高度一致性,且成本更低、速度更快。
- Constitutional AI:一种自对齐方法,让模型根据一套预设的“宪法”(原则)来生成、批评和修正自己的回答,从而自动生成偏好数据。
RLHF的算法演进
-
PPO (Proximal Policy Optimization):
- InstructGPT中使用的经典算法,实现复杂且敏感。
- 其目标函数包含奖励信号和一个KL散度惩罚项,后者用于防止优化后的模型偏离原始SFT模型太远,以缓解灾难性遗忘。
-
DPO (Direct Preference Optimization):
- 一种更简单、更稳定的新方法,已成为开源RLHF模型的主流。
- 核心思想:跳过显式训练奖励模型的步骤,直接将人类偏好数据(哪个回答更好)转化为一个简单的分类损失函数。它直接优化策略,使其提高“更优”回答的生成概率,同时降低“更差”回答的生成概率。
RLHF的潜在问题
- 奖励过拟合/奖励黑客 (Reward Over-optimization/Hacking):过度优化奖励模型可能导致模型生成的文本在奖励模型上得分很高,但实际质量(如事实性、逻辑性)却下降了。
- 模式崩溃/熵降低 (Mode Collapse/Entropy Reduction):RLHF会改变模型的输出分布,使其不再是一个校准良好的概率模型,可能导致输出多样性降低,对某些提示只生成非常相似的回答。
结论
- RLHF是一个强大的框架,用于将语言模型与人类偏好对齐,使其更有用、更安全,是实现从GPT-3到ChatGPT转变的关键。
- 该框架通常包括SFT和RLHF两个阶段,但现代实践正在将它们更紧密地结合(如中途训练)。
- 数据是核心:无论是SFT的演示数据还是RLHF的偏好数据,其质量、多样性、来源和标注者特征都对最终模型产生深远影响。
- 算法在演进:对齐算法正从复杂且难以实现的PPO向简单高效的DPO等方法演变,降低了技术门槛。
- 警惕副作用:在应用RLHF时,必须注意并采取措施(如KL散度惩罚)来缓解过优化和模式崩溃等问题。