在强化学习的众多方法中,On-Policy(同策略)Off-Policy(异策略) 是两类最基础、最重要的学习范式。它们不仅决定了智能体如何利用经验进行学习,也直接影响算法的样本效率、稳定性与适用场景。

一、基本概念

1. 什么是 Policy(策略)?

在强化学习中,策略(Policy) 是智能体在给定状态下选择动作的规则,通常记为$\pi(a|s)$,表示在状态 $s$ 下采取动作$a$的概率。

2. On-Policy vs Off-Policy 的核心区别

        On-Policy(同策略):智能体使用当前正在优化的策略$\pi$来生成交互数据(即“行为策略” = “目标策略”),并用这些数据来更新自身策略。→“边学边用,用的就是正在学的策略。”

        Off-Policy(异策略):智能体使用一个固定的或不同的行为策略$\mu$来收集经验,但用这些经验去优化另一个目标策略 $\pi$。→ “用别人的经验(或旧策略的经验)来提升自己。”

关键公式差异:

  • On-Policy 直接估计$Q^\pi(s,a)$$V^\pi(s)$
  • Off-Policy 需要通过 重要性采样(Importance Sampling) 或其他机制校正策略差异。

二、通俗易懂的例子

1.On-Policy 例子:学骑自行车(只用自己的经验)

你正在学习骑自行车。

  • 每次摔倒后,你立刻根据刚才的尝试(比如“把手转太急”)调整下一次的动作
  • 不会参考别人怎么骑,也不会重放昨天的录像。
  • 所有学习都基于当前版本的你做出的动作。

这就是 On-Policy:策略在不断更新,而数据也由最新策略实时产生

2.Off-Policy 例子:驾校练车 + 回看行车记录仪

你在驾校学开车:

  • 教练让你先用一种保守方式开(行为策略$\mu$:慢速、频繁刹车);
  • 但你想学会的是激进超车技巧(目标策略$\pi$:快速变道、精准油门);
  • 你把每次练习的视频录下来,回家后反复分析:“如果我当时用了激进策略,结果会怎样?”
  • 通过回放历史数据,你优化自己的激进策略,而无需每次都冒险实操。

这就是 Off-Policy:用旧策略/他人策略收集的数据,去优化新策略

三、详细技术对比

维度 On-Policy Off-Policy
数据来源 必须由当前策略$\pi$生成 可来自任意策略 $\mu$(包括历史数据、专家示范、随机探索等)
样本效率 低:每次策略更新后,旧数据失效,需重新采样 高:可重复利用经验回放缓冲区(Replay Buffer)中的数据
稳定性 通常更稳定(无分布偏移问题) 可能不稳定(需处理策略差异,如重要性采样偏差)
探索 vs 利用 探索直接嵌入策略(如$\epsilon$-greey) 行为策略可独立设计强探索机制(如 Boltzmann 探索)
是否支持离线学习 不支持(必须在线交互)  支持(可纯用历史数据训练)
典型应用场景 在线控制、机器人实时学习 大规模预训练、模仿学习、大模型对齐(如 RLHF)

四、代表算法

1.On-Policy 代表算法

  1. REINFORCE(蒙特卡洛策略梯度)

    • 最基础的策略梯度方法,使用完整 episode 的回报更新策略。
    • 纯 On-Policy,方差大,样本效率低。
  2. Actor-Critic (A2C / A3C)

    • 结合策略网络(Actor)与价值网络(Critic),降低方差。
    • A2C(Advantage Actor-Critic)是同步版本,A3C 是异步版本。
    • 广泛用于 Atari 游戏、机器人控制。
  3. Proximal Policy Optimization (PPO)

    • 当前最流行的 On-Policy 算法,通过 clipped surrogate objective 保证策略更新稳定。
    • 被广泛应用于大模型对齐(如 LLM 的 RLHF 微调)、复杂控制任务。
    • OpenAI 默认推荐算法。

2.Off-Policy 代表算法

  1. Q-Learning

    • 经典值迭代方法,直接学习最优动作价值函数 $Q^*(s,a)$
    • 行为策略可任意(如 $\epsilon$-greedy),目标策略是 greedy。
    • DQN(Deep Q-Network)是其深度学习扩展。
  2. Deep Q-Network (DQN)

    • 使用神经网络近似 Q 函数,结合经验回放(Replay Buffer)和目标网络。
    • 首个成功结合深度学习与 Off-Policy 的里程碑算法
  3. Soft Actor-Critic (SAC)

    • 最先进的 Off-Policy 算法之一,最大化期望回报的同时最大化策略熵(鼓励探索)。
    • 在连续控制任务(如机器人行走)中表现卓越。
    • 常用于需要高样本效率的场景。
  4. DDPG (Deep Deterministic Policy Gradient)

    • 适用于连续动作空间的 Off-Policy 算法。
    • 结合了 DQN 的思想与确定性策略梯度。

五、在大模型中的应用启示

随着大语言模型(LLM)与强化学习结合(如 RLHF),On-Policy 方法(尤其是 PPO)成为主流,原因包括:

  • 安全性:PPO 的更新步长受控,避免模型性能崩溃;
  • 兼容人类反馈:每次微调后生成新回复,再由人类/RM 打分,天然符合 On-Policy 流程;
  • 稳定性优先于样本效率:大模型推理成本高,宁可多花计算资源也要保证训练稳定。

然而,Off-Policy 方法也在探索中

  • 利用历史人类偏好数据(如 HH 数据集)进行离线强化学习(Offline RL);
  • 结合模仿学习(IL)与 Off-Policy 更新,减少在线交互成本。

六、总结

方法 适合场景 不适合场景
On-Policy 需要高稳定性、在线交互可行、策略更新频繁 样本获取昂贵、无法存储历史数据
Off-Policy 样本稀缺、可离线训练、需高样本效率 策略差异大导致估计偏差、训练不稳定
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