Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

将Transformer用于扩散模型,AI 生成视频达到照片级真实感

视频生成场景中,用 Transformer 做扩散模型的去噪骨干已经被李飞飞等研究者证明行得通。这可算得上是 Transformer 在视频生成领域取得的一项重大成功。
近日,一项视频生成研究收获了大量赞誉,甚至被一位 X 网友评价为「好莱坞的终结」。
真的有这么好吗?我们先看下效果:

图片

图片

很明显,这些视频不仅几乎看不到伪影,而且还非常连贯、细节满满,甚至似乎就算真的在电影大片中加上几帧,也不会明显违和。

这些视频的作者是来自斯坦福大学、谷歌、佐治亚理工学院的研究者提出的 Window Attention Latent Transformer,即窗口注意力隐 Transformer,简称 W.A.L.T。该方法成功地将 Transformer 架构整合到了隐视频扩散模型中。斯坦福大学的李飞飞教授也是该论文的作者之一。
图片
  • 项目网站:https://walt-video-diffusion.github.io/
  • 论文地址:https://walt-video-diffusion.github.io/assets/W.A.L.T.pdf  
  
在此之前,Transformer 架构已经在许多不同领域取得了巨大成功,但图像和视频生成式建模领域却是一个例外,目前该领域的主导范式是扩散模型。

在图像、视频生成领域,扩散模型已经成为主要范式。但是,在所有视频扩散方法中,主导的骨干网络是由一系列卷积和自注意力层构成的 U-Net 架构。人们之所以偏好 U-Net,是因为 Transformer 中全注意力机制的内存需求会随输入序列长度而二次方增长。在处理视频这样的高维信号时,这样的增长模式会让计算成本变得非常高。

而隐扩散模型(LDM)可在源自自动编码器的更低维隐空间中运行,从而降低计算需求。在这种情况下,一大关键的设计选择是隐空间的类型:空间压缩与时空压缩。

人们往往更喜欢空间压缩,因为这样就能使用预训练的图像自动编码器和 LDM,而它们使用了大量配对的图像 - 文本数据集进行训练。但是,如果选择空间压缩,则会提升网络复杂度并会让 Transformer 难以用作网络骨干(由于内存限制),尤其是在生成高分辨率视频时。另一方面,虽然时空压缩可以缓解这些问题,但它却不适合使用配对的图像 - 文本数据集,而这些数据集往往比视频 - 文本数据集更大更多样化。

W.A.L.T 是一种用于隐视频扩散模型(LVDM)的 Transformer 方法。

该方法由两阶段构成。

第一阶段,用一个自动编码器将视频和图像映射到一个统一的低维隐空间。这样一来,就可以在图像和视频数据集上联合训练单个生成模型,并显著降低生成高分辨率视频的计算成本。

对于第二阶段,该团队设计了一种用于隐视频扩散模型的新 Transformer 块,其由自注意力层构成,这些自注意力层在非重叠、窗口限制的空间和时空注意力之间交替。这一设计的好处主要有两个:首先,它使用了局部窗口注意力,这能显著降低计算需求。其次,它有助于联合训练,其中空间层可以独立地处理图像和视频帧,而时空层则用于建模视频中的时间关系。

尽管概念上很简单,但这项研究首次在公共基准上通过实验证明 Transformer 在隐视频扩散中具有卓越的生成质量和参数效率。

最后,为了展示新方法的可扩展性和效率,该团队还实验了高难度的照片级图像到视频生成任务。他们训练了三个级联在一起的模型。其中包括一个基础隐视频扩散模型和两个视频超分辨率扩散模型。最终能以每秒 8 帧的速度生成分辨率为 512×896 的视频。在 UCF-101 基准上,这种方法取得了当前最佳的零样本 FVD 分数。

图片

图片

此外,这个模型还可以用于生成具有一致的 3D 摄像机运动的视频。

图片

W.A.L.T

学习视觉 token

