Skip to content

世界模型与Dreamer

本页介绍**基于模型的强化学习(Model-Based RL)**的核心范式——**世界模型(World Models)**及其代表算法族 Dreamer:智能体先学习一个环境的内部”心智模型”,然后在”梦境”中想象 rollout、训练策略,从而大幅减少与真实环境的交互次数。这是强化学习概览中”样本效率”问题的关键解法,也与Sim-to-Real 迁移密切相关。

前置概念:强化学习的标准数学语言是马尔可夫决策过程(MDP,Markov Decision Process——一种用状态集 S、动作集 A、转移概率 P(s’|s,a)、奖励函数 R(s,a) 来建模序贯决策问题的数学框架)。无模型 RL 直接从真实交互的 (s, a, r, s’) 元组中学习;基于模型 RL 则额外学习转移函数和奖励函数的近似——这个近似就是”世界模型”。当环境部分可观测时(即智能体看不到完整状态,只能看到观测 o),问题升级为 POMDP(部分可观测马尔可夫决策过程),此时世界模型还必须学会从观测历史中推断隐状态——这也是为什么世界模型几乎总是与表示学习紧密耦合。

  • 世界模型 = 给 AI 装一个”脑内沙盘”。人类学骑自行车时,不会盲目摔几千次——我们脑子里有个”世界模型”:能预判”如果车把往左打、身体会往右倾”。RL 智能体同样可以先学一个环境的压缩表示和预测模型,然后在脑内”想象”各种动作的后果,从中练出策略再放到真实环境里用。像棋手在脑中推演棋局——不必每步都真去棋盘上落子。用数学语言说,世界模型要学的是 MDP 的两个核心组件:转移模型 T(s_{t+1} | s_t, a_t) 和奖励模型 R(s_t, a_t),有了它们就能在脑内”模拟”整个环境。
  • Dreamer = 在梦境中做梦训练。Ha & Schmidhuber 的 World Models(2018)开了先河:用 VAE(变分自编码器——一种同时学习编码和解码的生成模型,将高维数据压缩到低维隐空间并能从中重建) 把观测压缩成隐状态,用 RNN(循环神经网络——具有内部记忆单元、能处理变长序列的网络,擅长建模时间依赖关系) 预测下一步,用一个简单线性控制器在”梦境”中训练。Dreamer(Hafner et al., 2020)把这套思路推到极致——直接在想象的隐空间轨迹里跑 Actor-Critic(一种同时学习策略函数和价值函数的 RL 范式),策略更新完全不需要真实环境交互,只有学世界模型时才需要真实数据。
  • 基于模型 vs 无模型 = 样本效率 vs 无偏性。无模型 RL(DQN、PPO、SAC)直接从真实交互中学 Q 值或策略,没有模型偏差但样本效率极低(动辄千万步);基于模型 RL 先学环境模型再利用模型生成”虚拟经验”,样本效率高出几个数量级,但模型预测不准会引入模型偏差(model bias)——做梦做歪了,现实里就翻车。形式上,无模型方法的回报估计 Gt=rt+γ⋅rt+1+γ2⋅rt+2+…G_t = r_t + \gamma \cdot r_{t+1} + \gamma^2 \cdot r_{t+2} + \ldots 基于真实轨迹,是无偏的;基于模型方法在 rollout 中用学到的 R̂ 和 T̂ 替换真实值,引入了近似误差,偏差随想象长度 H 累积。
  • 2024-2025 新范式:世界基础模型。从 Dreamer 的”为每个任务训练一个世界模型”,到 2024 年 Google 的 Genie(一种从互联网视频中学习、可生成可交互 2D 游戏环境的基础世界模型) 和 2025 年 NVIDIA 的 Cosmos(面向物理 AI 的世界基础模型平台),世界模型正在走向”大规模预训练 + 下游适配”的 LLM 式路线——一个模型,多种世界。

World Models(Ha & Schmidhuber, 2018)三件套

Section titled “World Models(Ha & Schmidhuber, 2018)三件套”

