认识Sora
- OpenAI在他们的技术报告中提到,SORA是通过对大规模的视频和图像数据进行联合训练而得到的生成模型。具体而言,他们进行了在不同持续时间、分辨率和纵横比的视频和图像上的文本条件扩散模型的联合训练。OpenAI采用了一种基于transformer架构的方法,在视频和图像的潜空间上进行操作。我们可以使用该模型生成一分钟的高清视频。
- SORA是一种通用的视觉模型方法,与之前的研究不同,它不再将图像和视频模型进行细分。这意味着SORA能够生成视频和图像,并且还能做更多。类似于当GPT学会语言时,它学会了语言传达的所有内容,SORA也可以学会视觉传达的一切。它具备理解和生成视觉内容的能力,能够表达丰富的视觉概念和信息。这使得SORA成为一个全面的视觉模型,可以应用于各种视觉任务和场景。
- Sora的设计思路与LLM相似,首先,将所有输入数据进行规范化处理(LLM是文本/代码等,Sora是各种类型的视觉数据)。然后通过训练模型来预测下一个“词”(LLM是tokens,Sora是patches),并且使用原始数据而不是经过修剪的数据(包括不同分辨率、时长和高宽比)。通过学会进行预测,模型实际上也学会了数据背后的内在规律。对于LLM来说,这是关于知识的学习,而对于Sora来说,它学习的是物理世界的视觉内容。
能力边界探索:
其实23年有很多视频生成的工作和应用:
但是显然Sora与之相比更厉害,根据Prof.杨的介绍,Sora一些出彩的地方如下:
- 最大支持60s高清视频的生成,以及基于已有短视频的前后扩展,同时保持人物/场景的高度一致性
- 丝滑过渡的视频融合能力
- 同一场景多角度/镜头的生成能力
- 具有动态摄像机运动的视频,即随着摄像机的易懂和旋转,人和其他场景元素在三维空间中一致的移动(所谓视频生成领域的“Immerse”)
- 支持任意分辨率,宽高比的输出
当然,Sora远非完美无缺。例如,在模拟复杂场景的物理效应以及理解某些特定因果关系方面,它可能会面临重大挑战。举个例子,视频中的角色可能会咬一口饼干,但饼干上可能无法清晰展现明显的咬痕。在处理空间细节,比如准确区分左右方向时,Sora也可能会出现混淆。此外,在准确描述特定时间段内发生的事件,如特定摄像机移动轨迹时,它可能显得力不从心。
关于训练流程的一些猜想
将Video转化成Patch的部分如下:
训练过程中一个更具体的baseline:
关键技术:时空编码
将输入的视频划分为若干tuplet,每个tuplet会变成一个token,经过Spatial Temperal Attention进行空间/时间建模获得有效的视频表征token,即下图灰色block
技术报告分析
1.时空联合建模:
2.支持动态分辨率和长度的输入
3. Scale Up技术
4.网络结构:DiT
技术总结
- Scaling Law: 模型规模的增大对视频生成质量的提升具有明确意义,从而很好地解决视频一致性、连续性等问题
- Data Engine:数据工程很重要,如何设计视频的输入(e.g. 是否截断、长宽比、像素优化等)、patches 的输入方式、文本描述和文本图像对质量
- Al Infra: AI 系统(AI 框架、AI 编译器、AI 芯片、大模型)工程化能力是很大的技术壁垒,决定了 Scaling 的规模
- LLM: LLM 大语言模型仍然是核心,多模态(文生图、图生文)都需要文本语义去牵引和约束生成的内容,CLIP/BLIP/GLIP 等关联模型会持续提升能力