-
卷積神經網絡及卷積層或池化層大小的設置
(1)如何設計卷積神經網絡架構
下面的正則化公式總結了一些經典的用於圖片分類問題的卷積神經網絡架構:
輸入層→(卷積層+→池化層?)+→全連接層+
“+”表示一層或多層,“?”表示有或者沒有
除了LeNet-5模型,2012年ImageNet ILSVRC圖像分類挑戰的第一名AlexNet模型、2013年ILSVRC第一名ZF Net模型已 經 2014年第二名VGGNet模型的架構都滿足上面的正則表達式。
(2)如何設置卷積層或池化層配置
· 過濾器的尺寸:1或3或5,有些網絡中有過7甚至11
· 過濾器的深度:逐層遞增。每經過一次池化層之后,卷積層深度*2
· 卷積層的步長:一般為1,有些也會使用2甚至3
· 池化層:最多的是max_pooling,過濾器邊長一般為2或者3,步長一般為2或3
-
卷積和池化后圖片大小及個數的計算
(1)卷積后圖片輸出大小幾個數
W:圖像寬,H:圖像高,D:圖像深度(通道數)
F:卷積核寬高,N:卷積核(過濾器)個數S:步長,P:用零填充個數
卷積后輸出圖像大小:
Width=(W-F+2P)/S+1
Height=(H-F+2P)/S+1
卷積后輸出圖像深度:
D=N
輸出圖像大小: (width,height,N)
weight個數: F*F*D*N
bias個數: N
總結:卷積輸出大小=[(輸入大小-卷積核(過濾器)大小+2*P)/步長]+1
(2)池化層
通用的卷積時padding 的選擇:
1. 如卷積核寬高為3時 padding 選擇1
2. 如卷積核寬高為5時 padding 選擇2
3. 如卷積核寬高為7時 padding 選擇3
池化后圖片輸出大小及個數
W:圖像寬,H:圖像高,D:圖像深度(通道數)
F:卷積核寬高,S:步長
池化后輸出圖像大小:
W=(W-F)/S+1
H=(H-F)/S+1
池化后輸出圖像深度:
D=N
總結:池化輸出大小=[(輸入大小-卷積核(過濾器)大小)/步長]+1