World Models 用三个组件模拟人类视觉记忆的工作方式。其设计哲学直接受到认知科学中”心智模型”理论的影响:人类在感知世界后会将其压缩为内部表征,并在该表征上进行推理和决策,而非对原始像素逐帧计算。

  1. 视觉模型(V):一个VAE(变分自编码器——编码器将输入映射为隐空间中的概率分布,解码器从分布采样重建输入,通过 KL 正则防止过拟合),把高维像素观测 o 压缩成低维隐向量 z。编码器 q(z|o) 将图像映射到隐空间,解码器 p(o|z) 重建图像。训练目标是 ELBO(证据下界——变分推断中最大化数据对数似然的代理目标):

    LVAE=Eq(z∣o)[log⁡p(o∣z)]−β⋅KL(q(z∣o)∥N(0,I))L_{\text{VAE}} = \mathbb{E}_{q(z|o)}[\log p(o|z)] - \beta \cdot \text{KL}(q(z|o) \| \mathcal{N}(0, I))

    第一项是重建质量,第二项是 KL 正则——β > 1 时隐空间更紧凑但重建模糊(β-VAE),β < 1 时重建锐利但隐空间缺乏结构。Ha & Schmidhuber 使用 β = 1 的标准设定。

  2. 记忆模型(M):一个循环神经网络(LSTM 或 MDN-RNN——混合密度网络与 RNN 的结合,输出下一步隐状态的高斯混合分布(GMM),从而建模多模态的未来),给定当前隐状态 z_t 和动作 a_t,预测下一时刻的隐状态分布:

    P(zt+1∣zt,at,ht)=∑k=1Kπk⋅N(zt+1∣μk,σk2)P(z_{t+1} \mid z_t, a_t, h_t) = \sum_{k=1}^{K} \pi_k \cdot \mathcal{N}(z_{t+1} \mid \mu_k, \sigma_k^2)

    其中 h_t 是 LSTM 的隐状态,K 是混合成分数。用混合分布而非单一高斯是关键——环境中存在多种可能的未来(例如敌人可能左移或右移),单峰分布会平均化导致预测模糊。

  3. 控制器(C):一个极简的线性策略 a=W⋅[zt,ht]+ba = W \cdot [z_t, h_t] + b,只输出动作。W 和 b 通过 CMA-ES(协方差矩阵适应进化策略——一种黑箱连续优化方法,通过维护和更新一个多元高斯分布来搜索最优参数,不需要梯度) 在”梦境”(用 VAE + RNN 生成的虚拟轨迹)中优化。选择线性控制器而非深度网络是刻意的——在梦境中训练小模型更稳定,避免策略梯度在想象的随机性中震荡。

关键思想:大部分”训练”发生在梦境里。真实环境只用于收集数据训练 V 和 M,控制器 C 的参数搜索完全在模型想象的虚拟世界中完成。这与后来的 Dreamer 有根本区别——World Models 的控制器是”进化搜索”,而 Dreamer 用的是”梯度下降 Actor-Critic”。

PlaNet(Hafner et al., 2019)改进了世界模型的质量,核心贡献是递归状态空间模型(RSSM, Recurrent State Space Model——一种将隐状态分离为确定性路径和随机性路径的循环状态空间架构,兼顾可预测性与多模态建模能力):

  • 将隐状态拆分为确定性部分 h_t 和随机性部分 s_t。确定性部分保证长期记忆的稳定传递,随机性部分建模环境的内在不确定性。状态转移方程为:

    ht=fθ(ht−1,st−1,at−1)(确定性循环,类似 GRU/LSTM)st∼qθ(st∣ht,ot)(后验:看到观测时推断随机状态)st∼pθ(st∣ht)(先验:仅靠动作预测,梦境中用)\begin{aligned} h_t &= f_\theta(h_{t-1}, s_{t-1}, a_{t-1}) & &\text{(确定性循环,类似 GRU/LSTM)} \\ s_t &\sim q_\theta(s_t \mid h_t, o_t) & &\text{(后验:看到观测时推断随机状态)} \\ s_t &\sim p_\theta(s_t \mid h_t) & &\text{(先验:仅靠动作预测,梦境中用)} \end{aligned}
  • 随机部分用**先验(prior)和后验(posterior)**两个分布建模,训练时用后验(看到观测),预测/规划时用先验(只有动作)。训练目标是最小化先验与后验之间的 KL 散度,鼓励先验逼近后验——这本质上是一种 变分推断(Variational Inference——用优化方法近似难以直接计算的后验分布的技术):

    Ldynamics=KL(qθ(st∣ht,ot)∥pθ(st∣ht))L_{\text{dynamics}} = \text{KL}(q_\theta(s_t \mid h_t, o_t) \| p_\theta(s_t \mid h_t))
  • 还需训练图像重建损失和奖励预测损失,确保隐状态包含足够信息。

