这里是陌小北,一个正在研究硅基生命的碳基生命。正在努力成为写代码的里面背诗最多的,背诗的里面最会写段子的,写段子的里面代码写得最好的…厨子。
写在前面
早上醒来,就看到OpenAl推出的视频模型Sora炸锅了,感觉所有人都不淡定了… 这种时候我一般是先不看,让子弹先飞一会儿的,正当我看会儿闲书修身养性的时候,技术报告又出来了,这下我也来神儿了,盘他盘他…
其实我老早就想研究一下当前的文生视频模型都有哪些技术,做个调研和总结了,今天就当个起点吧。因为2024年很可能迎来视频的“ChatGPT 时刻”,a16z发布了文章《为什么2023是AI视频的突破年,以及2024年的展望》,总结了2023年的AI视频产品以及相应的时间点。
再加上年初,谷歌推出了Lumiere模型,字节跳动和腾讯也分别公布了MagicVideo V2与VideoCrafter2,今天OpenAl的Sora一出,只能说硝烟已至,未来已来。
通过这份总结可以看出,大多数产品只能生成 3 到 4 秒钟的视频,并且存在视频质量参差不齐,人物风格难以统一等问题,但是今天Sora直接将时长打到60秒,并且支持多角度镜头,还有最重要的,Sora似乎已经涌现出了模拟能力,有了“世界模型”的雏形…
技术报告解读
首先贴上技术报告地址:https://openai.com/research/video-generation-models-as-world-simulators
报告标题是“Video generation models as world simulators” —— “作为世界模拟器的视频生成模型”,并且在报告开始就说了,视频生成模型是构建物理世界通用模拟器的一个值得研究的方向,悬念感拉满。
接下来是回顾之前视频领域的研究进展,主要包括 recurrent networks,generative adversarial networks(GAN),autoregressive transformers,diffusion models,这些方法通常应用与小范围的视觉数据、短视频或固定大小的视频。Sora是一个通用的视觉数据模型,它可以生成不同时长、长宽比和分辨率的视频和图像,而且最多可以输出长达一分钟的高清视频。
关于报告公示的具体细节,先泼个冷水,CloseAI 的报告不包含模型和训练的细节,报告重点阐述的有两点:第一,Sora将所有类型的视觉数据转换为统一表示形式(patches),从而用于大规模训练生成模型;第二,对 Sora 的能力和局限性进行定性评估。
技术点一:视觉数据转为 Patches
Patches是类似于LLM中token的概念。LLM过使用互联网上大规模的数据进行训练从而获得了通用能力,这也给了Sora灵感。
LLM中正是通过token这一新的范式,将文本的多种模态 (代码、数学和各种自然语言)统一了起来。所以视觉模型Sora参考了这一创新,OpenAI 发现 patches 是训练生成各种类型视频和图像的模型的可扩展且有效的表示。
如下图,首先将视频压缩到较低维的潜在空间,然后将表示分解为spacetime patches,从而将视频转换为 patches。
技术点二:视频压缩网络
OpenAI 训练了一个降低视觉数据维度的网络和相应的解码器模型。看起来还是类似于transformer 的编码器和解码器,编码器将原始视频作为输入,并输出在时间和空间上压缩的latent representation,解码器将生成的潜在表示映射回像素空间。Sora 在这个压缩的潜在空间中接受训练,而后生成视频。OpenAI 还训练了,将生成的潜在表示映射回像素空间。
技术点三:Spacetime Latent Patches
给定一个压缩的输入视频,OpenAI 提取一系列时空 patches,充当 Transformer 的 tokens。该方案也适用于图像,因为图像可视为单帧视频。OpenAI 基于 patches 的表示使 Sora 能够对不同分辨率、持续时间和长宽比的视频和图像进行训练。在推理时,OpenAI 可以通过在适当大小的网格中排列随机初始化的 patches 来控制生成视频的大小。
技术点四:用于视频生成的Scaling Transformer
Sora 是一个扩散 Transformer。关于为什么采用Transformer,报告中提到,Transformer 在各个领域都表现出了卓越的缩放特性,包括语言建模、计算机视觉、和图像生成。同时,OpenAI 发现扩散 Transformers在视频模型上同样有效。
Sora的具体实现方式是:通过给定的输出的noisy patches(噪声 patches,以及像是问题提示一类的训练信息),训练出模型,用来预测原始的“clean” patches。
下面,OpenAI 展示了训练过程中具有固定种子和输入的视频样本的比较。随着训练计算的增加,样本质量显着提高。
技术点五:语言理解
由于训练文本到视频生成系统需要大量带有相应文本字幕的视频。OpenAI将 DALLE 3 中的重字幕(re-captioning)技术应用于视频。具体来说,首先训练一个高度描述性的字幕生成器模型,然后使用它为训练集中所有视频生成文本字幕。研究团队发现,对高度描述性视频字幕进行训练可以提高文本保真度以及视频的整体质量。
与 DALLE 3 类似,研究团队还利用 GPT 将简短的用户 prompt 转换为较长的详细字幕,然后发送到视频模型。这使得 Sora 能够生成准确遵循用户 prompt 的高质量视频。
亮点一:可变的持续时间,分辨率,宽高比
以往,图像和视频生成方法通过需要调整大小、进行裁剪或者是将视频剪切到标准尺寸。Sora采用在原始大小的数据上进行训练,OpenAI 发现在原始大小的数据上进行训练,可以提供以下好处:
首先是采样的灵活性:Sora 可以采样宽屏视频 1920x1080p,垂直视频 1080x1920p 以及两者之间的视频。这使 Sora 可以直接以其天然纵横比为不同设备创建内容。Sora 还允许在生成全分辨率的内容之前,以较小的尺寸快速创建内容原型 —— 所有内容都使用相同的模型。
其次是改进帧和内容组成:研究者通过实证发现,使用视频的原始长宽比进行训练可以提升内容组成和帧的质量。(原文的例子我就不贴了,反正就是证明他们的方法好)
亮点二:可以以图像和视频作为提示
这里,报告中列举了通过DALL-E的图像制作动画视频、基于一段视频拓展新视频、SDEdit(根据文本 prompt 编辑视频的方法,能够在零样本条件下改变输入视频的风格和环境)、连接视频、生成图像(单帧视频)。
亮点三:涌现模拟能力
OpenAI 发现,视频模型在经过大规模训练后,涌现出模拟能力。这些能力使 Sora 能够模拟物理世界中的人、动物和环境的某些方面。这表明,视频模型的持续扩展是开发物理和数字世界模拟器的一条有前景的道路。
Sora表现出的涌现模拟具体能力如下:
(1)三维一致性。Sora 可以生成动态摄像机运动的视频。随着摄像机的移动和旋转,人物和场景元素在三维空间中的移动是一致的。
(2)长序列连贯性和目标持久性。视频生成系统面临的一个重大挑战是在对长视频进行采样时保持时间一致性。OpenAI 发现,虽然 Sora 并不总是能有效地模拟短距离和长距离的依赖关系,但它在很多时候仍然能做到这一点。例如,即使人、动物和物体被遮挡或离开画面,Sora 模型也能保持它们的存在。同样,它还能在单个样本中生成同一角色的多个镜头,并在整个视频中保持其外观。
(3)与世界交互。Sora 有时可以模拟以简单方式影响世界状态的动作。例如,画家可以在画布上留下新的笔触,这些笔触会随着时间的推移而持续,或者一个人可以吃汉堡并留下咬痕。
(4)模拟数字世界。Sora 还能模拟视频游戏。Sora 可以通过基本策略同时控制Minecraft中的玩家,同时高保真地呈现世界及其动态。只需在 Sora 的提示字幕中提及 「Minecraft」,就能零样本激发这些功能。
局限性讨论
Sora 目前还存在许多局限性。例如,它不能准确模拟许多基本交互的物理现象,如玻璃碎裂。也并不是总能产生正确的物体状态变化,官方主页列举了该模型的其他常见失效模式,例如长时间样本中出现的不一致性或物体的自发出现等。总结来讲,也就是难以准确模拟复杂场景的物理原理,并且可能无法理解因果关系。
写在最后
关于视频模型的研究总结,之后应该还会继续,2024的开年,很精彩…