51-42 NÜWA:女娲,统一的多模态预训练模型

21年11月,微软、北大联合发布了NUWA模型,一个统一的多模态预训练模型,在 8 个下游任务上效果惊艳。目前该项目已经发展成为一系列工作,而且都公开了源代码。

Abstract

本文提出了一种统一的多模态预训练模型N̈UWA,该模型可以实现各种视觉合成任务,包括生成新的或操作现有的视觉数据(即图像和视频)。为了同时处理不同场景的语言、图像和视频,本文设计了一个 3D transformer 编码器-解码器框架,它不仅可以将视频作为 3D 数据处理,还可以适配文本和图像作为 1D 和 2D 数据。考虑视觉数据的性质并降低计算复杂度,本文还提出了一种 3D Nearby Attention(3DNA)邻域自注意机制。我们在 8 个下游任务上评估了 N̈UWA,与几个强基线相比,N̈UWA在文生图像、文生视频、视频预测等方面取得了最先进的结果。此外,它还显示出在文本引导图像和视频操作任务上惊人的zero-shot能力。

Figure 1, Examples of 8 typical visual generation and manipulation tasks supported by the NN̈WA model. 

1. Introduction

如今,WEB比以往任何时候都更加视觉,因为图像和视频已经成为新的信息载体,并已被用于许多实际应用。在此背景下,构建可以为各种视觉场景生成新的或操纵现有视觉数据(即图像和视频)的模型,正在成为一个越来越流行的研究课题。

与GANs相比,自回归模型Auto-regressive在视觉合成任务中扮演着重要的角色,因为它们的显式密度建模和稳定的训练优势。早期的视觉自回归模型,如PixelCNN、PixelRNN、Image Transformer、iGPT和Video Transformer,以“逐像素”的方式执行视觉合成。然而,由于其对高维视觉数据的高计算成本,这种方法只能应用于低分辨率图像或视频,难以扩大规模。

最近,随着VQ-VAE作为一种离散视觉token化方法的出现,高效和大规模的预训练可以应用于图像(如DALL-E和CogView)和视频(如GODIVA)的合成任务。尽管这取得了巨大的成功,但这些解决方案仍然存在局限性——它们分开处理图像和视频,并专注于生成其中之一。这限制了模型从图像和视频数据中受益。

在本文中,我们提出了N̈UWA,一个统一的多模态预训练模型,旨在支持图像和视频的视觉合成任务,并对 8个下游任务进行了实验,如图 1 所示。

本工作有三个主要贡献:

  • 提出了N̈UWA,一个通用的3D transformer编码器-解码器框架,它同时针对不同的视觉合成任务,覆盖语言、图像和视频。它由一个自适应编码器,该编码器将文本或视觉草图作为输入,以及一个由 8 个视觉合成任务共享的解码器组成。
  • 提出了一种 3D Nearby Attention (3DNA) 邻域自注意机制,综合考虑空间和时间轴的局部特征。3DNA不仅降低了计算复杂度,而且提高了生成视觉任务质量。
  • 与几个强基线相比,N̈UWA在文生图、文生视频、视频预测等方面取得了最先进的结果。此外,N̈UWA不仅在文本引导的图像处理上表现出良好的零样本能力,而且在文本引导的视频操作方面也表现出了令人惊讶的zero-shot能力。

2. Related Works

2.1. Visual Auto-Regressive Models

本文提出的方法遵循基于自回归模型的图像合成研究路线。早期的视觉自回归模型以“逐像素”的方式执行视觉合成。然而,由于高维数据建模时的计算成本较高,这种方法只能应用于低分辨率图像或视频,难以扩大规模。

最近,基于VQ-VAE的视觉自回归模型被提出用于视觉合成任务。通过将图像转换为离散的视觉token,这些方法可以对文本到图像生成(如DALL-E和CogView)、文本到视频生成(如GODIVA)和视频预测(如LVT和VideoGPT)进行高效和大规模的预训练,生成的图像或视频的分辨率更高。然而,这些模型都没有由图像和视频一起训练。但直觉告诉我们,这些任务可以从两种类型的视觉数据中受益。

