12.UniT:Multimodal Multitask Learning with a Unified Transformer

article/2025/8/21 23:14:34

1.动机

      UniT,它通过统一transformer联合学习跨不同领域的多个任务。我们的UniT模型可以同时处理8个数据集上的7个任务,从对象检测到视觉和语言推理以及自然语言理解,同时通过紧凑的模型参数集实现每个任务的强大性能。

     我们提出了一个统一的transformer模型UniT,它可以同时学习跨不同领域的最重要的任务,从对象检测到自然语言理解和多模态推理。基于transformer编码器-解码器体系结构,我们的UniT模型用编码器对每个输入模态进行编码,并在编码输入表示上使用共享解码器对每个任务进行预测,然后是特定于任务的输出头。整个模型端到端联合训练,每个任务都有损失。与之前使用变压器进行多任务学习的研究相比,我们在所有任务中共享相同的模型参数,而不是分别微调特定于任务的模型,并处理跨不同领域的更高种类的任务。在我们的实验中,我们在8个数据集上联合学习了7个任务,在参数显著减少的情况下,在每个任务上都取得了较好的成绩。是否有可能建立一个单一的模型,同时处理各种领域的任务,作为迈向普遍智能的一步?之前的工作试图解决其中的一些问题,但只是在有限的范围内:

     A.仅适用于来自单个域或特定多模态域的任务;ViT和DETR关注的是仅视觉的任务,BERT及其衍生物只处理语言任务,而Visu- alBERT, VILBERT等多模态变换只研究视觉和语言的特定多模态域。

     B.涉及每个任务的特定任务的微调,不利用任何任务之间的共享参数,通常以N倍于N个任务的参数结束,例如,一个人必须分别使用BERT对每个任务的模型进行微调。

      C.仅从一个领域对相关或类似的任务进行多任务处理,有时使用硬编码的训练策略;例如,T5只适用于语言领域的任务,而VILBERT-MT只适用于相关的视觉和语言任务。

2.贡献

在本研究中,我们建立了一个以图像和/或文本为输入的统一transformer(UniT)模型,并联合训练多种任务,从视觉感知和自然语言理解到联合视觉和语言推理。单位由transformer编码每个输入通道作为一个隐藏的状态序列(特征向量),和一个transformer在编码译码器输入模式,紧随其后的是特定于任务的输出头应用于解码器隐状态使预测为每个任务。与之前使用transformer进行多任务学习的工作相比,我们在更大种类的任务上取得了与之前建立良好的工作相当的性能;不仅是视觉与语言的联合任务,如视觉问题的回答,而且是只有视觉和语言的任务。我们在这项工作中做出了以下贡献

我们提出了一种统一的transformer编码器-解码器体系结构UniT,它可以处理多个任务,并在一个模型中使用更少的参数完成主要任务,这是向通用智能迈出的一步。

我们共同学习视觉和文本领域及其交叉点中最突出的任务,即GLUE基准中的对象检测、视觉回答(VQA)、视觉蕴含和自然语言理解任务,包括QNLI、MNLI、QQP和SST-2。

我们证明这些不同的任务可以同时学习,并在我们的训练方案下适当收敛。通过对多种任务的分析,我们发现,多模态任务(如VQA和视觉蕴涵)从使用单模态任务的多任务训练中受益。

3.相关工作

大多数以前的transformer应用和扩展都为每个感兴趣的任务提供了特定的模型。在BERT中,预训练的transformer模型在多个下游语言任务上分别进行微调。在T5中,文本到文本转换器是针对不同的语言任务进行联合预训练的。然而,尽管通过多任务预训练学习了通用表示,T5仍然为每个下游任务微调了一组不同的参数。相反,我们在一个transformer中同时学习多个任务。

