NÜWA:多模态预训练模型,大杀四方!(附源代码下载)

news2024/10/6 12:32:16

关注并星标

从此不迷路

计算机视觉研究院

9d7d80446876746e1be1fdaec3561307.gif

473a2430b8c5bc82ec0d29ce7decea7c.gif

​​​

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

f42c0ac3c8b35c0eed2edf7304b474d8.png

62ea226afec9ee7865c9fd51103e221d.png

论文地址:https://arxiv.org/abs/2111.12417

源代码:https:// github.com/microsoft/NUWA

计算机视觉研究院专栏

作者:Edison_G

最近看到一篇论文,名字首先吸引了,内容大概看了后,觉得还是不错的,今天有幸给大家慢慢分享,有兴趣的同学可以阅读论文,深入继续了解!

一、前言

今天分享的论文,主要提出了一个统一的多模态预训练模型,称为NÜWA,可以为各种视觉合成任务生成新的或操纵现有的视觉数据(即图像和视频)。针对不同场景同时覆盖语言、图像和视频,设计了3D Transformer编码器-解码器框架,不仅可以将视频作为3D数据处理,还可以分别将文本和图像作为1D和2D数据进行适配。还提出了3D Nearby Attention(3DNA)机制来考虑视觉数据的性质并降低计算复杂度。在8个下游任务上评估NÜWA。与几个强大的基线相比,NÜWA在文本到图像生成、文本到视频生成、视频预测等方面取得了最先进的结果。此外,它还显示了令人惊讶的良好的文本零样本能力——引导图像和视频处理任务。

dea486b25e8637b8466869ae750ea1f8.png

8个任务的案例

二、背景

如今,网络变得比以往任何时候都更加视觉化,图像和视频已成为新的信息载体,并已被用于许多实际应用中。在此背景下,视觉合成正成为越来越受欢迎的研究课题,其目的是构建可以为各种视觉场景生成新的或操纵现有视觉数据(即图像和视频)的模型。

自回归模型【Auto-regressive models在视觉合成任务中发挥着重要作用,因为与GAN相比,它们具有显式的密度建模和稳定的训练优势。早期的视觉自回归模型,如PixelCNN、PixelRNN、Image Transformer、iGPT和Video Transformer,都是以“pixel-by-pixel”的方式进行视觉合成的。然而,由于它们在高维视觉数据上的高计算成本,这些方法只能应用于低分辨率的图像或视频,并且难以扩展。

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


三、NÜWA的表现

  • Text-To-Image(T2I)

00b05dd267aa4ebfc40e09b5639a26d4.png

一只戴着护目镜,盯着摄像机的狗

02bedc8a74347d832c53296308ac1fed.png

  • Sketch-To-Image (S2I)

7b5a6fc7f9740d3400b039e745fd8a02.png

草图转图片任务,就是根据草图的布局,生成对应的图片

  • Image Completion (I2I)

21ea2b6accbd3edb534845ea78b9ba4f.png

图像补全,如果一副图片残缺了,算法可以自动“脑补”出残缺的部分

0017c1521a2fa2f802a583ecaae53670.jpeg

  • Image Manipulation (TI2I)

2b9e7e8c90595d0e29495c22390a1a5e.png

图片处理,根据文字描述,处理图片

例如:有一副草原的图片,然后增加一段描述:一匹马奔跑在草原上,然后就可以生成对应的图片。

6808d1c3fefc6958506a5094589fb250.png

  • Video

182a5db063b25096f4c760db890c6970.png


四、新框架

caf20cd45408f0d343456e226e1a58f9.png

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

e58e99fb10e952d22b1c119f614ff14a.png

而编码解码器都是基于一个3D NEARBY SELF-ATTENTION(3DNA)建立的,该机制可以同时考虑空间和时间轴的上局部特性,定义如下:

f006912e7561e6f1418b732bedcd3ed8.png

W 表示可学习的权重,X 和 C 分别代表文本、图像、视频数据的 3D 表示。

3DNA考虑了完整的邻近信息,并为每个token动态生成三维邻近注意块。注意力矩阵还显示出3DNA的关注部分(蓝色)比三维块稀疏注意力和三维轴稀疏注意力更平滑。

  • 3D DATA REPRESENTATION

为了涵盖所有文本、图像和视频或其草图,研究者将它们全部视为标记并定义统一的 3D符号X∈Rh×w×s×d,其中h和w表示空间轴(分别为高度和宽度)中的标记数量,s表示时间轴上的标记数量,d是每个标记的维度。

  • 3D NEARBY SELF-ATTENTION

基于之前的3D数据表示定义了一个统一的3D Nearby Self-Attention (3DNA) 模块,支持自注意力和交叉注意力。首先给出方程中3DNA的定义:

