一句话定位
DreamerV1 是首个完全基于隐空间想象进行长 horizon 任务解决的强化学习算法,通过在紧凑的隐空间中学习世界模型并基于该模型进行策略学习。
前置依赖
- PlaNet (Hafner et al. 2019): 首个提出 RSSM 架构和隐空间规划的核心工作
- VAE (Kingma & Welling 2014 / Rezende et al. 2014): 变分自编码器用于观测压缩
- SVG (Variational Inference for Policy Gradient): Reparameterization trick 在策略梯度中的应用
- World Model (Ha & Schmidhuber 2018): 早期世界模型思想
核心思想
DreamerV1 的核心思想是将世界模型的学习与策略学习解耦:首先使用变分推断学习一个能够预测未来观测的隐式世界模型,然后在学习到的隐空间中进行大量 Rollout,通过演员-评论家算法学习能够最大化累积折扣回报的策略。由于想象发生在低维隐空间而非高维像素空间,计算效率大幅提升。
模型结构图
输入图像 o_t
↓
┌─────────┐ ┌──────────────┐
│ Encoder │ → │ 隐变量 z_t │
└─────────┘ └──────────────┘
↓
┌───────────────────────────────┐
│ RSSM 循环世界模型 │
│ │
│ h_t = f_phi(h_{t-1}, a_{t-1}, z_t) │
│ z_t ~ q_phi(z_t | h_t, o_t) │
│ p_phi(o_t | h_t, z_t) │
└───────────────────────────────┘
↓
┌─────────────────────────────────┐
│ 演员-评论家网络 │
│ │
│ π_theta(a_t | h_t) │
│ V_psi(h_t) │
└─────────────────────────────────┘
↓
隐空间想象 Rollout
数学推导
1. 世界模型架构 — RSSM
RSSM (Recurrent State Space Model) 将环境建模为隐式马尔可夫决策过程:
状态转移方程(确定性隐状态):
其中
先验分布(预测):
后验分布(推断):
观测重构分布:
2. ELBO 推导(世界模型训练目标)
我们的目标是为世界模型参数
从联合分布出发:
引入变分近似后验
根据 Jensen 不等式,变分下界为:
其中
完整 ELBO 损失函数:
分项说明:
- 重构项:鼓励给定隐状态和隐变量时预测当前观测
- KL 项:拉近后验分布与先验分布,使得先验能够准确预测后验(支持隐空间中的规划)
3. KL Balancing(PlaNet 机制)
为防止后验崩塌到先验导致信息损失,DreamerV1 采用 PlaNet 提出的 KL balancing:
双 KL 目标:
其中
4. 演员-评论家网络
价值函数估计(Critic):
使用 GAE-
其中
价值目标(Value Target):
Critic 损失(回归目标):
Actor 梯度(策略梯度 via Reparameterization):
利用 reparameterization trick:
其中
其中
训练细节
数据收集
- 使用随机策略或先前策略收集一批观测序列
- 每个序列长度
步(DeepMind Control Suite)
世界模型训练
- 使用 ELBO 损失训练 RSSM(包含 Encoder、Decoder、Dynamics Prior/Posterior)
- 使用 Adam 优化器,learning rate =
- KL 权重
= 0.1(实验选定) - 隐变量维度:
维高斯分布
策略训练
- 在世界模型中展开
步想象轨迹 - 价值函数使用 GAE-
( ) 估计 - 每批使用
条想象轨迹更新 Actor 和 Critic - Actor learning rate =
,Critic learning rate =
Imagination Rollout 流程
- 从真实数据集采样隐状态
和隐变量 - 使用当前策略
在 条件下采样动作 - 使用世界模型 dynamics
预测下一步隐状态 - 重复步骤 2-3 展开
步,获得想象的轨迹 - 在想象轨迹上计算折扣回报并更新策略
推理 / Rollout / Planning 过程
在线规划(Online Planning):
DreamerV1 主要使用离线策略学习,不需要在线规划。所有策略学习通过隐空间想象完成,推理时只需运行学习好的策略网络
隐状态更新流程(推理时):
- 观测
输入 Encoder 得到 - 从
采样隐变量 - 使用 RSSM 更新隐状态
- 策略网络输出动作
- 环境执行动作,返回下一帧观测,进入下一循环
注意: 推理时无需运行 Decoder,只有训练时需要。
优点与局限
优点
- 计算效率高: 隐空间想象比像素空间想象快数千倍,因为隐空间维度(32-64维)远低于图像维度
- 端到端学习: 世界模型和策略联合学习,但解耦训练
- 长 horizon 规划能力: ELBO 训练确保隐空间包含足够预测信息
- 离线策略学习: 可利用任意策略收集的数据进行训练
局限
- 连续高斯隐变量: 表征能力受限,难以捕捉多模态环境
- KL balancing 敏感性: 需要仔细调参
和 - 只能处理图像观测: 原版仅支持图像到图像的 VAE 架构
- 动作空间受限: 主要在连续控制任务上验证
与前后内容的衔接
前身:PlaNet
- DreamerV1 直接基于 PlaNet 的 RSSM 架构构建
- 关键改进:将 PlaNet 的 MPC(模型预测控制)规划改为基于策略梯度的策略学习
- 保留了 KL balancing 机制
后继:DreamerV2
- DreamerV2 将连续高斯隐变量替换为离散分类隐变量
- 解决了多模态表征问题,提高了 Atari 任务表现
- 改进了价值目标计算和 KL 调度
可复现实现要点
核心网络架构
# RSSM 隐状态维度
hidden_dim = 200 # GRU 隐状态维度
stoch_dim = 32 # 随机隐变量维度(高斯)
# Encoder: o_t -> z_t
# Conv encoder (images) -> FC -> mu, sigma
# Dynamics: h_t = f(h_{t-1}, a_{t-1}, z_t)
# GRU cell with input [a_{t-1}, z_t]
# Prior: p(z_t | h_t) = N(mu(h_t), sigma(h_t))
# FC -> mu, sigma (no sigma param, use softplus)
# Decoder: p(o_t | h_t, z_t)
# FC -> deconv decoder (reconstruction)关键超参数
| 参数 | 值 |
|---|---|
| hidden_dim | 200 |
| stoch_dim | 32 |
| kl_weight β | 0.1 |
| imagination_horizon H | 15 |
| actor_lr | 1e-4 |
| critic_lr | 1e-4 |
| discount γ | 0.99 |
| gae_lambda | 0.95 |
章节摘要
DreamerV1 提出了一种基于隐空间想象的强化学习算法。核心贡献包括:(1) 完整的 RSSM 架构,通过 ELBO 目标联合训练 Encoder、Decoder、Dynamics Prior/Posterior;(2) 利用 KL balancing 防止后验坍缩;(3) 在低维隐空间中进行想象 Rollout,实现高效的策略学习;(4) 基于 reparameterization trick 的策略梯度估计和 GAE-
关键词
DreamerV1、隐空间想象、RSSM、世界模型、ELBO、变分推断、KL Balancing、Actor-Critic、GAE-