Lenet 神经网络-实现篇(1)
Lenet 神經(jīng)網(wǎng)絡結構為:
①輸入為 32*32*1 的圖片大小,為單通道的輸入;
②進行卷積,卷積核大小為 5*5*1,個數(shù)為 6,步長為 1,非全零填充模式;
③將卷積結果通過非線性激活函數(shù);
④進行池化,池化大小為 2*2,步長為 1,全零填充模式;
⑤進行卷積,卷積核大小為 5*5*6,個數(shù)為 16,步長為 1,非全零填充模式;
⑥將卷積結果通過非線性激活函數(shù);
⑦進行池化,池化大小為 2*2,步長為 1,全零填充模式;
⑧全連接層進行 10 分類。
Lenet 神經(jīng)網(wǎng)絡的結構圖及特征提取過程如下所示:
Lenet 神經(jīng)網(wǎng)絡的輸入是 32*32*1,經(jīng)過 5*5*1 的卷積核,卷積核個數(shù)為 6 個,采用非全零填充方式,步長為 1,根據(jù)非全零填充計算公式:輸出尺寸=(輸入尺寸-卷積核尺寸+1)/步長=(32-5+1)/1=28.
故經(jīng)過卷積后輸出為 28*28*6。
經(jīng)過第一層池化層,池化大小為 2*2,全零填充,步長為 2,由全零填充計算公式:輸出尺寸=輸入尺寸/步長=28/2=14,池化層不改變深度,深度仍為 6。
用同樣計算方法,得到第二層池化后的輸出為 5*5*16。
將第二池化層后的輸出拉直送入全連接層。
根據(jù) Lenet 神經(jīng)網(wǎng)絡的結構可得,Lenet 神經(jīng)網(wǎng)絡具有如下特點:
①卷積(Conv)、池化(ave-pooling)、非線性激活函數(shù)(sigmoid)相互交替;
②層與層之間稀疏連接,減少計算復雜度。
對 Lenet 神經(jīng)網(wǎng)絡進行微調,使其適應 Mnist 數(shù)據(jù)集:
由于 Mnist 數(shù)據(jù)集中圖片大小為 28*28*1 的灰度圖片,而 Lenet 神經(jīng)網(wǎng)絡的輸入為 32*32*1,故需要對 Lenet 神經(jīng)網(wǎng)絡進行微調。(微調是如何進行調整?整個網(wǎng)絡的對接是如何進行?后面博客繼續(xù)學習)
①輸入為 28*28*1 的圖片大小,為單通道的輸入;
②進行卷積,卷積核大小為 5*5*1,個數(shù)為 32,步長為 1,全零填充模式;
③將卷積結果通過非線性激活函數(shù);
④進行池化,池化大小為 2*2,步長為 2,全零填充模式;
⑤進行卷積,卷積核大小為 5*5*32,個數(shù)為 64,步長為 1,全零填充模式;
⑥將卷積結果通過非線性激活函數(shù);
⑦進行池化,池化大小為 2*2,步長為 2,全零填充模式;
⑧全連接層,進行 10 分類。
Lenet 進行微調后的結構如下所示:
前面第五、六講中,輸入mnist數(shù)據(jù)集是28*28像素,輸出是長度為10的一維數(shù)組;
現(xiàn)在運用Lennet神經(jīng)網(wǎng)絡
圖片大小即每張圖片分辨率為 28*28,故 IMAGE_SIZE 取值為 28;
Mnist 數(shù)據(jù)集為灰度圖,故輸入圖片通道數(shù) NUM_CHANNELS 取值為 1;
第一層卷積核大小為 5,卷積核個數(shù)為 32,故 CONV1_SIZE 取值為 5,CONV1_KERNEL_NUM 取值為 32;
第二層卷積核大小為 5,卷積核個數(shù)為 64,故 CONV2_SIZE 取值為 5, CONV2_KERNEL_NUM為 64;
全連接層第一層為 512 個神經(jīng)元,故FC_SIZE 取值為 512,
全連接層第二層為 10 個神經(jīng)元,OUTPUT_NODE 取值為 10,實現(xiàn) 10 分類輸出。
注:本文章通過觀看北京大學曹健老師的Tensorflow視頻,筆記總結而來的。
總結
以上是生活随笔為你收集整理的Lenet 神经网络-实现篇(1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谁更了解你,是女朋友吗。不,是这些推荐算
- 下一篇: 飞凡汽车:中大型纯电轿车飞凡 F7 定档