当前位置: 首页 > news >正文

3.7 带经验回放的演员–评论家算法(Actor-Critic with Experience Replay, ACER)

带经验回放的演员–评论家算法(Actor-Critic with Experience Replay, ACER)


概述

前述自然梯度方法(如 TRPO、PPO)均为随机演员–评论家(stochastic actor–critic)结构,因此属于 on-policy 学习。
相比之下,off-policy 方法(如 DQN、DDPG)能通过经验回放(experience replay)复用旧样本,提高样本效率,但通常方差更高、稳定性更差。

@Wang2017 提出 ACER(Actor–Critic with Experience Replay) 算法,融合了以下关键技术:

  • off-policy Retrace 算法 [@Munos2016];
  • 多线程并行训练(借鉴自 A3C);
  • 重要性采样截断 + 偏差修正
  • 双头网络结构(stochastic dueling network)
  • 高效的 信赖域策略优化(TRPO)

ACER 可视为 A3C 的 off-policy 对应版本,兼具稳定性与高样本利用率。


混合 on-policy 与 off-policy 学习

ACER 在每个训练循环中交替执行 on-policy 与 off-policy 学习:

ACER 主循环:

  1. 使用当前策略采样一条轨迹 \(\tau\)
  2. \(\tau\) 执行 on-policy 学习
  3. \(\tau\) 存入经验回放池;
  4. 从回放池采样 \(n\) 条轨迹 \(\tau_k\)
  5. 对每条采样轨迹执行 off-policy 学习

这种混合方式类似于自模仿学习(Self-Imitation Learning, SIL) [@Oh2018]。


Retrace 值评估

ACER 依赖 Retrace 算法进行 off-policy 值估计。
其基本 TD 形式为:

