Sora: A Review on Background, Technology, Limitations, and Opportunities of Large Vision Models

Sora: A Review on Background, Technology, Limitations, and Opportunities of Large Vision Models

基本信息

博客贡献人

燕青

作者

Yixin Liu, Kai Zhang, Yuan Li, et al.

标签

LLM, Multimodality

摘要

注:本文不是OpenAI的官方技术报告

Sora是从文本到视频(text-to-video, T2V)的生成式人工智能模型,由OpenAI于2024年2月发布。该模型经过训练,可以从文本指令中生成逼真或富有想象力的场景视频,在模拟物理世界方面表现出潜力。本文基于公开的技术报告和逆向工程,对T2V人工智能模型的背景、相关技术、应用、存在的挑战和未来的发展方向进行了全面综述。

  • 考察构建Sora这个"世界模拟器"所使用的底层技术
  • 讨论了广泛部署Sora需要解决的主要挑战和限制,例如确保安全和无偏见的视频生成。
  • 最后讨论Sora和视频生成模型的未来发展,以及该领域的进步如何使人与人工智能交互的新方式成为可能,从而提高视频生成的生产力和创造力。
1
图1. Sora进行T2V生成的例子。对Sora给出文本指令(或图像/视频),Sora根据指令生成3个视频。

* Large vision model(LVM) 的涌现能力 *

  • 根据Sora的技术报告,它是第一个表现出确认的涌现能力(如连续帧的3D一致性)的视觉模型,标志着计算机视觉领域的一个重要里程碑。

方法

总体框架

在核心本质上,Sora是一个diffusion transformer,具有灵活的采样尺寸,如图4所示。它包括3个部分:

  • 时空压缩器(time-space compressor),首先将原始视频映射到潜在空间。

  • ViT对表征化后的潜在表示进行处理,输出去噪后的潜在表示。

  • 类似CLIP的条件机制接收LLM增强的用户指令和潜在的视觉提示,以指导扩散模型生成风格或主题视频。

在经过多次去噪步骤后,得到生成视频的潜在表示,然后用相应的解码器映射回像素空间。

1
图2. 逆向工程:Sora框架概述

数据预处理

可变时长、分辨率、宽高比

Sora的一个显著特点是它能够训练,理解和生成不同原始尺寸的视频和图像。传统的方法经常调整视频的大小、裁剪或调整宽高比,以适应一个统一的标准——通常是在固定的低分辨率下用方形帧的短片段。这些样本通常以更大的时间步长生成,并依靠单独训练的帧插入和分辨率渲染模型作为最后一步,导致了整体视频的不一致。Sora采用了diffusion transformer架构,是第一个包含视觉数据多样性的模型,可以在不影响原始尺寸的情况下,以广泛的视频和图像格式进行采样,从宽屏1920x1080p视频到垂直1080x1920p视频,以及介于两者之间的所有视频。

1
图3. 对Sora (右)和其修改版(左)进行比较,其中左侧模型在训练时将视频裁剪为正方形。

统一的视觉表达方式

为了有效地处理各种视觉输入,包括具有不同持续时间、分辨率和纵横比的图像和视频,一个重要的方法是将所有形式的视觉数据转化为统一的表示,这有利于生成模型的大规模训练。具体来说,Sora对视频进行分块,首先将视频压缩到一个低维的潜在空间,然后将表示分解为时空块。然而,Sora的技术报告只是提出了一个high-level的想法,使其复现对研究界来说具有挑战性。在下一节,本文尝试对可能的组成部分和技术路径进行逆向工程。

1
图4. 在较高层次上,Sora首先将视频压缩到低维的潜在空间,然后将表示分解为时空块。
(来源:Sora技术报告)

视频压缩网络

