互联网资讯 / 人工智能 · 2023年12月11日 0

图像不一定只能用16×16个词来表示,清华与华为联合提出了动态ViT技术

在NLP中,TRansfoRMeR以自注意力模型机制为法宝,在图像识别问题上的成功已经很广泛了。

尤其是,VIT在大规模图像网络上性能特别高,因此应用特别广。

但随着数据集规模的增长,会导致计算成本急剧增加,以及自注意力中的Tokens数量逐渐增长!

最近,清华自动化系的助理教授黄高的研究团队和华为的研究人员另辟蹊径,提出了一种DynaMic Vision TRansfoRMeR (DVT),可以自动为每个输入图像配置适当数量的Tokens,从而减少冗余计算,显著通过效率。

该文以《Not All images aRe WoRth 16×16 WoRds: DynaMic Vision TRansfoRMeRs wITh Adaptive Sequence Length》为标题,已发表在aRXiv上。

很明显,当前的VIT面临计算成本和Tokens数量的难题。

为了在准确性和速度之间实现最佳平衡,Tokens的数量一般是 14×14/16×16的。

研究团队观察到:

一般样本中会有很多的“简单&Rdquo;图像,它们用数量为 4×4 标记就可以准确预测,现在的计算成本( 14×14)相当于增加了8.5倍,而其实只有一小部分“困难&Rdquo;的图像需要更精细的表征。

通过动态调整Tokens数量,计算效率在“简单&Rdquo;和 “困难&Rdquo;样本中的分配并不均匀,这里有很大的空间可以提高效率。

基于此,研究团队提出了一种新型的动态VIT(DVT )框架,目标是自动配置在每个图像上调节的Tokens数量 ,从而实现高计算效率。

这种DVT被设计成一个通用框架。

在测试时间时,这些模型以较少的Tokens 开始依次被激活。

一旦产生了充分置信度的预测,推理过程就会立即终止。

模型的主体架构采用目前最先进的图像识别TRansfoRMeR,如VIT、DeIT和T2T-VIT,可以提高效率。

这种方法同时也具有很强的灵活性。

因为DVT的计算量可以通过简单的提前终止准则进行调整。

这一特性使得DVT适合可用计算资源动态变化,或通过最小功耗来实现给定性能的情况。

这两种情况在现实世界的应用程序中都是普遍存在的,像搜索引擎和移动应用程序中都经常能够看到。

特征重用机制

DVT中所有的TRansfoRMeR都有一个共同的目标:提取特征信号来实现准确的识别。

因此,下游模型应该在之前获得的深度特征的基础上进行学习,而不是从零开始提取特征。

在上游模型中执行的计算对其自身和后续模型都有贡献,这样会使模型效率更高。

为了实现这个想法,研究团队提出了一个特征重用机制。

简单来说,就是利用上游TRansfoRMeR最后一层输出的图像Tokens,来学习逐层的上下文嵌入,并将其集成到每个下游TRansfoRMeR的MLP块中。

关系重用机制

TRansfoRMeR的一个突出优点是:

自注意力块能够整合整个图像中的信息,从而有效地模型化了数据中的长期依赖关系。

通常,模型需要在每一层学习一组注意力图来描述标记之间的关系。

除了上面提到的深层特征外,下游模型还可以获得之前模型中产生的自注意力图。

研究团队认为,这些学习到的关系也能够被重用,以促进下游TRansfoRMeR学习,具体采用的是对数的加法运算。

效果如何?

多说无益,让我们看看实际效果如何?

在imageNet上的 Top-1准确率v.s.计算量如下图。

可以看出,DVT比DeIT和T2T-VIT计算效率要显著更好:

当计算开销在0.5-2 GFLOPs内时,DVT的计算量比相同性能的T2T-VIT少了1.7-1.9倍。

此外,这种方法可以灵活地达到每条曲线上的所有点,只需调整一次DVT的置信阈值即可。

CIFAR的 Top-1 准确率 v.s. GFLOP 如下图。

在imageNet上的 Top-1准确率v.s.吞吐量如下表。

在DVT中,“简单&Rdquo;和 “困难&Rdquo;的可视化样本如下图。

从上面imageNet、CIFAR-10 和 CIFAR-100 上的大量实证结果表明:

DVT方法在理论计算效率和实际推理速度方面,都明显优于其他方法。