使用 Sora 生成一段视频的步骤如下:
此外,Sora 采用了一些相关技术和原理:
[heading3]问题:从原始视频数据到模型训练再到模型生成视频全流程"类似于DALLE3,Sora在处理用户提供的文本提示时,也可以利用GPT模型来扩展或优化这些提示。GPT模型可以将简短的用户提示转化成更详细、更富有描述性的文本,这有助于Sora更准确地理解并生成符合用户意图的视频。8.生成视频:用户提供一个文本提示,Sora根据这个提示在潜在空间中初始化视频的生成过程。·利用训练好的扩散模型,Sora从这些初始化的时空潜伏斑块开始,逐步生成清晰的视频内容。9.视频解码和后处理:使用与视频压缩相对应的解码器将潜在空间中的视频转换回原始像素视频。对生成的视频进行可能的后处理,如调整分辨率、裁剪等,以满足发布或展示的需求。通过以上步骤,从视频数据的收集和高度描述性标注的生成(利用DALLE3技术),到视频的压缩、处理(利用Transformer架构和时空潜伏斑块),再到基于用户文本提示的视频生成(结合GPT模型进行文本优化),每一个环节都是精心设计的,确保生成的视频不仅在视觉上高质量,而且能准确反映用户的意图
图4:Imagen Video扩散模型中一个空间-时间可分离模块的架构。SSR和TSR模型都基于在通道方面连接了有噪声数据𝐳_𝑡的上采样的输入。SSR是通过双线性大小调整来上采样,而TSR则是通过重复帧或填充空白帧来上采样。Imagen Video还应用了渐进式蒸馏来加速采样,每次蒸馏迭代都可以将所需的采样步骤减少一半。在实验中,他们能够将所有7个视频扩散模型蒸馏为每个模型仅8个采样步骤,同时不会对感知质量造成任何明显损失。为了更好地扩大模型规模,Sora采用了DiT(扩散Transformer)架构,其操作的是视频和图像隐代码的时空块(spacetime patch)。其会将视觉输入表示成一个时空块序列,并将这些时空块用作Transformer输入token。图5:Sora是一个扩散Transformer模型。调整图像模型来生成视频在扩散视频建模方面,另一种重要方法是通过插入时间层来「扩增」预训练的文生图扩散模型,然后就可以选择仅在视频上对新的层进行微调或完全避免进行额外的训练。这个新模型会继承文本-图像对的先验知识,由此可以帮助缓解对文本-视频对数据的需求。在视频数据上进行微调Singer et al.在2022年提出的Make-A-Video是在一个预训练扩散图像模型的基础上扩展一个时间维度,其包含三个关键组件:1.一个在文本-图像对数据上训练的基础文生图模型。2.时空卷积和注意力层,使网络覆盖时间维度。3.一个帧插值网络,用于高帧率生成。
We train a network that reduces the dimensionality of visual data.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在这个压缩的潜在空间上进行训练,并随后生成视频。我们还训练了一个相应的解码器模型,将生成的潜在表示映射回像素空间。[heading3]Spacetime Latent Patches[heading3]时空潜空间块[content]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.给定一个压缩的输入视频,我们提取一序列的时空分块,作为Transformer变换器的Token。这个方案也适用于图像,因为图像只是带有单一帧的视频。我们的基于分块的表示使Sora能够训练具有不同分辨率、持续时间和纵横比的视频和图像。在推理时,我们可以通过在适当大小的网格中随机初始化分块来控制生成视频的大小。[heading3]Scaling transformers for video generation