Sora的视频压缩网络(或视觉编码器)旨在降低输入数据的维度,特别是原始视频,并输出一个在时间和空间上都被压缩的潜在表示,如图4所示。根据技术报告中的参考文献,压缩网络是建立在VAE(Variational AutoEncoder,变分自编码器)或VQ-VAE(Vector Quantised-VAE)上的。然而,如果不使用缩放和裁剪,VAE将任何大小的视觉数据映射到统一和固定大小的潜在空间是具有挑战性的。本文总结了两种不同的实现来解决这个问题:

  • 空间块压缩

    这涉及到将视频帧转换为固定大小的块,类似于ViT和MAE(如图5)中使用的方法,然后将它们编码到潜在空间中。这种方法对于容纳不同分辨率和宽高比的视频特别有效,因为它通过对单个块的处理来编码整个帧。可以使用不同大小的块来使整个帧或视频在潜在空间中的维度保持一致。随后,将这些空间表征按照时间顺序组织起来,形成时空潜在表征。

    1
    图5. ViT将图像分割成固定大小的块,对每个块进行线性嵌入,并添加位置嵌入。将得到的向量序列输入到标准的Transformer编码器中。

  • 时空块压缩

    该技术旨在封装视频数据的空间维度和时间维度,提供全面的表示。该技术通过考虑帧间的运动和变化,超越了单纯分析静态帧,从而捕获视频的动态方面。使用3D卷积是一种直接而有效的方法。在图6中展示了时空分块和与纯空间分块的比较。与空间块压缩类似,使用预定卷积核参数(如固定的核尺寸、步长和输出通道)的时空块压缩会由于视频输入的不同特性而导致潜在空间的维度变化。这种可变性主要是由被处理视频的不同持续时间和分辨率所驱动的。为了解决这一问题,空间分块所采用的方法在此背景下同样适用且有效。

    1
    图6. 视频压缩不同分块方法的比较。
    (左)空间分块简单地采样Nt帧。(右)时空分块使用3D卷积采样跨越时空的帧

    左:从视频中统一的采样 N t N_t Nt 帧。所有的帧都是用和Vit一样的embedding方法,拼接所有的tokens。将会有 N t ∗ N h ∗ N w N_t * N_h * N_w NtNhNw 个token输入到transformer encoder。

    右:3D卷积提取重叠或不重叠(为了映射到固定大小的潜在空间)的空间-时间tubelet(立方体)。共有 N t ∗ N h ∗ N w N_t * N_h * N_w NtNhNw 个tubelet(也作为token)。

时空潜在块

在压缩网络部分有一个关键的问题:如何处理潜在空间维度(即来自不同视频类型的潜在特征块的数量)的可变性,然后将块送入Diffusion TransFormer的输入层。本文讨论了几种解决方案。

根据Sora的技术报告和相应的参考文献,patch n’ pack (PNP) 很可能是解决方案。

如图7所示,PNP在单个序列中包装来自不同图像的多个patch。该方法的灵感来自于自然语言处理中使用的example packing,该方法通过丢弃token来适应可变长度输入的高效训练。这里的分块化(patchify)和token嵌入步骤需要在压缩网络中完成。

1
图7. Patch Packing可以使可变分辨率的图像或视频具有保留的纵横比。Token丢弃某种程度上可以被视为数据增强。

对patch长度不一致的图片分组,三两个或者四五个图片的patches组在一起成一个序列,长度与训练集中最长的序列相同(不够就加padding)。

建模

Diffusion Model

扩散模型是生成模型的一种。生成模型的目的是在给定一些训练数据的情况下,学习生成数据。一个好的生成模型将能够生成一组类似训练数据的多样化输出,而不是精确的训练数据的拷贝。

  • 扩散模型直观的核心思想:扩散模型的生成从随机噪声开始,经过多个时间步去噪,直到生成无噪声的纯净图像。在每一个时间步 t t t 中,模型都会预测从 t − 1 t-1 t1 时间步到 t t t 时间步新增的噪声,去除预测的噪声即可得到时间步 t − 1 t-1 t1 的图像。