我们的UniT模型的概述,使用统一的transformer编码器-解码器体系结构联合处理不同领域的广泛任务。我们的模型使用一个图像编码器对视觉输入进行编码,一个文本编码器对语言输入进行编码,以及一个带有每个任务查询embedding的联合解码器,后面是任务特定的头,以实现每个任务的最终输出。此外,我们的模型允许端到端训练直接通过图像像素,而不是依赖于预先训练的检测器.

 

与多模态预训练相比。之前的作品如VirTex、Voken和VisualBERT表明,对多模态数据(如图像标题)的预训练有助于下游的视觉、语言或多模态任务,这通常是通过构建专门的模型来完成的—通过对每个下游任务进行微调。与这些方法不同,我们在一个共享模型中处理所有任务,跨领域的一般知识不会因为对特定下游任务的微调而丢失。我们相信,联合解决跨领域不同任务的能力是迈向通用的关键一步。

 

3.Unit

考虑了两种输入方式:图像和文本。对于提出的基于transformer的图像输入编码器,首先应用了卷积神经网络主干提取可视化特征图,再由transformer编码器将其编码为一个隐藏状态列表,以整合全局上下文信息。对于语言输入,使用BERT,特别是12层uncased版本,将输入词(例如问题)编码为BERT最后一层的一系列隐藏状态。在将输入模态编码为隐藏状态序列后,将transformer解码器应用于单个编码模态或两个编码模态的级联序列,以确定任务是单模态(即仅视觉或仅语言)还是多模态,即探索在所有任务之间使用单独的解码器(即特定于任务的解码器)或共享的解码器。最后,来自transformer解码器的表示特征被传递给一个特定任务预测头,比如一个简单的两层分类器,以输出最终的预测。鉴于UniT的简单性,它可以很容易地扩展到更多的模态和输入。

图像编码器。在模型中,用一个由transformer编码器控制的卷积神经网络将输入图像I编码成一个编码的视觉隐藏状态列表。图像编码过程受到DETR的启发。首先,在输入图像上应用卷积神经网络骨干网络B来提取尺寸为Hv×Wv×dbv的视觉特征映射。主干网络B遵循ResNet-50的结构,并将dilation应用于其最后一个C5块,并且在DETR中对目标检测进行预训练。在特征映射上应用具有Nv层和隐藏大小dev的视觉transformer编码器E,将其进一步编码为L倍大小的视觉隐藏状态hv。此外,考虑到不同的任务(如目标检测和VQA)可能需要提取不同类型的信息,还在transformer编码器中添加了任务嵌入向量wtask,以允许它在输出中提取特定于任务的信息。任务标记wtask是维度dev的可学习的参数,该参数和初始的扁平视觉特征列表做级联,并将其从输出隐藏状态中剥离出来。视觉transformer编码器E的结构遵循DETR,其中将位置编码添加到特征映射中。

4.贡献

提出了UniT,一个统一的transformer编码器-解码器体系结构,以较少的参数在一个单一模型中处理多个任务和领域,并向通用智能迈进了一步。

可以同时学习多种任务,并在提出的训练方案下适当地融合。共同学习视觉和文本领域中最突出的任务及其交叉点,即GLUE benckmark中的目标检测、视觉问答(VQA)、视觉蕴涵和自然语言理解任务,包括QNLI、MNLI、QQP和SST-2。

UniT在多任务训练中的性能优于对象检测和VQA。在所有三个数据集上,我们使用一个共享解码器的最终模型的性能优于单独训练的单任务模型。在COCO检测和VQAv2数据集上,我们还对最终模型的测试开发拆分进行了评估。

 我们进一步探讨了对每个任务的共享模型(第5行)进行微调,发现虽然每个任务的微调对对象检测带来了显著的提升。

不同配置的单元模型在COCO检测、SNLI-VE和MNLI上的消融分析, 其他任务如第6行所示。请注意,尽管mAP在检测上更好,但每个任务的微调会导致8倍多的参数、更长的训练和一般性的损失,这是我们希望避免的,因为我们的目标是构建一个通用模型。

