Alexnet使用卷積神經(jīng)網(wǎng)絡(luò)(CNNS)
網(wǎng)絡(luò)結(jié)構(gòu):五層卷積三層全連接
1.神經(jīng)元使用RELU函數(shù)激活:線性整流函數(shù)(Rectified Linear Unit,?ReLU),又稱修正線性單元,目的是加速訓(xùn)練

RELU的特性:ReLUs有一個理想的特性,即不需要對輸入進(jìn)行標(biāo)準(zhǔn)化以防止其飽和。
使用梯度下降法訓(xùn)練時,不飽和神經(jīng)元比比飽和神經(jīng)元快很多
2.使用多GPU訓(xùn)練,從而加速
3.局部響應(yīng)歸一化,現(xiàn)在都用BatchNormalization
盡管RELU具有不飽和特性,局部歸一化仍然有助于泛化
響應(yīng)歸一化:
其中,是卷積核
在
處計算得出的神經(jīng)元活動,然后使用RELU非線性,得到響應(yīng)歸一化后的活動

在相同的空間位置上,求和運(yùn)行在n個“相鄰”內(nèi)核映射上,N是這一層的總核數(shù)。常數(shù)k,n,α,β是超參數(shù)。某些層在進(jìn)行RELU后使用這種歸一化??梢栽谑褂貌煌瑑?nèi)核計算的神經(jīng)元輸出之間產(chǎn)生對大型活動的競爭,實現(xiàn)橫向抑制。
4.重疊池化
5.整體架構(gòu)
網(wǎng)絡(luò)結(jié)構(gòu):五層卷積三層全連接+1000softmax
2,4,5卷積層只連接到上一層留在同一個GPU的內(nèi)核映射
局部歸一化在第一二卷積層后,最大池化在1,2,5卷積層后,RELU每個卷積層和全連接層的輸出都有用到。
第一個卷積層:輸入224×224×3的圖像,得到96個11×11×3的卷積核,步長四個像素
第二個卷積層:輸入第一個卷積層的輸出經(jīng)過池化和歸一化,使用256個5 × 5 × 48的卷積核
第三個卷積層:輸入第2個卷積層的輸出經(jīng)過池化和歸一化,使用384個卷積核,大小3 × 3 ×256
第四個卷積層:384個,3×3×192
第五個卷積層:256個,3×3×192
全連接層:每個4096個神經(jīng)元

6.Dropout隨機(jī)失活
將每個隱藏神經(jīng)元的輸出設(shè)置為0,概率為0.5,以這種方式“退出”不參與正向傳遞,也不參與反向傳播。前兩個全連接層使用了dropout? ? 降低過擬合。
7.訓(xùn)練細(xì)節(jié)
使用SGD隨機(jī)梯度下降,batch size 128,動量0.9,權(quán)重衰減0.005(可以提高準(zhǔn)確度)
Batch Size定義:一次訓(xùn)練所選取的樣本數(shù)。?
Batch Size的大小影響模型的優(yōu)化程度和速度。同時其直接影響到GPU內(nèi)存的使用情況,假如你GPU內(nèi)存不大,該數(shù)值最好設(shè)置小一點(diǎn)
Batch Size從小到大的變化對網(wǎng)絡(luò)影響
1、沒有Batch Size,梯度準(zhǔn)確,只適用于小樣本數(shù)據(jù)庫
2、Batch Size=1,梯度變來變?nèi)?,非常不?zhǔn)確,網(wǎng)絡(luò)很難收斂。
3、Batch Size增大,梯度變準(zhǔn)確,
4、Batch Size增大,梯度已經(jīng)非常準(zhǔn)確,再增加Batch Size也沒有用
學(xué)習(xí)率,<>目標(biāo)對w求導(dǎo)的第i批次Di的平均值,在wi處取值,每一層的權(quán)值初始化為零均值高斯分布,標(biāo)準(zhǔn)差為0.01,初始化第二、第四、第五卷積層以及全連通隱層中的神經(jīng)元偏差為1,這種初始化通過向ReLUs提供積極的輸入來加速學(xué)習(xí)的早期階段。用常數(shù)0初始化剩余層中的神經(jīng)元偏差。