406d3752bae3536b25c0fbb91be25eb1.png

并在如下等式中介绍详细的实现。

c6f651ab720226b3c0c23cbb5c31eaf9.png

5f47e8ed1e055d6f81b635e3cc3a55ef.png

c669112c3803abc2f791dfe1eb9582c7.png

  • 3D ENCODER-DECODER

开始介绍基于3DNA构建的3D编码-解码器。为了在C∈Rh′×w′×s′×din的条件下生成目标Y∈Rh×w×s×dout,Y和C的位置编码通过考虑高度、宽度和时间轴的三个不同的可学习词汇更新。

871913a359d6e6edf4f725d073bdb65d.png

然后,条件C被输入到具有L 3DNA层堆栈的编码器中,以对自注意力交互进行建模,第l层在等式中表示:

5aba059130425b25558a2081a32ede08.png

同样,解码器也是一堆L 3DNA层。解码器计算生成结果的自注意力以及生成结果和条件之间的交叉注意力。第l层表示如下等式。

3c9f2c33b70b8f764d3a735de9f44908.png

五、实验简单分析

758a2ed810738b2c040d0b673f4586fb.png

e0b483e565af00d811bb3b8b23ad4db5.png

其他实验可在论文中获取!

© The Ending

转载请联系本公众号获得授权

f848d118acb4bb8dc195290074fbf488.gif

计算机视觉研究院学习群等你加入!

计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

12883469b4e6d0eb7844d2c5f9d8baba.jpeg

扫码关注

计算机视觉研究院

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

 往期推荐 

🔗

  • 实用教程详解:模型部署,用DNN模块部署YOLOv5目标检测(附源代码)

  • LCCL网络:相互指导博弈来提升目标检测精度(附源代码)

  • Poly-YOLO:更快,更精确的检测(主要解决Yolov3两大问题,附源代码)

  • ResNet超强变体:京东AI新开源的计算机视觉模块!(附源代码)

  • Double-Head:重新思考检测头,提升精度(附原论文下载)

  • MUCNetV2:内存瓶颈和计算负载问题一举突破?分类&检测都有较高性能(附源代码下载)

  • 旋转角度目标检测的重要性!!!(附源论文下载)

  • 双尺度残差检测器:无先验检测框进行目标检测(附论文下载)

  • Fast YOLO:用于实时嵌入式目标检测(附论文下载)

  • Micro-YOLO:探索目标检测压缩模型的有效方法(附论文下载)

  • 目标检测干货 | 多级特征重复使用大幅度提升检测精度(文末附论文下载)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GO开篇:手握Java走进Golang的世界

