Abstract
本篇論文的主要成就是高效的利用了網(wǎng)絡(luò)內(nèi)部的計(jì)算能力,在保證計(jì)算消耗穩(wěn)定不變的情況下提升了網(wǎng)絡(luò)的深度和寬度蓄氧。設(shè)計(jì)基于海扁準(zhǔn)則和多尺度處理問題的直覺函似。
1、introduction
在過去的三年中(2013-2015)喉童,由于深度學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展撇寞,我們在分類和檢測問題上有了飛速的發(fā)展。并且堂氯,這些進(jìn)步往往是由于一系列的新想法蔑担,算法和提升的網(wǎng)絡(luò)結(jié)構(gòu)而并不是更強(qiáng)硬件或者更深的網(wǎng)絡(luò)或者更大的數(shù)據(jù)集導(dǎo)致的。有效率的利用計(jì)算資源才是今后發(fā)展的關(guān)鍵咽白。就像我們的GoogleNet一樣強(qiáng)無敵(名為inception)啤握。
2、Related Work
從LeNet-5開始晶框,cnn就開始有了比較標(biāo)準(zhǔn)的結(jié)構(gòu)(有一系列的可選的標(biāo)準(zhǔn)化和池化層堆疊而成)排抬。基于這種結(jié)構(gòu)的模型在各個(gè)數(shù)據(jù)中都有不錯(cuò)的表現(xiàn)授段,而最近的趨勢則是增加網(wǎng)絡(luò)的深度和寬度并使用dropout來處理過擬合蹲蒲。盡管max-pooling會造成空間信息的丟失,但還是被應(yīng)用到了局部化侵贵,物體檢測和人體姿勢識別等方面届搁。
收到生物神經(jīng)學(xué)的啟發(fā)有人使用了一系列固定的大小的不同Gabor濾波器來處理多尺度的問題。inception也使用了類似的結(jié)構(gòu)。但是不同的是咖祭,inception中所有的過濾器都是學(xué)習(xí)得來的掩宜,他們多次的出現(xiàn)構(gòu)成了22層的googlenet。
lin提出的network-in-network結(jié)構(gòu)增強(qiáng)了網(wǎng)絡(luò)的表現(xiàn)能力么翰。他們使用11的卷積層增加了深度牺汤,在我們goolenet中同樣大量的使用了11的卷積層。主要是為了降低維度用以解決計(jì)算瓶頸浩嫌。這使得我們不僅可以加深網(wǎng)絡(luò)檐迟,同時(shí)還可以加寬,而不造成嚴(yán)重的性能下降码耐。
現(xiàn)在最好的物體檢測方法是區(qū)域卷積神經(jīng)網(wǎng)R-CNN追迟,它將整個(gè)檢測問題分解為兩個(gè)子問題:第一部使用低層線索比如組成潛在物體的顏色、超像素等骚腥,提取出一些類別不可知的信息敦间,然后接下來利用CNN在這些區(qū)塊信息上識別物體類別。這種雙步方法中束铭,低層線索會影響切分區(qū)塊大小的準(zhǔn)確性以及CNN分類的準(zhǔn)確度廓块。我們在提交的檢測程序中采用了同樣的管道,但我們對其中的每一步都進(jìn)行了加強(qiáng)契沫,比如采用多盒預(yù)測以提高邊界識別集合的召回率带猴,還對bounding box提出的分類建議進(jìn)行了不同方法的搭配合成,以獲得更好的結(jié)果懈万。
3拴清、Motivation and High Level Considerations
最直接增強(qiáng)深度網(wǎng)絡(luò)的表現(xiàn)能力的方法就是增大他們的體積。尤其是當(dāng)???足夠大的訓(xùn)練集的時(shí)候会通,增大深度和寬度就顯得尤其簡單粗暴口予。但是有兩個(gè)缺點(diǎn):
首先大號的網(wǎng)絡(luò)意味著很多的參數(shù),這就會更容易導(dǎo)致過擬合渴语。
另一個(gè)問題就是會導(dǎo)致計(jì)算資源需求的增加苹威,在深度網(wǎng)絡(luò)中,還可能會有很多計(jì)算資源被浪費(fèi)驾凶。
解決這兩個(gè)問題的根本途徑就是將全連接替換為稀疏連接結(jié)構(gòu)牙甫,甚至是在卷積內(nèi)部。但是目前的計(jì)算設(shè)備對于非均勻的稀疏數(shù)據(jù)計(jì)算效率非常低下调违,即使是算術(shù)運(yùn)算量減少100倍窟哺,分支預(yù)測和緩存的開銷依然非常顯著導(dǎo)致稀疏矩陣無法運(yùn)用。cnn使用隨機(jī)和特征維度的稀疏連接表技肩,打破網(wǎng)絡(luò)的對稱性和改善學(xué)習(xí)效果且轨,但為了更好地優(yōu)化并行計(jì)算浮声,趨勢又重新回到了全連接。文章中提到將稀疏矩陣分解成稠密子矩陣進(jìn)行計(jì)算加速旋奢,但同時(shí)指出稀疏矩陣在近期還不會用于深層網(wǎng)絡(luò)的構(gòu)建泳挥。
4、Architectural Details
inception的主要思想就是找到一個(gè)簡單可實(shí)現(xiàn)的稠密組件去逼近和替代一個(gè)最優(yōu)的局部稀疏結(jié)構(gòu)至朗,并在空間上不斷重復(fù)這種結(jié)構(gòu)屉符。
Arora提出了一個(gè)逐層了結(jié)構(gòu),它能夠?qū)ι弦粚舆M(jìn)行相關(guān)統(tǒng)計(jì)分析锹引,將相關(guān)性較高的單元聚類在一起組成下一層并與上一層的單元相連矗钟。我們假設(shè)下層的每個(gè)單元都與輸入圖片的一些區(qū)域相關(guān),并且這些單元被組分到filter banks中嫌变,而在更底層(接近輸入)中的相關(guān)單元會注意集中在局部區(qū)域吨艇。因此我們就發(fā)現(xiàn)了很多的聚類關(guān)注是同一個(gè)區(qū)域,在下一層通過1*1的卷積覆蓋腾啥。
也可以通過在更大的patch上卷積东涡,覆蓋少量的在空間上更大的聚類,區(qū)域越來越大倘待,patch數(shù)越來越少
為了避免patch校準(zhǔn)問題软啼,現(xiàn)在的濾波器大小限制在1x1,3x3和5x5延柠,主要是為了方便,不是必要的锣披。inception最后將這些層的結(jié)果合并到一起贞间,作為下一步的輸入,此外inception結(jié)構(gòu)中也加入了pooling操作提升效果雹仿。
總結(jié):
1 . 采用不同大小的卷積核意味著不同大小的感受野增热,最后拼接意味著不同尺度特征的融合;
2 . 之所以卷積核大小采用1胧辽、3和5峻仇,主要是為了方便對齊。設(shè)定卷積步長stride=1之后邑商,只要分別設(shè)定pad=0摄咆、1、2人断,那么卷積之后便可以得到相同維度的特征吭从,然后這些特征就可以直接拼接在一起了;
3 . 文章說很多地方都表明pooling挺有效恶迈,所以Inception里面也嵌入了涩金。
4 . 網(wǎng)絡(luò)越到后面,特征越抽象,而且每個(gè)特征所涉及的感受野也更大了步做,因此隨著層數(shù)的增加副渴,3x3和5x5卷積的比例也要增加。
但是全度,使用5x5的卷積核仍然會帶來巨大的計(jì)算量煮剧。采用1x1卷積核來進(jìn)行降維。 例如:上一層的輸出為100x100x128讼载,經(jīng)過具有256個(gè)輸出的5x5卷積層之后(stride=1轿秧,pad=2),輸出數(shù)據(jù)為100x100x256咨堤。其中菇篡,卷積層的參數(shù)為128x5x5x256。假如上一層輸出先經(jīng)過具有32個(gè)輸出的1x1卷積層一喘,再經(jīng)過具有256個(gè)輸出的5x5卷積層驱还,那么最終的輸出數(shù)據(jù)仍為為100x100x256,但卷積參數(shù)量已經(jīng)減少為128x1x1x32 + 32x5x5x256凸克,大約減少了4倍议蟆。
具體改進(jìn)后的Inception Module:
這一結(jié)構(gòu)一個(gè)有利的方面是它允許每一步的神經(jīng)元大量增加,而不會導(dǎo)致計(jì)算復(fù)雜度的暴增萎战。
降維的普遍存在能夠阻擋大量來自上一層的數(shù)據(jù)涌入下一層的過濾器咐容,在大區(qū)塊上對其進(jìn)行卷積之前就對其進(jìn)行降維。
簡而言之蚂维,inception用非對稱的稠密組件去近似一個(gè)稀疏結(jié)構(gòu)戳粒,既增加了網(wǎng)絡(luò)的深度和寬度,減少了計(jì)算需求虫啥,稀疏連接的方式還有助于減少過擬合蔚约。
5、googlenet
總體結(jié)構(gòu):
1.包括Inception模塊的所有卷積涂籽,都用了修正線性單元(ReLU)苹祟;
2.網(wǎng)絡(luò)的感受野大小是224x224,采用RGB彩色通道评雌,且減去均值树枫;
3.#3x3 reduce和#5x5 reduce分別表示3x3和5x5的卷積前縮減層中1x1濾波器的個(gè)數(shù);pool proj表示嵌入的max-pooling之后的投影層中1x1濾波器的個(gè)數(shù)景东;縮減層和投影層都要用ReLU团赏;
4.網(wǎng)絡(luò)包含22個(gè)帶參數(shù)的層(如果考慮pooling層就是27層),獨(dú)立成塊的層總共有約有100個(gè)耐薯;
5.網(wǎng)絡(luò)中間的層次生成的特征會非常有區(qū)分性舔清,給這些層增加一些輔助分類器丝里。這些分類器以小卷積網(wǎng)絡(luò)的形式放在Inception(4a)和Inception(4b)的輸出上。在訓(xùn)練過程中体谒,損失會根據(jù)折扣后的權(quán)重(折扣權(quán)重為0.3)疊加到總損失中杯聚。
具體細(xì)節(jié):
1.均值pooling層濾波器大小為5x5,步長為3抒痒,(4a)的輸出為4x4x512幌绍,(4d)的輸出為4x4x528;
2.1x1的卷積有用于降維的128個(gè)濾波器和修正線性激活故响;
3.全連接層有1024個(gè)單元和修正線性激活傀广;
4.dropout層的dropped的輸出比率為70%;
5.線性層將softmax損失作為分類器(和主分類器一樣預(yù)測1000個(gè)類彩届,但在inference時(shí)移除)伪冰。