概述
什么是 Hiera?
Hiera(分层视觉Transformer)是一种架构,它在无需其他视觉模型中发现的专门组件的情况下即可实现高精度。作者建议使用强大的视觉预训练任务对 Hiera 进行预训练,以消除不必要的复杂性并创建更快、更准确的模型。
从 CNN 到 ViT
CNN 和分层模型非常适合计算机视觉任务,因为它们可以有效地捕获视觉数据的层次和空间结构。这些模型在早期阶段使用较少的通道但更高的空间分辨率来提取更简单的特征,并在后期阶段使用更多的通道但更低的空间分辨率来提取更复杂的特征。
另一方面,视觉Transformer(ViT)是更准确、可扩展且架构更简单的模型,它们在引入时席卷了计算机视觉领域。但是,这种简单性是有代价的:它们缺乏这种“视觉归纳偏置”(它们的架构并非专门为处理视觉数据而设计)。
已经做出了许多努力来调整 ViT,通常是通过添加分层组件来弥补其架构中缺乏归纳偏置。不幸的是,所有生成的模型最终都变得更慢、更大且更难以扩展。
Hiera 的方法:预训练任务是您需要的一切
Hiera 论文的作者认为,ViT 模型可以通过使用称为 MAE 的强大的视觉预训练任务来学习空间推理并在计算机视觉任务上表现良好,因此,他们可以从最先进的多阶段视觉Transformer中去除不必要的组件和复杂性,以实现更高的准确性和速度。
论文作者实际上删除了哪些组件?要理解这一点,我们首先需要介绍MViTv2,它是 Hiera 派生的基础分层架构。MViTv2 在其四个阶段学习多尺度表示:它首先使用小的通道容量但高空间分辨率对低级特征进行建模,然后在每个阶段以空间分辨率换取通道容量,以在更深层的层中对更复杂的高级特征进行建模。
我们不会深入研究 MViTv2 的关键特征(因为这不是我们的主要主题),而是在下一节中简要解释它们,以说明研究人员如何通过简化此基础架构来创建 Hiera。
简化 MViTv2
此表列出了作者为了创建 Hiera 而对 MViTv2 所做的所有更改,以及每个更改如何影响图像和视频的准确性和速度。
- 用绝对位置嵌入替换相对位置嵌入:MViTv2 将原始ViT论文中的绝对位置嵌入替换为添加到每个块中的注意力中的相对位置嵌入。作者撤消了此更改,因为它增加了模型的复杂性,并且如表中所示,在使用 MAE 进行训练时,这些相对位置嵌入不是必需的(通过此更改,准确性和速度都得到了提高)。
- 删除卷积:由于本文的关键思想是模型可以通过使用强大的视觉预训练任务进行预训练来学习空间偏差,因此删除卷积(它是特定于视觉的模块并可能添加不必要的开销)似乎是一个重要的更改。作者首先用最大池化层替换每个卷积,这最初会降低准确性,因为这对图像特征有巨大影响。但是,他们意识到可以删除一些额外的最大池化层,特别是步长为 1 的那些,因为它们基本上是在每个特征图上应用 ReLU。通过这样做,作者几乎恢复了之前的准确性,同时将图像的速度提高了 22%,将视频的速度提高了 27%。
掩码自动编码器
掩码自动编码器 (MAE) 是一种无监督训练范式。与任何其他自动编码器一样,它包括以这样一种方式将高维数据(图像)编码为低维表示(嵌入),即这些数据可以再次解码为原始高维数据。但是,视觉 MAE 技术包括丢弃一定数量的补丁(约 75%),对其余补丁进行编码,然后尝试预测缺失的补丁。近年来,这种想法已被广泛用作图像编码器的预训练任务。
为什么 Hiera 重要?
在以 Transformer 模型为主导的时代,仍然有很多尝试来改进这种简单的架构,并添加 CNN 的复杂性以将其再次转换为分层模型。虽然分层模型在计算机视觉方面表现出色,但这项研究表明,实现分层 Transformer 不需要复杂的架构修改。相反,仅仅专注于训练任务本身就可以产生简单、快速且精确的模型。
< > 在 GitHub 上更新