与这些工作相比,N̈UWA是一个统一的自回归视觉合成模型,涵盖图像和视频的视觉数据,可以支持下游各种任务。我们还在 4.3 节中验证了不同预训练任务的有效性。NUWA 在视觉token化方面使用的是 VQ-GAN [ Taming Transformers for High-Resolution lmage Synthesis ] ,而不是 VQ-VAE ,根据我们的实验,这可以带来更好的生成质量。

备注:AE、VAE、VQ-VAE和VQ-GAN的简要比较,参见博文。

51-33 LDM 潜在扩散模型论文精读 + DDPM 扩散模型代码实现_ldm论文复现-CSDN博客

2.2. Visual Sparse Self-Attention

如何处理自注意带来的二次复杂性是另一个挑战,特别是对于高分辨率图像合成或视频合成等任务。

与 NLP 类似,已经探索了稀疏注意力机制来缓解这个问题以进行视觉合成。有些工作将视觉数据分成不同的部分(或块),然后对合成任务进行按块稀疏注意。

  • Latent Video Transformer
  • Scaling Autoregressive Video Models

然而,这些方法分别处理不同的块,并没有对其关系进行建模。有些工作提出在视觉合成任务中使用轴向稀疏注意,该任务沿着视觉数据表示轴进行稀疏注意。这种机制使训练非常高效,对DALL-E、CogView和GODIVA等大规模预训练模型友好。

  • Axial Attention in Multidimensional Transformers
  • Zero-Shot Text-to-lmage Generation
  • GODIVA: Generating Open-Domaln Videos from nAtural Descriptions

然而,由于自注意中使用的上下文有限,生成的视觉内容质量可能会受到伤害。有些工作提出在视觉合成任务中使用局部稀疏注意力,这允许模型看到更多的上下文。但是这些作品仅适用于图像。

  • Generating Long Sequences with Sparse Transformers
  • Image transformer
  • Stand-Alone Self-Attention in Vision Models

与这些工作相比,N̈UWA提出了一种3D Nearby Attention邻域自注意机制,将局部稀疏注意扩展到图像和视频。我们还在第4.3节中验证了局部稀疏注意,对于视觉生成优于轴向稀疏注意。

3. Method

图 2,N̈UWA整体架构。它包含一个支持多种条件的 adaptive 编码器和一个预训练的解码器,能够同时使图像和视频的信息。对于图像补全、视频预测、图像处理和视频操作任务,将输入的部分图像或视频直接送入解码器即可。

编码解码器都是基于3DNA建立,该机制可以同时考虑空间和时间轴的上局部特性。

图 10,不同 3D 稀疏注意力之间的比较。所有样本都假设输入 3D 数据的大小为 4 × 4 × 2 = 32。上半部分的插图显示需要关注哪些tokens(蓝色)来生成目标tokens(橙色)。下半部分大小为 32 × 32 的矩阵显示了稀疏注意力中的注意掩码(黑色表示掩码tokens)。 

3.1. 3D Data Representation

为了涵盖所有文本、图像和视频或它们的草图,我们将所有文本视为tokens,并定义一个统一的 3D 符号 X ∈ R h×w×s×d,其中 h 和 w 分别表示空间轴上的tokens数(高度和宽度),s 表示时间轴中的tokens数,d 是每个token的维度。接下来,我们将介绍如何获得不同模态的统一表示。

文本自然是离散的,使用 Transformer,我们使用小写字节对编码 (byte pair encoding,BPE) 将它们token化并嵌入到 R1×1×s×d 中。使用占位符 1,因为文本没有空间维度。

图像自然是连续的像素。输入高度为H、宽度W和通道C的原始图像 I∈R h×w ×c,VQ-VAE训练一个可学习的码本,在原始连续像素和离散token之间建立桥梁,如式(1) ~(2)所示:

