美文网首页
PolyViT:在图像、视频和音频上共同培训视觉Transfor

PolyViT:在图像、视频和音频上共同培训视觉Transfor

作者: Valar_Morghulis | 来源:发表于2023-02-18 21:32 被阅读0次

PolyViT: Co-training Vision Transformers on Images, Videos and Audio

Nov 2021

Valerii Likhosherstov, Anurag Arnab, Krzysztof Choromanski, Mario Lucic, Yi Tay, Adrian Weller, Mostafa Dehghani

[Google Research, University of Cambridge, Alan Turing Institute]

https://arxiv.org/abs/2111.12993

https://github.com/google-research/scenic/tree/main/scenic/projects/polyvit

摘要:我们能否训练一个能够处理多种模态和数据集的单一Transformer模型,同时共享其几乎所有可学习的参数?我们介绍了PolyViT,这是一个经过图像、音频和视频训练的模型,可以回答这个问题。通过在单个模态上共同训练不同的任务,我们能够提高每个任务的准确性,并在5个标准视频和音频分类数据集上获得最先进的结果。在多个模态和任务上对PolyViT进行联合训练,从而产生一个更具参数效率的模型,并学习跨多个域通用的表示。此外,我们证明了联合训练的实现简单实用,因为我们不需要为每个数据集组合调整超参数,而是可以简单地调整标准的单任务训练的超参数。

Can we train a single transformer model capable of processing multiple modalities and datasets, whilst sharing almost all of its learnable parameters? We present PolyViT, a model trained on image, audio and video which answers this question. By co-training different tasks on a single modality, we are able to improve the accuracy of each individual task and achieve state-of-the-art results on 5 standard video- and audio-classification datasets. Co-training PolyViT on multiple modalities and tasks leads to a model that is even more parameter-efficient, and learns representations that generalize across multiple domains. Moreover, we show that co-training is simple and practical to implement, as we do not need to tune hyperparameters for each combination of datasets, but can simply adapt those from standard, single-task training.

1    引言

Transformers[67]是一个灵活的神经序列到序列模型家族。虽然它最初是为自然语言处理而设计的,但最近已经适应了一系列感知任务,如图像分类[18]、视频[3]和音频[27]。尽管最近在不同领域和任务中取得了进展,但当前最先进的方法为手头的每个任务训练了一个具有不同模型参数的单独模型。

在这项工作中,我们提出了一种简单而有效的方法来训练一个单一的统一模型(图1),该模型可以获得图像、视频和音频分类的竞争性或最先进的结果。我们超越了对不同模式使用通用架构[35],因为我们还共享任务和模式的模型参数,从而实现潜在的协同效应。我们的方法在技术上受到了启发,因为Transformers是通用架构,可以在任何可以标记化的模态上运行,而且直观上,因为人类的感知本质上是多模态的,由单个大脑执行。

我们的主要技术是联合训练:在多个分类任务(可能跨多个模式)上同时训练单个模型。我们考虑各种设置,同时解决多达9种不同的图像、视频和音频分类任务。如图1所示,我们的模型能够执行多个任务,但对于给定的输入,一次只能执行一个任务。尽管在计算机视觉[52]和自然语言[59]中已经探索了类似的技术,但我们不知道以前的工作已经考虑了多种模式,并使用这种方法取得了最先进的结果。

我们表明,我们的联合训练设置有多个好处:特别是,它是参数高效的,因为我们为感兴趣的n个任务中的每一个共享Transformers参数,大约将参数数量减少了n倍。当在内存有限的边缘设备(如智能手机和嵌入式设备)上部署模型时,这具有实际优势,否则可能无法适应n个不同模型的权重[34]。此外,为多个任务维护单个模型简化了模型部署和在线更新[34]。同样值得注意的是,在同一模态的任务上的联合训练导致每个单独任务的准确性提高,同时也线性地减少了总参数。特别是,我们在5个不同数据集的视频和音频分类方面取得了最先进的结果。我们观察到,联合训练具有正则化效果,这提高了大型Transformers模型可能过度拟合的较小数据集的性能。此外,当我们将联合训练扩展到多个任务和模式时,我们观察到,我们的精度仍然与最先进的相比具有竞争力,同时参数效率更高——我们在9个数据集上训练的模型使用的参数效率是最先进的单任务基线的8.3倍,但精度最多下降1.2%。最后,线性探测实验表明,该多任务、多模态模型能够学习跨多个任务和域进行泛化的表示。同样,这在部署模型时具有实际优势,因为它表明我们可以通过简单地训练额外的线性分类器来向模型添加新功能。

