卷積(多---->1 的映射)
本質:在對輸入做9--->1的映射關系時,保持了輸出相對於input中的位置性關系
對核矩陣做以下變形:卷積核的滑動步驟變成了卷積核矩陣的擴增
卷積的矩陣乘法變成以下形式:核矩陣重排,輸入featuremap變形為向量
反卷積(1---->多 的映射)
deconvlution/transpose-convlution
- 動機
- 想要網絡去學出一種最優的上采樣方法,而不是像基於插值似的手動方法,它有可以學習的參數.
缺點:反卷積會在生成的圖像中造成棋盤效應(checkerboard artifacts),推薦在使用轉置卷積進行上采樣操作之后再過一個普通的卷積來減輕此類問題.
膨脹卷積(空洞卷積)
動機:
上采樣及池化過程中存在致命的問題:
- 內部數據結構丟失,空間層級化信息丟失
- 小物體無法重建
希望:既可以保留內部數據結構又可以避免使用下采樣這樣的方式
定義:在標准卷積的Convolution map的基礎上注入空洞,以此來增加感受野(reception field)。
因此,Dilated Convolution在Standard Convolution的基礎上又多了一個超參數(hyper-parameter)稱之為膨脹率(dilation rate)
問題:
- kernel並不連續,造成信息提取的不連續
- 旨在提取大范圍信息,對小目標有弊。因此如何同時處理大小目標的關系,就成了膨脹卷積設計的關鍵。
具體實現:
膨脹后的卷積核的大小:
(0)所謂的空洞就是填充0
(1)設原始卷積核的大小是3*3
(2)設膨脹率為2,則膨脹后的卷積核的大小為:dilation_rate*(kernel_size - 1)+1
結果就是 2*(3-1)+1=5,膨脹后的卷積核大小是5*5
默認的dilation_rate=1.
改進:HDC--混合膨脹卷積
疊加的膨脹卷積的膨脹率dilated rate不能有大於1的公約數(比如[2, 4, 6]),不然會產生柵格效應
Group convlution
將輸入通道分組,然后分別卷積.分兩組,計算量就減半.