社区计算机视觉课程文档
概述
并获得增强的文档体验
开始使用
概述
什么是 Hiera?
Hiera (分层 Vision Transformer) 是一种架构,无需其他视觉模型中的专用组件即可实现高精度。作者提出使用强大的视觉预训练任务对 Hiera 进行预训练,以消除不必要的复杂性,并创建更快、更准确的模型。
从 CNN 到 ViT
CNN 和分层模型非常适合计算机视觉任务,因为它们可以有效地捕获视觉数据的分层和空间结构。这些模型在早期阶段使用较少的通道但较高的空间分辨率来提取更简单的特征,而在后期阶段使用更多的通道但较低的空间分辨率来提取更复杂的高级特征。
另一方面,Vision Transformers (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 上更新