\[\Delta Q_\varphi(s_t,a_t) = \alpha \sum_{t'=t}^T \gamma^{t'-t} \left(\prod_{s=t+1}^{t'} c_s \right)\delta_{t'} \]

其中:

  • \(c_s = \lambda \min(1, \frac{\pi_\theta(s_s,a_s)}{b(s_s,a_s)})\) 为截断重要性权重;
  • \(\delta_{t'} = r_{t'+1} + \gamma V(s_{t'+1}) - V(s_{t'})\) 为 TD 误差。

定义目标值 \(Q^\text{ret}\)

\[Q^\text{ret}(s_t,a_t) = Q_\varphi(s_t,a_t) + \sum_{t'=t}^T \gamma^{t'-t} \left(\prod_{s=t+1}^{t'} c_s \right)\delta_{t'} \]

经递推化简,可得:

\[Q^\text{ret}(s_t,a_t) = r_{t+1} + \gamma c_{t+1}(Q^\text{ret}(s_{t+1},a_{t+1}) - Q_\varphi(s_{t+1},a_{t+1})) + \gamma V(s_{t+1}) \]

而状态值可由动作期望计算:

\[V(s_{t+1}) = \sum_a \pi_\theta(s_{t+1},a) Q_\varphi(s_{t+1},a) \]

这使得在离散动作空间中无需显式估计 \(V(s)\)


网络结构

ACER 采用“双头”神经网络结构:

  • Actor(策略网络):输入状态 \(s\),输出动作分布 \(\pi_\theta(s,a)\)
  • Critic(价值网络):输入状态 \(s\),输出每个动作的 Q 值向量 \(Q_\varphi(s,a)\)

两者共享大部分特征提取层,仅在最后分支输出两个向量(类似Dueling Network [@Wang2016])。


演员与评论家更新

评论家(Critic)损失:

\[\mathcal{L}(\varphi) = \mathbb{E}[(Q^\text{ret}(s,a) - Q_\varphi(s,a))^2] \]

演员(Actor)梯度:

\[\nabla_\theta J(\theta) = \mathbb{E}_{s_t,a_t \sim \rho_b} \!\left[\frac{\pi_\theta(s_t,a_t)}{b(s_t,a_t)} Q^\text{ret}(s_t,a_t) \nabla_\theta \log \pi_\theta(s_t,a_t)\right] \]

其中 \(\rho_b\) 为行为策略的状态–动作分布。


重要性采样截断与偏差修正

直接使用比率 \(\rho_t = \frac{\pi_\theta(s_t,a_t)}{b(s_t,a_t)}\) 容易导致梯度发散。
ACER 对其上限进行截断:

\[\bar{\rho}_t = \min(c, \rho_t), \quad c=10 \]

若直接使用 \(\bar{\rho}_t\) 会引入偏差,故 ACER 增加偏差修正项

\[\begin{aligned} \nabla_\theta J(\theta) = &\mathbb{E}_{a_t \sim b}[\bar{\rho}_t Q^\text{ret}(s_t,a_t)\nabla_\theta\log\pi_\theta(s_t,a_t)] \\ &+ \mathbb{E}_{a \sim \pi_\theta}\!\left[\!\left(\frac{\rho_t(a)-c}{\rho_t(a)}\right)^+ Q_\varphi(s_t,a)\nabla_\theta\log\pi_\theta(s_t,a)\!\right] \end{aligned} \]

第一项:截断后的主梯度;
第二项:偏差修正,仅当 \(\rho_t(a) > c\) 时激活。

此外,为减小方差,将 \(Q\) 转换为优势形式:

\[A(s,a) = Q(s,a) - V(s) \]


高效的信赖域优化(Efficient TRPO)

即使有 Retrace 与修正项,方差仍较大。
因此 ACER 对演员参数引入轻量级 TRPO 更新,并使用以下技术:

  1. 目标演员网络(target actor)
    缓慢追踪主网络:

    \[\theta' \leftarrow \alpha\theta' + (1-\alpha)\theta \]

  2. 信赖域更新(trust region update)
    在分布统计量空间中约束 KL 散度:

    \[\min_z ||\hat{g_t}^{ACER} - z||^2 \quad \text{s.t.} \; \nabla_{\Phi_\theta(s_t)} D_{KL}(f(\cdot|\Phi_{\theta'}(s_t))||f(\cdot|\Phi_\theta(s_t)))^T z < \delta \]

    其解析解:

    \[z^* = \hat{g_t}^{ACER} - \max\left(0,\frac{k^T\hat{g_t}^{ACER}-\delta}{||k||^2}\right)k \]

    其中 \(k = \nabla_{\Phi_\theta} D_{KL}\)
    \(\hat{g_t}^{ACER}\) 为局部梯度估计。

    该更新仅作用于分布统计量 \(\Phi_\theta(s)\)
    避免对整个网络二次反向传播,计算高效。

  3. 目标评论家网络(target critic)
    计算 \(V_{\varphi'}(s)\),进一步降低方差。


总结

ACER 综合了以下创新:

模块 作用
Retrace 值评估 稳定的多步 off-policy 估计
截断 + 偏差修正 降低方差且保持无偏
目标网络(Actor/Critic) 平滑学习过程
高效 TRPO 更新 限制策略变化
双头网络结构 共享特征、提升效率

在 Atari 与 MuJoCo 等任务中,ACER 在性能与样本效率上均超越 A3C、DDPG 等算法。
实验表明,上述每个组成部分(尤其是截断修正与 Retrace)对性能提升都至关重要。

http://www.hskmm.com/?act=detail&tid=29795

相关文章:

  • 3.6 策略优化(TRPO 与 PPO)
  • 3.5 自然梯度(Natural Gradients)
  • 3.3 离策略演员–评论家(Off-policy Actor–Critic)
  • 3.4 深度确定性策略梯度(Deep Deterministic Policy Gradient, DDPG)
  • 20232325 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • 乐理 -06 相对音感 绝对音感
  • 【光照】UnityURP[天空盒]原理与[动态天空盒]实现
  • Hadoop概念以及安装
  • Presto
  • presto配置
  • Hadoop--MapReduce
  • Hadoop--yarn
  • AI元人文构想框架体系
  • [DAX/数据分析表达式/Power BI] DAX 查询视图语言 = `Data Analysis eXpressions`(数据分析表达式) = 编程式数据分析语言
  • Hadoop--HDFS-HA高可用
  • Hadoop--HDFS
  • Redis总结
  • 函数柯里化
  • 防抖与节流
  • 大数据概述
  • 10月——算法竞赛回坑杂记
  • 20232308 2025-2026-1 《网络与系统攻防技术》实验一实验报告
  • Redis知识点汇总
  • 乐理 -05 乐音 乐级
  • Redis实现分布式锁以及Redis客户端比较
  • 一致性哈希原理
  • 缓存和数据库数据的一致性
  • Redis不同数据类型代码场景实践
  • 布隆过滤器
  • Redis持久化