在视频的生成式建模领域,一个关键的设计决策是隐空间表征的选择。理想情况下,我们希望得到一种共享和统一的压缩视觉表征,并且其可同时用于图像和视频的生成式建模。

具体来说,给定一个视频序列 x,目标是学习一个低维表征 z,其以一定的时间和空间比例执行了时空压缩。为了得到视频和静态图像的统一表征,总是需要将视频的第一帧与其余帧分开编码。这样一来,就可以将静态图像当作只有一帧的视频来处理。

基于这种思路,该团队的实际设计使用了 MAGVIT-v2 token 化器的因果 3D CNN 编码器 - 解码器架构。

这一阶段之后,模型的输入就成了一批隐张量,它们表示单个视频或堆叠的分立图像(图 2)。并且这里的隐表征是实值的且无量化的。
图片
学习生成图像和视频

Patchify(图块化)。按照原始 ViT 的设计,该团队对每个隐含帧分别进行图块化,做法是将其转换成一个不重叠图块的序列。他们也使用了可学习的位置嵌入,即空间和时间位置嵌入的和。位置嵌入会被添加到图块的线性投影中。注意,对于图像而言,只需简单地添加对应第一隐含帧的时间位置嵌入。

窗口注意力。完全由全局自注意力模块组成的 Transformer 模型的计算和内存成本很高,尤其是对于视频任务。为了效率以及联合处理图像和视频,该团队是以窗口方式计算自注意力,这基于两种类型的非重叠配置:空间(S)和时空(ST),参见图 2。

空间窗口(SW)注意力关注的是一个隐含帧内的所有 token。SW 建模的是图像和视频中的空间关系。时空窗口(STW)注意力的范围是一个 3D 窗口,建模的是视频隐含帧之间的时间关系。最后,除了绝对位置嵌入,他们还使用了相对位置嵌入。

据介绍,这个设计虽然简单,但却有很高的计算效率,并且能在图像和视频数据集上联合训练。不同于基于帧级自动编码器的方法,新方法不会产生闪动的伪影,而这是分开编码和解码视频帧方法的常见问题。
          
条件式生成

为了实现可控的视频生成,除了以时间步骤 t 为条件,扩散模型还往往会使用额外的条件信息 c,比如类别标签、自然语言、过去帧或低分辨率视频。在新提出的 Transformer 骨干网络中,该团队整合了三种类型的条件机制,如下所述:

交叉注意力。除了在窗口 Transformer 块中使用自注意力层,他们还为文本条件式生成添加了交叉注意力层。当只用视频训练模型时,交叉注意力层使用同样窗口限制的注意力作为自注意力层,这意味着 S/ST 将具有 SW/STW 交叉注意力层(图 2)。然而,对于联合训练,则只使用 SW 交叉注意力层。对于交叉注意力,该团队的做法是将输入信号(查询)和条件信号 (key, value) 连接起来。

AdaLN-LoRA。在许多生成式和视觉合成模型中,自适应归一化层都是重要组件。为了整合自适应归一化层,一种简单方法是为每一层 i 包含一个 MLP 层,以对条件参数的向量进行回归处理。这些附加 MLP 层的参数数量会随层的数量而线性增长,并会随模型维度的变化二次增长。受 LoRA 启发,研究者提出了一种减少模型参数的简单方案:AdaLN-LoRA。

以自我为条件(Self-conditioning)。除了以外部输入为条件,迭代式生成算法还能以自己在推理期间生成的样本为条件。具体来说,Chen et al. 在论文《Analog bits: Generating discrete data using diffusion models with self-conditioning》中修改了扩散模型的训练过程,使得模型有一定概率 p_sc 生成一个样本,然后再基于这个初始样本,使用另一次前向通过来优化这个估计。另有一定概率 1-p_sc 仅完成一次前向通过。该团队沿通道维度将该模型估计与输入连接到一起,然后发现这种简单技术与 v-prediction 结合起来效果很好。

自回归生成