在这项工作中,我们展示了转换器框架可以应用于多个领域,在一个统一的编码器-解码器模型中联合处理多个任务。我们的UniT模型同时处理跨越8个数据集的7个任务,在一个单一的训练步骤中学习它们,并通过一个紧凑的共享参数集在每个任务上实现强大的性能。通过一个领域不可知的转换器体系结构,我们的模型向构建通用智能体迈出了一步,该智能体能够处理不同领域的广泛应用,包括视觉感知。


http://chatgpt.dhexx.cn/article/MmCiTRAN.shtml

相关文章

Flow Prediction in Spatio-Temporal Networks Based on Multitask Deep Learning(TKDE2020)

Flow Prediction in Spatio-Temporal Networks Based on Multitask Deep Learning(TKDE2020) 摘要:预测交通流(如车辆、人群和自行车的交通),包括在一个节点的进出交通和不同节点之间的过渡,在交通运输系统的时空网络…

GPT2.0语言模型 Language Models are Unsupervised Multitask Learners

论文链接:https://d4mucfpksywv.cloudfront.net/better-language-models/language-models.pdf Tensorflow代码链接:https://github.com/openai/gpt-2 Pytorch代码链接:https://github.com/huggingface/pytorch-pretrained-BERT 参考文档&…

论文阅读《Language Models are Unsupervised Multitask Learners》

论文地址:《Language Models are Unsupervised Multitask Learners》 代码地址:https://github.com/openai/gpt-2 文章目录 论文介绍模型框架实验分析结论 论文介绍 本文将常识推理和情感分析两项任务联系起来,采取更一般的方法。证明了语言…

MulT: An End-to-End Multitask Learning Transformer 多任务共享注意力

文章 同时学习多个高级视觉任务,包括深度估计、语义分割、reshading表面法线估计、2D 关键点检测和边缘检测。 与单个任务Transformer相比,跨任务联合培训的Transformer模型能否提高每个任务的性能?在基于Transformer的框架中,可…

Paper | Multitask learning

目录 1. MTL的定义2. MTL的机制 2.1. Representation Bias2.2. Uncorrelated Tasks May Help?3. MTL的用途 3.1. Using the Future to Predict the Present3.2. Time Series Prediction3.3. Using Extra Tasks to Focus Attention3.4. Quantization Smoothing3.5. S…

GPT2(Language Models are Unsupervised Multitask Learners)论文阅读

1. 论文阅读 论文地址:Language Models are Unsupervised Multitask Learners 1.1 背景介绍 2019年OpenAI发布的模型,OpenAI在2018年的GPT1中给出了一种半监督的训练方法,在GPT2中针对如下问题做了升级: 以前机器学习训练代价大…

#Paper Reading# Language Models are Unsupervised Multitask Learners

论文题目: Language Models are Unsupervised Multitask Learners 论文地址: https://life-extension.github.io/2020/05/27/GPT技术初探/language-models.pdf 论文发表于: OpenAI 2019 论文所属单位: OpenAI 论文大体内容: 本文主要提出了GPT-2(Gener…

【论文阅读】Multitask Prompted Training Enables Zero-shot Task Generalization

前言 本文源自 ICLR 2022 原文地址:Multitask Prompted Training Enables Zero-shot Task Generalization Discussion 中提到的 FLAN 参考博文 【论文阅读】Finetuned Language Models Are Zero-Shot Learners_长命百岁️的博客-CSDN博客 Abstract 大模型在多种…

MultiTask Learning Survey

目录 一、常见Multi-Task 架构 二、MTL的一些优化方法 三、ExperimentConclusion 原文链接:MultiTask Survey 一、常见Multi-Task 架构 Hard和Soft区分:Hard共享底层参数,在高层提取中相互独立;Soft使用十字绣的形式&#xf…

Multitask Learning

