AI 文摘

​探索Sora背后秘密:结合OpenAISora技术报告来看其能力和技术点


  • By AiBard123
  • February 23, 2024 - 2 min read



作者: 吃果冻不吐果冻皮 来源: 吃果冻不吐果冻皮

【点击】加入大模型技术交流群

最近被Sora刷屏,今天结合OpenAI Sora的技术报告Video generation models as world simulators来看下Sora具备哪些能力,以及这些能力是怎么来的。功能上除了文生图,还支持以图片、视频作为prompt,极大拓展使用场景。技术上,利用spacetime patches,统一了时空分割语言,为后续模型训练以及使用场景的拓展打下基础。数据侧在准备高质量的caption数据做了专门的优化。另外模型基础架构采用Diffusion Transformer,通过Scalling,显著提升生成质量。

技术: 将视频信息处理成spacetime patches,统一了时空分割的语言,方便支持不同尺寸、时间、分辨率的数据 。使用Diffusion Transformer作为主干网络进行建模,方便对模型规模进行扩展。训练Video compression network降低视觉数据维度,在压缩潜在空间训练生成模型和解码模型。通过Scalling显著提升生成质量。

数据工程: 通过专门训练一个高度描述性的标题模型,或利用 GPT4 将简短的用户提示转化成更长、更详细的标题,来获取高质量的每一帧图像的标题;

能力: 可以根据文本、图片或视频创建视频,也可以做其他视频编辑工具,如根据静态图片生成动态图片、在时间上向前或向后拓展视频、直接通过 prompt 提示词修改视频背景、插针融合两个风格完全不同的视频等;

涌现3D世界建模能力: 能够模拟物理世界中的人、动物和环境的变化,包括 3D 一致性、有效地模拟物体短程和远程依赖关系、模拟简单的动作来影响世界的状态、模拟数字世界。

ps:为了防止个人理解出现问题,技术报告中英文原文和翻译都有保留,视频只截图处理,原始视频请看原报告。

一、概述

1 Motivation

  • 之前视频生成技术方案主要包括循环网络[^1][^2][^3]、生成对抗网络[^4][^5][^6][^7]、和扩散模型[^8][^9],这些工作主要关注一小部分类别的数据,并且只能生成一些时间长度较短或者时间固定的视频。

  • 能够生成不同时长、长宽比和分辨率的视频和图像,长度达一分钟的高清视频的方案还没出现。

2 Method

2.1 Turning visual data into patches

We take inspiration from large language models which acquire generalist capabilities by training on internet-scale data.13,14 The success of the LLM paradigm is enabled in part by the use of tokens that elegantly unify diverse modalities of text—code, math and various natural languages. In this work, we consider how generative models of visual data can inherit such benefits. Whereas LLMs have text tokens, Sora has visual patches. Patches have previously been shown to be an effective representation for models of visual data.15,16,17,18 We find that patches are a highly-scalable and effective representation for training generative models on diverse types of videos and images.

我们从大型语言模型中获得灵感,这些模型通过在互联网规模的数据上进行训练来获得通用能力。LLM 范式的成功在一定程度上是由于使用了令牌Token,这些令牌Token优雅地统一了文本的多种模式——代码、数学和各种自然语言。在这项工作中,我们考虑视觉数据的生成模型如何继承这些好处。虽然 LLM 具有文本令牌Token,但 Sora 具有视觉补丁Patches。之前已经表明,补丁Patches是视觉数据模型的有效表示。我们发现补丁Patches是一种高度可扩展且有效的表示形式,可以对不同类型的视频和图像进行生成模型的训练。

2.2 Video compression network

We train a network that reduces the dimensionality of visual data.20 This network takes raw video as input and outputs a latent representation that is compressed both temporally and spatially. Sora is trained on and subsequently generates videos within this compressed latent space. We also train a corresponding decoder model that maps generated latents back to pixel space.

