Auto Byte

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

微信扫一扫获取更多资讯

Science AI

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

微信扫一扫获取更多资讯

杜伟编译

单一ViT模型执行多模态多任务,谷歌用协同训练策略实现多个SOTA

Transformer 真的很全能。

Transformers 是一个灵活的神经端到端模型族(family),最开始是为自然语言处理任务设计的。近来,Transformers 已经在图像分类、视频和音频等一系列感知任务上得到应用。虽然近来在不同领域和任务上取得了进展,但当前 SOTA 方法只能为手头的每个任务训练具有不同参数的单一模型。

近日,谷歌研究院、剑桥大学和阿兰 · 图灵研究所的几位研究者在其论文《 PolyViT: Co-training Vision Transformers on Images, Videos and Audio 》提出了一种简单高效的训练单个统一模型的方法,他们将该模型命名为 PolyViT,它实现了有竞争力或 SOTA 的图像、视频和音频分类结果。

在设计上,研究者不仅为不同的模态使用一个通用架构,还在不同的任务和模态中共享模型参数,从而实现了潜在协同作用。从技术上来讲,他们的方法受到了「transformer 是能够在任何可以 tokenized 的模态上运行的通用架构」这一事实的启发;从直觉上来讲,是由于人类感知在本质上是多模态的,并由单个大脑执行。

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

下图 1 为 PolyViT 的结构概览。

研究者主要使用的方法是协同训练(co-training),即同时在多个分类任务(可能跨多个模态)上训练单个模型。他们考虑了不同的设置,同时解决多达 9 个不同的图像、视频和音频分类任务。如上图 1 所示,PolyViT 模型能够执行多个任务,但对于给定的输入一次只能执行一个任务。虽然计算机视觉和自然语言领域探索过类似的方法,但研究者不清楚以往的工作是否考虑了多种模态以及是否使用这种方法实现了 SOTA 结果。

我们的协同训练设置简单实用。它不需要对协同训练数据集的每个组合进行超参数调整,因为我们可以很容易地调整标准单任务训练的设置。此外,协同训练也不会增加整体训练成本,因为训练步骤的总数不超过每个单任务基线的总和。


为了实现大量任务和模态协同训练的同时增加模型容量,研究者可以选择性地纳入 L_adapt ≥ 0 模态特定 transformer 层(他们表示为模态 - 适配器层),这些 transformer 层在 tokenization 之后直接应用。在这种情况下,所有模态和任务中会共享 L_=shared = L − L_adapt 层。

协同训练流程

在使用随机梯度下降(SGD)协同训练的所有任务中,研究者同时优化所有的 PolyViT 模型参数 θ。因此,在决定如何构建训练 batch、计算梯度以更新模型参数以及使用哪些训练超参数时有很多设计上的选择。

在所有情况下,研究者使用来自单个任务中的示例来构建自己的训练 minibatch。这一设计选择使得他们在使用相同的训练超参数(如学习率、batch 大小和动量)作为传统单一任务基线时,可以评估梯度和更新参数。这样一来,与单一任务基线相比,研究者无需任何额外的超参数就可以执行多个任务上的协同训练,从而使得协同训练在实践中易于执行,并减少执行大规模超参数扫描(sweep)的需求以实现具有竞争力的准确性。

在协同训练过程中,对于每个 SGD 步,研究者采样一个任务(或数据集),然后采样来自这个任务中的 minibatch,评估梯度并随后执行参数更新。需要着重考虑的是采样任务的顺序以及是否在不同的 minibatch 和任务上累积梯度。研究者在下图 2 中描述了几个任务采样计划,包括如下:

  • 任务 1:逐任务(Task-by-task)

  • 任务 2:交替(Alternating)

  • 任务 3:统一任务采样(Uniform task sampling)

  • 任务 4:加权任务采样(Weighted task sampling)

  • 任务 5:累积梯度(Accumulating gradients)

实验

研究者在图像、音频和视频三种模态的 9 个不同分类任务上同时训练了 PolyViT。在图像分类协同训练时,他们使用了 ImageNet-1K、 CIFAR-10/100、Oxford-IIIT Pets 和 RESISC45 数据集;对于视频任务,他们使用了 Kinetics 400 和 Moments in Time 数据集;对于音频任务,他们使用了 AudioSet 和 VGGSound 数据集。

下表 6 为具体实验设置:
下表 1 展示了不同任务采样计划在不同模态和任务上对协同训练性能的影响,粗体表示最高准确率,下划线表示次最高准确率。其中,「Task-by-task」采样计划表现糟糕,仅在一项任务上实现了不错的性能,这是灾难性遗忘(catastrophic forgetting)造成的。

「Accumulated」采样计划需要在所有任务上使用单一的学习率,这是由于所有任务上的累积梯度被用于执行参数更新。因此,该计划仅在图像数据集上表现良好。

