當前位置:
首頁 > 最新 > AlexNet網路的結構詳解與實現

AlexNet網路的結構詳解與實現

一:AlexNet網路結構

在2012年ImageNet圖像分類任務競賽中AlexNet一鳴驚人,對128萬張1000個分類的預測結果大大超過其他演算法模型準確率,打敗其它非DNN網路一鳴驚人。AlexNet包括5個卷積層與三個全連接層,與今天動則十幾層、幾十層甚至成百上千層相比,簡直是太簡單、太容易理解啦。AlexNet網路一共有八層。前面5層是卷積層,後面3層是全連接層,整個網路結構顯示如下:

各個層結構如下:

輸入圖像大小為224x244x3 的彩色RGB圖像

CONV表示卷積層

LRN 表示局部響應歸一化

POOL表示池化層

FC表示全連接層

ReLU表示激活函數

Dropout表示參與訓練神經元百分比,針對全連接層。

卷積層與池化層步長與填充方式:

採用ReLU激活函數,基於CIFAR-10數據集,訓練收斂速度相比tanh激活函數提升6倍。圖示如下:

作者在2GPU上進行訓練,所以paper中對上述完整的網路結構進行了差分,分別在2個GTX580 GPU上運行,基於ILSVRC-2000與ILSVRC-2012數據集進行了測試。很多文章中不加說明的將作者Paper中網路結構貼到文章中以後看文章了解AlexNet的讀者都一頭霧水,因為文章內容描述跟網路結構根本對不上,因此誤導了不少人。


基於tensorflow,很容易實現一個AlexNet網路,本人把它定義成一個單獨的Python類,方便大家創建使用它,完整的AlexNet網路代碼實現如下

運行之後結構顯示:

卷積層輸出與論文上完全一致。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 OpenCV學堂 的精彩文章:

TensorFlow中常量與變數的基本操作演示

TAG:OpenCV學堂 |