解卷積的維度計算

解卷積(deconvolution)或者反捲積,類似於卷積的逆運算;如果按照嚴格的數學公式來叫,應該叫做“轉置卷積(transpose convolution)”,也有的地方叫它“分數跨度(fractional strided)卷積”。解卷積最直觀的作用是擴大feature map的分辨率,在語義分割任務中被廣泛使用。

解卷積的維度計算公式如下:
w_new = stride*w - 2*pad + (kernel-stride)
從上面的公式可以看到:與卷積相反,pad越大,解卷積的輸出越小。

放大整數倍有兩種設置:
1、pad=0,kernel=stride
2、kernel = 2*stride - stride%2, pad=ceil((kernel-stride-1)/2)或pad=(kernel-stride)/2

第2種情況下:
核爲5,放大3倍,pad=1
核爲4,放大4倍,pad=2
核爲9,放大5倍,pad=2

上面兩種設置各有優缺點,應根據情況進行選擇。第一種設置kernel size更大,導致計算量大,但輸出的feature map會較爲平滑,第二種設置反之。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章