我们训练了一个网络来降低视觉数据的维度。这个网络以原始视频作为输入,并输出一个在时间和空间上都经过压缩的潜在表示。Sora 在这个压缩的潜在空间中进行训练,并随后生成视频。我们还训练了一个相应的解码器模型,将生成的潜在表示映射回像素空间。

2.3 Spacetime latent patches

Given a compressed input video, we extract a sequence of spacetime patches which act as transformer tokens. This scheme works for images too since images are just videos with a single frame. Our patch-based representation enables Sora to train on videos and images of variable resolutions, durations and aspect ratios. At inference time, we can control the size of generated videos by arranging randomly-initialized patches in an appropriately-sized grid.

给定一个压缩的输入视频,我们提取一系列spacetime patches 作为 Transformer 的tokens。该方案也适用于图像,因为图像只是具有单个帧的视频。我们基于patch的表示使 Sora 能够在具有不同分辨率、持续时间和纵横比的视频和图像上进行训练。在推理时,我们可以通过在适当大小的网格中排列随机初始化的补丁来控制生成视频的大小。

2.4 Scaling transformers for video generation

Sora is a diffusion model21,22,23,24,25; given input noisy patches (and conditioning information like text prompts), it’s trained to predict the original “clean” patches. Importantly, Sora is a diffusion transformer.26 Transformers have demonstrated remarkable scaling properties across a variety of domains, including language modeling,13,14 computer vision,15,16,17,18 and image generation.27,28,29

Sora 是一种扩散模型;在给定输入噪声patches(以及诸如文本提示之类的条件信息)的情况下,它经过训练以预测原始的“干净”补丁。重要的是,Sora 是一个扩散 Transformer。Transformer 已经在包括语言建模、计算机视觉、图像生成等在内的多个领域中表现出了出色的扩展属性。

In this work, we find that diffusion transformers scale effectively as video models as well. Below, we show a comparison of video samples with fixed seeds and inputs as training progresses. Sample quality improves markedly as training compute increases.

在这项工作中,我们发现diffusion Transformer 作为视频模型也具有出色的扩展能力。下面,我们展示了随着训练的进行,固定种子和输入的视频样本的比较。随着训练计算的增加,样本质量有了显著的提高。

image-20240219145442531

2.5 Variable durations, resolutions, aspect ratios

Past approaches to image and video generation typically resize, crop or trim videos to a standard size—e.g., 4 second videos at 256x256 resolution. We find that instead training on data at its native size provides several benefits.

过去的图像和视频生成方法通常会调整、裁剪或修剪视频到标准尺寸——例如,4 秒的视频,分辨率为 256x256。我们发现,在其原始大小的数据上进行训练反而有几个好处

Sampling flexibility

Sora can sample widescreen 1920x1080p videos, vertical 1080x1920 videos and everything inbetween. This lets Sora create content for different devices directly at their native aspect ratios. It also lets us quickly prototype content at lower sizes before generating at full resolution—all with the same model.

Sora 可以采样宽屏 1920x1080p 视频、竖屏 1080x1920 视频以及介于两者之间的所有视频。这使得 Sora 可以直接为不同设备创建与其原始宽高比匹配的内容。它还可以让我们在生成全分辨率内容之前,先以较小的尺寸快速制作内容原型——所有这些都使用相同的模型。

image-20240219145912201

Improved framing and composition

We empirically find that training on videos at their native aspect ratios improves composition and framing. We compare Sora against a version of our model that crops all training videos to be square, which is common practice when training generative models. The model trained on square crops (left) sometimes generates videos where the subject is only partially in view. In comparison, videos from Sora (right) have improved framing.

我们通过实验发现,以原始宽高比进行视频训练可以提高构图和取景效果 。我们将 Sora 与我们的另一个模型进行了比较,该模型将所有训练视频都裁剪成正方形,这是训练生成式模型时常用的做法。经过方形裁剪训练的模型(左侧)有时会生成主体部分只在画面中出现一部分的视频。相比之下,Sora 生成的视频(右侧)取景效果更好。