为了通过自回归预测生成长视频,该团队还在帧预测任务上对模型进行了联合训练。其实现方式是在训练过程中让模型有一定概率 p_fp 以过去帧为条件。条件要么是 1 个隐含帧(图像到视频生成),要么是 2 个隐含帧(视频预测)。这种条件是通过沿有噪声隐含输入的通道维度整合进模型中。推理过程中使用的是标准的无分类器引导,并以 c_fp 作为条件信号。

视频超分辨率

使用单个模型生成高分辨率视频的计算成本非常高,基本难以实现。而研究者则参考论文《Cascaded diffusion models for high fidelity image generation》使用一种级联式方法将三个模型级联起来,它们操作的分辨率越来越高。

其中基础模型以 128×128 的分辨率生成视频,然后再经过两个超分辨率阶段被上采样两次。首先使用一种深度到空间卷积运算在空间上对低分辨率输入(视频或图像)进行上采样。请注意,不同于训练(提供了基本真值低分辨率输入),推理依靠的是之前阶段生成的隐含表征。

为了减少这种差异并能在超分辨率阶段更稳健地处理在低分辨率阶段产生的伪影,该团队还使用了噪声条件式增强。

纵横比微调。为了简化训练和利用具有不同纵横比的更多数据源,他们在基础阶段使用的是方形纵横比。然后他们又在一个数据子集上对模型进行了微调,通过位置嵌入插值来生成纵横比为 9:16 的视频。
    
实验

研究者在多种任务上评估了新提出的方法:以类别为条件的图像和视频生成、帧预测、基于文本的视频生成。他们也通过消融研究探索了不同设计选择的效果。

视觉生成

视频生成:在 UCF-101 和 Kinetics-600 两个数据集上,W.A.L.T 在 FVD 指标上优于之前的所有方法,参见表 1。
图片
图像生成:表 2 比较了 W.A.L.T 与其它当前最佳方法生成 256×256 分辨率图像的结果。新提出的模型的表现优于之前的方法,并且不需要专门的调度、卷积归纳偏差、改进的扩散损失和无分类器指导。虽然 VDM++ 的 FID 分数略高一些,但它的模型参数却多很多(2B)。
图片
消融研究

为了理解不同设计决策的贡献,该团队也进行了消融研究。表 3 给出了在图块大小、窗口注意力、自我条件、AdaLN-LoRA 和自动编码器方面的消融研究结果。
图片
文本到视频生成

该团队在文本 - 图像和文本 - 视频对上联合训练了 W.A.L.T 的文本到视频生成能力。他们使用了一个来自公共互联网和内部资源的数据集,其中包含约 970M 对文本 - 图像和约 89M 对文本 - 视频。

基础模型(3B)的分辨率为 17×128×128,两个级联的超分辨率模型则分别为 17×128×224 → 17×256×448 (L, 1.3B, p = 2) 和 17× 256×448→ 17×512×896 (L, 419M, p = 2)。他们也在基础阶段对纵横比进行了微调,以便以 128×224 的分辨率生成视频。所有的文本到视频生成结果都使用了无分类器引导方法。

下面是一些生成的视频示例,更多请访问项目网站:

文本:A squirrel eating a burger.

图片

文本:A cat riding a ghost rider bike through the desert.

图片

定量评估

以科学方式评估基于文本的视频生成还依然是一大难题,部分原因是缺乏标准化的训练数据集和基准。到目前为止,研究者的实验和分析都集中于标准的学术基准,它们使用了同样的训练数据,以确保比较是公平的对照。

尽管如此,为了与之前的文本到视频生成研究比较,该团队还是报告了在零样本评估设置下在 UCF-101 数据集上的结果。
图片
可以看到,W.A.L.T 的优势很明显。

更多细节请参考原论文。
工程W.A.L.T
相关数据
李飞飞人物