1
图8. Diffusion Model生成(去噪)过程
  • 训练扩散模型:
  1. 从训练数据中加载一些图像

  2. 随机添加不同时间步的噪声

  3. 将添加了噪声的样本输入模型

  4. 模型预测噪声,与GT噪声比较得到loss

  5. 使用loss更新模型权重参数

Diffusion Transformer
  • Image Diffusion Transformer

    传统的扩散模型主要利用卷积U-Nets,包括下采样和上采样模块作为去噪网络的骨干。最近的研究表明,通过纳入更灵活的TransFormer架构,基于TransFormer的扩散模型可以使用更多的训练数据和更大的模型参数。沿着这条路线,DiT(diffusion models with transformers)和U-ViT是最早将ViT用于潜在扩散模型的工作之一。与ViT相同,DiT使用了多头自注意力层和由一些层范数和缩放层交错而成的逐点前馈网络。此外,如图8所示,DiT结合了自适应层范数条件化( AdaLN )和额外的MLP层进行零初始化,将每个残差块初始化为恒等函数,从而极大地稳定了训练过程。实证验证了DiT的可扩展性和灵活性。DiT成为扩散模型的新backbone。在U-ViT中,如图8所示,将所有的输入,包括时间、条件和噪声图像块,都视为token,并提出了浅层和深层TransFormer层之间的长跳跃连接

    1
    图9. DiT(左)和U-ViT(右)整体框架

    与掩码自编码器(Masked AutoEncoder,MAE)类似,MDT(Masked Diffusion Transformer)将掩码潜在建模融入到扩散过程中,以显式地增强图像合成中对象语义部分之间的上下文关系学习。具体来说,如图9所示,MDT在训练过程中使用了一个插值(side-interpolated)用于额外的掩码token重建任务,以提高训练效率,并学习强大的上下文感知的位置嵌入用于推理。与DiT相比,MDT具有更好的性能和更快的学习速度。Hatamizadeh等没有使用AdaLN (即移位和缩放)进行时间调节建模,而是引入了扩散视觉变换( DiffiT ),该变换使用时间依赖的自注意力( TMSA )模块对采样时间步的动态去噪行为进行建模。此外,DiffiT在像素空间和潜在空间分别使用两种混合分层架构进行高效的去噪,并在不同的生成任务中取得了新的最新成果。总的来说,这些研究显示了将ViT用于图像潜在扩散的良好结果,为未来其他模态的研究铺平了道路。

    1
    图10. MDT(Masked Diffusion Transformer)总体框架。实线/虚线表示每个时间步的训练/推理过程。
    掩蔽和插值器(side-interpolater)只在训练过程中使用,在推理过程中被移除。
  • Video Diffusion Transformer

    在这一部分中,本文重点讨论了基于Transformer的视频去噪网络结构,该网络结构旨在对压缩了空间和时间的潜在空间进行操作。本文对OpenAI Sora技术报告参考列表中描述的两个重要作品(Imagen VideoVideo LDM)进行了详细的回顾。

    Imagen Video是Google Research开发的T2V生成系统,它利用级联的扩散模型,由7个子模型组成,执行文本条件视频生成、空间超分辨率和时间超分辨率,将文本提示转化为高清视频。如图10所示,首先,一个冻结的T5文本编码器从输入的文本提示中生成上下文嵌入。随后,将嵌入送到基本模型中,用于低分辨率视频生成,然后通过级联扩散模型对其进行优化,以提高分辨率。基础视频和超分辨率模型采用时空可分离的3D U-Net架构。

    1
    图11. Imagen Video的整体框架

    Blattmann等提出将2D潜在扩散模型转化为视频潜在扩散模型(Video LDM)。它们通过在现有的空间层之间添加一些后置(post-hoc)时间层来实现U-Net骨干网络和学习如何对齐单个帧的VAE解码器。这些时间层在编码后的视频数据上进行训练,而空间层保持不变,允许模型利用大型图像数据集进行预训练。LDM的解码器进行了微调,以实现像素空间的时间一致性,并对扩散模型的上采样器进行了时间对齐,以提高空间分辨率。为了生成很长的视频,在给定若干上下文帧的情况下,训练模型来预测未来帧,从而允许在采样过程中提供无分类器的指导。为了实现高时间分辨率,视频合成过程分为关键帧的生成和这些关键帧之间的插值。在级联LDM之后,使用一个DM将Video LDM输出进一步放大4倍,在保证高空间分辨率的同时保持时间一致性。该方法能够以计算高效的方式生成全局连贯的长视频。此外,作者证明了仅通过训练时间对齐层就可以将预训练图像LDMs (例如,Stable Diffusion)转换为T2V模型的能力,实现了分辨率高达1280×2048的视频合成。

    1
    图12. Video LDM的整体框架

