2017年7月3日 星期一

深度學習(5)--使用Tensorflow實現類AlexNet手寫數字辨識


 這一節介紹另一手寫數字辨識的範例,這次使用Tensorflow來實現類似Alexnet的架構。跟上一個範例一樣使用MNIST數據集來做訓練與測試。

    上一個範例請參閱:
深度學習(4)--使用Tensorflow實現類Lenet5手寫數字辨識


首先還是先來回顧Alexnet的經典架構,如下<圖一>
    2012年,Hinton的學生Alex Krizhevsky提出了深度卷積神經網絡模型AlexNet,它可以算是LeNet一種更深更廣的版本。AlexNet包含了幾個較新的技術點,也首次在CNN中成功應用了
ReLU,Dropout,LRN等Trick。同時AlexNet也使用了GPU進行了運算加速。
    AlexNet包含了6億三千萬個連接,6000萬個參數和65萬個神經元,擁有五個卷積層,其中3個卷積層後面連接最大池化層,最後還有3個全連接層。AlexNet以顯著的優勢贏得了競爭激烈的ILSVRC 2012比賽,Top-5的錯誤率降低至16.4%,比第二名的成績26.2%錯誤率有了巨大的提升。

<圖一>Alexnet網絡架構