S2-MLPv2 Improved Spatial-Shift MLP Architecture for Vision
论文地址:
整体思路以及计算方式
对S2-MLP的改进,使用了多种spatial-shift,然后split attention进行特征融合:
这里主要介绍split attention的计算方式:
输入:[X1,X2,⋯,XK]∈Rn×K×c,Xk∈Rn×c
特征融合:a=∑k=1K1nXk∈Rc
a1=σ(aW1)∈Rc1
a2=a1W2∈RKc
a3=Softmax(reshape(a2),dim=1)∈R1×K×c
o1=[X1,X2,⋯,XK]⊙a3∈Rn×K×c
o2=Sum(o1,dim=1)∈Rn×c
该模块主要融合了Xk的特征,不知道是否可以代替Attention的效果?
时间复杂度
split attention模块的时间复杂度为O(nKc+cc1+Kc1c),其余部分任然为线性复杂度。
训练以及loss
不变。
代码
简评
spatial-shift + split attention可以大幅提升性能,可以研究下,然后在nlp中使用。