我們都知道,卷積核的作用在于特征的抽取,越是大的卷積核尺寸就意味著更大的感受野,當然隨之而來的是更多的參數。早在1998年,LeCun大神發布的LetNet-5模型中就會出,圖像空域內具有局部相關性,卷積的過程是對局部相關性的一種抽取。但是在學習卷積神經網絡的過程中,我們常常會看到一股清流般的存在—1*1的卷積!
比如在殘差網絡的直連里:
殘差網絡的Bootleneck殘差模塊里:
在GoogleNet的Inception模塊里:
都有1*1卷積核的出現,那么它到底是做什么的?我們應該如何理解1*1卷積的原理?
當1*1卷積出現時,在大多數情況下它作用是升/降特征的維度,這里的維度指的是通道數(厚度),而不改變圖片的寬和高。
舉個例子,比如某次卷積之后的結果是W*H*6的特征,現在需要用1*1的卷積核將其降維成W*H*5,即6個通道變成5個通道:如下圖就是一個W*H*6的特征,而1*1的卷積核在圖上標出,卷積核自身的厚度也是6(圖畫的好難看!!)
通過一次卷積操作,W*H*6將變為W*H*1,這樣的話,使用5個1*1的卷積核,顯然可以卷積出5個W*H*1,再做通道的串接操作,就實現了W*H*5。在這里先計算一下參數數量,一遍后面說明,5個卷積核,每個卷積核的尺寸是1*1*6,也就是一種有30個參數。
我們還可以用另一種角度去理解1*1卷積,可以把它看成是一種全連接,如下圖:
第一層有6個神經元,分別是a1—a6,通過全連接之后變成5個,分別是b1—b5,第一層的六個神經元要和后面五個實現全連接,本圖中只畫了a1—a6連接到b1的示意,可以看到,在全連接層b1其實是前面6個神經元的加權和,權對應的就是w1—w6,到這里就很清晰了:第一層的6個神經元其實就相當于輸入特征里面那個通道數:6,而第二層的5個神經元相當于1*1卷積之后的新的特征通道數:5。w1—w6是一個卷積核的權系數,如何要計算b2—b5,顯然還需要4個同樣尺寸的核。
最后一個問題,圖像的一層相比于神經元還是有區別的,這在于是一個2D矩陣還是一個數字,但是即便是一個2D矩陣的話也還是只需要一個參數(1*1的核),這就是因為參數的權值共享。
-
神經網絡
+關注
關注
42文章
4797瀏覽量
102362 -
卷積
+關注
關注
0文章
95瀏覽量
18669
原文標題:如何理解卷積神經網絡中的1*1卷積?
文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
一文解析改進SSD的輕量化視頻煙火檢測算法
2D卷積的行緩沖區的延遲是多少?
計算機程序設計藝術 (含第1卷,第2卷,第3卷 基本算法)

卷積神經網絡目標檢測中的YOLO算法詳解

評論