一句话定位

Dreamer 是第一个纯靠隐空间想象学到长时程连续控制策略的 model-based RL agent:它先学一个 planet 的 RSSM 世界模型把像素压成紧凑隐状态,然后完全在世界模型「想象」出的隐轨迹上用 actor-critic 学 behavior——关键创新是把多步 λ-return 价值估计的解析梯度通过可微的神经网络动力学一路反传回策略网络(reparameterization),既考虑了想象窗口之外的回报(靠 value 网络),又高效利用了动力学梯度。在 DeepMind Control Suite 的 20 个视觉控制任务上,Dreamer 用 5×10⁶ 步拿到平均 823 分,超过用 10⁸ 步的最强 model-free agent D4PG(786),单张 V100 训练。论文为 ICLR 2020 oral(NeurIPS 2019 Deep RL Workshop oral)。

背景与定位

RL 长期分两条路:model-free(DQN、A3C、D4PG、SAC)靠试错直接学策略,鲁棒但样本效率极低(DMC 上 D4PG 要 10⁸ 步 ≈ 23 天模拟时间);model-based 额外学一个环境模型(world model),用它「脑内推演」来减少真实交互。从像素学准确 world model 一度困难,planet(PlaNet, 2018)用 RSSM 首次做到了从图像学隐动力学,但它靠**在线规划(CEM/derivative-free planning)**选动作,计算昂贵且只看有限想象窗口,导致「短视」。

Dreamer 要解决的正是「怎么从 world model 里高效导出行为」。此前从 world model 导出行为的做法有三类,都有缺陷:(1) 参数化策略最大化想象奖励(world-models-ha-schmidhuber Ha & Schmidhuber 2018、SOLAR),但固定想象窗口→短视;(2) 在线规划(PETS、VisualMPC、PlaNet),昂贵;(3) 用 derivative-free 优化换取对模型误差的鲁棒性,而不用神经网络动力学本身提供的解析梯度。Dreamer 的选择是第四条:learn behaviors purely by latent imagination——学一个 value 网络负责窗口之外的回报,学一个 actor 网络高效算动作,并通过学到的动力学反传 value 的解析梯度来更新 actor。

与经典 actor-critic 的关系:A3C/PPO 用 Reinforce 梯度(高方差,需 baseline);DDPG/SAC 用重参数化/确定性梯度但只反传单步 Q 值、不穿过 transition;MVE/STEVE 用学到的动力学做多步 Q。Dreamer 预测的是 state value(不是 Q),因为它直接把梯度反传穿过动力学,对策略优化已足够。它是把「RSSM 世界模型 + 隐想象 actor-critic」范式立起来的奠基工作,后续 dreamer-v2(离散隐状态,Atari 超人类)、dreamer-v3(一套超参跨 150+ 任务、Minecraft 挖钻石)都直接沿用这套骨架。

模型架构

世界模型(沿用 planet 的 RSSM,image reconstruction 版),由以下部件构成,联合优化,梯度记为 θ:

  • Representation model pθ(sₜ | sₜ₋₁, aₜ₋₁, oₜ):把观测和动作编码成连续向量隐状态 sₜ(带 Markov 转移)。实现 = RSSM + 作用在图像上的 CNN
  • Transition model qθ(sₜ | sₜ₋₁, aₜ₋₁):不看当前观测就预测下一隐状态——正是它让 agent 能在紧凑隐空间里并行想象上千条轨迹而无需生成图像。实现 = RSSM。
  • Observation model qθ(oₜ | sₜ):只用于提供学习信号,实现 = 转置 CNN。
  • Reward model qθ(rₜ | sₜ):dense 网络。
  • 隐状态 sₜ 是连续向量、Markov,模型类比一个非线性 Kalman filter / 隐状态空间模型,但受动作条件、并预测奖励

行为网络(本文核心贡献,都是 dense 网络)

  • Action model aτ ~ qφ(aτ | sτ):实现策略。输出一个 tanh-transformed Gaussian(同 SAC)——aτ = tanh(μφ(sτ) + σφ(sτ)·ε), ε~Normal(0,I)——从而支持重参数化采样,把采样后的动作看成对网络输出的确定性依赖,梯度可穿过采样步。tanh 的均值乘以缩放因子 5(让分布能饱和),标准差用 softplus。
  • Value model vψ(sτ):估计 action model 从状态 sτ 出发能拿到的期望想象回报。