决策用模型预测控制(MPC, Model Predictive Control——在每个时间步求解一个有限步长的最优控制问题,只执行第一步动作,下一步滚动重解的规划方法):每一步用粒子滤波(Particle Filter / CEM 交叉熵方法)在隐空间搜索未来 H 步的最优动作序列,只执行第一步,下一步重新规划。具体流程是:采样 D 条候选动作序列 → 用世界模型想象 rollout 估计累积奖励 → 选 top-K% 的序列拟合新高斯分布 → 重新采样 → 迭代数轮 → 取最优序列执行首步。优点是无需训练策略网络,缺点是推理时计算开销大(每步要做数百次模型前向传播)。

Dreamer(Hafner et al., 2020)的核心突破是把 Actor-Critic 直接搬到想象的隐空间轨迹里训练。与 PlaNet 的 MPC 规划不同,Dreamer 不需要每步搜索——它训练一个端到端的策略网络,计算更快且能处理长视野任务。流程分三大组件:

  1. 表示模型(Representation Model):类似 PlaNet 的 RSSM,将观测编码为隐状态序列。从真实 replay buffer 中采样 (o_t, a_t, r_t) 序列,编码为隐轨迹 {s1,s2,…,sT}\{s_1, s_2, \ldots, s_T\}。

  2. 转移模型(Transition Model):在隐空间中前向预测,从真实数据中采样的初始状态出发,用模型 rollout 出长度为 H 的想象轨迹 s^t+1,s^t+2,…,s^t+H\hat{s}_{t+1}, \hat{s}_{t+2}, \ldots, \hat{s}_{t+H}。注意此时不再需要观测——完全靠先验预测,这正是”做梦”的含义。

  3. Actor-Critic:在想象轨迹的每一步预测状态值 V(st)V(s_t) 和策略 logits,用**回溯(backprop through time, BPTT——通过时间反向传播,将整条想象轨迹视为一个可微计算图,把价值损失梯度一路传回策略和世界模型参数)**直接把想象轨迹上的回报梯度传回到策略网络和价值网络参数——因为整条想象轨迹都是可微的计算图。

关键公式:

  • 想象轨迹上的回报估计(用 TD(λ) 平衡偏差与方差):

    Gt=∑k=0H−t(γλ)k⋅rt+k+(γλ)H−t⋅Vϕ(s^t+H−t)G_t = \sum_{k=0}^{H-t} (\gamma\lambda)^k \cdot r_{t+k} + (\gamma\lambda)^{H-t} \cdot V_\phi(\hat{s}_{t+H-t})

    其中 γ 是折扣因子(通常 0.99),λ 是 TD 参数(控制 bootstrap 程度,λ=1 为蒙特卡洛,λ=0 为一步 TD)。

  • 价值函数损失(对想象的值做回归):

Lcritic=E[symlog2(Vϕ(s^t)−sg(Gt))]L_{\text{critic}} = \mathbb{E} \left[ \text{symlog}^2 \left( V_\phi(\hat{s}_t) - \text{sg}(G_t) \right) \right]

其中 sg(·) 表示 stop-gradient(不回传到价值目标),symlog(·) 是 DreamerV3 引入的对称对数变换 sign(x)·log(1+|x|),用于稳定不同量级的损失信号。

  • 策略梯度:通过反向传播计算(不同于传统 REINFORCE 的采样梯度),因为是可微的模型 rollout。Dreamer 还引入了熵正则化鼓励探索:
Lactor=−E[symlog(Gt)⋅log⁡πθ(a∣s^t)+η⋅H(πθ(⋅∣s^t))]L_{\text{actor}} = -\mathbb{E} \left[ \text{symlog}(G_t) \cdot \log \pi_\theta(a|\hat{s}_t) + \eta \cdot H\left(\pi_\theta(\cdot|\hat{s}_t)\right) \right]

