1. 程式人生 > >AlexNet層級分析(涉及:卷積核操作下下層網路特徵圖size計算;對通道和卷積核尺寸及通道前層feature map和卷積核的運算關係的解釋)

AlexNet層級分析(涉及:卷積核操作下下層網路特徵圖size計算;對通道和卷積核尺寸及通道前層feature map和卷積核的運算關係的解釋)

先盜一圖,摘自ImageNet Classification with Deep Convolutional Neural Networks(Hinton)


注:看到這個結構,可以得到以下結論(以2、3層為例)

1、第三層有128*2=256個通道,第二層有48*2=96個通道。每個通道內包含一張前層經卷積核卷積的的feature map,共256張和96張。而由第二層到第三層,第三層通道數(或feature map數)與卷積核相同,卷積核有256個。

2、由第二層的5*5立方體知,其向下對映的下層卷積核是 5*5*channel的立體卷積核,每一個第三層的feature map,都是通過對應該通道的卷積核與第二層相應通道進行卷積得到的。


由作者的原文可知,AlexNet模型在訓練時使用了兩個GPU,所以就出現了一些引數為兩個GPU共享,一些引數是GPU獨享。在建立此訓練模型前,先分析各層的引數關係。

AlexNet模型共有5個卷積層,3個全連線層,前兩個卷積層和第五個卷積層有pool池化層,其他兩個卷積層沒有池化。

第一卷積層:

由AlexNet架構圖,第一卷積層的卷積核有96個(兩個GPU各用48個),卷積核的尺度為11*11*3(3為RGB通道數),(注意:卷積核個數和卷積核尺度兩個概念,卷積核尺度數描述卷積核的大小)步長stride為4。生成的卷積特徵圖單元數為55*55*48*2,每個特徵圖尺度為55*55,由此可知輸入影象尺度為227*227(55(單向尺度)*4(步長) + (11(卷積核尺度)-4(步長)) = 227)。因此輸入影象單元數為227*227*3*1(1為GPU數)

(對通道和卷積核尺寸及通道前層feature map和卷積核的運算關係的解釋:


第一池化層:

輸入單個特徵圖尺度為55*55,池化尺度3*3,步長為2,輸出池化特徵圖尺度為27*27((55(單向尺度)-3(池化尺度))/2(步長)+1 = 27)。特徵圖單元數為27*27*48*2.

第二卷積層:

由AlexNet架構圖,卷積核有256個(兩個GPU各128個,同時各作用於各GPU內的第一池化層的輸出),卷積核尺度5*5*3,步長為1,生成卷積特徵圖單元數為27*27*128*2,每個特徵圖尺度為27*27,由此計算輸入特徵圖尺度為31*31(27(單向尺度)*1(步長)+(5(卷積核尺度)-1(步長))= 31)。因此輸入特徵圖單元數為31*31*96。

第二池化層:

輸入單個特徵圖尺度為27*27,池化尺度3*3,步長為2,輸出池化特徵圖尺度為13*13((27(單向尺度)-3(池化尺度))/2(步長)+ 1 = 13)。特徵圖單元數為13*13*128*2.

第三卷積層:

由AlexNet架構圖,卷積核有384個(兩個GPU各192個,同時需要共享各自GPU第二池化層的輸出),卷積核尺度為3*3*3,步長為1,生成卷積特徵圖單元數為13*13*192*2,每個特徵圖尺度為13*13,由此計算輸入特徵圖尺度為15*15(13(單向尺度)*1(步長)+(3(卷積核尺度)-1(步長))=15)。因此輸入特徵圖單元數為15*15*256。

第四卷積層:

由AlexNet架構圖,卷積核有384個(兩個GPU各192個,同時不共享各自GPU內的第三卷積層輸出),卷積核尺度為3*3*3,步長為1,生成卷積特徵圖單元數為13*13*192*2,每個特徵圖尺度為13*13,由此計算輸入特徵圖尺度為15*15(13(單向尺度)*1(步長)+(3(卷積核尺度)-1(步長))=15)。因此輸入特徵圖單元數為15*15*384。

第五卷積層:

由AlexNet架構圖,卷積核有256個(兩個GPU各128個,同時不共享各自GPU內的第四卷積層輸出),卷積核尺度為3*3*3,步長為1,生成卷積特徵圖單元數為13*13*128*2,每個特徵圖尺度為13*13,由此計算輸入特徵圖尺度為15*15(13(單向尺度)*1(步長)+(3(卷積核尺度)-1(步長))=15)。因此輸入特徵圖單元數為15*15*384。

第五池化層:

輸入單個特徵圖尺度13*13,池化尺度3*3,步長為2,輸出池化特徵圖尺度為6*6((13(單向尺度)-3(池化尺度))/2(步長)+1 = 6)。特徵圖單元數為6*6*256.

第一全連線層:

輸入特徵圖單元數為6*6*256,輸出特徵圖單元數為4096,全連線引數個數為6*6*256*4096.

第二全連線層:

輸入特徵圖單元數4096,輸出特徵圖單元數為4096,全連線引數個數為4096*4096.

第三全連線層:

即輸出層,輸入特徵圖單元數為4096,輸出特徵圖單元數為1000,全連線引數個數為4096*1000.