关键的 action-conditioning / 梯度机制:想象轨迹从真实经验采样的隐状态 st 出发,跟着 transition model、reward model、action model 向前推 H 步。由于每一步都是神经网络,∇φ Σ Vλ(sτ) 可用 stochastic backpropagation 解析算出——连续动作和隐状态用重参数化,离散动作用 straight-through 梯度(Bengio 2013)。学 behavior 时世界模型冻结。

配置数字(Appendix A)

  • 图像观测 64×64×3;隐空间分布为 30 维对角高斯
  • 卷积 encoder/decoder 取自 world-models-ha-schmidhuber(Ha & Schmidhuber 2018);RSSM 取自 PlaNet;其余所有函数 = 3 层 dense × 300 单元 + ELU 激活。
  • 想象窗口 H = 15(连续控制),离散控制 H = 10。

三种可选表征学习目标(与算法正交,可插拔):

  1. Pixel reconstruction(默认):优化 ELBO / 变分信息瓶颈(VIB),含观测重建项 ln q(oₜ|sₜ)、奖励项 ln q(rₜ|sₜ)、KL 正则 −β·KL[p‖q]
  2. Contrastive estimation:把 observation model 换成 state model qθ(sₜ|oₜ),用 NCE / InfoNCE mini-batch bound 估计,避免像素预测但信息量受限。
  3. Reward prediction only:只预测未来奖励。 实验结论:reconstruction 最好,contrastive 能解约一半任务,纯 reward 预测不够。

数据

  • 主 benchmark:DeepMind Control Suite 的 20 个视觉控制任务(Tassa et al. 2018),挑选标准是「从像素输入能报出非零性能」的任务。涵盖稀疏奖励、接触动力学、3D 场景、1~12 维连续动作。
  • 观测 = 64×64×3 图像,奖励 ∈ [0,1],每 episode 1000 步,随机初始状态,固定 action repeat R = 2(不像 PlaNet/SLAC 那样逐环境调 action repeat)。
  • 数据采集循环(on-policy 增长的 replay):dataset 用 S = 5 条随机动作 seed episode 初始化;之后在「100 步训练 ↔ 采 1 条 episode」之间交替,采集时执行预测的 mode 动作 + Normal(0, 0.3) 探索噪声。
  • 离散动作泛化验证:Atari 子集(sticky actions,Machado 2018 协议)+ DeepMind Lab 关卡,动作数 3~18,图像同为 64×64×3。这些域上纯 world-model agent 尚不具竞争力,作者明确将其列为未来方向。
  • 数据规模量级:主实验每个 agent 训 5×10⁶ 环境步(= 官方博客所述约 28 小时模拟时间;因 R=2,对应 2.5M 决策步),对照 model-free 用 10⁸ 步(官方博客所述约 23 天模拟时间)。

训练方法

总体循环(Algorithm 1,三过程可交替或并行):① 从经验数据学隐动力学;② 从想象隐轨迹学 action + value 网络;③ 执行 action model 采新经验。

价值估计(λ-return):沿想象轨迹 {sτ,aτ,rτ} 先算价值目标。给出三种估计:V_R(只求窗口内奖励和,用于「无 value」消融)、V_N^k(k 步后用 value 网络接续)、以及 Dreamer 实际用的 ——对不同 k 的 k 步回报做指数加权平均(λ-return),平衡 bias/variance。

学习目标

  • Action model:max_φ E[Σ_{τ=t}^{t+H} Vλ(sτ)],靠解析梯度穿过动力学最大化价值估计。
  • Value model:min_ψ E[Σ ½‖vψ(sτ) − Vλ(sτ)‖²],回归 Vλ 目标(对目标 stop-gradient)。
  • 二者像 policy iteration 一样协同训练。
  • 早停任务:世界模型额外从隐状态预测 discount factor(二分类器,向软标签 0 和 γ 学),按预测 discount 的累积积对时间步加权。

关键超参(Appendix A,连续控制)

  • Batch = 50 条序列 × 长度 50;优化器 Adam。
  • 学习率:世界模型 6×10⁻⁴,action model 8×10⁻⁵,value model 8×10⁻⁵;梯度范数超过 100 时缩放。
  • KL 不缩放(β = 1),但 clip 到 3 free nats 以下(同 PlaNet)。
  • γ = 0.99,λ = 0.95,H = 15;同一批想象轨迹同时更新 action 和 value。
  • 作者报告无需 latent overshooting、无需 action model 的 entropy bonus、无需 value 的 target network。
  • 离散控制差异:action model 预测 categorical logits,采样用 straight-through;探索用 ε-greedy,ε 在前 200,000 梯度步内 0.4→0.1 线性退火;H = 10;β = 0.1;奖励用 tanh bound。