文章目录 一、Golang简介1、Go的诞生2、Go的官网域名3、Go的发展4、Go的设计思想5、Go的特点6、Go的性能7、Go的吉祥物 二、Go和Java的宏观对比1、编译型语言 or 解释型语言2、微观对比 三、Go应用场景1、开源上的应用 四、总结和后续 一、Golang简介 Go(又称 Gola…

基于java+springboot+layui的流浪动物交流信息平台设计实现

基于javaspringbootlayui的流浪动物交流信息平台设计实现 博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码联系方…

ES6对象新增了哪些扩展?

一、属性的简写 ES6中,当对象键名与对应值名相等的时候,可以进行简写 const baz {foo:foo}// 等同于 const baz {foo} 方法也能够进行简写 const o {method() {return "Hello!";} };// 等同于const o {method: function() {return &qu…

时局不利,如何化解职场焦虑?

部分数据来源:ChatGPT 在不景气的经济环境下,大多数求职者都面临极大的压力,而技术人员又是其中之一。他们不仅需要不断学习新技能,还需要面对工作市场的竞争,并努力将自己的技能提升到所需的水平。一旦被拒绝或无法找…

半导体设计使用FTP外发文件存在风险,如何安全有效替代?

近几年,基于我国“科技强国”战略目标的实行,以半导体、人工智能、新能源等为代表的的科技型领域及行业快速发展。在半导体行业,以行业产业链来区分,整个行业包括上游材料和设备支撑、中游芯片设计和制造,以及下游移动…

用ArcGIS绘制研究区地图

科研tips:ArcGIS中国地图构建教程 有同学提问:怎么画论文最常用的研究区地图呢? 论文用图对准确性和美观度有一定要求,而ArcGIS具有强大的地图制作功能,可以利用该软件快速制作研究区地图。 01 地图的导入 &#…

C语言CRC-16 DNP格式校验函数

C语言CRC-16 DNP格式校验函数 CRC-16校验产生2个字节长度的数据校验码,通过计算得到的校验码和获得的校验码比较,用于验证获得的数据的正确性。基本的CRC-16校验算法实现,参考: C语言标准CRC-16校验函数。 不同应用规范通过对输…

基于 SpringBoot实现文档管理编辑器

访问【WRITE-BUG数字空间】_[内附完整源码和文档] 本项目实现功能如下:注册、登录和个人资料修改;文档编辑:Markdown 文档的阅读和编辑、发布;文档管理; 使用 Cookies 保存登录状态;在数据库中使用 MD5 保…

【AUTOSAR】【以太网】SD

目录 一、概述 二、限制与约束 三、功能说明 3.1 需求 3.1.1 通用需求 3.1.2 以太网通信 3.1.3 状态处理 3.1.4 与SoAd的交互 3.1.5 订阅事件组重试处理 3.2 报文格式 3.2.1 Entries Array 3.2.2 Opotion Array 3.2.3 示例 3.3 服务发现条目 3.3.1 服务查找相关…

Godot引擎 4.0 文档 - 循序渐进教程 - 使用信号

本文为Google Translate英译中结果,DrGraph在此基础上加了一些校正。英文原版页面: Using signals — Godot Engine (stable) documentation in English 使用信号 在本课中,我们将研究信号。它们是节点在发生特定事件时发出的消息&#xf…

S7-1200中通过MODBUS TCP客户端在一次请求中实现从服务器读写一个或多个保持性寄存器的具体方法

S7-1200中通过MODBUS TCP客户端在一次请求中实现从服务器读写一个或多个保持性寄存器的具体方法 TIA博途V17中增加了MODBUS TCP客户端功能码 23,可以在一次请求作业下实现从服务器读取和写入一个或多个保持性寄存器,这样省去了轮询的编程工作量,提高了工作效率,如下图所示,…

第三章 卷积神经网络

目录 一、CNN 基础二、CNN 进阶 卷积神经网络,Convolutinal Neural Network,CNN 在之前两章的由线性模型构成的神经网络都是全连接神经网络 一、CNN 基础 在之前全连接层处理二维图像的时候,直接将二维图像从 N 1 28 28 N \times 1 \t…

【DolphinScheduler 安装部署】DolphinScheduler调度系统如何安装部署?

要安装DolphinScheduler(以下简称DS)调度系统,请按照以下步骤进行操作: 系统要求: 确保您的计算机满足DS的最低系统要求,例如操作系统版本、内存和处理器要求等。DS通常在Linux系统上运行良好。 下载DS安装…

k8s部署mongodb副本高可用集群

此版本的NFS为单点,仅为练习使用,生产环境建议使用cephfs的卷类型,避免单点。或者通过keepalived加Sersync的方案对NFS作容灾处理即可用于生产环境。当然,对于开发或测试环境,方便起见,直接使用单点的NFS加…

Oracle OCP 和MySQL OCP 考试完成后查询成绩和下载证书的步骤

我的一些学员考完Oracle OCP和MySQL OCP不知道如何查看自己的考试成绩和证书,姚远老师现在详细说明具体的操作步骤,一共8步。 关于号主,姚远: Oracle ACE(Oracle和MySQL数据库方向)Oracle MAA 大师华为云…

基于Java+Springmvc+vue+element实现大学生科技创新创业项目管理系统

基于JavaSpringmvcvueelement实现大学生科技创新创业项目管理系统 博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源…

【校园网设计】基于ensp的跨地区的校园网组网方案

本博客是基于模拟器ensp的校园网组网方案,有总校区和分校区,主要用了vlan划分、dhcp、nat、ospf、acl、bgp等技术。首先说一下本博客的局限性: 总校区和分校区之间只是使用的传统的bgp建立连接,这样可以在运营商上看到内网的明细&…

Squid 代理服务器的应用(传统代理、透明代理、ACL控制列表、sarg日志分析、反向代理)

一、Squid代理服务器的概述 squid 作为一款服务器代理工具,可以缓存网页对象,减少重复请求,从而达到加快网页访问速度,隐藏客户机真实IP,更为安全。 Squid主要提供缓存加速、应用层过滤控制的功能 1、squid代理的工…

Android Studio SDK无法勾选安装的解决方案

问题描述 1、在初次安装好Android Studio后,会启动AS,出现经典的Unable to access Android SDK add-on list报错,点Cancel即可。网上的解决方法分为两种:(1)设置Proxy为教育网(2)在…

Linux 下安装SonarQube (版本sonarqube7.6)

公司的虚拟环境坏了,sonarqube需要重新安装。简单记录安装过程和遇到的问题。 相关环境信息 CentOS Linux release 7.6.1810 (Core)MySQL 5.7.30sonarqube7.6JDK 11.0.2 一 安装Sonar前需要知道 1为什么要代码清洁 软件的核心是代码。代码不仅指导业务行为&#…