除了上述所有优点,我们的协同训练设置简单实用。它不需要对联合训练数据集的每个组合进行超参数调整,因为我们可以很容易地调整标准的单任务训练的设置。此外,联合训练也不会增加总体训练成本,因为训练步骤的总数不会超过每个单个任务基线的总和。PolyViT在Scenic[15]开发。为了再现性,我们将发布代码和检查点。

2    相关工作

我们的模型与多任务学习和Transformers模型有关,我们将在下面讨论。

多任务学习旨在开发能够处理多个任务的模型,同时在它们之间共享参数和计算[10]。在计算机视觉中,多篇论文开发了模型,在给定单个输入图像的情况下预测多个输出(例如语义分割和表面法线)[19,45,78]。许多工作还观察到,尽管多任务模型更通用,但它们的精度低于单任务模型,并且这种精度缺陷随着任务的数量或同时执行不相关任务而增加[45,53,75]。此外,联合训练一个网络以同时执行多个任务通常需要仔细校准各个任务,以确保特定任务的损失不会主导另一个任务。缓解这种情况的方法包括梯度归一化[13]和surgery[74]以及自适应损失权重[41,63]。

我们的工作不同之处在于,尽管我们的网络能够执行多个任务,但对于给定的输入,它一次执行一个任务。注意,此设置也更适合于处理多输入模态的情况。[52]也采用了这种方法,他在计算机视觉的背景下将其命名为“单任务多任务”。然而,在自然语言处理(NLP)中,这种设置仍然被称为“多任务学习”[14]。此外,我们的联合训练策略很简单,可以在执行一批单独任务的SGD之间交替进行。对于高容量Transformers模型,我们发现在多个数据集上同时进行联合训练有助于在数据集上对模型进行正则化,否则会过度拟合,从而通过联合训练提高精度。先前的工作仅通过引入额外的特定于任务的参数[31,55]而改进了附加任务的性能,这些参数通常取决于输入[52,60]。

我们还注意到,在NLP中已经探索了与我们的工作类似的共同训练设置。NLP最近的一个范例是将不同的任务简化为一个共同的统一框架[7,53,59]。该通用接口允许联合训练单个模型以执行多个任务,因为它有效地将多个数据集连接在一起[42,59,65]。

尽管大多数先前的多任务学习工作只考虑了单一模态,Kaiser等人[38]提出了一种早期的多模态模型研究。他们的异构模型包括处理图像的卷积层,以及对文本建模的专家层的关注和混合。然而,他们的结果与我们的最先进水平相比并不具有竞争力。

我们的模型受到[18](即ViT)的激励,可以很容易地处理不同的模式,因为Transformers对任意序列的令牌进行操作。与我们相关的是,Perceiver[35]是一种可以处理不同模态的Transformers架构。与分别使用[18]和[27]这样的非重叠补丁标记图像或音频频谱图不同,[35]通过使用交叉注意力将原始输入投影到更小的潜在标记集合中,直接对原始输入进行操作。尽管这种架构能够处理不同的模态,但作者为每个任务训练了具有独立参数的独立网络。因此,他们不考虑像我们的工作那样的联合训练场景。另一方面,MBT[56]提出了一种Transformers模型,以融合不同的模态(例如音频和视频的rgb帧)来解决单个任务。同样,每个任务都使用单独的模型参数。

