【论文阅读】An Image Patch is a Wave: Quantum Inspired Vision MLP

  • 1.摘要
  • 2.视觉领域的几种研究架构
    • 2.1CNN
    • 2.2Transformer
    • 2.3MLP
  • 3.视觉MLP架构
  • 4.Wave-MLP
    • 4.1启发
    • 4.2相位感知令牌混合模块(PATM)
    • 4.3网络架构
    • 4.4成功实践
    • 4.5具体模型
  • 5.实验

1.摘要

本篇博客参考2022年CVPR收录的An Image Patch is a Wave: Quantum Inspired Vision MLP,对其主要内容进行总结,以便加深理解和记忆。

论文:[2111.12294] An Image Patch is a Wave: Phase-Aware Vision MLP (arxiv.org)
代码:github 、gitee

2.视觉领域的几种研究架构

2.1CNN

卷积神经网络(CNN)长期以来一直是计算机视觉领域的主流。在[24]中给出了用于文档识别任务的CNN模型原型,其中卷积是核心操作。从ILSVRC 2012上AlexNet[23]的大获成功开始,开发了GoogleNet[36]、VGGNet[34]、ResNet[17]、RegNet[32]等多种架构。尽管为了追求高性能,模型架构变得越来越复杂,但核心操作始终是卷积及其变体。

2.2Transformer

Transformer[42]最初是为自然语言处理(NLP)任务提出的,例如语言建模和机器翻译。

1)Dosovitskiy等[9]将其引入计算机视觉,在图像分类任务中取得了出色的表现,特别是在训练数据极其充足的情况下。

2)Touvron等[41]改进了训练方法,并提出了一种专门针对变压器的teacher-student策略,该策略从头开始在ImageNet上训练产生具有竞争力的变压器模型。
随后许多研究探讨了视觉变压器的架构设计[5,12,15,37,38,44,45]。

3)Han等[15]提出了一个嵌套的变压器体系结构,以同时捕获全局和局部信息。

4)为了兼容目标检测、语义分割等密集预测任务,[9,19,43]采用了层次结构,将整个结构划分为多个阶段,合理地降低了空间分辨率阶段。

5)Swin Transformer[29]提取具有移动窗口的表示,并限制局部区域的自注意。与[9]中连接一层中所有令牌的自注意相比,移位窗口操作效率更高。

2.3MLP

近年来,由全连接层和非线性激活函数组成的类mlp架构备受关注[6,13,39]。虽然它们的架构更简单,引入的归纳偏差更少,但其性能仍然可以与SOTA模型相媲美。

1)MLP- mixer模型[39]使用了两种类型的MLP层,即信道混合MLP和令牌混合MLP。信道-MLP提取每个令牌的特征,而令牌混合MLP尝试聚合来自不同令牌的信息,以捕获空间信息。通过将这两种类型的MLP块交替堆叠,简单的MLP架构可以有足够的能力提取特征,并在视觉任务中获得良好的性能。

2)Touvron等人[40]提出了一个类似的架构,并将层归一化[2]替换为更简单的仿射变换。

3)Liu等[28]通过经验验证,在语言和视觉任务中,带门控的MLP架构可以实现与变压器相似的性能。
为了保留输入图像的位置信息

4)Hou等[20]保留输入图像的二维形状,并分别通过排列宽度和高度来提取特征。

5)Yu等[46]在MLP- mixer的基础上,用空间移位操作取代了令牌混合MLP,捕获局部空间信息,计算效率也很高。

6)目前,Lian等[25]提出沿两个正交方向移动标记来获得轴向感受野。

7)Chen等[6]提出了一种循环全连接层,该层同时混合了空间和通道维度上的信息,可以应对可变的输入图像尺度。

3.视觉MLP架构

类MLP模型是一种主要由全连通层和非线性激活函数组成的神经结构。对于视觉MLP,它首先将图像分割为多个图像块(也称为令牌),然后用两个组件提取它们的特征,即通道-FC和令牌-FC。