其中 H(·) 是策略熵,η 是熵系数。DreamerV3 进一步用 离散化混合(discretize mixture) 代替连续策略输出,与离散隐状态配合更稳定。

  • 策略更新时零真实环境交互——真实数据只用于训练世界模型本身。完整训练循环是:(1) 用当前策略与环境交互收集数据 → (2) 用真实数据训练 RSSM 世界模型 → (3) 在世界模型中想象 rollout → (4) 在想象轨迹上用 BPTT 更新 Actor-Critic → 回到 (1)。
  • DreamerV2(2021):将连续隐状态替换为离散隐状态(每个维度用类别分布 categorical distribution 建模——将隐向量的每个分量离散化为 K 个类别的分布,而非连续高斯)。直觉上类似于”编码为离散符号”。这种离散表示在 Atari 等离散动作环境中更稳定,在 Atari 55 个游戏上首次超越无模型基线,样本效率大幅领先。论文还发现离散表示对训练超参数更不敏感,减少了调参成本。
  • DreamerV3(2023):规模化 + 通用化。同一套固定超参数在 150 多个任务上全部奏效(Atari、ProcGen、DMC、Minecraft 造钻石等),无需逐任务调参。关键改进包括:对称对数变换(symlog)——symlog(x) = sign(x)·log(1+|x|),将不同量级的信号(奖励从 0.01 到 100)压缩到统一尺度,稳定梯度;自动缩放损失项——动态平衡世界模型、 critic 和 actor 三组损失的比例;增大模型规模。Minecraft 上收集钻石是首个只用离散动作空间世界模型解决的开放世界任务。
  • TD-MPC2(Hansen et al., 2024):NVIDIA 团队提出的基于模型 RL 方法,继承了 TD-MPC 的 MPC 规划路线但大幅改进了世界模型架构。核心创新是跨任务共享世界模型——在 416 个 DMC 任务上统一预训练,一个模型理解所有任务的物理规律,然后用少量数据适配到新任务。在多个基准上超越了 DreamerV3 的样本效率,代表了世界模型走向多任务/通用化的方向。

2024-2025 新进展:从任务专用到世界基础模型

Section titled “2024-2025 新进展:从任务专用到世界基础模型”

世界模型领域在 2024-2025 年经历了范式转变——从”每个任务训练一个世界模型”走向”大规模预训练世界基础模型(World Foundation Models)“,与 LLM 的发展轨迹高度相似:

  • Google DeepMind Genie(2024 年 2 月):从互联网视频中学习交互式环境的基础世界模型。给定一张图片,Genie 能生成可操作的 2D 平台游戏环境——智能体可以在其中执行跳跃、移动等动作,模型预测下一帧画面。Genie 不需要环境标注(动作标签、物理引擎等),纯靠视频自监督学习”如果我做 X,世界会怎样”。它证明了大规模视频数据可以训练出通用的交互式世界模拟器。
  • Google DeepMind Genie 2(2024 年 12 月):Genie 的 3D 升级版。给定一张真实照片,Genie 2 能生成可探索的 3D 虚拟世界——支持键盘 8 方向移动、物体交互、物理效果(重力、碰撞)。训练数据扩展到大规模互联网视频。Genie 2 可用于为 RL 智能体生成多样化的训练环境,是迈向通用世界模拟器的重要一步。
  • NVIDIA Cosmos(2025 年 1 月):NVIDIA 在 CES 2025 发布的世界基础模型(World Foundation Model)平台,专为物理 AI(自动驾驶、机器人)设计。Cosmos 从海量视频数据中学习物理世界规律(刚体动力学、运动、碰撞等),可生成合成训练数据用于下游策略训练。定位类似于”NVIDIA 的世界模型版 CUDA 生态”——提供预训练模型 + 微调工具链。
  • Meta V-JEPA 2(2025 年):Yann LeCun 团队的视频联合嵌入预测架构(Video Joint-Embedding Predictive Architecture)。与生成式世界模型(逐像素预测下一帧)不同,V-JEPA 在隐空间中预测——学习视频的抽象表示并预测未来表示,而非预测具体像素。LeCun 认为”预测每个像素”是浪费计算资源的好方法(“a waste of time”),真正的世界模型应该在抽象层面理解因果结构。V-JEPA 2 在多个视频理解基准上表现强劲,支持机器人操作等下游任务。
  • Sora 与”世界模拟器”之争(2024 年 2 月至今):OpenAI 发布 Sora(文本到视频生成模型)时,声称 Sora 是”世界模拟器(world simulator)“——能理解和模拟物理世界。这引发了激烈的学术辩论(详见下文 世界模型 vs 视频生成 专节)。核心争议是:逐像素生成视频 ≠ 理解因果物理规律。Sora 能生成逼真的视频,但在物体永久性(object permanence)、物理一致性(左右是否反转)等方面存在系统性失败。
  • 自动驾驶世界模型:Wayve 的 GAIA-1(2023 年) 和后续的 GAIA-2 是面向自动驾驶的多模态世界模型——输入视频 + 文本/动作,生成未来驾驶场景。2024-2025 年涌现了 DriveDreamer、Vista、World Model for Autonomous Driving 等一系列工作,用世界模型生成罕见驾驶场景(雨雪夜路、行人鬼探头)来增强驾驶策略的训练数据。