语言指令跟随

用户主要通过自然语言指令与生成式人工智能模型进行交互,称为文本提示。模型指令微调旨在增强人工智能模型准确跟随提示的能力。这种快速跟踪能力的提高使得模型能够生成更接近人类对自然语言查询的响应的输出。本文首先回顾了大型语言模型(LLMs)和T2I模型(如DALL·E3)的指令跟随技术。为了增强T2V模型对文本指令的跟随能力,Sora采用了类似于DALL·E3的方法。该方法包括训练一个描述性标题器,并利用标题器生成的数据进行微调。作为指令调整的结果,Sora能够适应广泛的用户请求,确保对指令中的细节进行细致的关注,并生成精确满足用户需求的视频。

Text-to-Image(T2I)

DALL·E3中的指令跟随是通过一种字幕改进方法来解决的,该方法假设模型训练的 (文本,图像) 对的质量决定了生成的T2I模型的性能。数据质量差,特别是噪声数据和简短字幕的普遍存在,省略了大量的视觉信息,导致许多问题,如忽略关键词和语序,误解用户意图等。字幕改进方法通过用详细的、描述性的字幕重新描述现有图像来解决这些问题。该方法首先训练一个图像描述器,它是一个视觉语言模型,用于生成精确的、描述性的图像描述。然后,利用图像描述器生成的描述性图像字幕对T2I模型进行微调。具体来说,DALL·E3遵循对比描述器(CoCa),联合训练一个具有CLIP架构和语言模型目标的图像描述器。该图像描述器包含一个图像编码器,一个用于提取语言信息的单模态文本编码器和一个多模态文本解码器。它首先使用单模态图像和文本嵌入之间的对比损失,然后对多模态解码器的输出进行字幕损失。生成的图像描述器进一步微调,对图像进行高度详细的描述,包括主要对象、环境、背景、文本、样式和颜色。通过这个步骤,图像描述器能够为图像生成详细的描述描述。T2I模型的训练数据集是由图像描述器生成的重新描述数据集和真实的人类编写数据的混合,以确保模型捕获用户输入。这种图像描述改进方法引入了一个潜在的问题:实际的用户提示和训练数据中的描述性图像描述之间的不匹配。DALL·E3通过上采样解决了这一问题,其中LLMs用于将简短的用户提示重写成详细而冗长的指令。这保证了模型在推理时接收到的文本输入与模型训练时的输入一致

Text-to-Video(T2V)

为了增强指令跟随能力,Sora采取了类似的字幕改进方式。该方法通过首先训练一个能够对视频进行详细描述的视频描述器来实现。然后,将该视频描述器应用于训练数据中的所有视频,以生成高质量的 (视频,描述性字幕) 对,用于微调Sora以提高其指令跟随能力。

一种直接的方法是利用CoCa架构进行视频描述,通过将视频的多帧输入到图像编码器中,称为VideoCoCa。VideoCoCa建立在CoCa的基础上,重复使用图像编码器预训练的权重,并将其独立地应用在采样的视频帧上。得到的帧token嵌入被展平,并串联成一个长序列的视频表示。然后通过生成式池化器和对比池化器处理这些展平的帧token,并与对比损失和字幕损失联合训练。

提示工程