1)将包含n个标记的中间特征表示为Z=[z1,z2,⋅⋅⋅,zn]Z = [z_1, z_2,···,z_n]Z=[z1​,z2​,⋅⋅⋅,zn​],其中每个标记zj是一个d维向量。channel-FC表述为:
Channel−FC(zj,Wc)=Wczj,j=1,2,⋅⋅⋅nChannel-FC(z_j, W^c) = W^cz_j, j = 1, 2, · · · n Channel−FC(zj​,Wc)=Wczj​,j=1,2,⋅⋅⋅n
其中WcW_cWc​是具有可学习参数的权重。channel-FC对每个令牌进行独立操作,以提取它们的特征。为了提高转换能力,通常采用非线性激活函数将多个信道- fc层叠加在一起,从而构建信道混合MLP。

2)为了聚合来自不同令牌的信息,需要执行令牌-fc操作,即:
Token−FC(Z,Wt)j=∑Wjkt⊙zk,j=1,2,...nToken-FC(Z, W^t)_j = \sum W^t_{jk} ⊙ z_k, j = 1, 2, ... n Token−FC(Z,Wt)j​=∑Wjkt​⊙zk​,j=1,2,...n
其中WtW_tWt​是令牌混合权值,⊙表示元素乘法,下标j表示第JthJ_thJt​h输出令牌。令牌-fc操作试图通过混合来自不同令牌的特征来捕获空间信息。

问题:在现有的MLP类模型中,如MLPMixer [39], ResMLP[40],也通过将令牌fc层和激活函数叠加来构造一个令牌混合MLP。这种简单的固定权重的令牌混合MLP忽略了不同输入图像中令牌语义内容的变化,这是限制类MLP体系结构表示能力的瓶颈

4.Wave-MLP

贡献:提出了一种新的视觉MLP架构(称为Wave -MLP)

4.1启发

1)回想Transformer[9,42]用由注意力机制动态调整的权重聚合标记。计算不同令牌之间的内积,相似度越高的令牌在彼此的聚集过程中权重越大。

2)在量子力学中,一个实体(如电子、光子)通常由包含振幅和相位的波函数(如德布罗意波)表示[1,11,18]。振幅部分测量波的最大强度,相位部分通过指示波周期中一点的位置来调节强度。受量子力学的启发,我们将每个令牌描述为一个波,实现令牌的动态聚合过程。

4.2相位感知令牌混合模块(PATM)

PATM模块将每个令牌作为一个具有振幅和相位的波振幅是表示每个令牌内容的实值特征,而相位是调制MLP中令牌与固定权重之间关系的单位复数,通过同时考虑振幅和相位来聚合它们。这些波状令牌之间的相位差会影响它们的聚合输出,相位接近的令牌往往会相互增强

1)波表示

在wave - mlp中,一个令牌被表示为具有振幅和相位信息的波~ zj,即:
z^j=∣zj∣⊙eiθj,j=1,2,...,n\hat z_j = |zj| ⊙ e^{iθ_j} , j = 1, 2,... , n z^j​=∣zj∣⊙eiθj​,j=1,2,...,n
其中i是满足i2=−1i^2 =−1i2=−1的虚数单位。|·|表示绝对值运算,⊙是逐元素的乘法。振幅∣zj∣|z_j|∣zj​∣是表示每个令牌内容的实值特征。eiθje^{iθ_j}eiθj​是一个周期函数,其元素总是有单位范数。θjθ_jθj​表示相位,是token在一个波周期内的当前位置。对于振幅和相位,每个令牌z^j\hat z_jz^j​表示在复数域中。

当聚合不同的标记时,相位θjθ_jθj​调节它们的叠加模式。假设z^r=z^1+z^2\hat z_r= \hat z_1+\hat z_2z^r​=z^1​+z^2​是类波令牌z^1\hat z_1z^1​,z^1\hat z_1z^1​的聚合结果,则其振幅∣z^r∣|\hat z_r|∣z^r​∣和相位θjθ_jθj​可计算如下:

其中atan2(x,y)atan2(x, y)atan2(x,y)是双参数arctan函数。如上式所示,两个令牌之间的相位差∣θj−θi∣|θ_j−θ_i|∣θj​−θi​∣对聚合结果zrz_rzr​的幅值影响较大。

