LeNet5網絡結構
INPUT
輸入層,將輸入reshape成32x32
C1-包含6個5x5卷積核的卷積層
輸入圖像尺寸:32x32灰度值圖像
可訓練的參數:(5*5+1)*6=156,1爲每個卷積核的偏置
步長爲1,輸出feature map尺寸:
輸出個數:28*28*6
連接數:156*28*28 = 122304
S2-2x2平均池化
輸入尺寸:28x28
採樣大小:2x2
採樣方式:4個輸入相加,乘以一個可訓練參數,再加上一個可訓練偏置,最後通過sigmoid
輸出尺寸:14x14,
輸出個數:14*14*6
連接數:(2*2+1)*6*14*14
C3-包含16個5x5卷積核的卷積層
輸入尺寸:14x14
輸出尺寸:10x10, (14-5)/1+1=10
輸出個數:16*10*10
如何從6個輸入feature maps生成16個新的feature maps?
先將新得到的16個feature maps按照生成的方式分爲4組,
1)第一組包含6個feature maps,由6個卷積核作用到上層3個相鄰的14x14feature maps得到,相當於3通道,參數數量 6*(3*5*5+1);
2)第二組包含6個feature maps,由6個卷積核作用到上層4個相鄰的14x14feature maps得到,相當於4通道,參數數量 6*(4*5*5+1);
3)第三組包含3個feature maps,由3個卷積核作用到上層3個以不相鄰的14x14feature maps得到,相當於3通道,參數數量 3*(4*5*5+1);
4)第四組包含1個feature maps,由1個卷積核作用到上層6個14x14feature maps得到,相當於6通道,參數數量 1*(6*5*5+1);
上述這麼做的原因:1)減少參數,2)有利於提取多種組合特徵。
訓練參數:6*(3*5*5+1)+6*(4*5*5+1)+3*(4*5*5+1)+1*(6*5*5+1)=1516
連接數:10*10*1516=151600
S4-2x2平均池化層
輸入尺寸:10x10
輸入featureMap個數:16
採樣大小:2x2
採樣方式:4個輸入相加,乘以一個可訓練參數,再加上一個可訓練偏置,最後通過sigmoid。
輸出尺寸:5x5
輸出個數:5516=400
連接數:16*(2*2+1)55=2000
C5-包含120個5x5卷積核卷積層
輸入尺寸:5x5
輸入featureMap個數:16
輸出尺寸:1x1, (5-5)/1+1=1
輸出個數:1*1*120
連接數:120*(16*5*5+1)=48120,輸出的120個單元,每個與16個5x5的卷積核和一個偏置相連
F6-全連接層
輸入:120x1
神經元個數:84
計算方式:計算輸入向量和權重向量之間的點積,再加上一個偏置,結果通過雙曲正切函數激活輸出。
參數量:84*(120+1)=10164
output層
徑向基函數單元組成的高斯連接層,輸出10個類別
輸入:84x1
計算方式:,其中爲全連接層F6的輸出,爲最終輸出,爲其間的權值。輸出爲所有輸入與權值的差的平方和。
參考:
Tensorflow 實戰
https://www.cnblogs.com/hls91/p/10882403.html
https://blog.csdn.net/weixin_42398658/article/details/84392845