因果世界模型:从「看见」到「动手」再到「假如」
WARNING
🧪 Beta公测版本提示:教程主体已完成,正在优化细节,欢迎大家提Issue反馈问题或建议。
路径一到三大多在学
。控制真正需要的是 ——干预分布。路径四把 Pearl 的因果阶梯显式请进世界模型:关联、干预、反事实,分别对应旁观、动手、后悔/想象。文献线索放到下一章 因果文献。

图解说明:只拟合旁观视频,停在第 1 层;带动作的闭环数据与
语义,才爬到第 2 层;反事实还要在固定外生噪声下切换动作。
一、为什么「预测准」仍可能「控不了」?
冰淇淋销量与溺水人数正相关——因为都被气温驱动。若你学到
世界模型里的同构陷阱:
- 演示数据里,人总是在红灯前刹车;
- 观测模型学到「画面出现红灯 ⇒ 车速下降」;
- 你在仿真里强制油门(
),真实物理应加速,观测模型却仍按相关往下压速度。
左边是关联(Association),右边是干预(Intervention)。视频生成式世界模型若只吃旁观互联网视频,默认优化的是左边。

图解说明:经典 SCM。切断指向
的箭(干预)后, 与 的相关可消失。世界模型要回答「我若做 会怎样」,必须能处理这种切断。
二、Pearl 三层梯,映射到世界模型语言
| 层级 | 问题 | 概率对象 | 世界模型里长什么样 |
|---|---|---|---|
| L1 关联 | 看见 | 下一帧预测、掩码补全、语言下一 token | |
| L2 干预 | 若我做 | 动作条件动力学、MPC、机器人试错 | |
| L3 反事实 | 若当时做了别的? | 固定外生噪声下换动作;「后悔」与反事实数据增强 |
形式化一点,结构因果模型(SCM)写
- 观测:噪声
与内生变量按图联合出现; :删掉 的方程,把它钉成常数 ,再沿剩下的方程推 ; - 反事实:先用观测反推
,再在修改后的机制下重放。
逐步推导: 与 在混淆 SCM 里差在哪(点击展开)
demo 里气温
Dreamer / PETS 若训练数据来自智能体真实执行的动作,已经在碰 L2;若世界模型只从电影学物理,则主要是 L1,L2 能力要另验。
三、和前三条路径的关系(不是取代)
| 路径 | 默认学到什么 | 缺了什么时会在因果上翻车 |
|---|---|---|
| 视频生成 | 旁观数据里的伪相关;控不住 | |
| 交互 / 3D | 可玩的 | 潜动作未必等于可解释干预 |
| 抽象状态预测 | 若 | |
| 因果 WM | 显式区分 | 需要干预数据、SCM 归纳偏置或可识别假设 |
实践上的组合拳常常是:路径三提供紧凑可滚的
四、玩具:观测相关 vs 干预
本章 demo.py 构造一个微型 SCM:
- 混淆变量
(「气温」); - 动作
在观测策略下几乎由 决定; - 下一状态
其实只由 与噪声决定,与 无直接箭头。
然后对比:
- 关联回归:用
或只看 预测 ——在观测分布上很准; - 干预测试:强行设定
,关联模型崩,动作条件因果模型仍对。
这就是路径四要你养成的第一反应:上线规划前,先问「我的数据是旁观还是动手?」。

运行
code/demo.py生成。干预时「用混淆 Z」MSE 飙升,「用动作 A」保持低误差。
五、小结
| 概念 | 一句话 |
|---|---|
| 看见;相关;旁观视频 | |
| 动手;切断箭头;控制需要的对象 | |
| 反事实 | 固定 |
| 混淆 | 共同原因制造假相关 |
| 因果 WM | 显式追求干预(与反事实)能力的世界模型 |
📥 Code
| File | View | Download |
|---|---|---|
| demo.py | Open | Download |
| exercise.py | Open | Download |
参考
- Pearl, J. (2009). Causality (2nd ed.). Cambridge University Press.
- Pearl, J. (2000/2009). 干预演算与阶梯:Association / Intervention / Counterfactuals.