其中 E 是一个编码器,它将 I 编码为 h × w 网格特征 E(I) ∈ R h×w×dB , B ∈ R N ×dB 是一个具有 N 个视觉token的可学习码本,搜索 E(I)  的每个网格以找到最近的token。搜索的结果 z ∈ {0, 1,..., N − 1} h×w 由 B 嵌入并由解码器 G 重构回 ^I。VQ-VAE 的训练损失可以写成方程式(3)。

其中 ||I − ^I|| 严格约束 I^I 之间精确像素匹配,这限制了模型的泛化能力。

最近,VQ-GAN 通过添加感知损失和 GAN 损失来增强 VQ-VAE 训练,以简化 ^I  之间的精确约束,并专注于高级语义匹配,如等式 (4)∼(5)所示:

VQ-GAN训练后,使用 B[z]∈R h×w×1×d 作为图像的表示。我们使用占位符 1,因为图像没有时间维度。

视频可以被视为图像的时间扩展,最近的工作如VideoGPT和VideoGen将VQ-VAE编码器中的卷积从2D扩展到3D,并训练视频特定的表示。然而,这种方法无法为图像和视频共享一个通用的码本。

本文中,简单地使用 2D VQ-GAN 对视频的每一帧进行编码,也可以生成时间一致性的连贯视频,同时受益于图像和视频数据。生成的视频表示为 R h×w×s×d,其中 s 表示帧数。

对于图像草图,我们将它们视为具有特殊通道的图像。一个图像分割矩阵Rh×w,每个值表示像素类的值,可以以 one-hot 方式 R h×w×c 查看,其中 c 是分割类的数量。

通过训练一个用于图像草图的额外VQ-GAN,最终得到图像嵌入表示R h×w×1×d。类似地,对于视频速写,嵌入表示为 R h×w×s×d

3.2. 3D Nearby Self-Attention

3.3. 3D Encoder-Decoder

3.4. Training Objective

我们在文本到图像 (T2I)、视频预测 (V2V) 和文本到视频 (T2V) 三个任务上训练模型。这三个任务的训练目标是交叉熵,分别表示为方程(16)中的三部分:

对于 T2I 和 T2V 任务,c^{test} 表示文本条件。对于 V2V 任务,由于没有文本输入,我们改为一个特殊单词“None”的恒定 3D 表示 c。θ 表示模型参数。

4. Experiments

基于3.4节,我们首先在三个数据集上预训练 N̈UWA:

  • Conceptual Captions,用于文本到图像 T2I 生成任务,包括 2.9M 文本图像对。
  • Moments in Time Dataset,用于视频预测 V2V 任务,包括 727K 视频。
  • VATEX 数据集,用于文本到视频 T2V 生成,包括 241K 文本-视频对。

4.1. Implementation Details

此部分略,请主要关注消融实验。

4.2. Comparison with state-of-the-art

八大任务包括文生图、文生视频、视频预测、草图到图、图像补全、文本引导的图像操作、草图到视频、文本引导的视频操作。

  • Text-to-Image (T2I) fine-tuning
  • Text-to-Video (T2V) fine-tuning
  • Video Prediction (V2V) fine-tuning
  • Sketch-to-Image (S2I) fine-tuning
  • Image Completion (I2I) zero-shot evaluation

  • Text-Guided Image Manipulation (TI2I) zero-shot evaluation

  • Sketch-to-Video (S2V) fine-tuning
  • Text-Guided Video Manipulation (TV2V) zero-shot evaluation

据我们所知,开放域 S2V 和 TV2V 是本文首次提出的任务。由于没有比较,我们改为在 4.3 节中的消融研究中排列它们。

4.3. Ablation Study

表 4 上半部分显示了不同 VQ-VAE (VQ-GAN) 设置的有效性。

我们在ImageNet和OpenImages上进行了实验。R 表示原始分辨率,D 表示离散token的数量。VQ-GAN显示出比VQ-VAE更好的Fŕechet初始距离(FID)和结构相似性矩阵(SSIM)分数。

