扩张卷积(dilated convolution)

最早出现在DeeplLab系列中,作用:可以在不改变特征图尺寸的同时增大感受野,摈弃了pool的做法(丢失信息);

我们设: kernel size = k, dilation rate = d, input size = W1, output size = W2, stride=s, padding=p;

Dilation convolution(扩张卷积)的原理其实也比较简单,就是在kernel各个像素点之间加入0值像素点,变向的增大核的尺寸从而增大感受野。

结构如下:

如上图所示,(a)是我们常见的卷积核,可以看成d=1的扩张卷积,核的尺寸为3,感受野为3;(b)是d=2的扩张卷积,核的尺寸上升为5=2*(3-1)+1,如果与(a)叠加使用的话感受野则扩大为7(见绿色区域);(c)是d=4的扩张卷积,核的尺寸上升为9=4*(k-1)+1,若与(a)(b)叠加则感受野区域扩大为15;

 (1)经过dilation rate放大后,fliter大小上升为:d*(k-1)+1;

(2)扩张卷积的输入和输出特征图的尺寸关系如下:

        {\color{Purple}W_{2} = \frac{ W_{1} + 2p -d(k-1)-1}{s} + 1 }

ps:在s=1,k=3时,令d = p,则输出特征图尺寸不变

扩张卷积可用于图像分割、文本分析、语音识别等领域;

 存在的问题棋盘效应(特征图不是处处可导!)

 

 解决方法:使用锯齿状的卷积核

 

posted @ 2019-12-26 11:55  outthinker  阅读(6270)  评论(0编辑  收藏  举报