image-20240219150338293

2.6 Language understanding

Training text-to-video generation systems requires a large amount of videos with corresponding text captions. We apply the re-captioning technique introduced in DALL·E 330 to videos. We first train a highly descriptive captioner model and then use it to produce text captions for all videos in our training set. We find that training on highly descriptive video captions improves text fidelity as well as the overall quality of videos.

训练文本到视频生成系统需要大量带有相应文本标题的视频。我们将 DALL·E 3[^30] 中介绍的重写标题技术应用于视频。我们首先训练一个高度描述性的标题模型,然后使用它为我们训练集中的所有视频生成文本标题。我们发现,在高度描述性的视频标题上进行训练可以提高文本保真度以及视频的整体质量。

Similar to DALL·E 3, we also leverage GPT to turn short user prompts into longer detailed captions that are sent to the video model. This enables Sora to generate high quality videos that accurately follow user prompts.

与 DALL·E 3 类似,我们还利用 GPT 将简短的用户提示转化为更长、更详细的标题,然后将其发送到视频模型。这使得 Sora 能够生成高质量的视频,准确地遵循用户提示。

3 Conclusion

强悍的视频图像生成、修改、融合等能力: 可以根据文本、图片或视频创建视频,也可以做其他视频编辑工具,如根据静态图片生成动态图片、在时间上向前或向后拓展视频、直接通过 prompt 提示词修改视频背景、插针融合两个风格完全不同的视频;

涌现3D世界建模能力: 能够模拟物理世界中的人、动物和环境的变化,包括 3D 一致性、有效地模拟物体短程和远程依赖关系、模拟简单的动作来影响世界的状态、模拟数字世界。

4 Limitation

Sora currently exhibits numerous limitations as a simulator. For example, it does not accurately model the physics of many basic interactions, like glass shattering. Other interactions, like eating food, do not always yield correct changes in object state. We enumerate other common failure modes of the model—such as incoherencies that develop in long duration samples or spontaneous appearances of objects—in our landing page.

Sora 作为模拟器目前存在许多限制。例如,它不能准确模拟许多基本交互的物理特性,如玻璃破碎。 其他交互,如进食,并不总是导致对象状态的正确变化 。我们在登录页面中列举了模型的其他常见故障模式,例如在长时间采样中出现的不一致 或物体的自发出现。

二、相关应用

1 文本可以作为prompt,图片或者视频也行!

All of the results above and in our landing page show text-to-video samples. But Sora can also be prompted with other inputs, such as pre-existing images or video. This capability enables Sora to perform a wide range of image and video editing tasks—creating perfectly looping video, animating static images, extending videos forwards or backwards in time, etc.

上述所有结果和我们的登录页面均显示了文本到视频的示例。但 Sora 也可以使用其他输入来作为提示,例如现有的图像或视频。此功能使Sora 能够执行各种图像和视频编辑任务-创建完美循环的视频、为静态图像制作动画、在时间上向前或向后扩展视频 等。

Animating DALL·E images(使用静态图生成动态图片)

Sora is capable of generating videos provided an image and prompt as input. Below we show example videos generated based on DALL·E 231 and DALL·E 330 images.

Sora 可以根据输入的图像和提示生成视频。下面我们展示一些基于 DALL·E 2和 DALL·E 3 图像生成的示例视频。

image-20240219155306672

A Shiba Inu dog wearing a beret and black turtleneck.

Extending generated videos(拓展视频)

Sora is also capable of extending videos, either forward or backward in time. Below are four videos that were all extended backward in time starting from a segment of a generated video. As a result, each of the four videos starts different from the others, yet all four videos lead to the same ending.

Sora 还能够延长视频,无论是向前还是向后。以下是3个视频,它们都是从生成的视频的一个片段开始,然后向回扩展。因此,这四个视频的起点各不相同,但它们都导向同一个结局。