虽然本页聚焦 Dreamer 系列,但必须提及 DeepMind 的 MuZero——它代表世界模型的另一条路线。MuZero 不显式学习”观测 → 下一步观测”的转移,而是学三个抽象函数:

st=hθ(ot,ot−1,…)(表示函数:观测→隐状态)s_t = h_\theta(o_t, o_{t-1}, \ldots) \quad \text{(表示函数:观测} \to \text{隐状态)} (st+1,rt)=gθ(st,at)(动力学函数:隐状态 + 动作→下一隐状态 + 奖励)(s_{t+1}, r_t) = g_\theta(s_t, a_t) \quad \text{(动力学函数:隐状态 + 动作} \to \text{下一隐状态 + 奖励)} (p,v)=fθ(st)(预测函数:隐状态→策略分布 + 价值)(p, v) = f_\theta(s_t) \quad \text{(预测函数:隐状态} \to \text{策略分布 + 价值)}

这三个函数组成了一个隐式世界模型——它在隐空间中模拟环境,但不试图重建观测(不像 Dreamer 用像素重建做损失)。MuZero 的优势是完全不需要环境的前向模型知识(棋盘规则、物理引擎),从零学习,因此能同时搞定棋类(国际象棋、围棋)和 Atari 游戏。MuZero 及其变体也是 AlphaZero 系列自博弈训练的基石。

维度基于模型 RL(Model-Based)无模型 RL(Model-Free)
样本效率高(真实交互少)低(需大量真实交互)
模型偏差有(模型不准则策略偏差)无(直接用真实数据)
计算开销训练 + 推理均更重推理轻
适用场景真实环境代价高(机器人、医疗)模拟器廉价(游戏、仿真)
代表算法Dreamer、MuZero、PETSSAC、PPO、DQN

世界模型 vs 视频生成大模型之争

Section titled “世界模型 vs 视频生成大模型之争”

2024 年 Sora 发布后,“视频生成模型是否就是世界模型”成为 AI 学术界最热门的辩论之一。这场辩论的实质是:什么才算”理解”了世界?

