日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TensorFlow学习笔记(二十八)CNN的9大模型之AlexNet

發布時間:2024/1/23 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TensorFlow学习笔记(二十八)CNN的9大模型之AlexNet 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文出自NIPS2012,作者是大神Alex Krizhevsky,屬于多倫多大學Hinton組。

概述

本文提出的神經網絡結構被成為AlexNet,在我最近的研究學習中發現,這一結構及其變種在很多任務中都有使用,回過頭來重溫一下這篇論文仍然是有必要的。歸根到底,本文網絡結構相對較淺,而且能夠提取到比較豐富的特征,而很多任務的數據集無法達到ImageNet的規模,使用AlexNet是比較好的特征提取方法。本文相對較“老”,其中的很多技術早已耳熟能詳,有興趣的可以去閱讀相關資料。

結構

AlexNet有5個卷積層和3個全連接層,作者發現移除任意一層都會降低最終的效果。網絡結構如圖:

這個網絡前面5層是卷積層,后面三層是全連接層,最終softmax輸出是1000類。具體分析第一層:

輸入圖片為224*224*3,卷積核大小為11*11*3,步長為4,輸出為55*55*96。

ReLU

AlexNet使用ReLU代替了傳統的激活函數,而現在ReLU已經廣泛地使用在了各種CNN結構中。關于ReLU這里已經沒必要講了,在2012年算是新穎的技術,到今天已經是遍地開花了。

Multiple GPU

AlexNet使用兩塊GTX580顯卡進行訓練,兩塊顯卡只需要在特定的層進行通信,當今的深度學習已經基本都是在顯卡上完成的。兩塊GPU各訓練網絡的一部分,在第二個卷積層和全連接層才需要互相通信。

在卷積層之間還需要加上Local Response Normalization和Overlap Pooling。

Local Response Normalization

ReLU本來是不需要對輸入進行標準化,但本文發現進行局部標準化能提高性能。

bix,y=aix,y/(k+αj=max(0,i?n/2)min(N?1,i+n/2)(ajx,y)2)

其中aix,y代表在feature map中第i個卷積核(x,y)坐標處經過了ReLU激活函數的輸出,這個式子的含義就是一個值和它前后的n個值做標準化。k,n,α,β都是超參數,本文由驗證集確定為k=2,n=5,α=10?4,β=0.75。求和發生在feature map中,相同位置(x,y)的n個相鄰kernel map上。其中N是卷積核的總數,符號max和min是為了表示邊緣幾層的標準化方式。

Overlap Pooling

一般的Pooling是不重疊的,而AlexNet使用的Pooling是可重疊的,也就是說,在池化的時候,每次移動的步長小于池化的邊長。AlexNet池化的大小為3*3的正方形,每次池化移動步長為2,這樣就會出現重疊。

總體而言,AlexNet網絡的結構如下:

減小過擬合

AlexNet有6000萬個參數,需要考慮過擬合的問題。

數據增強

對圖片進行一些變換可以增大數據集。第一種方法是:原始圖片大小為256*256,在圖片上隨機選取224*224的小塊進行訓練,還可以這些小塊進行水平翻轉進一步增加數據量。另一種方法是使用PCA改變訓練圖像RGB通道的像素值。

Dropout

這個方法現在也是大量使用。Dropout將隱層輸出以一定的概率置0,這個神經元就不參與前向和后向傳播,就如同在網絡中刪除了一樣。Dropout也可以看成是一種模型組合,每個樣本都是不一樣的網絡結構。Dropout減少了神經元之間的共適應關系(co-adaptation),一個神經元不再依賴另一個神經元,強迫網絡學習到更加魯棒的特征表示。

訓練

使用SGD進行訓練,batch大小為128,momentum為0.9,weight decay為0.0005。迭代公式:

vi+1:=0.9?vi?0.0005???wi?????L?w|wi?Di wi+1=wi+vi+1

在兩塊GTX580上花費了6天時間。

結果

在ILSVRC-2010上,top-1錯誤率為37.5%,top-5錯誤率為17.0%。比較有趣的是對96個11*11*3的卷積和進行可視化:

可以看到這些卷積核學習到了很多和頻率、方向相關的特征,而且在第一個GPU上大多是沒有顏色,而第二個是有顏色的,這樣的結果和初始化值無關。神經網絡最后一層4096維的向量可以作為圖像的高級特征,這樣的特征可以用于其他的任務中。

原文翻譯:http://blog.csdn.net/liumaolincycle/article/details/50496499

其中,在DL開源實現caffe的model樣例中,它也給出了alexnet的復現,具體網絡配置文件如下https://github.com/BVLC/caffe/blob/master/models/bvlc_reference_caffenet/train_val.prototxt:接下來本文將一步步對該網絡配置結構中各個層進行詳細的解讀(訓練階段):

1. conv1階段DFD(data flow diagram):


2. conv2階段DFD(data flow diagram):


3. conv3階段DFD(data flow diagram):


4. conv4階段DFD(data flow diagram):


5. conv5階段DFD(data flow diagram):


6. fc6階段DFD(data flow diagram):


7. fc7階段DFD(data flow diagram):


8. fc8階段DFD(data flow diagram):


總結

以上是生活随笔為你收集整理的TensorFlow学习笔记(二十八)CNN的9大模型之AlexNet的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。