GCN论⽂笔记
粉色西装Large Kernel Matters——Improve Semantic Segmentation by Global Convolution Network
⼀. 语义分割中的两个问题
1. classification
需要feature map中像素和classifier之间密集连接---得到全局信息,便于分类.
同时classification需要具有transformation不变性(平移旋转变形等,类别保持不变)。
所以需要⼤的感受野。
2. localizatiion
银耳凉菜需要对transformation敏感,transformation后应该能够准确的locate every pixel for each mantic category。所以要保持feature map的size,但是感受野会变⼩不利于classification。
分类和分割的⽹络结构对⽐:
所以分类⽹络通常采⽤"圆锥形"⽹络结构(如VGG\ResNet等),在⽹络的最后通过全连接层或者全局池化层来使classifier 密集链接整个feature map.
⽽分割⽹络通常采⽤"桶形"结构(如FCN\Deeplab\Deconv-net)
好看的宫斗小说总之, 分类要求增⼤感受野来获取context信息----对feature map进⾏pooling
但是pooling操作会降低feature map的分辨率,对于需要保持score map分辨率的localization不利
所以,这两个问题natural contradictory。
⼆. 语义分割的相关⼯作
⼤致有三种思路:
1. Context Embedding
(1) ParNet增加global pooling branch来提取出context information来帮助分类。
(2) Dilated-Net在score map之后增加⼀些layers来提取多尺度的context
(3) DeeplabV2⽤ASPP, 在feature map上使⽤不同rate的空洞卷积, 提取到不同scale的context(为了解决不同scale object问题) 2. Resolution Enlarging
(1) FCN使⽤反卷积恢复分辨率()
(2) DeconvNet和SegNet引⼊unpooling操作和glass-like network来学习上采样过程
(3)LRR提出对feature map进⾏上采样⽐对score map要好
(4)Deeplab和Dilated-Net提出了使⽤空洞卷积从⽽得到较⼤分辨率的scoremap(deeplab移除了后两个pooling层)
3. Boundary Alignment
使⽤CRF作为后处理, 提⾼物体边界的分割精度, 后续⼜提出⼀些CRF的改进版
本⽂的思想: 把语义分割看成是在large feature map上的分类任务.长舌头的女人
三. GCN的创新点
1. GCN平衡了classification和localization这两个问题:
(1)For classification, 增⼤感受野:
使⽤⼤的卷积核,使feature map与classifier之间密集连接(⼤的感受野)。
(2)For localization 保持较⼤分辨率的Score map:
不使⽤全连接层和全局池化层,转⽽使⽤⼤卷积核来扩⼤感受野。并采⽤FCN的framework。
2. 提出BR(Boundary Refinement)
BR block是⼀个残差模块,⽤来提⾼物体边界的分割准确度。公式是
其中,表⽰经过BR调整之后的score map, S表⽰原始的Score map, R()表⽰residual branch
GCN的结构
GCN的思想就是⽤⼤的卷积核来达到来扩⼤感受野(classifier与feature map之间的密集连接)帮助分类的⽬的
友谊天长地久歌词
GCN的思想
对于downsampling过程中generate的不同分辨率的feature map都经过GCN
五重罗生门GCN通过⼤卷积核扩⼤当前feature map的感受野, 也为分类提供更多scale的context
GCN采⽤卷积分解的思想, ⽤k*1和1*k堆叠的⽅法达到k*k卷积核相同的感受野(可能是为了对称性,两种堆叠顺序并联)
四. 实验部分
乳腺小叶增生症状
1. GCN的对⽐实验
(1) 参数量带来的提升?
GCN与常规卷积的对⽐(保持k相同)
结果是:
GCN参数量更少, 但是精度更⾼
当k<=5的时候常规卷积随着k增⼤精度变⾼,但是k>7之后反倒降低了,猜测是因为⼤卷积核参数量过⼤导致了过拟合
(2)⼩卷积核的堆叠和 GCN中的卷积核分解的对⽐
⼩卷积核的堆叠: 如VGG中⽤3个3*3近似⼀个7*7夏枯草胶囊的功效与作用
⼩卷积核堆叠⽐GCN的参数量⼤, 精度不如GCN(可能是多个⼩卷积核堆叠,并不能达到跟⼤卷积核同样效果)
另外GCN中1*k和k*1之间不使⽤⾮线性激活(作者说为了保证两层之间的连续性?)
(3)GCN是如何提升分割性能的?
GCN主要是因为引⼊了⼤卷积核,扩⼤了感受野(密集连接),保证了transformation 的不变性,从⽽对分类精度提升有帮助.
所以GCN主要是对object内部的像素点的分类精度有提升(因为这部分像素更像是单纯的分类问题,需要transform不变性,属于classification问题),⽽对于物体边界的分割精度提升没什么帮助(因为这⼀部分属于localization问题,需要对transformation敏感)
2. GCN替换ResNet的两层
作者还提出⼀个ResNet-GCN⽹络,实验中将ResNet中的两层替换成DCN,实验证明GCN对于分类没什么影响, 更适⽤于分割问题.
(可能是因为分类问题已经有全局池化或者全连接来 实现密集链接,GCN没什么⽤处, ⽽GCN主要是⽤来在⼤分辨率的feature map上进⾏分类,所以扩⼤感受野⼗分重要)
五. 总结
GCN通过使⽤⼤卷积核来平衡classification和localization之间的⽭盾. GCN中的⼤卷积核思想⽤较少的参数量增⼤了感受野. GCN提升了物体内部区域像素的分类精度, BR增加了物体边界像素的分类精度.