【OpenAI 】Sora模型的技术分析

2024年02月22日 由 alex 发表 318 0

简介

OpenAI 刚刚发布了最令人兴奋的文本到视频模型 Sora。这是一个可以从文本生成视频的模型。这是一个非常令人兴奋的模型,可用于多种应用。在本文中,我将回顾该模型的技术细节,并根据 OpenAI 在 Sora 报告中列出的参考文献推测其工作原理。


模型架构

OpenAI 的技术报告提供了 Sora 架构的大致轮廓,重点介绍了关键组件,如将视觉数据转换为补丁、视频压缩网络、时空潜像补丁,以及使用缩放变换器生成视频。不过,OpenAI 一如既往地只提供了高层次的概述,复杂的细节只能靠想象了。现有信息表明,训练方法分为两个阶段:首先将视频编码到潜在空间,然后使用扩散变换器从该空间生成视频。我收集了每个部分的参考文献,这样我们就能根据现有论文窥探到可能的方法。将视觉数据转化为补丁、视频压缩网络、时空潜补丁等部分的参考文献有 ViT, ViViT, MAE, NaViT, latent diffusion, VAE。


在扩散变换器部分之前,让我先分解一下模型的核心要素。它们包括:


将视频压缩到潜空间: 在这一关键阶段,可能需要使用变异自动编码器(VAE)或类似框架来压缩视频,其灵感来源于使用潜像扩散模型进行高分辨率图像合成的技术。目标是对视频内容进行高效的编码和解码,这也是模型压缩的关键方面。


时空潜在分离: 该模型似乎可以单独处理视频帧,但由于缺乏直接参考,具体方法仍未公开。


可变分辨率: 该模型可能利用 "patch n'pack "方法将视频分割成易于管理的片段,从而增强编码过程。这种技术在参考文献中有所暗示,但没有明确详述。


了解 VAE 至关重要,因为它是该模型在过渡到时空潜空间斑块之前压缩视频能力的基础。第一步很可能是将视频帧分解成不同分辨率的片段,然后使用类似于稳定扩散模型自动编码器的方法将这些片段编码到潜在空间中。我的推测是,他们直接从潜在扩散模型中使用 VAE 模型,然后将帧转化为补丁,再转化为潜在空间。其核心思想是将帧从像素空间压缩为潜在表示。由于这是一种基于补丁的方法,因此即使分辨率不同也能很好地工作。在这里,我用一幅图像的 4 个补丁做了一个快速演示。它也可以在不同分辨率下很好地工作。


13


这就是模型的视觉编码器部分。


14


随后的阶段是将潜在视频数据转换成时空补丁序列,作为转换器的输入标记。根据该段的参考文献,他们最有可能采用的方法可能来自《ViViT:视频视觉转换器》。时空潜在补丁处理可能采用了 Vivit 论文中的策略,如统一帧采样或 Tubelet 嵌入,后者将空间和时间信息整合为一个统一的标记。


15


如果使用统一帧采样,就会更简单。然而,ViViT 使用的是 Tubelet 嵌入法,根据消融研究,使用中心框法似乎效果更好。我确实怀疑索拉可能会采用小管嵌入法,因为它在一段时间内表现出更好的一致性。我推测输入标记是基于小管的。


最后的挑战是解决可变分辨率问题,可能会调整 DiT 架构以适应不同的分辨率。索拉报告中的主要参考资料是 NaViT。这种调整可能涉及修改补丁、自我关注机制和汇集策略,将空间标记扩展到时间维度。


16


针对可变分辨率的修改必须在变换器架构中进行。因此更有可能是在扩散变换器(DiT)模型中进行修改,使其能够采用不同长宽比的补丁。这种方法的优势在于它克服了空间和时间裁剪的限制。正如 NaViT 论文所展示的,它可以处理各种分辨率和时间长度。NaViT 进行的初步实验还利用了时空小管,将位置嵌入与时间维度相结合,并采用了 ViViT 论文中描述的 "中心帧嵌入"。以下是 NaViT 的摘录:


17


在视频上进行的实验表明,它与上文 ViViT 论文中概述的方法有密切联系。此外,它还允许灵活的分辨率和时间长度。我认为这些构成了 DiT 架构的主要设计修改,使其能够处理在 Sora 中观察到的不同分辨率和时间长度。


例如,256x256 的视频可以分割成 16x16 的片段,通过时空拼接将 16 个帧转换成一个标记。因此,一段 30fps 的一分钟视频理论上可以生成 28,800 个令牌,虽然数量庞大,但在 GPT-4 Turbo 等先进模型的能力范围内还是可行的。OpenAI 可能已经制定了相应的策略来降低处理如此大量代币的计算需求,因为他们已经研究变压器架构很长时间了。


总的来说,模型架构可能如下所示:


18


视觉编码器和解码器可直接使用稳定扩散的 VAE。然后按照小管修补法对视频进行标记化。然后将标记输入基于 NaViT 的修正扩散变换器,以实现可变分辨率和时间长度。经过去噪处理后,将其转回潜在视频表示法,然后进行解码。


结论

虽然我们已经触及了 Sora 架构的一些基本方面,但仍有许多技术细节有待进一步澄清。围绕对 DiT 框架的精确修改、在 Tubelet 片段中保持时间一致性的机制、训练数据及其准备工作的复杂性(这一任务往往是成功的关键)等问题仍然存在。此外,数据扩充策略、处理带有文本的各种视频内容以及模型对不同视频上下文的适应性都是有待探索的领域。

文章来源:https://medium.com/@j-qi/openai-soras-technical-review-a8f85b44cb7f
欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
热门职位
Maluuba
20000~40000/月
Cisco
25000~30000/月 深圳市
PilotAILabs
30000~60000/年 深圳市
写评论取消
回复取消