解读OpenAI Sora文生视频技术原理
O

其实在春节前,笔者就打算整理一下对Google Lumiere文生视频模型的理解,但因为一些原因搁置了。对比来看,两者都选择了扩散模型作为技术大方向,但在许多关键细节上存在差异。正好可以借着OpenAI的这篇技术综述,提纲挈领地梳理一下,为什么说这又是一次史诗级的更新。
一、Spacetime Latent Patches:潜变量时空碎片,构建视觉语言系统
在关于“ChatGPT是第一个真正意义上的通用人工智能”的讨论中,核心观点是:大语言模型通过Embedding将人类语言“编码”成自己的语言,再利用注意力机制从中提取丰富的知识与结构,通过加权积累与关联,生成自己的语言,最后再“解码”回人类语言。
与ChatGPT首先引入Token Embedding的思路一致,如何对视觉数据进行建模,是构建Sora的第一步。碎片(Patch)已被证明是一种有效且高度可扩展的视觉数据表征模型,能够很好地处理不同类型的视频和图像。具体做法是:先将视频压缩到一个低维的潜变量空间,然后将其拆解为时空碎片(Spacetime Latent Patches)。
这恰恰是时空建模的关键所在——它实际上统一了时空分割的“语言”。
有了时空碎片这个统一的“语言”,Sora自然解锁了多项技能:一是自然语言理解,它借助DALL·E 3生成视频文本描述,用GPT丰富文本提示,作为合成数据来训练Sora,从而在GPT与Sora的语言空间之间建立起更精确的关联,相当于在Token与Patch之间统一了“文字”;二是图像或视频本身也能作为提示,用户提供的图像或视频可以被自然地编码为时空碎片,应用于各种图像和视频编辑任务,比如静态图动画、扩展生成视频、视频连接或编辑等。
二、扩散模型与Diffusion Transformer:组合成强大的信息提取器
OpenAI称Sora是一个扩散Transformer(Diffusion Transformer, DiT)。这项技术源自伯克利学者的工作,其论文标题为“采用Transformer的可扩展扩散模型”[文献2],整体架构如下。
扩散模型的工作原理是:通过连续添加高斯噪声来破坏训练数据,然后学习逆向过程,即逆转这个加噪过程来恢复数据。训练完成后,模型只需通过学习到的去噪过程来处理随机采样的噪声,就能生成新的数据。从本质上说,扩散模型是一种潜变量模型,它逐渐向数据添加噪声,以获得近似的后验概率q(x1:T|x0),其中x1,...,xT是与x0维度相同的潜变量。
如果用信息熵的角度来理解,就很有意思了:结构化信息的信息熵低,通过多轮添加高斯噪声,其信息熵会升高,原有的结构信息被逐步掩盖;而那些本就无序的非结构化信息,信息熵本来就很高,可能只需要添加少量高斯噪声,甚至不加,它本身就已经很无序了。
在这个视角下,模型学习到的内容,其实是原始结构化信息(如图像)的“底片”。就像化学反应中的酸碱中和:一个地方“酸”性很强,就需要加入更多“碱”去中和;当我们学到了“碱”的分布和投放节奏后,反过来剔除“碱”,原始的“酸”的分布自然就被还原了。
基础的扩散模型在过程中不降维、无压缩,因此还原度比较高。学习过程中的概率分布被作为潜变量参数化,通过训练获得其近似分布,并用KL散度计算概率分布之间的距离[文献3]。而Diffusion Transformer(DiT)因为引入了Transformer,进行了多层多头注意力和归一化,所以引入了降维和压缩。在这种扩散方式下提取“底片”信息的原理,与
大语言模型(LLM)的重整化
三、DiT应用于潜变量时空碎片,学习海量视频中的动态关联
类似大语言模型在其高维语言空间中通过Transformer提取人类语言中的结构与关联信息,
Sora是一个基于扩散模型的Transformer,它的任务是从高维的时空碎片所张成的空间中,观察并提取这些碎片之间丰富的关联与动态演化过程。
遗憾的是,OpenAI的技术综述并未提供太多技术细节。不过,可以参照Google Lumiere的技术原理来大胆推演一下。视频本质上是记录时空信息的载体:时空碎片可以被视为三维空间点集(x,y,z)随时间(t)的运动,或者说,它本身就是一个四维时空模型(x,y,z,t)。无论是Sora还是Lumiere,这类生成模型的第一步,都是如何从视频中提取出相应的关键信息。
Google的Lumiere:A Space-Time Diffusion Model for Video Generation [文献4]同样选择了扩散模型,并堆叠了归一化与注意力层,与Sora的DiT类似。但两者在时长、分辨率、长宽比等细节处理上有所不同。正所谓细节决定成败,
OpenAI强调Sora摒弃了“其他文生视频模型通常采用的调整视频大小、裁剪或修剪到标准尺寸的做法”
四、Sora或Lumiere视频学习与生成背后的原理分析
读完Sora的技术综述,一个直观的感受是:Sora实际上是在时空潜变量碎片上,学习到一个可视层面或表面意义上的状态空间模型(State Space Model, SSM)。正是基于这一点,它在视频生成上展现出了强大的涌现能力:例如,人物和景物在三维空间中的移动一致性;长程时间相关性与对象持久性(如物体被遮挡后再次出现);物体与周围世界的互动性;以及对数字世界的仿真等等。
OpenAI认为,持续扩大视频模型的规模,将使其有能力模拟整个物理和数字世界——这纯粹是一个“规模现象”。
回顾一下此前对SSM整体思维模型的总结:
1. 状态空间对事物的表征和刻画:
2. 状态空间的动态性:
Sora的具体做法在技术综述中没有透露,但从Lumiere的处理中可以窥见端倪。这里有多种建模方式,最直接的方式是将事物整体的演化视为时间序列((x,y,z),t)。但这种方式存在一个老问题:数字视频采样频率不足会导致运动模糊与运动混淆(比如高速旋转的轮子有时看起来像在倒转)。
根据奈奎斯特-香农采样定理,对于模拟信号,要同时看到信号的各种特性,采样频率必须大于原始模拟信号最大频率的两倍,否则就会发生混叠,导致相位或频率模糊。因此,Lumiere采用了自监督时间超分辨率(TSR)和空间超分辨率(SSR)技术[文献5],将事物的运动建模成多维度两两组合的模型,如(x,y)、(x,t)、(y,t)、(z,t)等。
小的时空碎片会在视频序列的各个维度上重复出现,特别是当空间和时间维度之间发生交换时。因此,可以对这些碎片在时间域与空间域的表征进行关联分析。例如,“慢逆时针”可能是“快顺时针”的假象,也可能的确就是“慢逆时针”。即使时域无法分辨,空域也可以通过调整频率,观察到更模糊或没有明显变化的表征。
当物体快速移动时,x-t和y-t切片中的碎片看起来就像是高分辨率x-y切片(传统帧)的低分辨率版本。在t方向上提高这些x-t和y-t切片的分辨率,本质上就是提高视频的时间分辨率。因此,空间x-y视频帧提供了如何在同一视频中提升x-t和y-t切片时间分辨率的范例。同理,当物体移动非常缓慢时,x-t和y-t切片中的碎片会呈现为x-y帧中碎片的拉伸版本,这表明时间切片也可以反过来为如何提升视频帧的空间分辨率提供范例。如果SSM学到了物理规律(如运动方程),理论上也可以直接输出高频帧。
3. 状态空间时间序列的非马尔可夫性:
事实上,非马尔可夫性是世界的常态,时延系统基本都属于非马尔可夫系统。时间维度的注意力与状态空间选择性非常关键。OpenAI将技术综述取名为“视频生成模型作为世界模拟器”,足见其宏大的愿景。既然要模拟世界,就绕不开万事万物之间的长程时间关联或因果关系,非马尔可夫性必然会给这一目标的实现带来棘手的挑战。
五、Sora的前景与未来
Sora、Lumiere等文生视频模型,实际上就是大模型从侧重空间关联,转向了加强时间关联。
不过,仅仅从时空碎片的表象上,还不足以获取足够捕获其内在规律的信息。未来,人类科学家可以将他们长期探索的各个领域(包括但不限于物理、化学、生物学等学科)的成果,可视化为图像或视频,然后交给视频生成大模型去学习,从而辅助发现其中蕴含的潜在规律。
Sora开了一个好头,甚至可以说是史诗级地将视频生成模型泛化成了物理引擎。
普林斯顿和DeepMind的科学家已经开始尝试用随机图来解释大模型涌现出的新能力,这与之前关于“范畴的相变与知识的形成”的讨论不谋而合。处理好大模型从感知到认知的跨越,不仅将为AI4Science领域带来重大突破,甚至可以说,人工超级智能(ASI)也将指日可待。
-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名