Auto Byte

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

微信扫一扫获取更多资讯

Science AI

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

微信扫一扫获取更多资讯

完全基于Transformer的目标检测器,ICLR匿名论文实现视觉、检测统一

一种新的集成视觉和检测 Transformer 的目标检测器 ViDT。

Transformer 在 NLP 任务中取得不错的发展,许多研究将其引入到计算机视觉任务中。毫不夸张的说,Transformer 正在改变计算机视觉的格局,尤其是在识别任务方面。例如 Detection transformer 是第一个用于目标检测的、端到端的学习系统,而 vision transformer 是第一个完全基于 transformer 的图像分类架构。在本文中,一篇被 ICLR 2022 接收的匿名论文集成了视觉和检测 Transformer (Vision and Detection Transformer,ViDT) 来构建有效且高效的目标检测器。

ViDT 引入了一个重新配置的注意力模块(reconfigured attention module),将 Swin Transformer 扩展为一个独立的目标检测器,之后是一个计算高效的 Transformer 解码器,该解码器利用多尺度特征和辅助(auxiliary)技术,在不增加计算负载的情况下提高检测性能。

Microsoft COCO 基准数据集上的评估表明,ViDT 在现有的完全基于 transformer 的目标检测器中获得了最佳的 AP 和延迟权衡,其对大型模型的高可扩展性,可达 49.2AP。

图片


 论文地址:https://openreview.net/pdf?id=w4cXZDDib1H

ViDT:视觉与检测 Transformer


ViDT 架构如下图 2 (c) 所示:

  • 首先,ViDT 引入了一种改进的注意力机制,名为 Reconfigured Attention Module (RAM),该模块有助于 ViT 变体处理附加的 [DET(detection tokens)] 和 [PATCH(patch tokens)] token 以进行目标检测。因此,ViDT 可以将最新的带有 RAM 的 Swin Transformer 主干修改为目标检测器,并利用其具有线性复杂度的局部注意力机制获得高可扩展性;

  • 其次,ViDT 采用轻量级的无编码器 neck 架构来减少计算开销,同时仍然在 neck 模块上启用额外的优化技术。请注意,neck 编码器是不必要的,因为 RAM 直接提取用于目标检测的细粒度表示,即 [DET ] token。结果,ViDT 获得了比 neck-free 对应物更好的性能;

  • 最后,该研究引入了用于知识蒸馏的 token 匹配新概念,它可以在不影响检测效率的情况下从大型模型到小型模型带来额外的性能提升。


图片


RAM 模块

该研究引入了 RAM 模块,它将与 [PATCH] 和 [DET] token 相关的单个全局注意力分解为三个不同的注意力,即 [PATCH]×[PATCH]、[DET]× [DET] 和 [DET] × [PATCH] 注意力。如图 3 所示,通过共享 [DET] 和 [PATCH] token 的投影层,全部复用 Swin Transformer 的所有参数,并执行三种不同的注意力操作:

图片



ENCODER-FREE  neck 结构

为了利用多尺度特征图,ViDT 结合了多层可变形 transformer 解码器。在 DETR 家族中(图 2 (a)),其 neck 部分需要一个 transformer 编码器,用于将从骨干中提取的用于图像分类的特征转换为适合目标检测的特征;编码器通常在计算上很昂贵,因为它涉及 [PATCH] × [PATCH] 注意力。然而,ViDT 只保留了一个 Transformer 解码器作为其 neck,因为带有 RAM 的 Swin Transformer 直接提取适合目标检测的细粒度特征作为独立的目标检测器。因此,ViDT 的 neck 结构在计算上是高效的。

解码器从带有 RAM 的 Swin Transformer 接收两个输入:(1)从每个阶段生成的 [PATCH] token(2)从最后阶段生成的 [DET ] token,如图 2 (c) 的 Neck 所示。在每个可变形的 transformer 层中,首先执行 [DET] × [DET] 注意力。对于每个 [DET] token,应用多尺度可变形注意力以生成一个新的 [DET] token,聚合从多尺度特征图图片中采样的一小组关键内容:

图片


用于目标检测的 token 匹配知识蒸馏

虽然大型模型具有实现高性能的高容量,但在实际使用中它的计算成本可能很高。因此,该研究还提出了一种简单的知识蒸馏方法,可以通过 token 匹配从大型 ViDT 模型中迁移知识。

