文章目录

  • 1 概述
    • 1.1 题目
    • 1.2 摘要
  • 2 自注意力网络
    • 2.1 按对自注意力
    • 2.2 按块自注意力
    • 2.3 自注意力块
    • 2.4 网络架构

1 概述

1.1 题目

  2020CVPR图像识别自注意力 (Exploring self-attention for image recognition)

1.2 摘要

  近期工作显示自注意力可以作为图像识别模型的一个基础构建模块。本文探索多种自注意力并评估它们在图像识别中的性能。两种类型的自注意力被考虑:
  1)按对自注意力 (Pairwise self-attention):生成标准化点乘注意力,属于集合操作;
  2)按块自注意力 (Patchwise self-attention):比卷积更强大。
  实验上:
  1)按对自注意力网络匹配或优于它们的卷积版本,并且按块模型大大优于卷积基线模型;
  2)设置了关于习得表示健壮性方面的实验,并证实自注意力网络在健壮性和泛化方面具有显着优势。

2 自注意力网络

  在用于图像识别的卷积网络中,网络层需要执行两个函数:
  1)特征汇聚:卷积操作,组合核函数挖掘的位置特征;
  2)特征变换:包含连续线性映射和非线性标量函数,会破坏特征空间和产生复杂的分段映射。

  一个观察结果是,以上两个函数—特征汇聚和特征变换是可以解耦的。如果有一种执行特征汇聚的机制,那么特征变换可以由分别处理每个特征向量或者每个像素的感知层来执行。一个感知层包含一个线性映射和一个非线性标量函数:特征变换将由这个按点操作来执行。因此接下来的操作集中在特征汇聚。
  卷积算子 (Convolution operator) 通过一个固定的核执行特征聚合,该核应用预训练的权重来线性组合来自一组附近位置的特征值。权重是固定的,并不适用于特征的内容。而且由于每个位置都必须使用专用的权重向量进行处理,因此参数的数量与汇聚特征的数量呈线性关系。提出了许多替代的汇聚方案,并构建了高性能的图像识别架构,将特征汇聚 (通过自注意力) 和特征变换 (通过按元素感知器) 交错。

2.1 按对自注意力

  探索的第一种自注意力称为按对的,其形式如下:
yi=∑j∈Riα(xi,xj)⊙β(xj),(2)\tag{2} y_i=\sum_{j\in\mathcal{R}_i}\alpha\left(x_i,x_j\right)\odot\beta(x_j), yi​=j∈Ri​∑​α(xi​,xj​)⊙β(xj​),(2)其中⊙\odot⊙是Hadamard乘积、iii是特征向量xix_ixi​的空间索引,亦即特征图中的定位,以及Ri\mathcal{R}_iRi​是汇聚的本地足迹 (Local footprint)。Ri\mathcal{R}_iRi​是一个索引的集合,其指明哪些特征向量将被汇聚用于生成新特征yiy_iyi​。
  函数β\betaβ通过自适应权重向量α(xi,xj)\alpha(x_i,x_j)α(xi​,xj​)的汇聚来生成特征向量β(xj)\beta(x_j)β(xj​)。该函数的可能实例,以及架构中围绕自注意力操作的特征转换元素将在后续说明。
  函数α\alphaα用于计算权重,从而结合变换后的特征β(xj)\beta(x_j)β(xj​)。为了简化不同自注意力形式的表述,α\alphaα被分解为:
α(xi,xj)=γ(δ(xi,xj)).(3)\tag{3} \alpha(x_i,x_j)=\gamma(\delta(x_i,x_j)). α(xi​,xj​)=γ(δ(xi​,xj​)).(3)  关联函数δ\deltaδ输出一个表征xix_ixi​和xjx_jxj​的单向量。函数γ\gammaγ将该向量映射为另一个向量,并结合到β(xj)\beta(x_j)β(xj​)中。
  函数γ\gammaγ用以探索关系δ\deltaδ,这些关系可以生成不同维度的向量,且维度无需与β(xj)\beta(x_j)β(xj​)的维度想匹配。这允许云如一些额外的训练变换到权重α(xi,xj)\alpha(x_i,x_j)α(xi​,xj​)的结构中,使构建的向量更加具备表达能力。该函数执行一个线性映射、非线性函数,以及一个线性映射,例如γ={Linear,ReLU,Linear}\gamma=\{Linear,ReLU,Linear\}γ={Linear,ReLU,Linear}。γ\gammaγ的输出维度不需要与βββ相匹配,因为注意力权重可以在一组通道之间共享。
  关系函数δ\deltaδ的以下形式将被探索:
  1)相加 (Summation):δ(xi,xj)=φ(xi)+ψ(xj)\delta(x_i,x_j)=\varphi(x_i)+\psi(x_j)δ(xi​,xj​)=φ(xi​)+ψ(xj​);
  2)相减 (Subtraction):δ(xi,xj)=φ(xi)−ψ(xj)\delta(x_i,x_j)=\varphi(x_i)-\psi(x_j)δ(xi​,xj​)=φ(xi​)−ψ(xj​);
  3)拼接 (Concatenation):δ(xi,xj)=[φ(xi),ψ(xj)]\delta(x_i,x_j)=[\varphi(x_i),\psi(x_j)]δ(xi​,xj​)=[φ(xi​),ψ(xj​)];
  4)Hadamard乘积 (Hadamard product):δ(xi,xj)=φ(xi)⊙ψ(xj)\delta(x_i,x_j)=\varphi(x_i)\odot\psi(x_j)δ(xi​,xj​)=φ(xi​)⊙ψ(xj​);
  5)点乘 (Dot product):δ(xi,xj)=φ(xi)Tψ(xj)\delta(x_i,x_j)=\varphi(x_i)^T\psi(x_j)δ(xi​,xj​)=φ(xi​)Tψ(xj​)。
  这里φ\varphiφ和ψ\psiψ是训练后的变换例如线性映射,且匹配输出维度。1、2和4的输出维度不变,3的维度翻倍,5的维度则是1。

  位置编码 (Position encoding). 按对注意力一个很明显的特征是特征向量xjx_jxj​是被单独处理的,权重计算α(xi,xj)\alpha(x_i,x_j)α(xi​,xj​)不能合并超越iii和jjj的位置信息。为了给模型提供一些空间信息,我们使用位置信息来增强特征图。位置的编码如下:
  1)特征图沿着水平和垂直坐标首先被归一化到[−1,1][-1, 1][−1,1];
  2)将这些归一化的二维坐标通过可训练的线性层,该层可以将它们映射到网络中每一层的适当范围;
  3)线性映射为每个位置iii输出一个二维位置特征pip_ipi​;
  4)对每个对(i,j)(i,j)(i,j)例如j∈R(i)j\in\mathcal{R}(i)j∈R(i),通过计算pi−pjp_i-p_jpi​−pj​来编码相对位置信息;
  5)在映射在γ\gammaγ之前,δ(xi,xj)\delta(x_i,x_j)δ(xi​,xj​)的输出通过拼接[pi−pj][p_i-p_j][pi​−pj​]来增强。

2.2 按块自注意力

  按块自注意力的形式如下:
yi=∑j∈Riα(xR(i))j⊙β(xj),(4)\tag{4} y_i=\sum_{j\in\mathcal{R}_i}\alpha\left(x_{\mathcal{R}(i)}\right)_j\odot\beta(x_j), yi​=j∈Ri​∑​α(xR(i)​)j​⊙β(xj​),(4)其中xR(i)x_{\mathcal{R}(i)}xR(i)​是足迹R(i)\mathcal{R}(i)R(i)上特征向量的块、α(xR(i))\alpha\left(x_{\mathcal{R}(i)}\right)α(xR(i)​)是一个维度与xR(i)x_{\mathcal{R}(i)}xR(i)​相同的张量,以及α(xR(i))j\alpha\left(x_{\mathcal{R}(i)}\right)_jα(xR(i)​)j​是该张量在位置jjj上的向量,其在空间上对应于xR(i)x_{\mathcal{R}(i)}xR(i)​上的xjx_jxj​。
  在按块自注意力中,允许构建应用β(xj)β(xj)β(xj)的权重向量来引用和合并来自足迹R(i)\mathcal{R}(i)R(i)中所有特征向量的信息。与按对自注意力不同,按块自注意力不再是一个关于特征xjx_jxj​的集合操作。它也不是序列不变或者容积不变:通过定位,权重计算α(xR(i))\alpha(x_{\mathcal{R}(i)})α(xR(i)​)可以索引单独地索引特征向量xjx_jxj​,并混合来自不同足迹区域特征向量的信息。严格意义上,按对自注意力比卷积更有效。
  α(xR(i))\alpha\left(x_{\mathcal{R}(i)}\right)α(xR(i)​)分解如下:
