Skip to main content

大模型算法:强化学习、微调与对齐 - 余昌叶

s35139486

系统地讲解了大模型技术、训练算法(包括强化学习、RLHF、PPO、GRPO、DPO、SFT 与 CoT 蒸馏等)、多种效果优化措施及其实践。

关于作者

余昌叶 是大模型技术领域的专家:

  • AI 研究员:专注于大语言模型和强化学习研究
  • 技术实践者:在大模型训练和对齐方面有丰富实战经验
  • 技术布道师:致力于将复杂的大模型算法以系统化的方式传播
  • 开源贡献者:参与多个大模型相关开源项目

余昌叶以其"理论与实践并重"的写作风格著称,不仅讲解算法原理,更注重实际应用和工程实践。

核心内容

1. 大模型技术概览

大模型发展脉络:

1. 预训练时代 (Pre-training)
- GPT 系列:生成式预训练
- BERT 系列:双向编码
- T5:文本到文本转换

2. 指令微调时代 (Instruction Tuning)
- InstructGPT
- ChatGPT
- 遵循指令的能力

3. 对齐时代 (Alignment)
- RLHF:人类反馈强化学习
- DPO:直接偏好优化
- 价值观对齐

4. 高效微调时代 (PEFT)
- LoRA:低秩适配
- Prefix Tuning
- 参数高效微调

2. 强化学习基础

强化学习核心概念:

1. 基本框架
- 智能体 (Agent):决策者
- 环境 (Environment):交互对象
- 状态 (State):环境描述
- 动作 (Action):决策行为
- 奖励 (Reward):反馈信号

2. 马尔可夫决策过程 (MDP)
- 状态转移概率
- 奖励函数
- 折扣因子

3. 价值函数
- V(s):状态价值
- Q(s,a):动作价值
- 贝尔曼方程

4. 策略梯度
- 策略函数π(a|s)
- 梯度上升优化
- REINFORCE 算法

5. Actor-Critic
- Actor:策略网络
- Critic:价值网络
- 优势函数 A(s,a)

3. PPO 算法详解

PPO (Proximal Policy Optimization):

1. 核心思想
- 限制策略更新幅度
- 避免训练不稳定
- clipped 目标函数

2. 重要性采样
- off-policy 到 on-policy
- 修正分布差异
- 权重计算

3. Clipping 机制
ratio = π_new(a|s) / π_old(a|s)

clipped_ratio = clip(ratio, 1-ε, 1+ε)

L = min(ratio * A, clipped_ratio * A)

4. 价值函数损失
- 预测价值与真实回报
- 均方误差最小化

5. 熵正则化
- 鼓励探索
- 避免过早收敛

6. 训练流程
- 收集轨迹
- 多轮 PPO 更新
- 更新旧策略

4. RLHF:人类反馈强化学习

RLHF (Reinforcement Learning from Human Feedback):

1. 三阶段流程

阶段 1:监督微调 (SFT)
- 收集高质量示范数据
- 监督学习训练
- 学习基本任务能力

阶段 2:奖励模型训练
- 收集人类偏好数据
- 训练奖励模型
- 学习人类价值判断

阶段 3:强化学习优化
- 使用 PPO 算法
- 奖励模型作为信号
- 优化策略模型

2. 偏好数据收集
- 模型生成多个回答
- 人类标注优劣
- 构建偏好数据集

3. 奖励模型设计
- 输入:prompt + response
- 输出:奖励分数
- 学习目标:偏好排序

4. 挑战与解决
- 奖励欺骗:正则化
- 分布偏移:KL 散度约束
- 标注成本:主动学习

5. DPO:直接偏好优化

DPO (Direct Preference Optimization):

1. 核心洞察
- RLHF 复杂且不稳定
- 奖励模型是中间环节
- 可以直接从偏好学习策略

2. 数学原理
- Bradley-Terry 偏好模型
- 隐式奖励函数
- 直接优化策略

3. 损失函数
L_DPO = -log[σ(β * log(π(y_w|x)/π_ref(y_w|x))
- β * log(π(y_l|x)/π_ref(y_l|x)))]

y_w: 优选回答
y_l: 劣选回答
π_ref: 参考模型

4. 优势
- 无需奖励模型
- 训练更稳定
- 计算效率更高
- 超参数更少

5. 与 RLHF 对比
RLHF:SFT → 奖励模型 → PPO
DPO:SFT → 直接优化

6. GRPO 算法

GRPO (Group Relative Policy Optimization):

1. 动机
- PPO 需要价值网络
- 价值网络训练成本高
- 用群体优势替代

2. 核心思想
- 对同一 prompt 生成多个回答
- 计算组内相对优势
- 基于排名优化