因此,重要的是我们不仅压缩原始图像了多少,还有多少离散token用于表示图像。这与认知逻辑一致,仅用一个token来表示人脸太模糊了。实际上,我们发现 16^2 个离散token通常会导致性能不佳,尤其是对于人脸,32^2 个标记表现出最佳性能。然而,更多的离散token意味着更多的计算,特别是对于视频。最后,我们使用权衡版本进行我们的预训练:21^2 个token。

通过对Open Images数据集进行训练,我们进一步将21^2版本的FID评分从4.79提高到4.31。

Tab 4 的下半部分显示了 VQGAN 对草图的性能。在MSCOCO上,VQ-GAN-Seg针对Sketch-to-Image (S2I)任务进行训练。在VSPW上,VQ-GAN-Seg针对Sketch-to-Video (S2V)任务进行训练。上述所有主干网络在像素精度 (PA) 和频率加权交集联合 (FWIoU) 方面表现出良好的性能,这显示了模型使用 3D 草图表示的良好质量。图 8 还显示了 336×336 图像和草图的一些重建样本。

表 5 显示了多任务预训练对文本到视频 (T2V) 生成任务的有效性。我们研究了一个具有挑战性的数据集MSR-VTT,具有自然描述和真实世界的视频。与仅在单个 T2V 任务(第 1 行)上进行训练相比,T2V 和 T2I(第 2 行)的训练将 CLIPSIM 从 0.2314 提高到 0.2379。这是因为 T2I 有助于在文本和图像之间建立连接,从而有助于 T2V 任务的语义一致性。相比之下,T2V 和 V2V(第 3 行)的训练将 FVD 分数从 52.98 提高到 51.81。这是因为 V2V 有助于学习一个通用的无条件视频模式,因此有助于 T2V 任务的视觉质量。作为 N̈UWA 的默认设置,在所有三个任务上的训练都取得了最好的性能。

表 7 显示了 VSPW 据集上 Sketch-to-Video (S2V) 任务的 3D 邻域注意力的有效性。我们研究了 S2V 任务,因为该任务的编码器和解码器都带有 3D 视频数据。为了评估 S2V 的语义一致性,我们提出了一种新的度量,称为 Detected PA,它使用语义分割模型来分割生成视频的每一帧,然后计算生成的片段和输入视频草图之间的像素精度。最后一行的默认 N̈UWA 设置中,具有邻域编码器和邻域解码器,实现了最佳的 FID-vid 和 Detected PA。如果编码器或解码器之一被完全自注意full attention 替换,性能会下降,这表明attention邻域条件和邻域生成结果比简单地考虑所有信息要好。我们在两个方面比较了邻域稀疏和轴向稀疏注意。

  • 首先,附近稀疏的计算复杂度为O ((hws) (e^{h}e^{w}e^{s})),轴稀疏注意为O ((hws) (h + w + s))。为了生成长视频(更长的 s),邻域稀疏在计算上更有效。
  • 其次,在视觉识别任务中,邻域稀疏比轴向稀疏具有更好的性能,这是因为邻域稀疏关注包含空间和时间轴之间相互作用的“邻域”位置,而轴向稀疏分别处理不同的轴,只考虑同一轴上的交互。

图 9 显示了本文提出的一项新任务,我们称之为“文本引导视频操作 (TV2V)”。TV2V 旨在改变视频的未来,从文本引导的选定帧开始。所有样本都开始从第二帧改变视频的未来。第一行显示了原始视频帧,其中潜水员在潜水。在将“潜水员游泳到表面”输入 N̈UWA 的编码器并提供第一个视频帧后,N̈UWA 成功地提供了潜水员游泳到第二行表面的视频。第三行显示了另一个成功的样本,让潜水员游泳到底部。如果我们希望潜水员飞到天空。第四行显示 N̈UWA 也可以使其向上飞行,就像火箭一样。

5. Conclusion

在本文中,我们提出了N̈UWA作为一个统一的预训练模型,可以生成新的或操纵现有的图像和视频,用于8个视觉合成任务。本文一些贡献包括: (1) 一个通用的 3D 编码器解码器框架,同时覆盖文本、图像和视频; (2) 考虑了空间和时间轴邻近域特征的稀疏注意机制; (3) 对 8 个合成任务的综合实验。这是我们构建 AI 平台的第一步,旨在实现视觉世界的创造,并帮助内容创作者。 

