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