审校 | 重楼
上周OpenAI团队推出了Sora这一大规模视频生成模型,展示了模拟物理世界基本方面的新功能。我关注文本生成视频这个领域已有很长一段时间,我认为这个模型代表了质量方面的突飞猛进。
我在Reddit和Twitter上看到许多人在猜测这个模型如何工作,包括一些非主流的说法(Sora是否在名为Unreal的游戏引擎中运行?)。当这个突破性的AI工具发布时,很多人都想显得自己似乎了解相关原理,或者甚至可能欺骗自己,认为基于几个已发布的视频样本就能从微妙的线索略知一二。我发现这方面最糟糕的例子莫过于Jim Fan博士的帖子,他声称“Sora是一个数据驱动的物理引擎”,该帖子在Twitter上被浏览了大约400万人次(Sora根本就不是一个数据驱动的物理引擎)。
幸运的是,OpenAI发布了一篇研究文章,解释了其模型的架构。如果我们读了这篇文章,实际上没有必要猜测。下面我将介绍OpenAI团队提供的技术,这样我们就可以看懂Sora到底是如何工作的。
为什么Sora很了不起?
自人工智能领域问世以来,创建能够建模、理解和模拟现实世界内在复杂性的人工智能一直是一项非常困难的挑战。与静态图像不同,视频本质上涉及呈现一段时间内的变化、3D空间、物理交互和对象连续性等等。过去的视频生成模型很难处理不同的视频持续时间、分辨率和相机角度。更重要的是,这些系统对物理、因果关系和物体持久性缺乏内在的“理解”,而这种理解是进行高保真的现实模拟所必需的。
OpenAI发布的视频展示了一个比我们在这些领域见过的任何模型都更好的模型。坦白地说,这些视频看起来很真实。比如说,一个人的头会挡住标牌,然后越过标牌,而标牌上的文字会保持不变。动物即使在“空闲”时也会逼真地摆动翅膀。风中的花瓣将随风摇摆。大多数视频模型面对这种挑战无能为力,结果往往是一些闪烁、抖动的画面,观众很难厘清头绪,但Sora不存在这个问题。它是如何做到的?
关于模型架构和训练的技术细节
在研究模型和现有的帖子时,我的第一个主要的感悟是,这项研究工作建立在OpenAI的GPT等语言模型之前的工作基础上。
- 视频表征
研究人员介绍的一个关键创新是Sora如何在训练过程中表示视频。每一帧都被分成了许多小片块(Patch),类似在GPT-4等大语言模型中将单词分解成Token的方式。这种基于片块的方法可以让Sora使用长度、分辨率、方向和宽高比各异的视频加以训练。无论源视频的原始形状如何,从帧中提取的片块都以一模一样的方式加以处理。
图1. OpenAI的研究文章称:“大致来说,我们先将视频压缩到一个较低维度的潜在空间,然后将视频表征分解为时空片块,从而将视频变成片块。”
- 模型架构
Sora使用与其GPT模型密切相关的变换器(Transformer)架构来处理这些视频块Token的长序列。变换器含有时空自关注层,这些层在对文本、音频和视频等序列中的远程依赖关系建模方面的显示大有好处。
在训练过程中,Sora的变换器模型将扩散过程早期的视频块Token序列作为输入,预测原始的“去噪”Token。通过使用数百万个不同的视频进行训练,Sora慢慢学会了自然视频帧的模式和语义。
图2. 来自OpenAI研究文章的去噪过程图
- 文本调整
Sora也是有条件的,这意味着它可以根据文本提示可控地生成视频。文本提示被嵌入,并作为附加上下文提供给模型,与当前视频帧对应的片块一起提供。
为了更好地将文本描述与实际的视频内容联系起来,研究人员为每个训练视频使用了高度描述性的字幕,这些字幕是从一个单独的字幕模型生成的。这项技术帮助Sora更紧密地遵循文本提示。
- 推理过程
在推理过程中,Sora从纯噪声片块开始,并在50多个扩散步骤中反复去噪,直到出现连贯流畅的视频。通过提供不同的文本提示,Sora就能生成与字幕适当匹配的不同视频。
基于片块的视频表征允许Sora在测试时处理任何分辨率、持续时间和方向,只需在开始扩散过程之前将片块排列成所需的形状就行。
功能和限制
通过将训练数据扩展到数百万个视频片段的规模,并使用大量的计算资源,OpenAI团队发现了一些非常有意思的突现行为:
- Sora不仅仅是文本生成视频,还可以从输入图像或其他视频生成视频。
- Sora似乎对场景有一种强烈的3D“理解”,人物和对象以一种连续的方式逼真地移动。这纯粹源自数据规模,无需任何显式的3D建模或图形代码。
- 模型显示对象持久性,常常跟踪实体和对象,即使它们暂时离开帧或被遮挡时也跟踪。
- Sora展示了模拟一些基本的现实交互的能力——比如说,一个数字画家在画布上留下的笔触在一段时间后精确地流传下来。
- 它还可以令人信服地生成复杂的虚拟世界和游戏,比如《我的世界》。Sora可以在渲染场景的同时控制在这个生成的环境中移动的代理。
- 随着额外的算力和数据的增加,视频质量、连贯性和提示遵守大大提高,这表明了它进一步得益于规模。
然而,Sora依然显示出明显的缺陷和局限性:
- 它常常难以为比较复杂的现实世界物理交互、动态和因果关系准确地建模。简单的物理和对象属性仍然具有挑战性。比如说,一个玻璃杯被打翻并溢出液体,显示玻璃杯融化到桌子上,液体从玻璃杯的侧面流淌下来,却没有任何打碎的效果。
- 模型往往自发地生成意想不到的对象或实体,在拥挤或混乱的场景中尤其如此。
- Sora很容易混淆左右,或者当许多行动发生时,一段时间内事件或活动的精确顺序很容易打乱。
- 依然很难逼真地模拟多个角色之间的自然互动和环境。比如说,它会生成一个人在跑步机上走错方向的视频。
未来发展方向
尽管一直存在这些缺陷,但Sora预示了未来的潜力,因为研究人员继续扩大视频生成模型的规模。有了足够的数据和算力,视频变换器可能会开始对现实世界的物理、因果关系和物体持久性有更深刻的理解。结合语言理解能力,这有望通过基于视频的现实世界模拟为训练AI系统开辟新思路。
Sora朝着这个目标迈出了头几步。虽然需要做更多的工作来克服它的许多弱点,但它所演示的新兴功能彰显了这一研究方向的前景。使用大量不同的视频数据集训练的巨型变换器最终可能会生成AI系统,能够与我们的物理环境的内在复杂性、丰富度和深度进行智能交互和理解。
结论
因此,与毫无根据的说法相反,Sora不是通过游戏引擎或“数据驱动的物理引擎”来运行,而是通过一种变换器架构来运行,这种架构凭借视频“片块”来运行,尤如GPT-4凭借文本Token来运行。它擅长创建表明理解深度、对象持久性和自然动态的视频。
该模型的关键创新在于将视频帧作为片块序列来处理,类似语言模型中的单词Token,使它能够有效地管理不同的视频方面。这种方法结合文本条件生成,使Sora能够根据文本提示生成与上下文相关、视觉上连贯的视频。
尽管拥有突破性的功能,Sora仍然有局限性,比如为复杂的交互建模和动态场景保持连贯性。这些局限性恰恰表明了需要进一步研究,但无损于其在推进视频生成技术方面取得的重大成就。
我希望Sora能尽快发布给人们试用,因为我已经想到了关于这种技术的众多新颖的应用,不妨让我们拭目以待。
原文How Sora (actually) works,作者:Mike Young