N̈UWA系列信息:

  • NÜWA: Visual Synthesis Pre-training for Neural visUal World creAtion. (ECCV 2022)

  • NUWA-Infinity: Autoregressive over Autoregressive Generation for Infinite Visual Synthesis. (NeurIPS 2022)

  • NUWA-LIP: Language Guided Image Inpainting with Defect-free VQGAN. (CVPR 2023)

  • NUWA-XL: Diffusion over Diffusion for eXtremely Long Video Generation. (ACL 2023)

  • DragNUWA: Fine-grained Control in Video Generation by Integrating Text, Image, and Trajectory https://arxiv.org/pdf/2308.08089.pdf.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/559944.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

FPGA中按键程序设计示例

本文中使用Zynq 7000系列中的xc7z035ffg676-2器件的100MHz PL侧的外部差分时钟来检测外部按键是否按下,当按键被按下时,对应的灯会被点亮。当松开按键时,对应的灯会熄灭。 1、编写代码 新建工程,选用xc7z035ffg676-2器件。 点击…

递归——汉诺塔

汉诺塔 法国数学家爱德华卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金…

通过拖拽动态调整div的大小

最近遇到一个需求,页面展示两块内容,需要通过拖拽可以动态改变大小,如下图: 实现思路:其实就是改变div样式的width,本质上就是Dom操作。 完整代码:(基于vue2项目实践) …

23年新算法,SAO-SVM,基于SAO雪消融算法优化SVM支持向量机回归预测(多输入单输出)-附代码

SAO-SVM是一种基于SAO雪消融算法优化的支持向量机(SVM)回归预测方法,适用于多输入单输出的情况。下面是一个简要的概述,包括如何使用SAO-SVM进行回归预测的步骤: 步骤: 1. 数据准备: 收集并准…

API 自动化测试的实践与技巧

在软件开发的快速迭代过程中,及时准确地进行测试变得越来越重要。Apifox 作为一款先进的 API 接口管理和自动化测试平台,为测试人员提供了强大的工具来适应这种变化。以下是使用 Apifox 进行 自动化测试 的实际指南。 1. 接口管理与自动化测试设置 在 …

增强现实(AR)开发框架

增强现实(AR)开发框架为开发者提供了构建AR应用程序所需的基本工具和功能。它们通常包括3D引擎、场景图、输入系统、音频系统和网络功能。以下是一些流行的AR开发框架。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流…

证照之星是免费的吗?证照之星怎么使用?证照之星XE v7.0 免费版 证照之星版本区别

证件照是每个人都必须用到的,并且机构不同,对于证件照的规格也不同。为了提升我们的效率,我们会使用证照之星这类证件照编辑软件对证件照进行编辑,那么这种类型的证件照编辑软件应该如何使用,收费标准又是怎么样的呢&a…

C++中的运算符

一、算数运算符 1.1 加减乘除取模 #include <iostream> using namespace std;int main() {//加减乘除int a1 10;int b1 5;cout << "a1 b1 " << a1 b1 << endl;cout << "a1 - b1 " << a1 - b1 << endl;co…

安装zlmediakit和wvp-pro

通过docker安装zlmediakit&#xff0c;并单独启动wvp-pro.jar - zlmediakit安装 zlmediakit安装比较依赖环境和系统配置&#xff0c;所以这里直接使用docker的方式来安装。 docke pull拉取镜像 docker pull zlmediakit/zlmediakit:master使用下边命令先运行起来 sudo docke…

【深度学习实战(12)】训练之模型参数初始化

在深度学习模型的训练中&#xff0c;权重的初始值极为重要。一个好的初始值&#xff0c;会使模型收敛速度提高&#xff0c;使模型准确率更精确。一般情况下&#xff0c;我们不使用全0初始值训练网络。为了利于训练和减少收敛时间&#xff0c;我们需要对模型进行合理的初始化。 …