派别核心主张代表人物/机构理论依据
生成式世界模型派逐像素预测下一帧 = 学习世界规律;能生成逼真视频就说明理解了物理OpenAI(Sora 团队)、部分 Diffusion 社区大规模数据 + 生成模型 → 涌现物理理解
抽象表示派像素级生成 ≠ 因果理解;世界模型应在抽象隐空间中学习,丢弃无关细节Yann LeCun(Meta)、World Models 传统信息瓶颈理论:预测每个像素浪费算力
  1. 物体永久性(Object Permanence):Sora 生成的视频中,被遮挡的物体经常”消失”或变形——说明模型学到了像素统计规律而非物理因果。真正的世界模型应该”知道”被遮挡的物体仍然存在。

  2. 可操作性(Actionability):Dreamer / MuZero 的世界模型接受动作输入 T(s'|s,a)——“如果我做 a,世界变成什么?“而 Sora 等视频模型只有文本条件 P(o_{t+1}|o_t, text),没有动作接口——无法用来做 RL 规划。这是 RL 社区最核心的质疑:不能接受动作输入的”世界模型”对决策智能体用处有限。

  3. 长程一致性:生成视频超过几秒后,物理一致性迅速崩塌(左右反转、物体数量变化)。Dreamer 的 RSSM 通过确定性路径 h_t 维持长程记忆,而纯生成模型的”记忆”仅靠自回归上下文窗口。

2025 年的共识正在向中间地带收敛——两者都有价值,且正在融合:

  • 视频模型加入动作条件:Wayve GAIA-2、NVIDIA Cosmos 等都支持动作输入,使视频生成模型具备”可控模拟”能力。
  • JEPA 式抽象世界模型:LeCun 主张的 V-JEPA 不生成像素,而是在学习到的隐空间中预测——既不需要逐像素生成的计算成本,又能学习世界结构。
  • 视频预训练 → 世界模型微调:用互联网视频做大规模预训练学习通用世界知识,再在具体任务(机器人、驾驶)上用少量交互数据微调——这是 2025 年最主流的研究路线(Genie 2、Cosmos 均采用此策略)。

一句话总结:世界模型的终极目标不是”画出逼真的下一帧”,而是”理解做某个动作后世界会怎样变化”。视频生成是一个强大的预训练信号,但完整的决策系统还需要动作接口和因果推理能力。

黄色框(想象 rollout)和绿色框(Actor-Critic 更新)完全在模型内部完成,不触碰真实环境——红色框只在收集训练世界模型所需数据时交互。

世界模型核心训练框架(PyTorch 伪代码)

Section titled “世界模型核心训练框架(PyTorch 伪代码)”
import torch
import torch.nn as nn
# 表示模型:将观测编码为隐状态(确定性 h + 随机性 s 的后验)
class WorldModel(nn.Module):
def __init__(self, obs_dim, hid_dim, act_dim):
super().__init__()
# 编码器:观测 -> 随机隐状态的后验参数(均值 + 方差)
self.encoder = nn.GRU(obs_dim + act_dim, hid_dim, batch_first=True)
self.post_head = nn.Linear(hid_dim, 2 * hid_dim) # 输出均值和对数方差
def forward(self, obs, act, h_prev):
# 拼接当前观测与动作,过 GRU 得到确定性隐状态
h, _ = self.encoder(torch.cat([obs, act], -1).unsqueeze(1), h_prev)
mu, logvar = self.post_head(h).chunk(2, dim=-1) # 后验 q(s|h,o)
s = mu + torch.randn_like(mu) * (0.5 * logvar).exp() # 重参数化采样
return h, mu, logvar, s # 隐状态用于想象 rollout
# 训练循环:从真实数据学世界模型,Dreamer 再在隐空间想象 rollout 做 Actor-Critic
model = WorldModel(obs_dim=64, hid_dim=256, act_dim=6)
opt = torch.optim.Adam(model.parameters(), lr=1e-4)
for obs, act, rew, next_obs in replay_buffer: # 真实交互数据
h, mu, logvar, s = model(obs, act, h_prev)
loss_recon = mse(decode(s), obs) # 观测重建损失
loss_kl = kl_divergence(mu, logvar) # KL 正则项
loss = loss_recon + 0.1 * loss_kl # 总损失
opt.zero_grad(); loss.backward(); opt.step() # 只需真实数据,策略更新在想象中完成

完整 Dreamer 实现需额外定义转移模型(先验预测)、奖励预测头、价值网络和策略网络,并在想象轨迹上做 BPTT(backprop through time)。此处展示世界模型表示学习的核心逻辑。

  • 隐状态设计是成败关键:纯确定性模型(如标准 RNN)无法捕捉环境随机性,容易过拟合到单一轨迹;纯随机模型则难以做长期规划。RSSM 的”确定性 + 随机性”分拆是当前最优实践。
  • 想象 rollout 长度 H 要适度:太短学不到长期回报,太长则模型误差累积导致”梦境失真”。DreamerV3 默认 H 约 15 步,并增大想象幅度的同时用 symlog 变换稳定梯度。
  • 世界模型 vs 环境模型的校准:定期检查模型预测的分布与真实数据分布的差异(如用 log-likelihood 或 L2 误差),模型发散时策略也会跟着崩溃。
  • 数据收集策略要兼顾探索:纯贪心收集的数据会让世界模型只见狭窄的状态空间。Dreamer 通常用策略网络的熵正则化或额外的探索奖励来保证数据多样性。
  • 离散 vs 连续隐状态的选择:DreamerV2 证明离散隐状态(categorical)在 Atari 等离散动作环境中更稳定;连续隐状态在连续控制(DMC)中更常用。DreamerV3 统一了两者。
  • 不要忽视计算成本:基于模型方法每次更新要跑前向 + 反向的想象 rollout,单步训练 FLOPs 远高于无模型方法。衡量”样本效率”时要把计算量也纳入考量——样本省了但算力花了。
  • 机器人连续控制(DeepMind Control Suite):DreamerV3 在 DMC 的多个连续控制任务(cheetah 跑、manipulator 抓取、humanoid 行走)上用远少于 SAC、TD3 的真实环境步数达到相同性能,是机器人学习(真实电机每一步都有成本)的理想范式。
  • Atari 游戏全覆盖:DreamerV2 是首个在 Atari 55 游戏基准上以基于模型方法超越人类水平无模型基线的算法,DreamerV3 进一步在同一套超参数下刷新记录。
  • Minecraft 钻石收集(DreamerV3):2023 年 DreamerV3 成为首个通过世界模型在 Minecraft 中自主学会收集钻石的智能体——钻石需要长链规划(砍树→做镐→挖矿→找钻石),证明了想象 rollout 的长期规划能力。
  • 自动驾驶与机器人仿真预演:特斯拉、Waymo 等用世界模型在仿真中生成罕见危险场景(行人突然冲出、雨雪打滑)训练驾驶策略,大幅减少真实路测里程——本质是把世界模型当”高风险场景生成器”。
类库语言说明
DreamerV3(官方)Python / JAXHafner 团队官方实现,含 Atari/DMC/ProcGen/Crafter 全部基准,JAX + Haiku 编写
dm_controlPythonDeepMind Control Suite,连续控制任务标准环境,Dreamer 主基准之一
GymnasiumPythonOpenAI Gym 的维护版,大量 RL 环境接口,含 Atari、Box2D、MuJoCo
MuJoCoC / Python物理仿真引擎,机器人连续控制主流环境,支持 MJX(JAX 加速)
CrafterPythonMinecraft 风格的开放世界 benchmark,DreamerV3 测试长链规划
TF-Agent / AcmePythonGoogle 出品的 RL 框架,Acme 含 Dreamer/PlaNet 风格实现参考
术语英文解释
世界模型World Model智能体内部对环境动力学的学习模型,可预测状态转移和奖励
基于模型的 RLModel-Based RL先学环境模型再用模型辅助决策或生成虚拟经验的 RL 范式
无模型 RLModel-Free RL不显式学习环境模型,直接从交互数据学值函数或策略
模型偏差Model Bias学到的环境模型与真实环境之间的差异导致的策略性能退化
隐状态Latent State世界模型将高维观测压缩后的低维内部表示
RSSMRecurrent State Space Model递归状态空间模型,分离确定性与随机性隐状态的世界模型结构
想象 rolloutImagination / Latent Rollout在世界模型内部用学到的动力学前向模拟出虚拟轨迹
粒子滤波Particle Filter / CEM用一组候选解(粒子)迭代逼近最优动作序列的规划方法,PlaNet 使用
表示模型Representation Model将观测编码为隐状态的模块(Dreamer 三组件之一)
转移模型Transition Model在隐空间中预测下一步状态的模块(Dreamer 三组件之一)
样本效率Sample Efficiency达到目标性能所需的真实环境交互步数,步数越少效率越高
VAEVariational Autoencoder变分自编码器,World Models 用于压缩观测的生成模型
  • World Models 原文:Ha & Schmidhuber, “World Models”, 2018. 开山之作,首次提出 VAE + RNN + 线性控制器在梦境中训练的范式。附带极具视觉冲击力的 demo(CarRacing-v0、ViZDoom)。
  • PlaNet:Hafner et al., “Learning Latent Dynamics for Planning from Pixels”, ICML 2019. 提出 RSSM 和粒子滤波 MPC,是从 World Models 到 Dreamer 的关键桥梁。
  • Dreamer:Hafner et al., “Dream to Control: Learning Behaviors by Latent Imagination”, ICLR 2020. 在想象隐空间做 Actor-Critic 的突破性工作,DMC 上样本效率大幅领先。
  • DreamerV2:Hafner et al., “Mastering Atari with Discrete World Models”, ICLR 2021. 离散隐状态,首个在 Atari 55 游戏上超越无模型基线的基于模型方法。
  • DreamerV3:Hafner et al., “Mastering Diverse Domains through World Models”, 2023. 固定超参数搞定 150+ 任务,含 Minecraft 钻石收集,是目前最通用、最强大的世界模型 RL 框架。
  • 基于模型 RL 综述:Moerland et al., “Model-based Reinforcement Learning: A Survey”, 2020. 系统梳理基于模型 vs 无模型的理论关系与工程实践。
  • PyTorch 入门:如需复习 PyTorch 基础,参见 PyTorch 指南。更多 RL 背景见强化学习概览与经典 RL 算法详解。