Infra(训练 / 推理工程)

  • 硬件:每个训练 run 单张 Nvidia V100 GPU + 10 CPU 核。紧凑隐空间让「在单 GPU 上并行想象上千条轨迹」成为可能。
  • 训练时间:Control Suite 上约 3 小时 / 10⁶ 环境步;对照 PlaNet 在线规划 11 小时、D4PG 达到相近性能需 24 小时。官方博客给出 Dreamer 训完(5M 步)总计约 16 小时,仍少于其他方法的 24 小时。
  • 框架:实现基于 TensorFlow Probability(Dillon et al. 2017)。官方 TF1 实现 google-research/dreamer,作者另提供 TF2 精简实现 danijar/dreamer
  • 推理 / 控制频率:环境交互时直接从 action model 采样、无额外规划搜索(与 PlaNet 的在线 CEM 搜索相对)——这是它相对在线规划最大的推理开销优势;论文未给出具体 FPS/控制 Hz 数字(未披露)。

评测 benchmark

主结果——DMC 20 任务平均分(Figure 6 / Appendix G,5 seeds 均值)

方法输入环境步平均分
A3Cproprio10⁸243.70
PlaNetpixels5×10⁶332.97
D4PG(最强 model-free)pixels10⁸786.32
Dreamerpixels5×10⁶823.39

即 Dreamer 用 20 倍更少的环境交互就超过 D4PG 的最终性能,同时继承了 PlaNet 的样本效率。在 horizon=20 设定下 Dreamer 在 16/20 任务胜出、4 平

逐任务节选(Dreamer @5×10⁶ vs D4PG @10⁸,Appendix G):需长时程信用分配的任务提升最大——Acrobot Swingup 365.3(D4PG 91.7)、Hopper Hop 369.0(D4PG 242.0)、Cartpole Swingup Sparse 812.2(D4PG 482.0)、Quadruped Run 888.4、Quadruped Walk 931.6;反应式任务如 Walker Walk 961.7、Cheetah Run 894.6、Cup Catch 962.5 亦达/近饱和。

消融

  • 想象窗口鲁棒性(Figure 4):有 value 网络后,Dreamer 对 H 的长短都鲁棒;「无 value」(VR)和 PlaNet 在线规划在长窗口/长时程任务上短视失败。
  • 表征目标(Figure 8/11):pixel reconstruction > contrastive(约解一半)> reward-only(不足)。
  • action repeat(Figure 12):R=2 跨任务最佳。

离散动作(Figure 9):在 Atari 子集与 DMLab 物体收集关卡上学到成功行为,但作者坦承纯 world-model agent 在 Atari/DMLab 上尚不及 Rainbow/IMPALA 等专用 model-free 方法,表征学习是补齐的关键。

创新点与影响

贡献

  1. 提出纯隐空间想象学长时程行为——通过学到的隐动力学反传多步 λ-return 价值的解析梯度来优化参数化策略,兼顾了「窗口外回报」(value 网络)与「动力学梯度的高效利用」(重参数化 + straight-through)。
  2. 在 DMC 20 视觉控制任务上同时刷新样本效率、计算时间、最终性能三项,且全任务共用一套超参
  3. 表征目标可插拔(reconstruction / contrastive / reward),把「表征学习」和「行为学习」解耦,指出表征进步会直接转化为任务性能。

改变了什么:确立了「RSSM 世界模型 + 隐想象 actor-critic + 解析价值梯度」这一 model-based RL 主线,直接催生 dreamer-v2(离散隐状态、Atari 超人类)与 dreamer-v3(一套超参跨 8 领域 150+ 任务、无人类数据挖到 Minecraft 钻石,2025 Nature 正刊)。它证明了「只从世界模型想象出的序列学 behavior」就能超过基于经验回放的顶尖 model-free 方法。

作者自陈的局限

  • 纯 reward-prediction 表征在实验中不够,稀疏奖励下尤其需要重建/对比信号——即算法上限受表征学习制约。
  • 离散动作域(Atari、DMLab)尚不具竞争力,表征学习被列为未来工作。
  • 把隐想象扩展到更高视觉复杂度的环境仍是开放问题。

原始链接

一手源存档(sources/)