匹配每一层的所有 token 在训练中非常低效,因此,该研究只匹配对预测贡献最大的 token。两组 token 直接相关:(1)P:用作多尺度特征图的 [PATCH] token 集合,由 body 中的每个阶段生成,(2)D:[DET ] token 的集合,它们是从 neck 的每个解码层生成的。因此,基于 token 匹配的蒸馏损失公式为:

图片


评估


表 2 将 ViDT 与 DETR (ViT) 和 YOLOS 的 AP、FPS 等进行了比较,其中 DETR (ViT) 有两个变体:DETR 和 Deformable DETR。

实验结果表明:ViDT 实现了 AP 和 FPS 之间的最佳权衡。凭借其高可扩展性,其性能优于 1 亿个参数的 Swin-base,在相似的 AP 的下,FPS 比 Deformable DETR 快 2 倍。此外,ViDT 参数为 16M,得到 40.4AP,比 DETR (swin-nano) 和 DETR (swin-tiny) 高分别高 6.3AP、12.6AP。

图片


图片



表 3 对比了不同空间位置编码与 ViDT(w.o. Neck)的结果。结果表明:pre-addition 比 post-addition 带来的性能提升更高,即 sinusoidal encoding 优于 learnable 编码;因此,正弦空间编码的 2D 归纳偏置在目标检测中更有帮助。特别是,与不使用任何编码相比,使用正弦编码的预加法(pre-addition)将 AP 增加了 5.0。

图片


表 4 总结了使用不同选择策略进行交叉注意力(cross-attention)时的 AP 和 FPS,其中 Swin Transformer 总共包含四个阶段。有趣的是,只要在最后阶段激活交叉注意力,所有策略都表现出相似的 AP。由于在各个阶段中以自下而上的方式提取特征,因此在低级别阶段很难直接获得有关目标对象的有用信息。因此,研究者想要获得较高的 AP 和 FPS,只使用最后阶段是最好的设计选择,因为 [PATCH] token 的数量最少。

图片


为了彻底验证辅助解码损失(auxiliary decoding loss)和迭代框细化(iterative box refinement)的有效性,该研究甚至对 YOLOS 等 neck-free 检测器进行了扩展。表 5 显示了两种 neck-free 检测器 YOLOS 和 ViDT (w.o. Neck) 性能。实验结果证明在 ViDT 中使用 Neck 解码器来提高目标检测性能是合理的。

图片


下图表明:教师模型的规模越大,学生模型的收益越大。从系数来看,系数值越大,性能越好。模型蒸馏将 AP 提高了 1.0-1.7,而不会影响学生模型的推理速度。

图片



研究者将所有提议的组件结合起来,以实现目标检测的高精度和速度。如表 8 所示,有四个组件:(1) RAM 将 Swin Transformer 扩展为独立的目标检测器,(2) neck 解码器利用多尺度特征和两种辅助技术,(3) 从大模型中获益知识蒸馏,(4) 解码层 drop 进一步加快推理速度。结果表明:当使用 Swin-nano 作为其主干时,它仅使用 13M 参数就达到了 41.7AP 和合理的 FPS。此外,当使用 Swin-tiny 时,它仅损失了 2.7 FPS 而表现出 46.4AP。

图片


理论Transformer
相关数据
Microsoft机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

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

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

YOLO技术

YOLO 模型最早是由 Joseph Redmon 等人在 2015 年发布的,并在随后的两篇论文中进行了修订。

计算机视觉技术

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

知识蒸馏技术

Hinton 的工作引入了知识蒸馏压缩框架,即通过遵循“学生-教师”的范式减少深度网络的训练量,这种“学生-教师”的范式,即通过软化“教师”的输出而惩罚“学生”。为了完成这一点,学生学要训练以预测教师的输出,即真实的分类标签。这种方法十分简单,但它同样在各种图像分类任务中表现出较好的结果。

局部注意力机制技术

每生成单个目标词都需要考虑原语句子的所有词在计算上是非常昂贵的,也不是必需的。为了减少这种问题,Luong et al. [20] 提出了一种仅关注固定窗口大小 2D+1 的局部注意力机制

图像分类技术

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

目标检测技术

一般目标检测(generic object detection)的目标是根据大量预定义的类别在自然图像中确定目标实例的位置,这是计算机视觉领域最基本和最有挑战性的问题之一。近些年兴起的深度学习技术是一种可从数据中直接学习特征表示的强大方法,并已经为一般目标检测领域带来了显著的突破性进展。

快推机构
推荐文章
暂无评论
暂无评论~