【论文阅读】An Image Patch is a Wave: Quantum Inspired Vision MLP
【论文阅读】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_thJth输出令牌。令牌-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,teiθ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,tei(θ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=∑Wjktzk⊙cosθk+Wjkizk⊙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相关推荐
- DnCNN论文阅读笔记【MATLAB】
DnCNN论文阅读笔记 论文信息: 论文代码:https://github.com/cszn/DnCNN Abstract 提出网络:DnCNNs 关键技术: Residual learning an ...
- FCGF论文阅读笔记
FCGF论文阅读笔记 0. Abstract 从三维点云或者扫描帧中提取出几何特征是许多任务例如配准,场景重建等的第一步.现有的领先的方法都是将low-level的特征作为输入,或者在有限的感受野上提 ...
- 深度学习论文阅读目标检测篇(四)中英文对照版:YOLOv1《 You Only Look Once: Unified, Real-Time Object Detection》
深度学习论文阅读目标检测篇(四)中英文对照版:YOLOv1< You Only Look Once: Unified, Real-Time Object Detection> Abstra ...
- 【论文阅读】3D Topology-Preserving Segmentation with Compound Multi-Slice Representation
[论文阅读]3D Topology-Preserving Segmentation with Compound Multi-Slice Representation 2022年3月6日 (本文仅作为本 ...
- 缺陷检测相关论文阅读总结(记录自己读过的论文主要内容/Ideas)
缺陷检测相关论文阅读总结(记录自己读过的论文主要内容) Attention!!! 点击论文题目即可访问原文or下载原文PDF文件: 每篇文章的内容包含:内容总结.文章Ideas: 更多关于缺陷检测以及 ...
- 论文阅读——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 基于对抗神经网络 ...
- 深度学习论文阅读目标检测篇(一):R-CNN《Rich feature hierarchies for accurate object detection and semantic...》
深度学习论文阅读目标检测篇(一):R-CNN<Rich feature hierarchies for accurate object detection and semantic segmen ...
- 【论文阅读】PatchmatchNet
[论文阅读]PatchmatchNet 2022/06/07 论文:PatchmatchNet: Learned Multi-View Patchmatch Stereo(2020) 论文试图解决什么 ...
- Transformer系列论文阅读
这是博主在五一期间对Transformer几篇相关论文阅读的小笔记和总结 也借鉴参考了很多大佬的优秀文章,链接贴在文章下方,推荐大家前去阅读 该文章只是简单叙述几个Transformer模型的基本框架 ...
最新文章
- 三星s轻奢android+p,三星Galaxy S轻奢版5月21日将至:骁龙660处理器+安卓8.0
- Unity Shader 屏幕后效果——高斯模糊
- IntelliJ IDEA 15发布
- android 回退函数,详解React Native监听Android回退按键与程序化退出应用
- php $_server[remote_addr];,php – 如何伪造$_SERVER [‘REMOTE_ADDR’]变量?
- 如何用编程 get 百万年终奖?
- 服装企业为什么要用湖州管家婆ERP管理软件?
- vue 移动端使用日期插件datepicker.js
- PFC颗粒流 指定文件路径输出方法
- 数学基础知识(2) 梯度和方向向量
- Python3批量发送邮件,支持smpt的ssl验证,支持163和outlook邮箱,可发送html格式和附件,使用asyncio和线程池实现并发并行
- linux笔记:使用conda命令管理包、管理环境详细讲解
- mad和php的区别,良心解析kakaKUC-MAD好用吗?怎么样呢?体验揭秘分析
- 也说360和QQ之战
- 使用Apache的Proxy模块实现对被代理网站的访问
- Web Service与Rest API
- 数论--欧几里得和扩展的欧几里得定理
- vr授权服务器虚拟机,vm虚拟机上的连接远程服务器
- 9个适合上班族晚上在家就能赚钱的副业推荐(建议收藏)
- echart hightchart 区别
热门文章
- 模拟地与数字地连接0欧电阻作用
- unity课设小游戏_【Unity3D开发小游戏】《跑酷小游戏》Unity开发教程
- Error: Command ‘[‘/home/das/Desktop/learn/my_venv/bin/python3‘
- JZOJ4870. 【NOIP2016提高A组集训第9场11.7】涂色游戏
- Decode 函数的用法
- 准备写个iriver的mp3歌词编辑器
- finder是什么,mac 窗口功能介绍
- 神经网络深度学习计算的高效加速
- qq小程序图片和文字安全检测(文字和图片安全检测)
- 基于Android12 AOSP和Pixel4,针对framework模块修改源代码的部分编译和刷机流程