CAS-ViT:用于高效移动应用的卷积加法自注意力视觉Transformer

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 这是8月份再arxiv上发布的新论文,我们下面一起来介绍这篇论文的重要贡献

近年来,Vision Transformer(ViT)在计算机视觉领域取得了巨大突破。然而ViT模型通常计算复杂度高,难以在资源受限的移动设备上部署。为了解决这个问题,研究人员提出了Convolutional Additive Self-attention Vision Transformers (CAS-ViT),这是一种轻量级的ViT变体,旨在在效率和性能之间取得平衡。

这是8月份再arxiv上发布的新论文,我们下面一起来介绍这篇论文的重要贡献

核心创新:卷积加法token混合器(CATM)

CAS-ViT的核心创新在于提出了一种新颖的加法相似度函数,称为卷积加法token混合器(CATM)。与传统ViT中的多头自注意力机制相比,CATM大大降低了计算复杂度。

让我们来看看CATM与之前工作的对比:

  1. 传统ViT中的多头自注意力(图a):计算复杂度为O(N^2),其中N是序列长度。这在处理高分辨率图像时计算开销很大。
  2. MobileViTv2中的可分离自注意力(图b):将矩阵特征度量简化为向量,降低了复杂度。
  3. SwiftFormer中的swift自注意力(图c):将自注意力的键减少到两个(Q和K),进一步加速推理。
  4. 论文提出的卷积加法自注意力(图d):定义了一个新的相似度函数,将Q和K的上下文分数相加。

具体来说,CATM中的相似度函数定义为:

 Sim(Q, K) = Φ(Q) + Φ(K)

其中Φ(·)是上下文映射函数,由基于Sigmoid的通道注意力C(·)和空间注意力S(·)具体化。CATM的输出为:

 O = Γ(Φ(Q) + Φ(K)) · V

由于CATM中的操作都用卷积表示,其复杂度为O(N),大大低于传统自注意力的O(N^2)。

网络架构

CAS-ViT的整体架构如下:

主要特点包括:

  1. 4个编码阶段,每个阶段之间使用Patch Embedding进行2倍下采样。
  2. 每个阶段包含Ni个堆叠的块。
  3. 每个块包含三个部分:集成子网络、CATM和MLP,都使用残差连接。
  4. 集成子网络由3个使用ReLU激活的深度可分离卷积层组成。

通过调整通道数Ci和块数Ni,构建了一系列轻量级CAS-ViT模型。

实验结果

CAS-ViT在多个计算机视觉任务上进行了评估,包括图像分类、目标检测和语义分割。

图像分类

在ImageNet-1K数据集上的分类和计算量的对比如下:

可以看出,CAS-ViT模型(红色点)在精度和计算效率之间取得了很好的平衡。特别是XS和S变体,在参数量较少的情况下达到了很高的Top-1准确率。

目标检测和实例分割

在COCO val2017数据集上的目标检测和实例分割结果如下:

CAS-ViT作为主干网络,在RetinaNet和Mask R-CNN框架下都取得了很好的性能,尤其是在计算效率方面具有优势。

语义分割

在ADE20K数据集上的语义分割结果如下:

CAS-ViT在mIoU和计算效率之间也达到了很好的平衡。

可视化分析

热力图可视化显示,CAS-ViT能够准确定位关键区域,并获得更大的感受野,这有利于后续的密集预测任务。

消融实验

消融实验表明,CATM中的每个组件都对模型性能有重要贡献。当移除或替换某个组件时,准确率都会下降。

总结

CAS-ViT通过创新的卷积加法自注意力机制,在保持高性能的同时大大降低了计算复杂度。这使得它非常适合部署在资源受限的移动设备上,为高效移动视觉应用开辟了新的可能性。未来的工作可以探索在更大规模的数据集和模型上应用CAS-ViT,以及进一步优化其在移动设备上的部署效率。

论文地址:

https://avoid.overfit.cn/post/e7f68be55b014473a12aef501274b7b4