图3显示了一个直观的图表。左边是两个波在复值域的叠加,而右边显示了它们沿实轴的投影随w.r.t的变化阶段。当两个符号具有相同的相位(θj=θi+2π∗m,m∈[0,±2,±4,⋅⋅⋅])(θj = θi + 2π * m, m∈[0,±2,±4,···])(θj=θi+2π∗m,m∈[0,±2,±4,⋅⋅⋅])时,它们将相互增强,即∣zr∣=∣zi∣+∣zj∣|z_r| = |z_i| + |z_j|∣zr​∣=∣zi​∣+∣zj​∣(图3 (b))。对于相反的相(θj=θi+π∗m,m∈[±1,±3,⋅⋅⋅])(θ_j = θ_i+π∗m, m∈[±1,±3,···])(θj​=θi​+π∗m,m∈[±1,±3,⋅⋅⋅]),合成波将被削弱(∣zr∣=∣∣zi∣−∣zj∣∣|zr| = ||zi|−|zj||∣zr∣=∣∣zi∣−∣zj∣∣)。在其他情况下,它们的相互作用更复杂,但它们是增强还是减弱也取决于相位差(图3 (a))。请注意,只有实值特征的经典表示策略是式3的特殊情况,其相位θjθ_jθj​仅为π的整数倍。

2)振幅

为了得到式3中的波状符号,振幅和相位信息都需要。振幅∣zi∣|z_i|∣zi​∣与传统模型中的实值特征相似,只是有一个绝对运算。实际上,元素的绝对运算可以被吸收到相项中,即∣zj,t∣eiθj,t=zj,teiθj|z_{j,t}| e^{i θ_{j,t}} = z_{j,t}e^{iθ_j}∣zj,t​∣eiθj,t​=zj,t​eiθj​,t如果zj,t>0z_{j,t} > 0zj,t​>0, ∣zj,t∣eiθj,t=zj,tei(θj,t+π)|z_{j,t}| e^{i θ_{j,t}} = z_{j,t}e^{i(θ_{j,t}+π)}∣zj,t​∣eiθj,t​=zj,t​ei(θj,t​+π),其中zj,tz_{j,t}zj,t​和θj,tθ_{j,t}θj,t​表示zj{z_j}zj​和θjθ_jθj​中的第t个元素。

因此,为了简单起见,我们在实际实现中删除了绝对操作。表示X=[x1,x2,…,xn]X = [x_1, x_2,…, x_n]X=[x1​,x2​,…,xn​]作为块的输入,我们通过简单的channel-FC运算得到令牌的幅值zj,即:
zj=Channel−FC(xj,Wc),j=1,2,⋅⋅⋅,nz_j = Channel-FC(x_j, W^c), j = 1, 2, · · · , n zj​=Channel−FC(xj​,Wc),j=1,2,⋅⋅⋅,n
3)相位

回顾阶段表示在一段波动期间令牌的当前位置,我们讨论以下生成阶段的不同策略。最简单的策略(“静态相位”)是用固定的参数来表示每个标记的相位θjθ_jθj​,这可以在训练过程中学习。虽然静态阶段可以区分不同的标记,但它也忽略了不同输入图像的多样性。

为了分别捕获每个输入的特定属性,我们使用估计模块ΘΘΘ根据输入特征xjx_jxj​生成相位信息,即Θj=Θ(xj,WΘ)Θ_j = Θ(x_j, W^Θ)Θj​=Θ(xj​,WΘ),其中WΘW^ΘWΘ表示可学习参数。考虑到简单性是类MLP体系结构的一个重要特征,复杂的操作是不可取的。因此,我们也采用式1中的简单通道-fc作为相位估计模块。

4)令牌聚合