image-20240219160608031

Video-to-video editing(视频修改和编辑)

Diffusion models have enabled a plethora of methods for editing images and videos from text prompts. Below we apply one of these methods, SDEdit,32 to Sora. This technique enables Sora to transform the styles and environments of input videos zero-shot.

扩散模型使得从文本提示中编辑图像和视频的方法大量涌现。下面我们将其中一种方法,即 SDEdit,应用于 Sora。这种技术使得 Sora 能够对输入视频进行零样本的风格和环境转换。

image-20240219163930360

Connecting videos(视频融合)

We can also use Sora to gradually interpolate between two input videos, creating seamless transitions between videos with entirely different subjects and scene compositions. In the examples below, the videos in the center interpolate between the corresponding videos on the left and right.

我们还可以使用 Sora**在两个输入视频之间逐渐插值,从而在主题和场景构图完全不同的视频之间创建无缝过渡。**在下面的示例中,中间的视频在左侧和右侧的相应视频之间进行插值。

image-20240219164146021

2 Image generation capabilities(单帧图像生成能力)

Sora is also capable of generating images. We do this by arranging patches of Gaussian noise in a spatial grid with a temporal extent of one frame. The model can generate images of variable sizes—up to 2048x2048 resolution.

Sora 还能够生成图像。我们通过在具有一帧时间范围的空间网格中排列高斯噪声补丁来实现这一点。该模型可以生成可变大小的图像,最高可达 2048x2048 分辨率。

image-20240219164340681

3 Emerging simulation capabilities(模拟物理世界)

We find that video models exhibit a number of interesting emergent capabilities when trained at scale. These capabilities enable Sora to simulate some aspects of people, animals and environments from the physical world. These properties emerge without any explicit inductive biases for 3D, objects, etc.—they are purely phenomena of scale.

我们发现,在大规模训练时,视频模型表现出许多有趣的新兴能力。这些能力使 Sora 能够模拟物理世界中的人、动物和环境的某些方面。这些属性是在没有任何针对 3D、对象等的明确归纳偏差的情况下出现的——它们纯粹是规模的现象。

3D consistency(保持3D一致性)

Sora can generate videos with dynamic camera motion. As the camera shifts and rotates, people and scene elements move consistently through three-dimensional space.

Sora 可以生成带有动态摄像机运动的视频。随着摄像机的移动和旋转,人物和场景元素在三维空间中持续移动。

image-20240219165237128

Long-range coherence and object permanence(保持长时依赖)

A significant challenge for video generation systems has been maintaining temporal consistency when sampling long videos. We find that Sora is often, though not always, able to effectively model both short- and long-range dependencies. For example, our model can persist people, animals and objects even when they are occluded or leave the frame. Likewise, it can generate multiple shots of the same character in a single sample, maintaining their appearance throughout the video.

视频生成系统面临的一个重大挑战是在采样长视频时保持时间一致性。我们发现,Sora 通常(尽管并非总是)能够有效地模拟短程和远程依赖关系。例如,我们的模型即使在人物、动物和物体被遮挡或离开画面时也能保持它们的存在。同样,它可以在单个样本中生成同一个角色的多个镜头,并在整个视频中保持他们的外观。

image-20240219165442666image-20240219165604417image-20240219165640451

Interacting with the world(模拟与真实世界交互)

Sora can sometimes simulate actions that affect the state of the world in simple ways. For example, a painter can leave new strokes along a canvas that persist over time, or a man can eat a burger and leave bite marks.

Sora 有时可以模拟简单的动作来影响世界的状态。例如,画家可以在画布上留下新的笔触,这些笔触会随着时间的推移而保留下来,或者一个人可以吃汉堡并留下咬痕。

image-20240219165804446

Simulating digital worlds(模拟数字世界)

