Home / 强化学习 / A3C:用多个环境的异步经验稳定深度学习

第 22 天|A3C:用多个环境的异步经验稳定深度学习

系列首页 · 上一篇 · 下一篇

原论文与版本:Asynchronous Methods for Deep Reinforcement Learning,2016。原论文。

先接住前作的问题

早期Actor–Critic分开行动与评价,DQN用回放缓和连续数据相关性。A3C选择另一种训练组织:让多个环境副本同时产生多步轨迹并异步更新共享网络。

五个前置概念

  1. Worker:独立采样与局部计算的进程。
  2. 异步更新:不等待所有进程同时结束。
  3. n步回报:若干真实奖励加末端价值。
  4. 参数滞后:采样或求梯度时参数已过时。
  5. 墙钟时间:真实经过的训练时间。

一、问题设定:并行采样提高吞吐后,旧梯度还对应哪个策略

一个worker采样期间,其他worker已经可能改了共享参数。并行能带来多样轨迹与更高吞吐,也让梯度到达时变旧。A3C要在这个系统条件下构造Actor与Critic的多步目标,并区分墙钟改善、样本效率和策略滞后。

要素 本文设定
研究场景 异步多worker、通常近似on-policy的单智能体学习
状态/观测 各worker独立环境观测
动作 随机策略动作
奖励或学习信号 各任务环境奖励
终止/边界 短unroll截断需bootstrap,真终止不bootstrap

二、由多步回报同时驱动策略与评价

异步框架把采样和更新分散到多个环境副本。每个worker拉取参数,采一小段轨迹,计算多步目标,再把梯度送到共享网络;其他worker可能已修改共享参数,所以这是含滞后的异步优化,不是严格同步批量梯度。

A3C的Actor使用优势加权log概率,Critic回归n步回报,熵项鼓励行为多样。多步目标在真实终止时停止bootstrap,在尚未结束的片段末端使用V。不同worker的轨迹多样性缓解连续帧相关性,因此可不依赖DQN式经验回放;这并不证明回放永远无用。

还要区分论文的框架与具体A3C算法:原文也包含异步一步Q、SARSA和n步Q。多个worker是同一任务的独立采样副本,不是MADDPG那种彼此影响环境的多个决策主体。

用片段末端价值连接n步回报

Rt=∑k=0n−1γkrt+k+γnV(st+n),At=Rt−V(st).R_t=\sum_{k=0}^{n-1}\gamma^kr_{t+k}+\gamma^nV(s_{t+n}),\quad A_t=R_t-V(s_t). Actor 用 logπ×停止梯度的 A,再加熵;Critic回归R。真正终止处末端值为零。

片段采样的两种时间边界

n步目标中的n是当前片段实际可用的转移数,不是固定worker总运行时长;若中途真终止,就用已收到奖励收尾。梯度滞后则发生在计算完成到共享参数接收之间,是另一种时间差。

算清片段结束与真正终止的区别

以下是可手算的教学构造,不是论文实验。

两步奖励(1,2),末端未终止且V=3,γ=0.9。第二步目标R1=2+0.9×3=4.7R_1=2+0.9\times3=4.7,第一步R0=1+0.9×4.7=5.23R_0=1+0.9\times4.7=5.23。若V(s₀)=4,Actor用优势1.23。

若末端是真终止,R₀应变2.8。即使计算完全正确,worker送回梯度时参数若已变化,它仍是旧局部策略下的估计;这就是异步吞吐与滞后的折中。

三、在各worker采片段并异步提交梯度

启动多个worker,共享θ,w
每个worker反复:
  同步本地参数←共享参数
  执行最多t_max步或到终止
  R←0若真终止,否则本地V(末状态)
  反向遍历本地轨迹:
    R←r+γR
    累积Actor梯度 logπ*(R-V)+熵
    累积Critic梯度 (R-V)^2
  异步把局部梯度应用到共享参数
输出:共享策略

实现要点:异步梯度有滞后,部分调参比较不完全对等。

四、分别读墙钟、调参预算与固定参数成绩

实验要素 原文设定与证据范围
环境与任务 57 Atari、连续控制及3D环境
数据来源与规模 多个独立环境并发采样
对比基线 DQN与其他异步价值/Actor–Critic方法
训练预算与资源 图1异步方法16CPU核,DQN为K40GPU
指标及其含义 分数与墙钟学习速度
随机性与不确定性 图1异步取50组学习率实验中最佳5组;DQN固定超参5种子
实际验证的假设 异步采样是否改善相关性和计算利用

实验解读(本文分析):图1以16核CPU对比K40 GPU,并且异步曲线取50次学习率实验中最佳5个,DQN是固定超参数的5种子;不能把它说成完全同等调参预算。57游戏表1另有固定超参数的human-start评估。系统墙钟速度、样本效率及跨种子稳健性应分别读。

核对16核CPU与K40及最佳学习率选择