在式3中,波状符号表示在复域中。为了将其嵌入到一般的类mlp架构中,我们用欧拉公式展开它,用实部和虚部表示它,即:
zj=∣zj∣⊙cosθj+i∣zj∣⊙sinθj,j=1,2,⋅⋅⋅,nz_j = |z_j| ⊙ cos θ_j + i|z_j| ⊙ sin θ_j, j = 1, 2, · · · , n zj​=∣zj​∣⊙cosθj​+i∣zj​∣⊙sinθj​,j=1,2,⋅⋅⋅,n
在上面的方程中,一个复值令牌被表示为两个实值向量,分别表示实部和虚部。然后用令牌-fc操作(式2)聚合不同的令牌z^j\hat z_jz^j​,即:
o^j=Token−FC(Z^,Wt)j,j=1,2,⋅⋅⋅,n\hat o_j = Token-FC(\hat Z, W^t)_j, j = 1, 2, · · · , n o^j​=Token−FC(Z^,Wt)j​,j=1,2,⋅⋅⋅,n
其中Z^=[^z1,^z2,⋅⋅⋅,^zn]\hat Z = [\hat ~ z_1, \hat ~ z_2,···,\hat ~ z_n]Z^=[ ^z1​, ^z2​,⋅⋅⋅, ^zn​]表示一层中所有的波状符号。在式8中,不同的令牌相互作用,同时考虑振幅和相位信息。输出o^j\hat o_jo^j​是聚合特征的复值表示。遵循常见的量子测量方法[3,21],将具有复值表示的量子态投射到实值可观测值,我们通过将ojo_joj​的实部和虚部与权重相加来得到实值输出ojo_joj​。结合公式8得到输出ojo_joj​为:
oj=∑Wjktzk⊙cosθk+Wjkizk⊙sinθk,j=1,2,⋅⋅⋅,n,o_j =\sum W^t_{jk}z_k ⊙ cos θ_k + W^i_{jk}z_k ⊙ sin θ_k, j = 1, 2, · · · , n, oj​=∑Wjkt​zk​⊙cosθk​+Wjki​zk​⊙sinθk​,j=1,2,⋅⋅⋅,n,
其中WtW_tWt​和WiW_iWi​都是可学习权值。在上式中,相位θkθ_kθk​根据输入数据的语义内容动态调整。除了固定的权重外,阶段还调节不同token的聚合过程。

4.3网络架构

整个Wave-MLP架构由PATM模块和信道混合MLP和归一化层交替堆叠而成信道混合MLP由两个信道fc层和非线性激活函数叠加,对每个令牌提取特征令牌混合块由所提出的PATM模块组成,通过考虑振幅和相位信息聚合不同的令牌

4.4成功实践

为了更好地兼容计算机视觉任务,我们使用形状为H × W × C的特征映射来保留输入图像的二维空间形状,其中H、W、C分别为高度、宽度和通道数。这是一种成功的实践,广泛应用于最近的视觉转换器架构(例如,PVT [43], SwinTransformer[29])。有两个并行的PATM模块,分别沿高维和宽维聚合空间信息。与[6,20]类似,不同分支用一个重加权模块进行求和。在传统的MLP-Mixer[39]中,每个令牌fc层将所有令牌连接在一起,令牌的维度取决于特定的输入大小。因此,它不兼容输入图像大小不同的密集预测任务(例如,目标检测和语义分割)。为了解决这个问题,我们使用了一个简单的策略,限制FC层只连接本地窗口内的令牌。窗口大小的实证研究见章节4.4的表7。除了PA TM模块外,还使用另一个通道fc直接连接输入和输出,以保存原始信息。块的最终输出是这三个分支的和。

4.5具体模型

Wave-MLP-T、Wave-MLP-S、Wave-MLP-M、Wave-MLP-B

5.实验

1)Wave MLP首先与ImageNet上现有的视觉MLP、视觉变换器和神经网络进行了比较[8],用于图像分类。

2)Wave MLP被用作两个检测器(RetinaNet[26]和Mask R-CNN[16])的主干,用于COCO数据集上的对象检测和实例分割[27]。

3)对于语义分割,采用了ADE20K[50]上广泛使用的语义FPN[22]。

4)消融实验:相位信息、相位估计模块、用于聚合令牌的窗口大小、可视化

