大数跨境

World Model 火了,为「世界模型」正本清源

World Model 火了,为「世界模型」正本清源 知乎AI先行者
2026-05-19
0
导读:但真正难的东西才刚开始

这几年 AI 圈里只要有一个词开始变热,它的定义就会迅速膨胀。

比如,World Model,世界模型。

大家都在用,但每个人说的似乎都不是同一件事。只要模型能预测一点未来,记住一点状态,生成几帧连续视频,很多人就开始自称在做世界模型。

一个真正可用的 world model 到底应该是什么样的?

@dung defender 尝试正本清源:

@dung defender

4 月 2 日编辑于知乎

今天写个小帖子,浅谈一下 world model。

说实话,world model 真的是一个很魔幻的词。一个原本在控制、规划领域里有着相当清晰数学定义的概念,这几年突然被赋予了各种各样的含义。现在的局面基本就是:只要模型稍微能预测一点未来,大家都敢拍着胸脯说,「我这做的是世界模型。」

手动狗头。

所以今天我们来稍微正本清源一下,好好讨论一下 world model 到底是什么,以及它真正困难的地方到底在哪里。

背景:world model 

原本是个很朴素的东西

先说最标准的定义。

我们希望用一个函数 f 来描述一个动力学系统。它接收当前系统状态 st 和当前动作 at 作为输入,输出下一个状态 st+1

s_{t+1} = f(s_t, a_t)

这里的「动力学系统」不一定非得是物理系统,它其实是一个非常一般的概念。只要一个系统的演化可以写成「当前状态 + 当前动作 →\rightarrow→ 下一状态」的形式,它就可以被放进这个框架里。

一旦有了这样的动力学模型,我们就可以把大量决策问题写成一个标准的最优控制问题:

这个 formulation 非常重要的一点是:它没有依赖任何机器人的 prior,也没有限定具体问题域。

它是一个非常通用的数学框架。

比如:

  • 如果 world model f 描述的是人形机器人的动力系统,那么 S 是机器人的状态,action 是伺服电机的驱动信号,R 是机器人完成任务的 reward。

  • 如果 f 描述的是围棋规则,那么 S 是当前棋局,action 是下一步落子,R 是最终是否战胜对方。

  • 如果 f 描述的是语言系统,那么 S 是当前上下文,action 是下一个 token 或某种更高层次的语言操作, R 是文本是否满足任务。

  • 如果 f 描述的是一个动画系统,那么 S 是当前手柄输入和场景状态,action 是选择播放的下一段动画,R 是这段动画是否满足任务需求以及技术美术的审美

这样的例子可以举很多。

核心点在于:一旦你有了一个好的动力学模型,后面就可以调动优化、搜索、规划这一整套武器库来解问题。

这里顺便来个锐评 1:

Sutton 的 bitter lesson 从来没有说过,只有纯数据驱动的方法才是可以 scale 的。


closed-form solution、optimization and search、data-driven method,这三者本来就是相辅相成的。


真正关键的从来不是「站队」,而是你有没有把方法设计对,有没有避免引入不必要、不可扩展的 bias。很多时候方法本身没有高下之分,有高下之分的是用方法的人。



为什么 world model 

这件事很重要

当我们有一个比较精确的 f 时,很多问题其实就好办了。

比如做 humanoid locomotion,如果 fff 已经足够准确,甚至就是一个高保真物理模拟器,那么我们可以直接在这个模型上做强化学习、做规划、做控制优化,最终求解这个最优控制问题。

但问题在于:大量真实问题里的 f 根本不好写。

举几个例子:

  • 布料模拟:你很难同时兼顾精度和速度;

  • 刚体、软体、流体耦合系统:传统 simulator 做起来非常重;

  • 大量 agent 之间的复杂交互:规则写不全,近似又容易炸;

  • 游戏世界里角色和环境物体的大规模动态耦合:更是一个大型混沌现场。

这些系统很难通过传统还原论的方式完整建出来,所以你就很难用通用的 optimization / search 方法在上面求解复杂任务。

这时候,如果我们能学到一个神经网络形式的 f,能把这些复杂系统的动力学近似出来,那很多原本做不了的事情 suddenly 就有希望了。

这里再来个锐评 2:

world model 这东西,本来核心就是建模复杂的动力系统。


关键字是:动。


所以我一直有点难 get 到,一些几乎不涉及真实动态、只是「在静态场景里挪来挪去」的东西,为什么也能被大张旗鼓地包装成 world model。

这种功能你在游戏引擎里搭个环境、写点脚本,很多时候也能实现,甚至有些所谓模型做出来的效果还不如环境贴图。