参考 Multitask Learning - 云社区 - 腾讯云 1、单任务学习VS多任务学习 单任务学习:一次只学习一个任务(task),大部分的机器学习任务都属于单任务学习。多任务学习:把多个相关(related)的任务…

Multi-Task 多任务学习, 那些你不知道的事

作者 | 三和厂妹 来源 | 文末『阅读原文』处 概念 当在一个任务中要优化多于一个的目标函数[1] ,就可以叫多任务学习 一些例外 「一个目标函数的多任务」:很多任务中把loss加到一起回传,实质优化的是一个目标函数, 但优化的是多个任务&…

多任务学习综述:推荐系统多任务学习(multitask)的实战总结和常见问题(一)

多任务学习算法系列的主要内容是回顾和总结自己2019-2021间在深度学习多任务学习算法(multitask)的工业实践和遇到的常见问题,欢迎更多同学讨论和指正,同时也宣传一波我们组在推荐方向的工作成果——大规模推荐算法库PaddleRec(https://githu…

VS2012下载和安装

1.下载链接 https://pan.baidu.com/s/1YR7Xk9Zlv7zQWCsERdVgIQ 提取码:stvi 2.鼠标右击【Visual Studio2012】压缩包选择【解压到Visual Studio2012】。 3.打开解压后的文件夹,鼠标右击【vs_ultimate】选择【以管理员身份运行】。 4.点击【…】可更改安…

Visual Studio 2013 详细安装教程(安装+注册)

转载自:安装注册:https://jingyan.baidu.com/article/09ea3ede3b2496c0afde3944.html IE10报错解决办法:https://jingyan.baidu.com/article/ff42efa92f79cac19e2202cd.html 1.还是老样子,首先要下载安装文件,这里提供…

使用cubemx工具的STM32对外部flash(W25Q64)的简单编程

SPI SPI简介 SPI通信原理 SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为…

stm32 W25QXX系列驱动 W25Q80 W25Q16 W25Q32 W25Q64 W25Q128 W25Q256

头文件 #ifndef W25QXX__H #define W25QXX__H #include "sys.h"#define W25Q80 0XEF13 #define W25Q16 0XEF14 #define W25Q32 0XEF15 #define W25Q64 0XEF16 #define W25Q128 0XEF17 #define W25Q256 0XEF18#define W25QXX_CS PAout(4)//指令表 #define W25X…

SPI专题(二)——STM32驱动FLASH(W25Q64)

前言: 为了方便查看博客,特意申请了一个公众号,附上二维码,有兴趣的朋友可以关注,和我一起讨论学习,一起享受技术,一起成长。 github:my github 注:博客所涉及的关于 st…

STM32系列(HAL库)——F103C8T6通过SPI方式读写W25Q64—(Flash存储模块)

1.软件准备 (1)编程平台:Keil5 (2)CubeMX (3)XCOM(串口调试助手) 2.硬件准备 (1)W25Q64模块 (2)F1的板子,本例使用经典F103C8T6 (3)ST-link 下载器 (4)USB-TTL模块 (5)杜邦线若干 3.模块资料 (1)模块简介: W25Q64(64M-bit)&#xff0c…

SPI协议学习Cubmx——读写Flash W25Q64

这是最好的时代,这是最坏的时代; 这是智慧的时代,这是愚蠢的时代; 这是信仰的时期,这是怀疑的时期; 这是光明的季节,这是黑暗的季节; 这是希望之春,这是失望之冬&#xf…

STM32使用QUADSPI读写外部Nor Flash(以W25Q64为例)

使用QUADSPI读写W25Q64 QUADSPI介绍硬件连接双闪存模式禁止双闪存模式使能 QUADSPI命令序列指令阶段地址阶段交替字节阶段空指令周期阶段数据阶段 QUADSPI主要信号接口协议模式单线SPI模式双线SPI模式四线SPI模式 使用QUADSPI操作W25Q64发送命令函数状态轮询函数读ID函数QUADSP…