A3C等异步算法与DQN在五项Atari游戏中的墙钟时间学习曲线
原论文图形摘引;Mnih等,2016,Figure 1;原HTML图形。核对原文。原版权保留。

图中横轴单位是小时,纵轴是各游戏分数,越高越好;每个面板纵轴范围不同。黄线A3C与粉线n-step Q比较时,不只是worker数量,还改变了策略/价值更新;绿线一步Q与橙线一步SARSA又在目标策略上不同。因此这张图同时呈现系统和算法组合效果,CPU上的曲线更快不能直接换算成更少环境样本。

图1的横轴墙钟时间回答系统速度,但异步方法使用16个CPU核心,而DQN使用K40 GPU;异步曲线还是50组试验中选出的最好5组,DQN则是固定超参数的5种子,选择预算不同。图3以所有线程总帧数比较样本效率,图4再以小时比较训练速度,应结合二者判断并行收益。表1的57游戏human-start汇总是每游戏分别训练,不能读成一个多任务模型。 查看原文。

面板任务与方法顺序沿用上一图,但横轴换成训练小时。更多actor-learner通常更快达到相同分数,幅度却不等于同比例节省环境数据,读者应把它与帧数轴那一图分开。
原论文图形摘引|Mnih等,2016,图4(完整面板)。核对原文 · 点图放大。原版权保留;多面板仅重新排版,未改数据。

面板任务与方法顺序沿用上一图,但横轴换成训练小时。更多actor-learner通常更快达到相同分数,幅度却不等于同比例节省环境数据,读者应把它与帧数轴那一图分开。

三排分别是单步Q、n步Q与A3C,五列是同一组游戏。横轴epoch按所有线程合计400万帧计,因而比较的是数据效率;各曲线是三个最佳学习率的平均,不能当成无调参的随机种子平均。
原论文图形摘引|Mnih等,2016,图3(完整面板)。核对原文 · 点图放大。原版权保留;多面板仅重新排版,未改数据。

三排分别是单步Q、n步Q与A3C,五列是同一组游戏。横轴epoch按所有线程合计400万帧计,因而比较的是数据效率;各曲线是三个最佳学习率的平均,不能当成无调参的随机种子平均。

五、异步吞吐不能消除参数滞后

异步更新顺序影响复现,滞后梯度也不因轨迹多样而消失。最佳50组中的5组不能当作随机5次训练的无偏均值;系统墙钟、样本效率和固定参数稳健性必须分别报告。

六、继续追问:终止、worker数量与同步

1. 加倍worker后真实交互量和时间怎样变化?

加倍 worker 可能提高单位时间的环境步数,但每步策略滞后、通信争用和计算效率也会变化。相同墙钟下真实样本通常更多;相同总帧数下则未必更快或更好。应同时报告所有 worker 合计帧数、每秒吞吐、达到目标回报的时间及平均参数滞后,避免用“每个worker的步数”隐藏总交互。

2. 最佳超参数曲线应怎样公平比较?

必须匹配超参数试验次数、范围与筛选数据,并清楚区分随机种子均值和从许多试验里挑出的最好若干。若一方固定超参数做5种子,另一方从50组里选前5,曲线差别包含模型选择优势。更公平的做法是用相同验证预算选配置,再用未参与选择的种子报告均值与区间,并把调参成本纳入总预算。

3. 异步和同步A2C有哪些统计与系统差异?

A3C 允许 worker 在不同参数版本上计算梯度并异步写入,能减少等待慢环境的空闲,但带来陈旧梯度、执行顺序差异与复现困难。同步 A2C 按批收集后统一更新,梯度对应较一致的参数快照,却可能被慢 worker 拖住,批量与探索多样性也不同。比较应控制总样本、batch规模、优化器及硬件,不能把名称不同当作唯一变量。

七、沿采样学习分离继续处理离策略误差

  • 直接系统承接:IMPALA。采样者与学习器进一步分离会加重策略滞后,V-trace显式处理行为与当前策略的差异。

  • 奖励模块组合:ICM。并行采样仍可能拿不到稀疏任务奖励,好奇心模块为Actor–Critic补充探索信号。

  • 原论文与图表入口。§4异步框架;§5.1图1与表1;补充优化设置。

自测两题

第一题考查核心机制,第二题考查边界与辨析。建议先自行作答,再对照参考答案。以下数值小例子均为教学构造。

问题 1:为什么多个并行环境可以缓解样本相关性?

参考答案:不同 worker 处于不同状态、使用不同轨迹,为共享参数提供更分散的更新,避免训练长期围绕单条相邻轨迹变化。多步回报同时帮助奖励向前传播,所以并行与多步学习分别改善数据相关性和信用传播。

问题 2:worker 越多,学习是否一定越快?

参考答案:吞吐可能提高,但梯度也可能更陈旧:worker 采样和计算期间,共享参数已经变化。通信、计算争用和梯度冲突也会增加。因此需要分别测量每秒样本数、达到目标回报的样本量和实际时间。

系列首页 · 上一篇 · 下一篇