当然,在这种 toy example 上验证一下记忆能力、长期 consistency,倒也不是完全没价值。有点单不大。



祖师爷还是得认:

给 Schmidhuber 一点 credit

说到这里,还是得给 LSTM 之父 Jürgen Schmidhuber 一点 credit。

他在 2018 年那篇 World Models,确实是比较早系统性地用神经网络来建模环境动力学,并结合 planning 来求解任务的代表性工作之一。这个方向后来火成今天这样,他是该被记上一笔的。

奈何欧洲学术圈这些年整体式微,徒子徒孙数量和声量都不太行,很多 credit 经常就这么被时代洪流冲淡了。学术史有时候也挺现实的:idea 重不重要是一回事,谁把旗子插住是另一回事。


问题难点:

一个可用的 world model

到底难在哪

如果我们先不考虑计算速度,只从「能不能用」这个角度看,一个 world model 主要要解决两个问题:

  • 准确性(accuracy)

  • 一致性(consistency)

准确性指的是:f 算得准不准,和真实动力学有没有明显偏差。

一致性指的是:模型是否能维持长期的时空一致性,能不能记住过去的信息,不要今天长这样,明天物理失忆。

这篇里我先主要聊准确性。

如果要想得到一个精确的 world model f,我觉得至少要从三个视角来看:

  • 系统表征 S

  • 模型结构

  • 训练方式

1. 系统表征 SSS:你到底想让模型「看见」什么

第一件事是:我们怎么定义系统状态 S?

这件事其实非常关键,因为你让模型建模什么,本质上决定了后面整个问题的难度。

目前主流大概有三种路线。

a. 显式 3D 表征:把世界翻译成人类熟悉的几何语言

这一类包括很多 3D conditioned generation、GS、mesh、NeRF 系列思路。

3D 表征本质上是人类对世界的一种高度压缩、规则化的表达方式。它的优点很明显:

  • 表达紧凑;

  • 结构清晰;

  • 可控、可编辑;

  • 很适合接 optimization / graphics / simulator 这类后端。

但它的问题也很明显。

首先,很多系统并不天然适合用显式 3D 去表达,因为很多 3D 表征本身就带有强烈的还原论假设。比如:

  • 人脸表情怎么表示?

  • 面部肌肉和软组织怎么表示?

  • 衣服褶皱、材质细节、接触形变怎么表示?

这些东西一旦被塞进某种人为定义好的 3D 参数空间,很容易就丢掉大量微妙但重要的信息。

其次,3D 表征通常要求你有一整套把世界「转码」成 3D 状态的 pipeline。这个数据获取成本极高。现在我们能拿到海量文本、海量视频,但你很难拿到同等规模、高质量、统一格式的 3D world state 数据。

b. 2D 表征:直接上视频,数据多得像海

另一条主流路线就是:别整那么多,直接用 2D 视频。

这条路最大的优点是:数据多。

互联网什么都可能缺,但就是不缺视频。你根本不需要先把世界重建成某种中间表示,直接让模型吃像素就行。

但问题也很大。

首先,很多物理正确性在单视角 2D 视频里是很难判断的。你看着「像对了」,不代表它真的对。模型很容易学出一种很会骗眼睛、但并不真的符合动力学规律的东西。

其次,2D 表征的计算量极大。对于很多任务,我们根本不需要像素级别的建模精度。比如:

如果我只是想让 world model 建模「机械臂抓杯子」这个任务,那么背景里某个 pixel 的明暗变化,真的不应该是模型重点关注的对象。你让一个模型花大量算力去精确预测这些视觉细枝末节,本质上是在让它为一堆和任务无关的 entropy 买单。

说白了,2D 的问题在于:它什么都装进来了,但不一定什么都该装进来。

c. 隐式表征:JEPA 这一派的理想很丰满

第三条路线是隐式表征,代表性思路像 JEPA 这类方法。这套方法的出发点我觉得其实非常合理:

系统状态 S 不应该是 per-pixel 的,而应该是某种抽象的、压缩后的、任务相关的内部表征。

也就是说,世界模型不应该忙着背诵每一个像素值,而应该学会「理解这个系统此刻的关键状态是什么」。

从这个角度看,JEPA 确实是在做一件很有吸引力的事情:

从 2D 视频里提取压缩的、抽象化的 feature 表征。

但是这条路目前也还有很多坑没有填平。

例如:

  • 如果被 mask 掉的区域在给定其余可见信息的条件下,其真实分布是多峰分布怎么办?

  • 这时候用 L1 loss 去预测一个「平均答案」,显然就很怪。

  • 你预测出来的东西可能在 loss 意义下是对的,但在语义上是错的,在物理上也是错的。

