卷积方式汇总 convolution summary
一、为什么要用小卷积核代替大卷积核
自从VGG网络开始,叠加的小卷积核已经成为流行,因为能够使用更小的参数量实现特征提取。
- 大卷积核
优点:感受域大
举例:AlexNet、LeNet等网络都使用了较大的卷积核,例如5x5,11x11
缺点:参数量大,计算量大(硬件设备不成熟的情况下需要进行分组计算) - 小卷积核
优点:参数量少;计算量少;整合三个非线性激活层代理单一非线性激活层,增加模型的判别能力
举例:VGG之后
缺点:感受域不足;深度堆叠卷积容易出现不可控的因素(梯度消失问题,堆叠多层卷积后效果反而变差)
参数量的比较
- 相同的channel输出,大卷积核会比小卷积核的参数量大一些(1.7/1.9/2倍左右?)
- 不同的输出尺寸,两次堆叠的小卷积核的参数量反而比使用单一大卷积核参数量大(8倍?)
- 所以在一些网络中第一层一般使用较大的卷积7x7来降低网络整体参数量
总结:
通过输入的时候使用大卷积核,后续堆叠小卷积核的性价比比较高,被众多模型采用。但是在实际项目中需要通过实际的使用需求调整,最终目的是提升miou。
二、能否让固定大小的卷积核看到更大范围的区域?(空洞卷积)
标准的3x3卷积只能看到对应区域3x3的大小,但是为了能让卷积核看到更大的范围,空洞卷积dilated conv使其成为可能。pooling下采样操作导致的信息丢失是不可逆的,这不利于像素级分割任务,使用空洞卷积替代pooling的作用(成倍的增加感受野)更加适合语义分割。
三、卷积核一定是正方形吗?(非对称卷积)
不一定是正方形,可以将3x3的卷积拆分未1x3和3x1的卷积,在不改变感受野大小的情况下可减少计算量
- 标准卷积计算量:9x9=81次乘法
- 非对称卷积计算量:3x15 + 3x9 =72次乘法
- 还是从计算量的方向入手,提升网络效率
四、卷积只能在同一组进行吗?(依旧是减少参数量)
五、
六、
七、
- 不同颜色代表不同重要程度
- 对每个通道进行加权,将有用的特征通道的权重提高,提升网络提取特征的能力
八、可变形卷积(在检测中运用的较多)
引言
- 语义分割可以看成是一个逐像素分类的任务,包含分类和定位两个挑战。 一个好的语义分割模型应该能够同时处理好上述两个任务
- 语义分割的两个方面(分类和定位)天然对立。对于分类任务,模型必须是具 有不变性的,以适应目标的各种形式,如平移和倒转;而对于定位任务, 模型应该是对变换敏感的,即能够精确定位语义类别的每个像素
- 从以上两个方面出发,可以引申出设计网络的两个原则:第一,从定位的 角度出发,应该采用全卷积的结构,去掉全连接层或全局池化层;第二, 从分类的角度出发,应该采用较大的卷积核,使得像素与特征图的结合更 加紧密,增强处理不同变换的能力,而且,一旦卷积核过小,造成感受野 过小,覆盖不了较大的目标,不利于分类
算法架构
【对应原文第三部分3.approach】
- 基础网络使用RestNet作为特征提取路径,使用FCN作为语义分割框架
- 使用RestNet中不同的Sateg的feature map,因此是多尺度架构
- GCN 模块则用于产生低分辨率的score map,并上采样与更高分辨率的score map想家产生新的score map
- 经过最后的上采样,输出预测结果
总结:
GCN研究成果和意义
- 在分类和定位之间找到了平衡点
- 缓解了大卷积核参数多的问题
- 分别在pascal voc 2012和cityscape数据集中取得了82.2%和76.9%的miou
GCN的特点
- 使用大卷积核,达到天然的密集连接的效果,兼顾【分类/定位】两者的效果(这两者在CNN中是个矛盾体)
实验分析
- 在实验中,需要以控制变量的方式实现对实验结果的论证,不能存在不严谨性遭别人批斗。
- 中心区域的像素类似于分类任务,大卷积核表现比较好/边界区域主要受模型定位能力影像,用BR层输出