【论文阅读】An Image Patch is a Wave: Quantum Inspired Vision MLP相关推荐

  1. DnCNN论文阅读笔记【MATLAB】

    DnCNN论文阅读笔记 论文信息: 论文代码:https://github.com/cszn/DnCNN Abstract 提出网络:DnCNNs 关键技术: Residual learning an ...

  2. FCGF论文阅读笔记

    FCGF论文阅读笔记 0. Abstract 从三维点云或者扫描帧中提取出几何特征是许多任务例如配准,场景重建等的第一步.现有的领先的方法都是将low-level的特征作为输入,或者在有限的感受野上提 ...

  3. 深度学习论文阅读目标检测篇(四)中英文对照版:YOLOv1《 You Only Look Once: Unified, Real-Time Object Detection》

    深度学习论文阅读目标检测篇(四)中英文对照版:YOLOv1< You Only Look Once: Unified, Real-Time Object Detection> Abstra ...

  4. 【论文阅读】3D Topology-Preserving Segmentation with Compound Multi-Slice Representation

    [论文阅读]3D Topology-Preserving Segmentation with Compound Multi-Slice Representation 2022年3月6日 (本文仅作为本 ...

  5. 缺陷检测相关论文阅读总结(记录自己读过的论文主要内容/Ideas)

    缺陷检测相关论文阅读总结(记录自己读过的论文主要内容) Attention!!! 点击论文题目即可访问原文or下载原文PDF文件: 每篇文章的内容包含:内容总结.文章Ideas: 更多关于缺陷检测以及 ...

  6. 论文阅读——TR-GAN: Topology Ranking GAN with Triplet Loss for Retinal Artery/Vein Classification

    论文阅读--TR-GAN: Topology Ranking GAN with Triplet Loss for Retinal Artery/Vein Classification 基于对抗神经网络 ...

  7. 深度学习论文阅读目标检测篇(一):R-CNN《Rich feature hierarchies for accurate object detection and semantic...》

    深度学习论文阅读目标检测篇(一):R-CNN<Rich feature hierarchies for accurate object detection and semantic segmen ...

  8. 【论文阅读】PatchmatchNet

    [论文阅读]PatchmatchNet 2022/06/07 论文:PatchmatchNet: Learned Multi-View Patchmatch Stereo(2020) 论文试图解决什么 ...

  9. Transformer系列论文阅读

    这是博主在五一期间对Transformer几篇相关论文阅读的小笔记和总结 也借鉴参考了很多大佬的优秀文章,链接贴在文章下方,推荐大家前去阅读 该文章只是简单叙述几个Transformer模型的基本框架 ...

最新文章

  1. 三星s轻奢android+p,三星Galaxy S轻奢版5月21日将至:骁龙660处理器+安卓8.0
  2. Unity Shader 屏幕后效果——高斯模糊
  3. IntelliJ IDEA 15发布
  4. android 回退函数,详解React Native监听Android回退按键与程序化退出应用
  5. php $_server[remote_addr];,php – 如何伪造$_SERVER [‘REMOTE_ADDR’]变量?
  6. 如何用编程 get 百万年终奖?
  7. 服装企业为什么要用湖州管家婆ERP管理软件?
  8. vue 移动端使用日期插件datepicker.js
  9. PFC颗粒流 指定文件路径输出方法
  10. 数学基础知识(2) 梯度和方向向量
  11. Python3批量发送邮件,支持smpt的ssl验证,支持163和outlook邮箱,可发送html格式和附件,使用asyncio和线程池实现并发并行
  12. linux笔记:使用conda命令管理包、管理环境详细讲解
  13. mad和php的区别,良心解析kakaKUC-MAD好用吗?怎么样呢?体验揭秘分析
  14. 也说360和QQ之战
  15. 使用Apache的Proxy模块实现对被代理网站的访问
  16. Web Service与Rest API
  17. 数论--欧几里得和扩展的欧几里得定理
  18. vr授权服务器虚拟机,vm虚拟机上的连接远程服务器
  19. 9个适合上班族晚上在家就能赚钱的副业推荐(建议收藏)
  20. echart hightchart 区别

热门文章

  1. 模拟地与数字地连接0欧电阻作用
  2. unity课设小游戏_【Unity3D开发小游戏】《跑酷小游戏》Unity开发教程
  3. Error: Command ‘[‘/home/das/Desktop/learn/my_venv/bin/python3‘
  4. JZOJ4870. 【NOIP2016提高A组集训第9场11.7】涂色游戏
  5. Decode 函数的用法
  6. 准备写个iriver的mp3歌词编辑器
  7. finder是什么,mac 窗口功能介绍
  8. 神经网络深度学习计算的高效加速
  9. qq小程序图片和文字安全检测(文字和图片安全检测)
  10. 基于Android12 AOSP和Pixel4,针对framework模块修改源代码的部分编译和刷机流程