α(xR(i))=γ(δ(xR(i))).(5)\tag{5} \alpha(x_{\mathcal{R}(i)})=\gamma(\delta(x_{\mathcal{R}(i)})). α(xR(i)​)=γ(δ(xR(i)​)).(5)  函数γγγ将由δ(xR(i))δ(x_\mathcal{R(i)})δ(xR(i)​)生成的向量映射为适当维度的张量。该张量组合所有位置jjj的权重向量。函数δ\deltaδ结合来自块xR(i)x_{\mathcal{R}(i)}xR(i)​的特征向量xjx_jxj​。以下组合形式将被探索:
  1)Star-product:δ(xR(i))=[φ(xi)Tψ(xj)]∀j∈R(i)\delta(x_{\mathcal{R}(i)})=[\varphi(x_i)^T\psi(x_j)]_{\forall j\in\mathcal{R}(i)}δ(xR(i)​)=[φ(xi​)Tψ(xj​)]∀j∈R(i)​;
  2)Clique-product:δ(xR(i))=[φ(xj)Tψ(xk)]∀j,k∈R(i)\delta(x_{\mathcal{R}(i)})=[\varphi(x_j)^T\psi(x_k)]_{\forall j,k\in\mathcal{R}(i)}δ(xR(i)​)=[φ(xj​)Tψ(xk​)]∀j,k∈R(i)​;
  3)拼接:δ(xR(i))=[φ(xi),ψ(xj)]∀j∈R(i)\delta(x_{\mathcal{R}(i)})=[\varphi(x_i),\psi(x_j)]_{\forall j\in\mathcal{R}(i)}δ(xR(i)​)=[φ(xi​),ψ(xj​)]∀j∈R(i)​。

2.3 自注意力块

  章节2.1和2.2描述的自注意力操作可以用于构建残差块,其用于执行特征汇聚和特征变换。我们的自注意力块如图1。
  1)输入特征传递给两个流,左边的流冲过计算函数δ\deltaδ和接下来的映射γ\gammaγ来计算注意力权重α\alphaα,右边的流使用β\betaβ来转换特征到;
  2)Hadamard乘积汇聚两个流的特征;
  3)组合特征通过归一化和元素非线性传递,并由最终线性层处理,将它们的维度扩展回CCC。


  图1:自注意力块。CCC是通道数,左边的流用于评估注意力权重α\alphaα,右边的流用于转换特征,两个流均可高效地降低通道数。输出流通过Hadamard乘积汇聚并扩充维度为CCC

2.4 网络架构

  参差网络将作为本注意力网络的基准线。表1展示了不同分辨率下堆叠注意力块的架构。
  

  表1:不同图像分辨率的自注意力网络。"C−C-C−d linear"表示线性层的输出维度为CCC,"CCC-d sa"表示自注意力操作的输出维度为CCC。SAN10、SAN15,以及SAN19对应ResNet26、ResNet38,以及ResNet50。SANX中的X表示自注意力块的数量。该架构完全基于自注意力

  骨架. SAN的骨架分为五个阶段,每个都有不同的空间分辨率,降低因素为32。每个阶段包含多个自注意力块。连续的阶段由降低空间分辨率和扩展通道维度的过渡层桥接。最后阶段的输出由包括全局平均池、线性层和softmax的分类层处理。

  过渡 (Transition). 过渡层降低了空间分辨率,从而减少计算负担并扩大感受野。该转换包括一个批量归一化层、一个 ReLU、步长为2的2×22\times22×2的最大池化,以及扩展通道维度的线性映射。

  自注意力的足迹。足迹R(i)\mathcal{R}(i)R(i)控制了基于先前特征层的自注意力操作汇聚得到的信息的数量。SAN最后四个阶段的足迹大小设置为7×77\times77×7,第一个阶段由于高分辨率以及连续的内存消耗,设置足迹大小为3×33\times33×3。注意增加足迹的大小并不影响按对自注意力草书的数量。

  实例化 (Instantiations). 可以调整每个阶段的自注意力块的数量,以获得具有不同容量的网络。在表1 所示的网络中,最后四个阶段使用的自注意力块数分别与ResNet26、ResNet38,以及ResNet50中的残差块数相同。

