卷積網絡
卷積網絡用三種結構來確保移位、尺度和旋轉不變:局部感知野、權值共享和時間或空間降采樣。典型的leNet-5如下圖所示:
C1中每個特征圖的每個單元和輸入的25個點相連,這個5*5的區域被稱為感知野。特征圖的每個單元共享25個權值和一個偏置。其他特征圖使用不同的權值(卷積枋),因
此可以得到不同類型的局部特征。卷積層的一個重要思想是,如果圖像產生了位移,特征圖輸出將會產生相同數量的位移。這也是卷積網絡位移和形變不變的原理。
特征圖檢測完畢后,它們的確切位置就不那么重要了,重要的是特征之間的相對位置。特征位置太准確不僅無利於模式識別,還會有害處,因為對不同的字符來說它們的位置是
不同的(所以特征之間的相對位置才是最重要的)。降低位置准確性可以通過下采樣來降低分辨率來實現,同是也降低了輸出對位移和形變的敏感性。每個單元計算四個輸入的平均值(就是采樣層),
將下采樣的值乘一個訓練系數加一個偏置(下采樣層連接到sigmod的系數同要需要訓練),然后將結果傳給激活函數。訓練系數和偏置控制了sigmod函數的非線性。如果這個系數很小的話,則每個單元類似於線性模型,下采樣層所起的功能僅僅就是模糊輸入;如果系數很大,則下采樣操作可視為noisy OR或者 noisy AND(取決於偏置的大小)(存疑?)。
leNet-5
leNet-5有七層(不含輸入),其中C1有156((5*5+1)*6)個可訓練參數,122304(28*28*156)個連接。C2層的一個單元為C1中的2*2所得,輸入到激活函數時它們共用一個
系數加一個偏置,所需的訓練參數為(1+1)*6=12個,連接參數為(4+1)*6*14*14=5880個(我的理解是只在leNet-5中2*2的感知野值相同)。
C3層有16個特征圖,由表格可以看出,每個特征圖對S2中的特征圖並非是全連接的。共有(25*3+1)*6+(25*4)*9+(25*6+1)=1516個訓練參數,連接個數為
1516*10*10=151600個。S4同樣為下采樣層,有16*(1+1)=32個訓練參數,有(2*2+1)*25*16=2000個連接。
C5有120個特征圖,同樣用5*5的卷積核,與S4層全連接,所以C5的特征是1*1的。之所以C5為卷積層而不是全連接層,是因為當le-Net5的輸入增大時,特征圖的維度也會大於
1*1。
F6全連接層,有84個單元,與C5全連接,共有(120+1)*84=10164個訓練參數。同經經典的神經網絡一樣,F6乘權重加偏置然后送入到激活函數中。
下面是輸出層(好吧,看的不是很明白),參考:http://blog.csdn.net/zouxy09/article/details/8781543