01 强化学习基础概念

小龙虾2026-04-03

01 强化学习基础概念

本文档介绍理解 RLHF 所需的强化学习核心概念,为后续 PPO 和 RLHF 的数学推导打基础。

1. 强化学习问题描述

强化学习(Reinforcement Learning, RL)是一个序贯决策问题

  • 智能体(Agent) 在环境中采取行动
  • 环境(Environment) 返回新状态和奖励
  • 目标是学习一个策略(Policy),使得长期累积奖励最大化

1.1 核心概念

符号含义
状态(State)
动作(Action)
策略:在状态 下选择动作 的概率
奖励函数
折扣因子

1.2 累积折扣奖励

智能体的目标是最大化长期累积奖励。从时刻 开始的累积折扣回报定义为:

这里 是在状态 采取动作 后获得的即时奖励。 也被称为 reward-to-go(从 往后的回报)。

1.3 状态价值函数

状态价值函数 :从状态 开始,按照策略 行动所能获得的期望累积奖励:

1.4 动作价值函数(Q 函数)

动作价值函数 :从状态 开始,采取动作 ,之后按照策略 行动的期望累积奖励:

1.5 优势函数

优势函数 :衡量某个动作相对于平均水平的"优势":

直观理解

  • :动作 比平均好
  • :动作 比平均差
  • :动作 是平均水平

2. Policy Gradient 定理

2.1 目标函数

策略优化的目标是找到一个参数化的策略 ,使得期望累积奖励最大化。

定义轨迹 ,整条轨迹的折扣回报为:

目标函数为:

2.2 策略梯度定理

定理:策略梯度的表达式为:

2.3 推导过程

Step 1:展开目标函数

其中轨迹概率为:

Step 2:对 求梯度

Step 3:使用 log-derivative trick

关键技巧:

这个等式直接来自链式法则:

Step 4:写成期望形式

Step 5:展开轨迹概率的 log 梯度

求梯度时,只有策略项含

Step 6:得到初步形式

这个形式有个问题:每个动作 都用整条轨迹的回报 来加权,包括 之前的奖励。但 之前的奖励跟动作 无关——动作只影响后续奖励.

Step 7:从

利用 EGLP(Expected Grad-Log-Prob)引理可以证明,把 换成 不改变期望值:

这样做的好处是降低方差 只包含 能影响的奖励,剔除了无关的早期奖励。

2.4 直观理解

  1. :指向增大 的方向
  2. :如果从 开始的回报高,就增大这个动作的概率

核心思想

  • 好的动作(后续回报高)→ 增大概率
  • 坏的动作(后续回报低)→ 减小概率

2.5 使用优势函数的形式

实践中常用优势函数替代

好处:进一步降低方差。 衡量的是「比平均好多少」,而不是绝对回报。

3. 重要性采样

3.1 问题背景

策略梯度需要从当前策略 采样。但每次更新后策略变了,旧数据就不能直接用了——每次都要重新采样,成本太高。

重要性采样解决了这个问题:用旧策略 采样一条轨迹,计算优势函数 ,然后通过重要性权重修正,用同一批数据反复更新策略。

3.2 重要性采样公式

证明

3.3 应用到策略梯度

用旧策略 的样本估计新策略 的梯度:

定义重要性权重

简化为:

4. KL 散度

4.1 定义

KL 散度(Kullback-Leibler divergence)衡量两个概率分布之间的差异:

对于连续分布:

4.2 性质

  1. 非负性
  2. 等号成立条件 当且仅当
  3. 不对称性 一般成立

4.3 在 RL 中的应用

在策略优化中,我们希望新策略 不要离旧策略 太远,用 KL 散度约束:

这保证了策略更新的稳定性。

5. REINFORCE 算法

5.1 算法描述

REINFORCE 是最基础的 Policy Gradient 算法:

REINFORCE 算法:
1. 初始化策略参数 θ
2. For each episode:
   a. 用当前策略 π_θ 生成一条轨迹 τ = (s_0, a_0, r_1, s_1, a_1, ...)
   b. For each time step t:
      - 计算 G_t = Σ_{k=t}^{\infty} γ^{k-t} r_{k+1}
      - 更新:θ ← θ + α ∇_θ log π_θ(a_t | s_t) · G_t
3. 重复直到收敛

5.2 数学基础

更新公式:

这就是 Policy Gradient 定理的直接应用。

6. Actor-Critic 架构

REINFORCE 的核心问题:方差大。 来自单条轨迹,同状态同动作在不同轨迹中回报差异可能很大,训练不稳定。

解决思路:用神经网络估计期望回报,替代单条轨迹的真实回报。

  • Actor:策略 ,选择动作
  • Critic:价值函数 ,估计状态的期望回报

Critic 提供 baseline,Actor 根据相对优势调整策略。

6.1 优势函数估计

理论上 ,但 也需要估计。实践中的近似方法:

  • 蒙特卡洛,无偏但高方差
  • TD 误差,低方差但有偏( 依赖当前动作)
  • n-step:看 步真实回报,剩余用 Critic 估计,折中

6.2 GAE

n-step 的问题: 怎么选?GAE 的想法是不选,把所有 n-step 融合,越远的项权重越小:

展开后中间项会在 时抵消,退化为蒙特卡洛; 时得到 -return,是蒙特卡洛和 TD 的平滑插值。

控制「多信真实回报还是多信 Critic」: 完全依赖 Critic(低方差有偏), 完全信真实回报(无偏高方差)。常用

实现在线更新:完整 GAE 需要等轨迹结束。实践中两种做法:

  • 截断 GAE:只看未来 步, 步后就能更新
  • Batch 更新:收集一小批数据后更新,而不是等整个 episode

6.3 Actor-Critic 算法

Actor-Critic 算法:
1. 初始化策略参数 θ,价值函数参数 φ
2. For each episode:
   a. 用当前策略 π_θ 生成轨迹,收集 (s, a, r, s')
   b. For each time step t:
      - 计算 TD 误差:δ_t = r_{t+1} + γ V_φ(s_{t+1}) - V_φ(s_t)
      - 用 GAE 计算优势:Â_t = Σ_l (γλ)^l δ_{t+l}
   c. 更新 Actor:θ ← θ - α ∇_θ L^actor(θ)
   d. 更新 Critic:φ ← φ - β ∇_φ L^critic(φ)
3. 重复直到收敛
  • Actor 损失
  • Critic 损失

相比 REINFORCE,Actor-Critic 牺牲无偏性换取低方差和高样本效率,且支持在线学习。

7. 总结

概念定义作用
策略 状态到动作的映射决定智能体行为
价值函数 期望累积奖励评估状态好坏
Q 函数 状态-动作价值评估动作好坏
优势函数 相对优势
Policy Gradient策略优化方向
重要性采样重用旧样本
KL 散度分布间距离
GAE多步 TD 误差组合低方差优势估计

8. 参考文献

  1. Sutton, R. S., & Barto, A. G. (2018). Reinforcement Learning: An Introduction. MIT Press.
  2. Schulman, J., et al. (2015). "Trust Region Policy Optimization." ICML.
  3. Schulman, J., et al. (2016). "Generalized Advantage Estimation." ICLR.
  4. Kakade, S. (2002). "A Natural Policy Gradient". NIPS.
Last Updated 4/4/2026, 12:51:04 PM