3. 优势计算
- 生成 G 个回答
- 获得奖励 {r_1, r_2, ..., r_G}
- A_i = (r_i - mean(r)) / std(r)

4. 优化目标
- 类似 PPO 的 clipping
- 使用组内优势
- 无需价值网络

5. 优势
- 节省显存
- 简化训练
- 效果相当

7. SFT 监督微调

SFT (Supervised Fine-Tuning):

1. 目的
- 激活预训练知识
- 学习指令遵循
- 适应特定任务

2. 数据准备
- 指令 - 回答对
- 多轮对话
- 高质量标注

3. 数据格式
{
"messages": [
{"role": "system", "content": "..."},
{"role": "user", "content": "..."},
{"role": "assistant", "content": "..."}
]
}

4. 训练技巧
- 学习率调度
- 序列打包
- 混合精度训练
- 梯度累积

5. 过拟合防止
- 早停策略
- 权重衰减
- Dropout

8. CoT 思维链与蒸馏

CoT (Chain-of-Thought):

1. 思维链概念
- 展示推理过程
- 分步解决问题
- 提高复杂任务表现

2. 示例
问题:小明有 5 个苹果,给了小红 2 个,又买了 3 个,现在有几个?

普通回答:6 个

CoT 回答:
- 小明开始有 5 个苹果
- 给了小红 2 个,剩下 5-2=3 个
- 又买了 3 个,总共 3+3=6 个
- 答案:6 个

3. 蒸馏方法
- 教师模型生成 CoT
- 学生模型学习
- 知识迁移

4. 自洽性 (Self-Consistency)
- 多次采样推理路径
- 投票选择答案
- 提高可靠性

5. 应用
- 数学推理
- 逻辑问题
- 代码生成

9. 参数高效微调

PEFT (Parameter-Efficient Fine-Tuning):

1. LoRA (Low-Rank Adaptation)
- 冻结原权重
- 添加低秩矩阵
- ΔW = BA, B∈R^{d×r}, A∈R^{r×k}

优势:
- 参数量大幅减少
- 多个任务共享基座
- 快速切换

2. Prefix Tuning
- 学习连续向量
- 添加到输入前缀
- 引导生成

3. P-Tuning
- 提示编码器
- 软提示学习
- 多任务适配

4. Adapter
- 插入小模块
- 旁路连接
- 参数高效

10. 效果优化实践

训练优化技巧:

1. 数据质量
- 清洗过滤
- 去重
- 多样性保证

2. 超参数调优
- 学习率:1e-5 ~ 5e-5
- Batch Size:根据显存
- epochs:3-5 轮

3. 显存优化
- 混合精度 (FP16/BF16)
- 梯度检查点
- DeepSpeed ZeRO

4. 评估指标
- 困惑度 (Perplexity)
- 人工评估
- 基准测试

5. 常见问题
- 灾难性遗忘:回放缓冲
- 过拟合:早停、正则化
- 训练不稳定:梯度裁剪

经典摘录

大模型的能力来自预训练,对齐来自人类反馈。

强化学习的核心:从奖励中学习,而非从标签中学习。

PPO 的 clipped 机制,是训练稳定的关键。

RLHF 让模型学习人类的价值观,而不仅仅是任务本身。

DPO 的洞察:绕过奖励模型,直接学习偏好。

思维链让大模型展示推理过程,而非直接给出答案。

参数高效微调的核心:用少量参数,激活大量知识。

蒸馏的本质:将大模型的知识压缩到小模型。

读书心得

《大模型算法》是一本系统讲解大模型训练算法的书籍。读完之后,我对大模型从预训练到对齐的整个流程有了全面的理解。

强化学习是大模型对齐的核心技术。PPO 算法通过限制策略更新幅度,保证了训练的稳定性。这是工程实践中的重要发现,纯理论的策略梯度往往不稳定。

RLHF的三阶段设计非常巧妙。先用 SFT 激活能力,再用奖励模型学习人类偏好,最后用强化学习优化。这个流程造就了 ChatGPT 的成功。

DPO是一个重要的进展。它绕过了奖励模型这个中间环节,直接从偏好数据学习策略。这不仅简化了流程,还提高了训练稳定性。

CoT 思维链揭示了大模型的推理能力。通过展示推理过程,模型能够解决更复杂的问题。这对于数学、逻辑等需要多步推理的任务尤其重要。

参数高效微调让大模型应用更加可行。LoRA 等方法用极少的参数量,就能实现接近全量微调的效果。这对资源有限的场景非常实用。

这本书适合 AI 工程师、算法研究员和对大模型技术感兴趣的开发者。如果你想深入理解大模型的训练和对齐,这本书值得推荐。