「Alternating」、「Uniform」和「Weighted」采样计划表现最好,表明任务特定的学习率以及不同任务的梯度更新之间的转换对于准确率至关重要。
使用 PolyViT 的协同训练

下表 2 展示了用于解决跨图像、音频和视频三种模态的 9 个不同任务的模型训练方法,包括 ViT-Im21K Linear probe、Single-task baseline 和本文的 PolyViT 及变体(分别是 PolyViT L_adapt = 0 和 PolyViT Ladapt = L/2)。

结果显示,在单模态上训练的 PolyViT 在 9 个数据集的 7 个上实现了 SOTA 性能,其余 2 个数据集上的准确率差异可以忽略不计,不超过 0.3%。此外,参数的总数量比单个任务基线少了 2/3。同时,在使用参数大大减少的情况下,多模态 PolyViT 也实现了有竞争力的性能。

使用 linear probe 评估学习到的表示

通过为一个新任务仅仅添加和训练一个新的线性头(linear head),研究者对 PolyViT 学习到的特征表示进行评估。下表 3 展示了多种模态上训练的 PolyViT 如何学习「在跨图像、音频和视频三种模态的 11 个线性评估任务上均表现良好的」跨模态特征表示。同时,表 3 还展示了多种模态上的协同训练如何有益于学习强大、可迁移且可用于多个下游任务的特征表示。
使用单模态协同训练实现 SOTA 性能 

受到上表 2 中单模态协同训练性能的启发,研究者使用这种方法在音频和视频分类任务上执行了大规模协同训练实验。下表 4 和表 5 显示,在使用的参数明显更少的同时,他们实现了 SOTA 结果。

如下表 4 所示,对于音频分类,研究者将 PolyViT 与当前 SOTA 方法 MBT(audio-only) 及相关变体 MBT: AS-500k→VGGSound 和 MBT: VGGSound→AS-500k。结果表明,PolyViT 在两个数据集上超越了 SOTA 方法,同时使用的参数大约是 MBT(audio-only) 的一半。此外,PolyViT 在更小的数据集 VGGSound 上实现了 2.8% 的 Top 1 准确率提升。
对于视频分类,研究者在 Kinetics-400、Kinetics-600 和 Moments in Time 数据集上协同训练了具有较小 tubelet size 的 PolyViT-Large 模型,并与当前 SOTA 模型 ViViT(使用相同的初始化、主干和 token 数量)进行了比较。结果如下表 5 所示,表明 PolyViT 在三个数据集上均超越了 ViViT。

理论实现多个SOTA协同训练策略谷歌多模态多任务单一ViT模型
2
相关数据
感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

VGG技术

2014年,牛津大学提出了另一种深度卷积网络VGG-Net,它相比于AlexNet有更小的卷积核和更深的层级。AlexNet前面几层用了11×11和5×5的卷积核以在图像上获取更大的感受野,而VGG采用更小的卷积核与更深的网络提升参数效率。VGG-Net 的泛化性能较好,常用于图像特征的抽取目标检测候选框生成等。VGG最大的问题就在于参数数量,VGG-19基本上是参数量最多的卷积网络架构。VGG-Net的参数主要出现在后面两个全连接层,每一层都有4096个神经元,可想而至这之间的参数会有多么庞大。

参数技术

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

学习率技术

在使用不同优化器(例如随机梯度下降,Adam)神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。学习速率太大容易导致目标(代价)函数波动较大从而难以找到最优,而弱学习速率设置太小,则会导致收敛过慢耗时太长

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

随机梯度下降技术

梯度下降(Gradient Descent)是遵循成本函数的梯度来最小化一个函数的过程。这个过程涉及到对成本形式以及其衍生形式的认知,使得我们可以从已知的给定点朝既定方向移动。比如向下朝最小值移动。 在机器学习中,我们可以利用随机梯度下降的方法来最小化训练模型中的误差,即每次迭代时完成一次评估和更新。 这种优化算法的工作原理是模型每看到一个训练实例,就对其作出预测,并重复迭代该过程到一定的次数。这个流程可以用于找出能导致训练数据最小误差的模型的系数。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

动量技术

优化器的一种,是模拟物理里动量的概念,其在相关方向可以加速SGD,抑制振荡,从而加快收敛

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

Audi机构

奥迪是一间德国跨国豪华汽车制造商,主要从事豪华和高性能汽车制造业。总部位于德国巴伐利亚州的英戈尔施塔特。是大众集团的成员。奥迪与德国品牌宝马和梅赛德斯-奔驰一起,是世界上最畅销的豪华汽车品牌之一。

http://www.audi.com/
视频分类技术

视频分类指基于根据视频片段的语义内容(如人的动作或更复杂的活动)对视频片段进行自动标记。

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