一句话定位
EfficientZero V2(EZ-V2)把 efficientzero 的基于模型 MCTS 从纯离散动作扩展到离散 + 连续统一框架:用采样式 Gumbel search(root 节点动作一半来自当前策略、一半来自更”扁平”的探索分布)替换标准 MCTS 以保证策略提升定理在连续动作下依然成立,并用**基于搜索的价值估计(SVE)**替换 EfficientZero 的自适应步长 TD 目标来缓解陈旧数据的 off-policy 偏差;在 Atari 100k + DMControl Proprio/Vision 共 66 个任务上,以远少于 sampled-muzero(50 次模拟)和 td-mpc2(9216 个想象隐状态)的搜索/规划开销,在 50/66 任务上超过通用算法 dreamer-v3。ICML 2024 Spotlight。
背景与定位
样本效率是 RL 落地现实任务(机器人、需要真实交互的场景)的核心瓶颈。此前的样本高效算法各有偏科:td-mpc2 系用 MPC(MPPI)做规划,其想象隐状态规模比本文大约 200 倍(9216 vs 32),计算负担重、难以扩展到视觉输入;efficientzero(基于 muzero 的 MCTS)在离散动作 Atari 上做到超人表现,但无法处理高维连续动作空间;dreamer-v3 是唯一横跨离散/连续、低维/视觉输入的通用算法,但在各领域都与该领域专精 SOTA 有明显差距(如其 15 步想象展开的长视界规划容易累积模型误差)。
EZ-V2 的目标是做出一个在离散/连续动作、低维/视觉输入四种组合下都不掉队、且比 DreamerV3 更强的通用样本高效框架。作者把 Gumbel MuZero(gumbel-muzero,Danihelka et al. 2021)在离散大动作空间下的策略提升保证扩展到连续动作:Gumbel MuZero 本身不支持连续域,sampled-muzero(Hubert et al. 2021)虽支持连续域但需要 50 次模拟;EZ-V2 声称只需一半(32 次,Atari 上 16 次)模拟即可超过 Sampled MuZero。技术脉络上,EZ-V2 沿着 AlphaGo→AlphaZero→muzero→gumbel-muzero/sampled-muzero→efficientzero 这条 MCTS-as-policy-improvement 谱系,是 efficientzero 同一团队(清华 IIIS)的直接后续工作,正面回应了前作”连续动作只能靠离散化”的局限。
模型架构
延续 muzero/efficientzero 的四组件设计:表征函数 $\mathcal{H}:s_t=\mathcal{H}(o_t)$、动态函数 $\mathcal{G}:\hat{s}_{t+1},r_t=\mathcal{G}(s_t,\mathcal{A}(a_t))$($\mathcal{A}$ 为 action embedding 层)、策略函数 $\mathcal{P}:p_t=\mathcal{P}(s_t)$、价值函数 $\mathcal{V}:v_t=\mathcal{V}(s_t)$,全部为神经网络联合训练。
2D 图像输入(Atari、Vision Control):沿用 efficientzero 的 CNN 架构(见该页详情),未在本文重新展开。
1D 低维输入(Proprio Control)架构(论文附录 G 给出细节,是相对 EfficientZero 的关键差异之一):
- 表征函数:先过一个”running mean block”(类似无可学习参数的 BatchNorm,做观测归一化防止梯度爆炸)→ 线性层 → LayerNorm → Tanh → Pre-LN Transformer 式前激活残差塔(Xiong et al. 2020 风格,LayerNorm+ReLU),3 个 block,输出维度 128,每个线性层隐层大小 256。
- 动态函数:state 与 action embedding(线性层+LayerNorm+ReLU,维度 64)拼接后过同样的 Pre-LN 残差塔。
- reward/value/policy 头结构相同:线性层+LayerNorm 得隐变量 → MLP(含 BatchNorm,仿 EfficientZero)→ 输出,隐层 256,ReLU 激活。
- reward、value 用 efficientzero 式分类表示:均 51 个 bin;value 支持范围 ${-299,299}$,reward 支持范围 ${-2,2}$(因 DMControl 动作重复 action-repeat=2,单步最大 reward 为 2)。
- 策略头:输出 Gaussian 分布的均值和标准差;均值用 5 倍 Tanh 限幅,标准差用 Softplus 保证为正;整体建模为squashed Gaussian(压缩高斯分布,输出映射到有界区间)。
Action-conditioning:动作先过 action embedding 层(线性+LayerNorm+ReLU,维度 64)编码为隐向量再输入动态函数,使相近动作在嵌入空间中彼此靠近以提升泛化。
Gumbel search 的连续动作扩展(核心算法创新,非纯网络结构):root 节点采样 $K$ 个动作,一部分 $A_{S1}$ 采自当前策略 $p_t$(Gaussian),另一部分 $A_{S2}$ 采自”更扁平”的先验分布 $p’t$ 以增强探索;bandit 过程(Sequential Halving)在动作集 $A_S=[A{S1},A_{S2}]$ 上选出 $q(s,a)$ 最高的 $a^S$。论文证明只要 $|A{S1}|\to\infty$,该过程满足策略提升不等式 $q(s,a^S)\ge\mathbb{E}{a\sim p_t}[q(s,a)]$(Definition 4.1,附录含证明)。非 root 节点仅从当前策略 $p_t$ 采样(减少 Q 值估计方差),且采样动作数少于 root 节点(换取更深的搜索深度而非在相近动作上浪费模拟)。
数据
纯在线自对弈 RL,无离线/示范数据:
- Atari 100k:26 个游戏,限制 400k 环境步(= 100k 步 × action-repeat 4),约合 2 小时真人游戏时长。
- DMControl(Tassa et al. 2018)按 sampled-muzero 的 easy/hard 划分,action-repeat=2、单局最长 1000 步,构成 4 个基准,每个 10 个任务:
- Proprio Control 50k(易任务,低维状态输入)
- Proprio Control 100k(难任务,低维状态输入)
- Vision Control 100k(易任务,图像输入)
- Vision Control 200k(难任务,图像输入)
- 共 66 个任务(26 + 20 + 20)覆盖离散/连续动作、低维/视觉输入、稠密/稀疏奖励四个维度的组合。
- Replay:FIFO 容量 $10^6$;训练用 batch worker 对历史轨迹做 reanalyze(用最新 target 模型重跑 Gumbel search,得到更新鲜的 target policy/value);提出”优先级预计算”(priority precalculation)——新轨迹的优先级不再直接设为全局最大值,而是先用当前模型算一遍 Bellman error 热启动,提高新数据被回放的概率。
训练方法
损失函数(附录 A/式 1): $$\mathcal{L}t=\lambda_1\mathcal{L}{\mathcal{R}}(u_t,r_t)+\lambda_2\mathcal{L}{\mathcal{P}}(\pi_t,p_t)+\lambda_3\mathcal{L}{\mathcal{V}}(z_t,v_t)+\lambda_4\mathcal{L}{\mathcal{G}}(s{t+1},\hat{s}{t+1})$$ 系数 $\lambda_1{=}1.0,\lambda_2{=}1.0,\lambda_3{=}0.25,\lambda_4{=}2.0$,另加策略熵损失系数 $5\times10^{-3}$;$\mathcal{L}{\mathcal{G}}$ 为 SimSiam 风格负余弦相似度时序一致性损失(继承自 efficientzero);unroll 步数 $l_{\text{unroll}}=5$。
相对 EfficientZero 的两处核心改动(附录 A 总结):
- 采样式 Gumbel search 替换 MCTS:架构章节已述;保证连续动作下的策略提升,且比 Sampled MuZero 少一半模拟数。
- 基于搜索的价值估计(SVE)替换自适应步长 TD:EfficientZero 用旧策略采集轨迹的多步折扣奖励和做自适应步长 bootstrap,在陈旧数据上偏差大;EZ-V2 改为用当前模型+策略展开的搜索树,把 $N$ 次模拟的 bootstrap 估计取经验均值作为 root 价值目标: $$\hat{V}S(s_0)=\frac{1}{N}\sum{n=0}^N\hat{V}n(s_0),\quad \hat{V}n(s_0)=\sum{t=0}^{H(n)}\gamma^t\hat{r}t+\gamma^{H(n)}\hat{V}(\hat{s}{H(n)})$$ 该过程可与 MuZero 式 policy reanalyze 复用同一次搜索,不引入额外计算开销。论文给出误差上界(Theorem 4.3):$\text{MSE}\nu(\hat{V}_S)\le\frac{2\epsilon^2}{N^2}\sum_n(\sum_t\gamma^{2t}L_r^2+\gamma^{2H(n)}L_V^2)$,模型误差 $\epsilon\to0$ 时上界收敛到 0(附录 F 给出完整证明)。 由于早期训练模型误差 $\epsilon$ 较大会放大 SVE 误差,进一步引入混合价值目标:训练初期($i_t<T_1=4\times10^4$ 步)或采样到很新的数据(buffer 索引 $i_s>|D|-T_2$,$T_2=2\times10^4$)时退回多步 TD 目标,其余情况用 SVE。
策略蒸馏两路目标:常规交叉熵 $\mathcal{L}{\mathcal{P}}(p_t,\pi_t)=\mathbb{E}{a\sim\pi_t}[-\log p_t(a)]$;此外在高维动作空间额外用”简单策略损失” $\mathcal{L}_{\mathcal{P}}(p_t,a^_S)=-\log p_t(a^_S)$ 直接推高搜索推荐动作 $a^*_S$ 的概率,论文用直观例子(附录 D)说明该损失在大动作维度任务(如 DMControl 的 Quadruped Walk)上收敛更快。
训练流水线(附录 H):数据 worker(自对弈,用 Gumbel search 选动作收集轨迹)、batch worker(从 replay buffer 采样、用最新 target 模型 reanalyze 出更新鲜的 target policy/value)、learner(联合训练 reward/dynamics/value/policy)三者并行运行;target 模型按固定间隔周期更新。
Infra(训练 / 推理工程)
- GPU 数与训练时长:论文正文与附录均未披露具体训练 GPU 数、GPU-小时或墙钟训练时间(“2 小时”指 Atari 100k 的环境交互时长而非训练算力,与 efficientzero 口径一致)。官方 GitHub 训练启动脚本以
CUDA_VISIBLE_DEVICES=0,1(2 卡)+ 预留 DDPMASTER_PORT变量为例,但这是仓库使用示例、非论文正式披露的训练规模。 - 并行化:数据 worker / batch worker / learner 三类角色并发运行(附录 H),未具体说明各角色的进程/GPU 分配比例或框架名称(EfficientZero 原版用 Ray + C++/Cython batch-MCTS,V2 论文未重新确认是否沿用相同实现)。
- 精度:未披露。
- 规划开销对比(可作为推理成本的间接指标):EZ-V2 在 Proprio Control 上仅需 32 个想象隐状态(Atari 上 16 个)完成一次决策规划,对比 td-mpc2 的 MPPI 需要 9216 个想象隐状态(约 200 倍),以及 sampled-muzero 的 Sample MCTS 需要 50 次模拟(EZ-V2 仅需一半即 32 次,消融显示 8 次模拟已能超过 Sample MCTS)——论文据此声称”更快的推理时间”,但未给出具体 FPS/延迟数字。
- 推理 / 控制频率、边端部署:未披露。
评测 benchmark
Atari 100k(26 游戏,人类归一化分,Table 1;Random/Human/SimPLe/CURL/DrQ/SPR/MuZero/EfficientZero 结果引自 efficientzero 论文):
| 方法 | Normed Mean | Normed Median |
|---|---|---|
| Random | 0.000 | 0.000 |
| Human | 1.000 | 1.000 |
| SimPLe | 0.443 | 0.144 |
| CURL | 0.381 | 0.175 |
| DrQ | 0.357 | 0.268 |
| SPR | 0.704 | 0.415 |
| MuZero | 0.562 | 0.227 |
| efficientzero | 1.945 | 1.116 |
| dreamer-v3 | 1.120 | 0.490 |
| BBF | 2.247 | 0.917 |
| EZ-V2(本文) | 2.428 | 1.286 |
单游戏亮点:Asterix 61810.0(对比 EfficientZero 25557.8、BBF 3946.1);Qbert 16058.3(对比 EfficientZero 14448.5);Bank Heist 1316.7(对比 EfficientZero 351.0)。个别任务不如同类方法(如 Freeway 得 0.0 分,明显落后于 BBF 的 25.5 分;Kangaroo 1886.7 虽高于 EfficientZero 的 724.1,但仍低于 DreamerV3 4098 与 BBF 6614.7)。EZ-V2 网络参数更少、replay ratio 更低,仍以更少搜索模拟数超过 EfficientZero 和 BBF。
Proprio Control(50k + 100k,共 20 任务)与 Vision Control(100k + 200k,共 20 任务)(Table 2,3 个随机种子;DreamerV3 结果引自其官方数据):
| 指标 | SAC | TD-MPC2 | DreamerV3 | EZ-V2 | CURL | DrQ-v2 | DreamerV3 | EZ-V2 | |
|---|---|---|---|---|---|---|---|---|---|
| Proprio Mean | 552.0 | 740.9 | 517.1 | 723.2 | Vision Mean | 437.3 | 410.3 | 498.5 | 726.1 |
| Proprio Median | 633.3 | 806.4 | 543.4 | 800.4 | Vision Median | 324.9 | 330.6 | 484.5 | 788.1 |
- Proprio Control:EZ-V2(723.2)与当期 SOTA TD-MPC2(740.9)基本持平,但 EZ-V2 规划仅需 32 个想象隐状态 vs TD-MPC2 的 9216 个。
- Vision Control:EZ-V2(726.1)比前 SOTA DreamerV3(498.5)高 45%,在 20 个任务中的 16 个刷新记录;稀疏奖励任务提升尤其明显,如 Cartpole-Swingup-Sparse 上 EZ-V2 763.6 vs DreamerV3 392.4。
- 覆盖:EZ-V2 在 3 大基准(Atari 100k / Proprio Control / Vision Control)总计 66 个任务中的 50 个超过通用算法 DreamerV3。
消融实验(Fig. 3、4):
- 搜索方法:EZ-V2 的采样式 Gumbel search(32 次模拟)优于 sampled-muzero 的 Sample MCTS(50 次模拟);进一步降到 16、8 次模拟,性能在简单任务上依然稳健,8 次模拟即超过 Sample MCTS;复杂任务(如 Quadruped Walk)随模拟数增加性能继续提升。
- 价值目标:混合价值目标(SVE + 早期/新鲜数据回退多步 TD)优于纯多步 TD 目标(缓解 off-policy 偏差);也优于”双 Q 值目标”(类 DDPG 的 optimal-Q Bellman 目标 + double Q-head),论文归因于混合目标能通过树搜索中的多步预测奖励更快逼近真值。
创新点与影响
- 贡献:(1)把 Gumbel search 的策略提升保证从离散动作扩展到连续动作,用”root 节点混合采样(策略内 + 探索用扁平先验)+ bandit 选择”的简单机制证明策略提升定理依然成立;(2)提出 SVE 替代 EfficientZero 的自适应步长 TD,把值估计的 off-policy 偏差问题转化为可分析的模型误差上界;(3)首次给出一个在离散/连续动作、低维/视觉输入四种组合下都不掉队、且整体超过通用算法 DreamerV3 的基于模型 MCTS 框架。
- 改变了什么:把 efficientzero 的适用范围从”纯离散 Atari”扩展为通用样本高效框架,同时把规划/搜索开销压到 sampled-muzero 的一半(32 vs 50 次模拟)、td-mpc2 的约 1/200(32 vs 9216 个想象状态),显示”够用的搜索预算 + 保证策略提升的采样机制”可以替代更重的规划方法。
- 作者自陈局限(Conclusion):论文未处理学习模型在真实世界在线学习场景(如自动驾驶)下的安全性与风险(随机动态、与其他车辆交互等),列为未来工作方向;GitHub 仓库另指出公开分支在 DMControl 上验证充分,但部分 Atari 环境复现结果与论文有出入,仍在修复中。
- 未披露/存疑:训练 GPU 规模、GPU-小时、具体推理 FPS/延迟均未在论文中给出;作者是否沿用 EfficientZero 原版的 Ray + C++/Cython batch-MCTS 基础设施未重新确认。
原始链接
- 论文(arXiv abstract):https://arxiv.org/abs/2403.00564
- 论文 PDF:https://arxiv.org/pdf/2403.00564 (ICML 2024 Spotlight)
- 官方开源实现(GitHub):https://github.com/Shengjiewang-Jason/EfficientZeroV2
一手源存档(sources/)
- efficientzero-v2—github-readme.md — 官方 GitHub README 快照(训练启动脚本、third-party 接入方式、许可证)
- arXiv 2403.00564 全文(arXiv 原文 HTML,不入 git;正文所有数字取自此全文含附录 A–J)