李飞飞,斯坦福大学计算机科学系教授,斯坦福视觉实验室负责人,斯坦福大学人工智能实验室(SAIL)前负责人。专业领域是计算机视觉和认知神经科学。2016年11月李飞飞加入谷歌,担任谷歌云AI/ML首席科学家。2018年9月,返回斯坦福任教,现为谷歌云AI/ML顾问。10月20日斯坦福大学「以人为中心的AI计划」开启,李飞飞担任联合负责人。11月20日李飞飞不再担任SAIL负责人,Christopher Manning接任该职位。

自动编码器技术

自动编码器是用于无监督学习高效编码的人工神经网络。 自动编码器的目的是学习一组数据的表示(编码),通常用于降维。 最近,自动编码器已经越来越广泛地用于生成模型的训练。

调度技术

调度在计算机中是分配工作所需资源的方法。资源可以指虚拟的计算资源,如线程、进程或数据流;也可以指硬件资源,如处理器、网络连接或扩展卡。 进行调度工作的程序叫做调度器。调度器通常的实现使得所有计算资源都处于忙碌状态,允许多位用户有效地同时共享系统资源,或达到指定的服务质量。 see planning for more details

自注意力技术

自注意力(Self-attention),有时也称为内部注意力,它是一种涉及单序列不同位置的注意力机制,并能计算序列的表征。自注意力在多种任务中都有非常成功的应用,例如阅读理解、摘要概括、文字蕴含和语句表征等。自注意力这种在序列内部执行 Attention 的方法可以视为搜索序列内部的隐藏关系,这种内部关系对于翻译以及序列任务的性能非常重要。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

张量技术

张量是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在 维空间内,有 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。称为该张量的秩或阶(与矩阵的秩和阶均无关系)。 在数学里,张量是一种几何实体,或者说广义上的“数量”。张量概念包括标量、矢量和线性算子。张量可以用坐标系统来表达,记作标量的数组,但它是定义为“不依赖于参照系的选择的”。张量在物理和工程学中很重要。例如在扩散张量成像中,表达器官对于水的在各个方向的微分透性的张量可以用来产生大脑的扫描图。工程上最重要的例子可能就是应力张量和应变张量了,它们都是二阶张量,对于一般线性材料他们之间的关系由一个四阶弹性张量来决定。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

插值技术

数学的数值分析领域中,内插或称插值(英语:interpolation)是一种通过已知的、离散的数据点,在范围内推求新数据点的过程或方法。求解科学和工程的问题时,通常有许多数据点借由采样、实验等方法获得,这些数据可能代表了有限个数值函数,其中自变量的值。而根据这些数据,我们往往希望得到一个连续的函数(也就是曲线);或者更密集的离散方程与已知数据互相吻合,这个过程叫做拟合。

图像生成技术

图像生成(合成)是从现有数据集生成新图像的任务。

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

上采样技术

在数字信号处理中,上采样、扩展和内插是与多速率数字信号处理系统中的重采样过程相关的术语。 上采样可以与扩展同义,也可以描述整个扩展和过滤(插值)过程。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

堆叠技术

堆叠泛化是一种用于最小化一个或多个泛化器的泛化误差率的方法。它通过推导泛化器相对于所提供的学习集的偏差来发挥其作用。这个推导的过程包括:在第二层中将第一层的原始泛化器对部分学习集的猜测进行泛化,以及尝试对学习集的剩余部分进行猜测,并且输出正确的结果。当与多个泛化器一起使用时,堆叠泛化可以被看作是一个交叉验证的复杂版本,利用比交叉验证更为复杂的策略来组合各个泛化器。当与单个泛化器一起使用时,堆叠泛化是一种用于估计(然后纠正)泛化器的错误的方法,该泛化器已经在特定学习集上进行了训练并被询问了特定问题。

视频超分辨率技术

视频超分辨率是将视频从低分辨率升级到高分辨率的任务。

量化技术

深度学习中的量化是指,用低位宽数字的神经网络近似使用了浮点数的神经网络的过程。

视频生成技术

视频生成是指利用深度学习等技术生成视频的任务。

视频预测技术

视频预测任务是指在基于给定的视频帧序列,生成一个可信的未来帧序列。

推荐文章
暂无评论
暂无评论~