再比如,人类对世界的压缩本质上是任务相关的。

我们不会永远用同一套固定比特预算去编码所有信息。

  • 人眼有对焦机制;

  • 注意力会动态重分配;

  • 人在做不同任务时,会把信息容量优先分给不同区域。

而现在很多 V-JEPA 式的做法,本质上还是在追求一种和任务无关的统一压缩。这件事在我看来,并没有那么 make sense。你让模型不管干什么任务,都把世界压成同一种 latent,这听起来就很像在说:

「别问,先压,压完总有用。」

这套想法很有美感,但离真正 work,可能还差不少工程和理论问题要补。

我个人目前的感觉是:C 这条路从方向上最合理,但需要探很多坑。


2. 模型:你到底打算拿什么去拟合 f

有了系统状态 S 之后,下一个问题是:

我们用什么模型去拟合动力学函数 f?

而讨论到这里,事情就开始熟悉起来了——是的,我们又要进入经典节目:RNN 还是 Transformer?

RNN:理论上更像「计算」,实践上更像「受苦」

RNN 本质上是一个 NC1 的递归计算模型。理论上,它更适合表达那些真正有状态递推性质的动力系统。你可以认为它在「计算模型复杂度」意义上,比固定深度的前馈结构更自然地贴近某些动态过程。

它的优点在于:

  • 更强的计算表达能力;

  • 理论上可以建模更复杂、更精细的动态演化;

  • 对某些 sequential dynamics,它的 inductive bias 很合理。

但它的问题也很直接:

  • 递归结构导致训练难以高度并行;

  • 长序列优化困难;

  • scale 不友好;

  • 工业上不讨喜。

一句话总结:RNN 很像那种理论上你知道它可能更对,但真让你大规模训练的时候,你会开始怀念 Transformer 的人。

Transformer:并行是爽了,但你别忘了它本质上是什么

Transformer 的优点大家都知道:

  • 并行友好;

  • 训练高效;

  • 吃大数据和大算力时效果好;

  • 工程生态成熟。

但 world model 这个问题里,Transformer 也不是没有代价的。

它本质上是一个计算复杂度 TC0 的有限层的前馈并行计算结构。无论你怎么包装 attention、MLP、residual,最后它仍然是在有限深度里做一套相对受限的计算。对于一些真正复杂的动力学建模任务,这种结构未必天然够用。

于是问题来了:

  • 如果你面对的是低复杂度 world dynamics,Transformer 可能够用;

  • 但如果你面对的是高复杂度、多主体、强组合爆炸的动态系统,它未必扛得住。

那怎么办?

  • 要么你加深网络;

  • 要么你引入 test-time computation;

  • 要么你搞某种形式的 CoT。

但问题是:

文本模型可以 CoT,非文本模型怎么 CoT?

这其实是个挺核心的问题。

很多人默认「推理时多算一点」是普适解法,但在视觉、视频、控制场景里,CoT 到底应该长什么样子,其实完全没有被回答清楚。

而且,不同任务的复杂度差别是非常大的。

  • 静态场景里随便漫游一下;

  • 跟 100 个行人一起穿马路;

  • 预测一个角色和多个物体的长期交互;

这些任务的复杂度根本不在一个等级上。你很难指望同一个模型范式、同一个算力预算,优雅覆盖所有情况。

所以在我看来,一个很关键但常被忽视的问题是:

我们到底有没有对想建模的那个 f 的复杂度,有一个起码靠谱的估计?


如果连这个都没有,那很多架构讨论其实都还停留在玄学辩论阶段。

3. 训练方式:你到底要用什么 loss 去逼近 f

最后一个问题是:

即便你已经定义好了 S,也选好了模型,你准备用什么 loss 去训练这个 world model?

如果讨论连续系统,目前主流大体逃不过两类:

  • regression loss

  • diffusion loss

regression:简单直接,但天生怕多峰

regression 的优点很明显:

  • 简单;

  • 稳定;

  • 可以直接监督输出;

  • 对高精度数值拟合比较友好。

但它的问题也经典到不能再经典了:它很难建模多峰分布。

如果未来本来就不是唯一的,而是存在多个可能结果,那么 regression 往往会学到一种平均意义下的答案。这个答案在 loss 上可能还不错,但在真实系统里往往长得像「所有可能性的平均尸体」。

diffusion:表达力很强,但别以为它是白来的

diffusion 的优点是它确实可以建模复杂分布、多峰分布,理论表达力强,生成质量也高。

