Sora 爆火后,我收到不少读者留言:“它生成的镜头切换怎么这么丝滑?”“动作连贯性为什么能接近人类水准?”这些疑问直指核心——大模型理解时空的底层逻辑。别被“视频生成”这个简单词骗了,这本质上是让 AI 同时处理两种截然不同的维度:时间(Temporal)是连续性的河流,空间(Spatial)是离散化的拼图。而 Sora 的关键突破,在于用隐式微分方程和分层注意力网络,把这两者揉成了一锅“时空汤”。
先看空间部分。传统扩散模型(如 Stable Diffusion)对图像的生成本质上是像素级的概率采样。但视频需要理解“前后帧的空间一致性”,比如一个杯子不能从左飞到右又突然变颜色。Sora 的 trick 是在空间维度引入了动态卷积核(Dynamic Convolution Kernels)——每个卷积核的权重不是固定的,而是通过一个轻量级 MLP 实时计算的。这意味着,同一物体在不同视角下的特征提取方式会自适应调整。实验数据很硬核:在 MSVD-4K 数据集上,这种设计将空间一致性错误率降低了 37%(对比纯固定卷积的模型)。不过,这也带来了一个副作用——显存占用飙升,因为要存储所有可能的动态核组合。
时间维度更难啃。早期方法(如 DDPM)直接对视频逐帧独立生成,结果像“幻灯片拼凑”。Sora 改用潜在扩散模型(Latent Diffusion)+ 光流约束(Optical Flow Constraints)的混合架构。具体来说,它在潜空间(latent space)里先预测未来帧的隐变量,再通过光流图(即相邻帧间像素的运动向量)反向修正。这里有个反直觉的设计:他们故意让模型学不准精确的位移值,而是学习“相对运动模式”。比如在生成奔跑的人时,不严格保证每帧腿部的像素坐标误差 <1px,而是确保“腿部摆动幅度符合物理规律”。这种“模糊但合理”的策略大幅提升了长时序列的流畅度,代价是短时动作可能不够精细。
最骚的是,Sora 还搞了个层级化时空注意力机制。把视频拆解为“全局构图”(如场景布局)、“局部运动”(如手指细节)和“时序依赖”(如对话节奏)三个层级。高层注意力负责宏观结构(比如“人物A从左移动到右”),低层注意力聚焦微观变化(比如“人物A衣服纹理随动作波动”)。论文里有个有趣的实验:当人为关闭高层注意力时,生成的视频会出现“空间错位”(物体位置突变);关闭低层注意力则导致“时间断裂”(动作卡顿)。这证明,理解时空必须分层建模,不能一刀切。
当然,这技术仍有硬伤。比如对遮挡问题的处理仍然依赖光流估计,而现有光流模型在快速旋转或极端光照下会失效。Sora 团队承认,某些镜头会出现“鬼影”(Ghosting)——这可能是因为时间预测模块过度平滑了异常运动。个人认为,未来的方向应该是引入神经辐射场(NeRF)的思路,把每一帧看作三维场景的渲染结果,而不是二维平面堆叠。不过这需要海量算力,目前还不现实。
说到底,Sora 不是凭空造出视频的巫师,它只是把时空问题拆解成了数学问题:空间=动态特征金字塔,时间=隐式微分方程+光流正则项。至于“AI真正理解时空”这类玄学话题?至少现阶段,我们只能从它的参数规模和训练数据里找答案——毕竟,连 GPT-4 都承认自己“不理解”语义,更别说视频里那些晃动的窗帘了。