CondConv 条件参数化卷积
论文地址:CondConv: Conditionally Parameterized Convolutions for Efficient Inference
对于普通卷积,数据集中的所有的样本共享同一组卷积参数,作者提出了条件参数化卷积,为每个样本学习专门的卷积核,同时可以增加网络的大小和容量,还能够保持高效推理。它等效于多分支卷积层,并且通过加权来聚合输出,只需要进行一个卷积的计算。
CondConv将卷积参数化为N个专家的线性组合(α1W1 + ...+ αnWn),α是一组依赖输入的可学习的权重参数,而每个专家是一个静态的卷积核。其实就是类似于SE注意力机制,SE是为每个通道分配一个权重,CondConv是为每个卷积核分配一个权重。
Output(x) = σ((α1 · W1 + . . . + αn · Wn) ∗ x)
作者认为下式是等效的,并且拥有更高的计算效率,等式左边只需要进行一次卷积操作,等式右边需要n次卷积操作。
σ((α1 · W1 + . . . + αn · Wn) ∗ x) = σ(α1 · (W1 ∗ x) + . . . + αn · (Wn ∗ x))
权重如何生成?权重是依赖输入的,通过池化操作和全连接层将输入特征映射到N个专家的路由权重矩阵,再利用Sigmoid函数进行归一化处理生成。
r(x) = Sigmoid(GlobalAveragePool(x) R)
将生成的N个权重分配给N个专家卷积进行加权,然后再将输入样本与加权后的卷积核进行卷积运算,得到最终特征图。
Output(x) = σ((α1 · W1 + . . . + αn · Wn) ∗ x)
DynamciConv 动态卷积
论文地址:Dynamic Convolution: Attention over Convolution Kernels
该文章表示可以在不增加网络深度或宽度的情况下增加模型的复杂性,同时增加的计算成本可以忽略不计。
其实主体思想是和上一个差不多的,都是利用一组N个并行的专家卷积核,然后根据每个输入样本动态地聚合这些卷积核。
主要就是权重矩阵的生成方式有点区别,如上图所示,DyConv使用两个全连接层(中间还有个ReLU层),并且在最后利用softmax来生成矩阵权重,作者认为,利用softmax生成的权重和为1,相当于多了一个约束条件,解的空间就变小了,这样网络就更容易收敛。
并且在softmax中使用较大的温度对权重进行平滑处理,在早期训练阶段采用温度退火策略进行线性降低,可以加快网络的收敛。
DyNet
论文地址:
DYNET: DYNAMIC CONVOLUTION FOR ACCELERATING CONVOLUTIONAL NEURAL NETWORKS
这篇文章不知道和CondConv那篇有什么区别,感觉就是从别的角度(noise-irrelevant feature这个角度)出发来说明了动态卷积的有效性。
权重是如何生成的?本文提出了一个系数预测模块,由全局平均池化层和以Sigmoid作为激活函数的全连接层组成。全局平均池化层将输入特征映射聚合成1 × 1 × Cin向量,作为特征提取层。然后,全连接层进一步将特征映射到1×1×C向量,该向量是几个动态卷积层的固定卷积核的系数。其实也就是根据输入特征图生成C个静态卷积核的权重系数,和CondConv是一样的。
ODConv 全维卷积
论文地址:OMNI-DIMENSIONAL DYNAMIC CONVOLUTION
ODConv就是除了在卷积核的维度分配权重外(给n个专家卷积分配权重),还在卷积核的其它三个维度上分别进行了权重的分配。
该文作者认为通过内核空间的一个维度(关于卷积核数)赋予卷积核动态特性,但忽略了其他三个维度(关于空间大小,每个卷积核的输入通道数和输出通道数),根据此启发,提出了ODConv,即沿着核空间的四维分别学习四个维度上的注意力权重,实验证明了这四种注意力是互补的,并可以增强卷积核的特征提取能力。一个内核的ODConv可以和具有多个动态内核的动态卷积竞争甚至更优,并且减少了额外的参数。
图a为第二个所说的动态卷积,它只利用了一个维度的权重(卷积核数维度)
图b为ODConv的结构,它并行计算得到四组权重,然后运用到卷积核中,再利用最终得到的卷积核进行提取特征。
a为沿着卷积核的空间(宽高)维度进行乘法运算,b为沿着输入通道维度进行乘法运算,c为沿着输出通道维度进行乘法运算,d为沿着卷积核的维度进行乘法运算,可以定义为
对于给定的n个卷积核,对应的核空间大小为k × k,每个卷积核的输入通道数和输出通道数分别为cin和cout。
四种类型的注意力权重如何得到?同样也是类似SE的思想,首先通过全局平均池(GAP)操作将输入特征x压缩成长度为cin(输入通道)的特征向量。随后,有一个全连接(FC)层和四个头分支。FC层将得到的特征向量映射到具有缩减比率r的低维空间,对于四个头分支,每个头分支具有输出大小为k × k、cin×1、cout×1和n(专家卷积数)×1的FC层,以及分别用于生成归一化注意αsi、αci、αfi和αwi的Softmax或Sigmoid函数。