天天看点

对比:空洞卷积与转置卷积(吉米王)

又是在地铁上,人到中年很无奈,每天貌似只有在地铁上的时间是属于我的…,有没有同道中人…

今天简单聊聊空洞卷积和转置卷积的区别:

  • 空洞卷积,也有人译作扩张卷积,其实是一样的。

与普通的卷积相比,增加了一个扩张率(dilation rate)参数,主要用来表示扩张的大小。

扩张卷积与普通卷积的相同点在于,卷积核的大小是一样的,在神经网络中参数数量不变,区别在于扩张卷积具有更大的感受野。

  • 什么是感受野?

其实本质上可以理解为:卷积核的边界宽度;

感受野公式:

对比:空洞卷积与转置卷积(吉米王)

dilation : 扩张率

kernel : 卷积核大小

F:扩张卷积的感受野

百科找了张图:(扩张卷积其实本质上扩张的还是卷积核,而不是图像)

对比:空洞卷积与转置卷积(吉米王)

解释说明:a图中红点所在的绿色区域表示的是初始卷积核的位置和大小;

b图中为扩张率为2的时候,卷积核的变化情况,红点位置标示原卷积核数据,其余绿色区域用0填充;

c图中,为扩张率为4时,也就是4倍的扩张率,卷积核的变化情况,红点位置标示原卷积核数据,其余绿色区域用0填充;

  • 转置卷积,在我们招聘讲师面试的过程中,也听别人叫过反卷积
  • 反卷积是一种特殊的正向卷积
  • 通俗的讲,就是在原图像上输入补0+卷积。先按照一定的比例通过补0来扩大输入图像的尺寸,再进行正向卷积即可。

关键点:转置卷积,改变的是原图像大大小,而空洞卷积改变的是卷积核的感受野的大小(卷积核);这块还需要大家好好分析一下;

卷积输出公式:(比较常见的一个公式)

对比:空洞卷积与转置卷积(吉米王)

备注:还有一种特殊情况记不太清了,等有时间我查下资料补上。

参数说明:

n:特征图的宽或者高

k:卷积核的尺寸

p:padding的数值,一般指单侧填充几个单元

stride:顾名思义卷积核的步长

到百科上找了个图片:(相当于对原图像进行放大,空白处用0填充,实际上我们可以通过一定的参数设置,利用转置卷积实现上采样的等同效果)

对比:空洞卷积与转置卷积(吉米王)

经典应用场景:

  • 转置卷积用来增大特征图的分辨率的。
  • 或者叫上采样,意思是一样的,印象中以前在某些经典的算法底层就在使用
# 反卷积上采样
x = Conv2DTranspose(filters, kernel_size=(2,2), strides=(2,2),padding="same")(input_tensor)
           
  • 常见的上采样的API还有UpSampling2D等
    对比:空洞卷积与转置卷积(吉米王)
就这样吧,下地铁了…,本来还想写点什么,没时间了,又是半篇文章。生活纵有千万个不如意,我亦勇往直前…

继续阅读