论文阅读 (70):Exploring Self-attention for Image Recognition相关推荐

  1. 论文阅读和分析:Hybrid Mathematical Symbol Recognition using Support Vector Machines

    HMER论文系列 1.论文阅读和分析:When Counting Meets HMER Counting-Aware Network for HMER_KPer_Yang的博客-CSDN博客 2.论文 ...

  2. 【论文阅读】Long-term Temporal Convolutions for Action Recognition

    [论文阅读]Long-term Temporal Convolutions for Action Recognition 这篇论文之前,几乎所有的3D卷积网络的输入视频长度都很短,例如C3D.Res3 ...

  3. 【论文阅读】Dynamic Convolution: Attention over Convolution Kernels(CVPR2020)

    论文题目:Dynamic Convolution: Attention over Convolution Kernels(CVPR2020) 论文地址:https://arxiv.org/abs/19 ...

  4. [HSI论文阅读] | HybridSN: Exploring 3-D–2-D CNN Feature Hierarchy for Hyperspectral Image Classification

    仅整理个人和组里对下文引用的论文(HybridSN)的学习所获,如有错误,感谢指正~ 更新记录 ⭐️ 2021.3.6 -- 关于本文2.2.2节卷积层参数的计算 ⭐️ 2021.3.8 -- Hyb ...

  5. 论文阅读:Semantic Aware Attention Based Deep Object Co-segmentation(ACCV2018)

    协同分割论文:Semantic Aware Attention Based Deep Object Co-segmentation(ACCV2018) 论文原文     code 目录 1.简介 2. ...

  6. 论文阅读【A multi-task attention tree neural net for stance classification and rumor veracity detection】

    论文题目:<A multi-task attention tree neural net for stance classification and rumor veracity detecti ...

  7. 【论文阅读】Heterogeneous Graph Attention Network

    异质图注意网络 摘要 1 引言 2 相关工作 2.1 GNN 2.2 网络嵌入 3 准备工作 3.1 异质图(Heterogeneous Graph) 3.2 元路径(Meta-path) 3.3 基 ...

  8. 【论文阅读】Exploring the Limitations of Behavior Cloning for Autonomous Driving

    Column: January 16, 2022 11:11 PM Last edited time: January 21, 2022 12:23 PM Sensor/组织: 1 RGB Statu ...

  9. 论文阅读——ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks

    ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks 改进版通道注意力 from CVPR2020 期 ...

  10. 【论文阅读笔记】《Attention is All You Need》——Attention机制和Transformer

    Self-Attention 原理 计算两个向量之间的相关性α 输入的向量分别乘矩阵Wq和Wk得到q(query)和k(key)输入的向量分别乘矩阵W^q和W^k得到q(query)和k(key) 输 ...

最新文章

  1. mysql中表名为关键字的处理方法
  2. oracle查询游标行数,如何查找Oracle PL/SQL游标中的记录数量?
  3. python建立回归模型_简单线性回归的Python建模方法
  4. 安卓飞机大战(三) 弹出对话框
  5. 编程没有捷径 奇葩冒牌程序员的故事
  6. spring boot 使用maven和fat jar/war运行应用程序的对比
  7. 从五个维度来计算互联网产品单个用户的价值
  8. 《MySQL——幻读与next-key lock与间隙锁带来的死锁》
  9. EncryptionHelper.cs(20170223)
  10. 【SpringCloud】Spring cloud Alibaba Sentinel 服务熔断
  11. 《TCP/IP详解卷1:协议》读书笔记
  12. php7.0和5.6哪个好,PHP7.0与PHP5.6下Laravel博客的应用性能对比介绍
  13. Axure原型图教程
  14. Python 给图片加文字或logo水印(附代码) | Python工具
  15. 腾达ap设置说明_腾达Tenda F6无线信号放大模式(Client+AP)设置方法
  16. Kismet:一款超强的无线嗅探器
  17. 教师使用计算机备课,计算机教师备课的几点看法
  18. uniapp tabBar角标问题
  19. Android系统简介
  20. 藏宝阁显示角色可买服务器,梦幻西游藏宝阁里面买角色时选的可转入服务器是不是一定可以转...

热门文章

  1. Wireshark 用户使用手册 ———— 文件处理
  2. winpe装双系统linux_Winpe下安装Ubuntu
  3. 火绒软件+软媒雷达(win10,弥补了火绒无优化内存服务)
  4. 实测分析免费建站软件有哪些?哪个最好?
  5. codesmith oracle 64,CodeSmith OracleModel写法
  6. python正则表达式和数据库
  7. 写给大忙人看的操作系统
  8. Windows Mobile 6 Professional SDK
  9. 贴吧android客户端,百度贴吧推出Android平台手机客户端
  10. matlab数学实验课件5,matlab_intro_西安交通大学-数学实验教案_ppt_大学课件预览_高等教育资讯网...