摘要
cvpr2021
作者从特征矩阵秩的角度来改进,提出了关于卷积通道设置的一些限制要求。
1.知识储备
扩张层: 如果某个层的输出通道数(秩)大于输入通道数(秩)
收缩层: 如果某个层的输出通道数小于输入通道数
秩: 秩是图像经过矩阵变换之后的空间维度
秩是列空间的维度。维度是完全正交(独立)特征种类的个数。秩越高的矩阵内容越丰富,冗余信息越少。秩越低的矩阵废数据越多。
2.当前网络的问题
2.1扩张层中的表达瓶颈问题: 假设输入维度
d
l
−
1
d^{l-1}
dl−1小于输出维度
d
l
d^{l}
dl,编码后的特征由于秩不足而不能完全表征所有类别,那么编码特征将无法充分表示完整类别信息。这就是Softmax层的表达瓶颈问题。为缓解Softmax的瓶颈问题,已有方法采用引入非线性函数消除该表达瓶颈问题进而提升模型性能。
2.2收缩层中的中的表达瓶颈问题: 现有网络往往采用按阶段设计通道数的方式、并在跨阶段时进行分辨率下采样、通道数倍增,并在最终分类层之前将其通道数逐渐扩展到1000+。作者认为这种网络架构设计方案同样存在表达瓶颈问题。
作者首先拿resnet来比较:ResNet系列的瓶颈块将输入通道尺寸加倍(即64-128-256-512),以使最终尺寸(2048)最终超过类数。
BottleNeck 一般用于深度较高的网络,1X1fliter分别用于降维度,主要目的是为了减少参数的数量,从而减少计算量,且在降维之后可以更加有效、直观地进行数据的训练和特征提取。
2.3表征瓶颈发生在哪些层
本文作者认为:表征瓶颈将发生在这些扩展层和倒数第2层。
3.如何解决
3.1理论
作者为了进行Layer-level秩分析,作者生成一组由单一层组成的随机网络:
从图1可以看出:通道的急剧上升会损害秩(cd图);
非线性性操作会提高秩(elu和swish这种非线性更强的激活效果更好),非线性性是卷积操作的关键(看linear那条线)
作者认为应该遵从如下设计原则:通道数采用渐进递增方式:多几个expand层,输入层通道数适量增加;同时引入Swish-1激活函数:
4.网络结构
4.1对中间卷积层修改
作者首先考虑了MobileNetV1。依次对接近倒数第2层的卷积做同样的修改。通过:扩大卷积层的输入通道大小;替换ReLU6s来细化每一层。
4.2对倒数第二层修改
很多网络架构在倒数第2层有一个输出通道尺寸较大的卷积层,这是为了防止最终分类器的表征瓶颈,但是倒数第2层仍然受到这个问题的困扰。于是作者扩大了倒数第2层的输入通道大小,并替换了ReLU6。
5.实验结果
为了进行公平的比较,这里的通道配置设计大致能满足Baseline的整体参数和flops,如果通过适当的参数搜索方法,如NAS方法,还可以找到更好的网络结构。
识别:
检测:
总结:
作者从秩的角度出发,改进了网络。作者提出的一个设计原则:
秩范围可以通过增加的输入的秩;或者用适当的用具有更大秩的函数,如使用swish或ELU激活函数