但它的问题也不能忽略:

  • 对数据量要求高;

  • 训练和推理计算代价大;

  • 优化目标是分布级别的,不是对 f 的显式点对点监督;

所以你想拿它学一个「高精度可计算的动力学函数」,这件事其实并不 trivial。

这里也是我觉得很多讨论容易糊掉的地方。

大家一看到 diffusion 很能生成,就容易默认它也很适合做高精度 world dynamics prediction。这个推理没那么自然。

因为 world model 不只是「画得像未来」,很多时候你需要的是:

  • 状态误差小;

  • 物理量别漂;

  • 接触关系别错;

  • rollout 不要几步之后直接精神分裂。

而 diffusion 学到的是一个分布 matching 的目标,它并不会天然保证你想要的那些东西自动成立。(这里我其实有个绝妙的想法,不过篇幅有限写不下,后面细讲。23333)


小结:world model 

不是一个 buzzword

而是一个系统工程

今天我们从几个不同的视角,简单聊了一下 world model 的前世今生。

如果把它当成一个真正严肃的问题来看,你会发现它绝对不是「拿个视频模型预测几帧未来」这么简单。它背后至少牵涉到这些本质问题:

  • 你如何定义系统状态;

  • 你用什么结构去表达动力学;

  • 你如何处理不同任务复杂度的差异;

  • 你用什么训练目标去逼近一个真正可用的 f;

  • 以及最关键的:你到底想让这个模型干嘛。

所以我自己的看法一直是:

world model 不是一个单点技术,而是一个系统工程。它牵涉的不只是生成质量,而是表征、计算、控制、规划、训练目标、数据形式这一整套问题的共同设计。


也正因为如此,这个方向现在虽然很热,但很多问题其实才刚刚开始被认真讨论。有些工作确实在往前推,有些工作则更像是在给「世界模型」这个词贴金。

没关系,学术界一直如此。

一个词一旦火了,先经历一轮定义膨胀,再经历一轮概念去泡沫化,最后才能慢慢回到真正有价值的问题上。

希望 world model 这个词,最后也能走到那一步。


知友讨论

@鬼鬼:

好文,这篇从 control / robotics 视角梳理得很清楚,尤其把问题拆成 state、model、loss 三层很干净。不过我觉得定义还是略窄了:world model 不应只等于学一个动力学函数。现实里更难的往往不是 transition 本身,而是从部分观测中构造什么样的 state,以及这个 state 是否保留了对象、关系、可控变量和高层抽象,如果状态 只在连续隐变量(如JEPA)或像素里打转,其实很难实现长程的复杂规划,真实的认知世界不仅有物理,还有意图、因果等高级语义。静态 3D/scene 表征虽然“不动”,但对 affordance、约束和因果同样关键。换句话说,world model 不只是物理引擎,更应该是一个可观测、可干预、可抽象、可规划的内部世界表示。

@Yuheng Zhi:

不矛盾,transition/dynamics model可以包含意图等比较抽象的状态,observation model把这些状态转到连续空间。现在这些learn出来的world model一般是这两者的级联。

@冥昭瞢闇:

9宫格来了

@唯一:

nb写的太好了,我是做软体PDE建模的,看完后感觉我的也可以叫world model,套几篇文章了

@蓝柿子:

就跟具身智能这个概念泛滥和定义膨胀有一样的既视感

@April Lee:

以前我们叫马尔科夫过程和动态规划,现在叫世界模型?

@神圣的火焰:

现在所说的世界模型更偏向认知和预测物理状态吧




阅读更多

大厂安全人自救:用 AI 做了个全自动情报员
最希望宇树机甲成为消费级的一群人
为什么 GPT-image-2 总偷偷往图片里撒「脏东西」?

🚀 AI 产品扶持计划:

知乎为 AI 产品提供定制宣发支持,了解/报名请戳:知乎「AI 新品非正式发布现场」扶持计划

🚀 知乎 AI 社群:

如果你是泛 AI 爱好者,对 AI 资讯感兴趣,欢迎扫码加入知乎 AI 社群↓,我们将每周送上 AI 周报,不定时发布 AI 线上线下活动与 AI 产品测试尝鲜。








知乎AI交流群








让一部分开发者先走起来

🚀 知乎科技账号正式登陆 X:

👉 https://x.com/ZhihuFrontier,聚焦「技术 × 观点」的跨语境对话

【声明】内容源于网络
0
0
知乎AI先行者
在智能之海寻找信标,航向未来。
内容 174
粉丝 0
知乎AI先行者 在智能之海寻找信标,航向未来。
总阅读107
粉丝0
内容174