UniT[32]联合训练了一个基于Transformers的模型,但专门用于视觉和语言任务。作者使用编码器-解码器架构[67],其中只有解码器在不同任务之间共享,编码器专门用于每个模态。特别地,视觉编码器是DeTR[8],文本编码器是BERT[17],并且每个组件都是单独预训练的。与我们的工作相反,他们没有考虑在不同任务之间共享整个Transformers主干的场景,也没有彻底分析如何像我们的工作那样联合训练多个任务和模式。此外,他们的方法并不像我们的工作那样优于单一任务基线。其他专注于视觉和语言任务的多任务学习的论文包括[47,50,51]。在一个单独的轨道上,Bain等人[5]使用单个Transformers编码器来处理图像和视频以进行视频文本检索。然而,他们的模型仍然是在单一的数据集和任务上训练的,作者使用Transformers处理图像,作为复杂的课程学习策略的一部分。这与我们的工作形成了对比,我们的工作是同时训练不同模式下的多个任务的模型。

最后,我们注意到,Transformers已用于处理多个模态[1,46],用于跨模态自监督学习[2,54]。Lee等人[46]基于从卷积网络获得的视觉和音频特征训练Transformers。为了使模型训练在计算上可行,他们对参数矩阵[62,73]进行低秩近似,以减少模型参数的总数。因此,这些方法是对我们的工作的补充,我们的工作在不同任务之间共享模型中的几乎所有参数。

6    结论

通过在单个模态上共同训练PolyViT,我们在三个视频和两个音频数据集上取得了最先进的结果,同时与单个任务模型相比,线性减少了参数总数。PolyViT在多个模态上进行联合训练,其参数效率更高,与最先进的技术相比仍具有竞争力,并学习跨多个模态通用的特征表示。这使我们能够通过学习额外的输出头来学习新的任务。联合训练简单实用,因为我们不需要在所有数据集的联合空间上调整超参数,而是可以简单地重用来自单个任务模型的训练超参数。此外,我们可以通过相同总步数的训练来提高准确性。

限制和未来工作

我们方法的当前局限性是,我们没有在大规模上游数据集(如ImageNet-21K[16]和C4[59])上进行联合训练。我们的目标是探索这一点,并在未来的工作中与文本模式进行联合训练。如前所述,我们的模型虽然通用,但并不能提高推理速度,因为它仍然一次处理一个任务。我们目前还没有将多种模式(即视频和音频)融合在一起,以做出更好的预测,并打算在未来这样做。

相关文章

  • 工业视觉投资机遇

    为什么需要工业视觉 所谓工业视觉主要指机器视觉在工业上的应用,机器视觉系统主要由图像的获取、图像的处理和分析、输出...

  • 图像搜索和分类

    基于内容的搜索 检索在视觉上具有相似性的图像,在图像数据库中返回具相似颜色、纹理和物体以及场景的图像。 视觉单词 ...

  • ffmpeg

    查询 使用库文件 pkg-config参考 音频互转 图像互转 视频互转 视频与图像

  • 音频,视频和视觉效果

    使用AVAudioEngine进行播放,混合和录制(AVAEMixerSample) 示例代码音频,视频和视觉效果...

  • Android多媒体之二通过MediaStore获取图片实现自动

    名词解析 MediaStore:图像(包括音频和视频)的标准内容提供者。它在设备上存放文件的设置,并为存储了和检索...

  • 2018-04-10

    【视觉、听觉、嗅觉、味觉、触觉】对应的就是文字、图片、视频、音频、客户体验等等。主要是视觉、听觉、客户体验上努力。...

  • 2017-11-27

    【嵌牛导读】今天为大家讲解视频的编码原理。 【嵌牛鼻子】视觉暂留现象,有损图像压缩,运动预测,图像组和视频文件,视...

  • 关于直播、CDN、直播协议的学习总结

    视频是怎么组成的 任何一个视频 Video 文件,从结构上讲,都是这样一种组成方式: 由图像和音频构成最基本的内容...

  • 图片数据恢复软件,PHOTORECOVERY Professio

    PHOTORECOVERY Professional mac破解版功能介绍 1、恢复图像,视频和音频文件 2、恢复...

  • 离屏渲染探索

    图像是怎么显示到屏幕上的 图像的显示是有CPU和GPU共同一起完成的,CPU: 负责图片的解码(视频解码是由GPU...

网友评论

      本文标题:PolyViT:在图像、视频和音频上共同培训视觉Transfor

      本文链接:https://www.haomeiwen.com/subject/xnzykdtx.html