目录
相关文章
|
6月前
|
机器学习/深度学习
YOLOv8改进 | 2023注意力篇 | MLCA混合局部通道注意力(轻量化注意力机制)
YOLOv8改进 | 2023注意力篇 | MLCA混合局部通道注意力(轻量化注意力机制)
365 1
|
6月前
|
机器学习/深度学习
YOLOv5改进 | 2023注意力篇 | MLCA混合局部通道注意力(轻量化注意力机制)
YOLOv5改进 | 2023注意力篇 | MLCA混合局部通道注意力(轻量化注意力机制)
408 0
|
6月前
|
机器学习/深度学习
YOLOv8改进 | 注意力篇 | ACmix自注意力与卷积混合模型(提高FPS+检测效率)
YOLOv8改进 | 注意力篇 | ACmix自注意力与卷积混合模型(提高FPS+检测效率)
348 0
|
机器学习/深度学习 PyTorch 算法框架/工具
神经网络加上注意力机制,精度不升反降?
神经网络加上注意力机制,精度不升反降?
神经网络加上注意力机制,精度不升反降?
|
17天前
|
机器学习/深度学习 计算机视觉 Python
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力本文提出了一种简单且高效的卷积神经网络(ConvNets)注意力模块——SimAM。与现有模块不同,SimAM通过优化能量函数推断特征图的3D注意力权重,无需添加额外参数。SimAM基于空间抑制理论设计,通过简单的解决方案实现高效计算,提升卷积神经网络的表征能力。代码已在Pytorch-SimAM开源。
【YOLOv11改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力
|
1月前
|
机器学习/深度学习 编解码 负载均衡
MoH:融合混合专家机制的高效多头注意力模型及其在视觉语言任务中的应用
本文提出了一种名为混合头注意力(MoH)的新架构,旨在提高Transformer模型中注意力机制的效率。MoH通过动态注意力头路由机制,使每个token能够自适应选择合适的注意力头,从而在减少激活头数量的同时保持或提升模型性能。实验结果显示,MoH在图像分类、类条件图像生成和大语言模型等多个任务中均表现出色,尤其在减少计算资源消耗方面有显著优势。
50 1
|
4月前
|
机器学习/深度学习 计算机视觉
【YOLOv8改进 - 注意力机制】c2f结合CBAM:针对卷积神经网络(CNN)设计的新型注意力机制
【YOLOv8改进 - 注意力机制】c2f结合CBAM:针对卷积神经网络(CNN)设计的新型注意力机制
|
4月前
|
机器学习/深度学习 自然语言处理 并行计算
【YOLOv8改进 -注意力机制】Mamba之MLLAttention :基于Mamba和线性注意力Transformer的模型
YOLOv8专栏探讨了该目标检测模型的创新改进,包括使用Mamba模型的线性注意力Transformer变体,称为MLLA。Mamba的成功关键在于遗忘门和块设计,MLLA结合了这些优点,提升了视觉任务的性能。文章提供全面分析,并提出MLLA模型,其在效率和准确性上超过多种视觉模型。论文和代码可在提供的链接中找到。MLLA Block的代码示例展示了如何整合关键组件以实现高效运算。更多配置详情见相关链接。
|
4月前
|
机器学习/深度学习 图计算 计算机视觉
【YOLOv8改进 - 注意力机制】 CascadedGroupAttention:级联组注意力,增强视觉Transformer中多头自注意力机制的效率和有效性
YOLO目标检测专栏探讨了Transformer在视觉任务中的效能与计算成本问题,提出EfficientViT,一种兼顾速度和准确性的模型。EfficientViT通过创新的Cascaded Group Attention(CGA)模块减少冗余,提高多样性,节省计算资源。在保持高精度的同时,与MobileNetV3-Large相比,EfficientViT在速度上有显著提升。论文和代码已公开。CGA通过特征分割和级联头部增加注意力多样性和模型容量,降低了计算负担。核心代码展示了CGA模块的实现。
|
5月前
|
机器学习/深度学习 PyTorch 算法框架/工具
【YOLOv8改进 - 注意力机制】SimAM:轻量级注意力机制,解锁卷积神经网络新潜力
YOLO目标检测专栏介绍了SimAM,一种无参数的CNN注意力模块,基于神经科学理论优化能量函数,提升模型表现。SimAM通过计算3D注意力权重增强特征表示,无需额外参数。文章提供论文链接、Pytorch实现代码及详细配置,展示了如何在目标检测任务中应用该模块。