华为诺亚方舟实验室、北京大学、悉尼大学的研究者提出了一种受量子力学启发的视觉 MLP 新架构
论文地址:https://arxiv.org/abs/2111.12294
PyTorch 代码:https://github.com/huawei-noah/CV-Backbones/tree/master/wavemlp_pytorch
性能展示
创新点
- 提出将每个特征表示为具有振幅和相位两部分的波函数。
振幅是原始特征,相位项是根据输入图像的语义内容而变化的复数值。引
入相位项可以动态调整 MLP 中token和固定权重之间的关系。
原理
视觉MLP简介
现有思路
MLP模型主要包含两个独立的模块,通道混合MLP和token混合MLP。通过交替堆叠这两种类型的MLP来提取特征,但性能仍然不如CNN和transformer架构的SOTA模型。
通道混合MLP:捕获token的特征。
token混合MLP: 捕获空间信息。将图像分成多个块,每个块被称为token, token-mixing MLP 用来混合不同token之间的要素来。
不足
作者认为瓶颈在于全连接层的固定权重用于提取不同图像的特征,忽略了语义信息的差异。
波的叠加
相同波形产生增益,相反波形产生抑制。
使用两个分量提取特征
用于获取幅值和相位
用于聚合不同token
波的表示
中心思想:将波函数用神经网络表示。
是每个token的实数特征,是一个周期函数,表示相位,即波周期内token的当前位置
为什么是一个周期函数?
欧拉公式
指数函数在实数域:
指数函数在复数域
所以是一个周期函数
幅值的表示
通过一层通道fc来学习幅值
相位的表示
为相位估计模块,仍然是一层channel-fc
波的欧拉公式展开
不同的波进行聚合
token-FC聚合
映射到实数域。遵循量子测量方法,通过求和权重的实部和虚部,将复数值表示的量子态映射到实数值域。都为可以学习的权重,相位根据输入数据的语义不同动态调整。
网络
PATM模块
相位感知token聚合模块
PATM内部网络图
Token Mixing
提问:
- 哪个是幅值的表示?
- 哪个是相位的表示?
- 哪个是token聚合的表示?
- 中的PATM是内部网络图的哪部分?channel FC是哪部分?
Channel MLP
总体架构
每个可以称为一个block,token Mixing和channel-MLP构成一个block。
整个模型通过交替堆叠token Mixing和channel-MLP构建,