图文教程 | 2024年最新Typora激活使用教程合集

前言 汇总一下网上的三种方法。 &#x1f4e2;博客主页&#xff1a;程序源⠀-CSDN博客 &#x1f4e2;欢迎点赞&#x1f44d;收藏⭐留言&#x1f4dd;如有错误敬请指正&#xff01; 关于安装教程&#xff1a;http://t.csdnimg.cn/SCIQ8http://t.csdnimg.cn/SCIQ8自行跳转安装 一…

Ugee手写板Ex08 S在不同软件中的设置

手写笔的结构 功能对应于鼠标的作用笔尖鼠标左键上面第一个键鼠标右键&#xff08;效果有时候也不完全等同&#xff09;上面第二个键鼠标中键 以下测试的软件版本 软件版本windows10WPS2024春季16729Office2007SimpleTex0.2.5Ex08 S驱动版本4.2.4.231109 WPS-word ①点击审…

Zabbix 监控软件(一)

通常我们服务搭建成功 但不清楚服务器的运行状况&#xff0c;这时候就需要会使用监控系统查看服务器状态以及网站流量指标&#xff0c;利用监控系统的数据去了解上线发布的结果&#xff0c;和网站的健康状态。 利用一个优秀的监控软件&#xff0c;我们可以: ●通过一个友好的界…

互联网技术知识点总览——操作系统知识点框架图

简介 本文对操作系统的知识点整体框架进行梳理和分享如下&#xff1a;

智能生活新体验:小米香薰加湿器技术解码

在现代家居生活中&#xff0c;科技与舒适性日益交织&#xff0c;智能家居产品成为提升生活品质的重要工具。小米香薰加湿器作为一款集科技与生活美学于一体的产品&#xff0c;其独特的设计和多功能性受到了广泛欢迎。今天&#xff0c;我们就来详细拆解这款融合了科技与香薰元素…

如何搭建线下陪玩系统(本地伴游、多玩圈子)APP小程序H5多端前后端源码交付,支持二开!

一、卡顿的优化方法 1、对陪玩系统源码中流媒体传输的上行进行优化&#xff0c;通过提升推流端的设备性能配置、推流边缘CDN节点就近选择等方式解决音视频数据源流的卡顿。 2、对陪玩系统源码中音视频数据的下载链路进行优化&#xff0c;通过选择更近更优质的CDN边缘节点来减少…

OpenHarmony实战开发-如何实现发布图片评论功能。

介绍 本示例将通过发布图片评论场景&#xff0c;介绍如何使用startAbilityForResult接口拉起相机拍照&#xff0c;并获取相机返回的数据。 效果图预览 使用说明 通过startAbilityForResult接口拉起相机&#xff0c;拍照后获取图片地址。 实现思路 1.创建CommentData类&…

Docker Desktop打开一直转圈的解决办法

安装Docker Desktop之前确保你的Hyper-V已经打开 开启后需要重新安装重新安装重新安装这是最关键的一步&#xff0c;博主自己看了很多教程&#xff0c;最后试着重装了一下解决了 安装DockerDesktop的时候我的电脑根本就没有Hyper-V这个功能选项&#xff0c;可能是这个问题 如…

RLHF强化学习对其算法:PPO、DPO、ORPO

参考&#xff1a; https://blog.csdn.net/baoyan2015/article/details/135287298 https://cloud.tencent.com/developer/article/2409553 最新的llama3是PPO、DPO两种方法使用 人类反馈强化学习 (RLHF)&#xff0c;它利用人类偏好和指导来训练和改进机器学习模型&#xff1a; …

ColBERT和ColBERTv2:兼具Bi-encoder和cross-encoder优势的多向量排序模型

文章目录 简介ColBERTColBert 原理ColBERT如何训练ColBERT 如何使用离线索引用ColBERT 实现top-k Re-ranking用ColBERT 实现top-k 端到端的检索 ColBERTv2ColBERTv2原理SupervisionRepresentation IndexingRetrieval 总结参考资料 简介 ColBERT是一种多向量排序模型&#xff0…