Sora is also able to simulate artificial processes–one example is video games. Sora can simultaneously control the player in Minecraft with a basic policy while also rendering the world and its dynamics in high fidelity. These capabilities can be elicited zero-shot by prompting Sora with captions mentioning “Minecraft.”

Sora 还能够模拟人工过程——其中一个例子是电子游戏。Sora 可以在使用基本策略控制 Minecraft 中的玩家的同时,以高保真度渲染世界及其动态。这些功能可以通过提示 Sora 使用提到“Minecraft”的标题来实现零镜头。

image-20240219170010314

These capabilities suggest that continued scaling of video models is a promising path towards the development of highly-capable simulators of the physical and digital world, and the objects, animals and people that live within them.

这些能力表明,继续扩展视频模型是朝着开发高度能力的物理和数字世界模拟器以及生活在其中的物体、动物和人的有前途的道路。

三、总结

1.相关技术主要包括: 1. 将视频信息处理成spacetime patches,统一了时空分割的语言,方便支持不同尺寸、时间、分辨率的数据。2. 使用Diffusion Transformer作为主干网络进行建模。3. 训练Video compression network降低视觉数据维度,在压缩潜在空间训练生成模型和解码模型。4. 通过Scalling显著提升生成质量。

*语言模型与视觉数据建模 :大语言模型如ChatGPT通过Embedding技术将人类语言编码,并利用注意力机制提取知识,生成回应。类似地,Sora项目在视觉数据建模中采用Token Embedding思路,将视频和图像压缩为低维的潜变量空间,即时空碎片(Spacetime Latent Patches),作为统一的时空数据表示。

*spacetime patches(时空碎片)的重要性 :时空碎片是Sora项目中的关键概念,它不仅有效地表示了视觉数据,而且统一了时空分割的语言,为后续的时空建模提供了基础。

*Scaling是有用的:随着训练计算量的增加,视频生成质量有了明显的提升。

image-20240219145442531

2.数据工程:在原始大小的数据上进行训练反而有几个好处。

  • 更方便创造不同分辨率的图片

  • 更好的构图和取景效果

*数据工程:高度描述性的视频标题上进行训练可以提高文本保真度以及视频的整体质量。 本文采取两个策略获取高质量的每一帧图像的caption。通过这种方式,Sora能够更精确地关联GPT4的语言空间和视觉数据,实现了Token(文本)与Patch(视觉数据)之间的统一。

  • 专门训练一个高度描述性的标题模型。

  • 利用GPT4将简短的用户提示转化成更长、更详细的标题。

*能力展现:文本可以作为prompt,图片或者视频也行! 这意味着我们除了根据文本创建视频,还可以做非常多其他的视频编辑工具,这在视频创作,电影等行业都可以带来非常大的变革。应用方法包括但不限于:

  • 根据静态图片生成动态图片

  • 在时间上向前或者向后拓展视频

  • 视频编辑:直接通过prompt提示词修改视频背景

  • 视频融合:插针融合两个风格完全不同的视频

*涌现能力:Sora能够模拟物理世界中的人、动物和环境的变化。 文章提出,没有对3D数据进行优化,随着模型规模的变大,发现视频生成模型能够涌现出3D世界的模拟能力。主要包括以下几个方面。

  • 3D一致性:场景元素能在在三维空间中持续移动

  • 有效地模拟物体短程和远程依赖关系:狗被遮挡还是能持续保持状态

  • 模拟简单的动作来影响世界的状态:画画动作反馈,咬东西物体反馈

  • 模拟数字世界:模拟游戏玩家,渲染画面

*还是存在类似于LLM的幻觉现象。 比如不能准确模拟许多基本交互的物理特性,如玻璃破碎;其他交互,如进食,并不能总是导致对象状态的正确变化;而且在长时间采样中会出现不一致或物体的自发出现等问题。

历史文章: 2024年1月大模型文章集锦

更多AI工具,参考Github-AiBard123国内AiBard123

可关注我们的公众号:每天AI新工具