文本提示
1
图13. 文本提示示例,采用色彩编码来描述创作过程。
蓝色突出显示的文本描述了Sora产生的元素,如对一个时髦女人的描绘。
黄色文本则强调了模特对动作、场景和人物外貌的解读,展示了一个精雕细琢的提示如何转化为生动、动态的视频叙事。
图像提示
1
图14. 图像提示示例,说明了图像提示对Sora的文像转换模型生成的指导作用。
红色盒子在视觉上锚定了每个场景的关键元素——形态各异的设计、拼写为' SORA '的云的形成,以及面对巨大潮汐波的华丽大厅中的冲浪者。
视频提示
1
图15. 视频提示示例,说明了Sora模型的视频提示技术:
(a)视频扩展(Video Extension),将视频片段倒推到完整画面;
(b)视频编辑(Video Editing),根据文本提示转换设置等特定元素;
(c)视频连接(Video Connection),两个不同的视频提示无缝融合,以创建连贯的叙事。
每个过程由视觉锚点引导,并用红色方框标记,保证了生成视频内容的连续性和精确性。

相关知识链接

论文原文

Sora: A Review on Background, Technology, Limitations, and Opportunities of Large Vision Models

相关文献

Diffusion TransFormerScalable diffusion models with transformers

Sora官网

Sora

总结

本文基于公开的技术报告和逆向工程,对Sora的底层技术进行了研究,包括:

  • 数据预处理
    • 可变时长、分辨率、宽高比的统一视觉表达
    • 视频压缩网络
    • 时空潜在块
  • 建模
    • Diffusion TransFormer
  • 语言指令跟随
    • T2I
    • T2V
  • 提示工程
    • 文本提示
    • 图像提示
    • 视频提示

[局限]

  • 物理合理性:目前的T2V模型对复杂场景中物理原理的处理存在不一致,导致无法准确复制因果的具体事例。例如,一个顾客咬下饼干的一部分可能不会造成相应的咬痕,这说明系统偶尔会偏离物理合理性。这个问题延伸到运动的模拟,Sora生成背离现实物理规律的视频,如物体的非自然变换或椅子等刚性结构的不正确模拟。
  • 时空复杂性:Sora偶尔会误解与在给定提示内放置或排列物体和字符有关的指令,导致对方向的混淆(例如左与右的混淆)。此外,它在保持事件的时间准确性方面面临着挑战,特别是当它涉及到遵守指定的相机运动或序列时。这可能导致偏离预期的场景时间流。
  • 人机交互:主要体现在用户-系统交互的连贯性和效率上,特别是在对生成内容进行详细修改或优化时。例如,用户可能会发现很难精确地指定或调整视频中特定元素的呈现方式,例如动作细节和场景转换。
  • 可用性:而且,目前Sora只能生成长度为1分钟的视频,而根据已公布的案例,大部分生成的视频只有几十秒的长度。这一限制限制了其在需要更长时间内容展示的应用中的使用,如详细的教学视频或深入的故事讲述。这种限制降低了Sora在内容创作上的灵活性。

[启发]

  • Sora能够训练、理解和生成不同原始尺寸的视频和图像,提升生成内容质量——这种可变尺度训练/推理的方法是可迁移的。
  • T2I及T2V指令微调的方法:先构造一个图像/视频描述器,使用该描述器描述训练集中的数据,生成(图像/视频,文本)对,用于T2I/T2V模型的指令微调,提升效果——可以应用于图文多模态领域以外的其它模态数据。

BibTex

@misc{liu2024sora,
      title={Sora: A Review on Background, Technology, Limitations, and Opportunities of Large Vision Models}, 
      author={Yixin Liu and Kai Zhang and Yuan Li and Zhiling Yan and Chujie Gao and Ruoxi Chen and Zhengqing Yuan and Yue Huang and Hanchi Sun and Jianfeng Gao and Lifang He and Lichao Sun},
      year={2024},
      eprint={2402.17177},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}
  • 20
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值