卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)史上的主要里程碑:模塊化、多路徑、因式分解、壓縮、可擴(kuò)展
一般來(lái)說(shuō),分類問(wèn)題是計(jì)算機(jī)視覺(jué)模型的基礎(chǔ),它可以延申解決更復(fù)雜的視覺(jué)問(wèn)題,例如:目標(biāo)檢測(cè)的任務(wù)包括檢測(cè)邊界框并對(duì)其中的對(duì)象進(jìn)行分類。而分割的任務(wù)則是對(duì)圖像中的每個(gè)像素進(jìn)行分類。
卷積神經(jīng)網(wǎng)絡(luò)(CNNs)首次被用于解決圖像分類問(wèn)題,并且取得了很好的效果,所以在這個(gè)問(wèn)題上,研究人員開(kāi)始展開(kāi)競(jìng)爭(zhēng)。通過(guò)對(duì)ImageNet Challenge中更精確分類器的快速跟蹤研究,他們解決了與大容量神經(jīng)網(wǎng)絡(luò)的統(tǒng)計(jì)學(xué)習(xí)相關(guān)的更普遍的問(wèn)題,導(dǎo)致了深度學(xué)習(xí)的重大進(jìn)展。
在本文中我們將整理一些經(jīng)典的CNN模型,詳細(xì)介紹這些模型的設(shè)計(jì)理論和關(guān)鍵設(shè)計(jì)點(diǎn):
VGGNet
我們介紹的第一個(gè)CNN,命名是為VGGNet[2]。它是AlexNet[3]的直接繼承者,AlexNet[3]被認(rèn)為是第一個(gè)“深度”神經(jīng)網(wǎng)絡(luò),這兩個(gè)網(wǎng)絡(luò)有一個(gè)共同的祖先,那就是Lecun的LeNet[4]。
我們從它開(kāi)始,盡管它的年代久遠(yuǎn),但是由于VGGNet的特殊性,,直到今天仍然站得住腳(這是極少數(shù)的DL模型能夠做到的)。第一個(gè)介紹VGGNet還有一個(gè)原因是它還建立了后續(xù)cnn所采用的通用組件和結(jié)構(gòu)。
如上圖1所示,卷積神經(jīng)網(wǎng)絡(luò)從一個(gè)輸入層開(kāi)始,它與輸入圖像具有相同的尺寸,224x224x3。
然后,VGGNet堆疊第一個(gè)卷積層(CL 1),其中包括64個(gè)大小為3x3的核,輸出一個(gè)224x224x64的張量。
接下來(lái),它在具有相同配置的64個(gè)通道上堆疊使用相同大小的3x3核的CL 2,生成相同尺寸的特征映射。
然后,使用filter size為2x2、填充和步幅為2的最大池化來(lái)降低特征映射的空間分辨率,從224x224x64降低到112x112x64。最大池并不影響特性映射深度,因此通道的數(shù)量仍然是64。
這里我將這三層之上稱作module 1,一般情況下也被稱作stem,可以理解為它提取的是最基本的線條特征。我們將其稱為module 被是因?yàn)樗x為以一定分辨率操作的處理單元。所以我們可以說(shuō)VGGNet的module 1以224x224分辨率工作,并生成分辨率為112x112的特征圖,后面的module 2繼續(xù)在其上工作。
類似地,module 2也有兩個(gè)帶有3x3核的CLs,用于提取更高級(jí)別的特征,其次是最大池化,將空間分辨率減半,但核的數(shù)量乘以2,使輸出特征映射的通道數(shù)量翻倍。
每個(gè)module 處理輸入特征映射,將通道加倍,將空間分辨率除以2,以此類推。但是不可能一直這樣做,因?yàn)閙odule 6的空間分辨率已經(jīng)是7x7了。
因此,VGGNet包括一個(gè)從3D到1D的展平(flatten)操作,然后應(yīng)用一個(gè)或兩個(gè)稠密層,最后使用softmax計(jì)算分類概率(這里是1000個(gè)標(biāo)簽)。
讓我們總結(jié)一下VGGNet引入的設(shè)計(jì)模式,以在準(zhǔn)確性方面超越所有以前的研究:
模塊化架構(gòu)允許卷積層內(nèi)的對(duì)稱性和同質(zhì)性。通過(guò)構(gòu)建具有相似特征的卷積層塊,并在模塊之間執(zhí)行下采樣有助于在特征提取階段保留有價(jià)值的信息,使用小核,兩個(gè) 3x3 核的卷積的感知范圍可以等效于單個(gè) 5x5 的感知范圍。級(jí)聯(lián)的小核卷積也增強(qiáng)了非線性,并且可以獲得比具有一層更大核的更好的精度。小核還可加快 Nvidia GPU 上的計(jì)算速度。
與平均池化或跨步卷積(步幅大于 1)相比,最大池化操作是一種有效的下采樣方法。最大池化允許捕獲具有空間信息的數(shù)據(jù)中的不變性。因?yàn)閳D像分類任務(wù)需要這種空間信息減少才能達(dá)到類別分?jǐn)?shù)的輸出,而且它也被“流形假設(shè)”證明是合理的。在計(jì)算機(jī)視覺(jué)中,流形假設(shè)指出 224x224x3 維度空間中的真實(shí)圖像表示非常有限的子空間。
將整體下采樣與整個(gè)架構(gòu)中通道數(shù)量的增加相結(jié)合形成金字塔形結(jié)構(gòu)。通道的倍增補(bǔ)償了由于學(xué)習(xí)到的特征圖的空間分辨率不斷降低而導(dǎo)致的表征表達(dá)能力的損失。在整個(gè)層中,特征空間會(huì)同步變窄和變深,直到它準(zhǔn)備好被展平并作為輸入向量發(fā)送到全連接層。每個(gè)特征都可以看作一個(gè)對(duì)象,其存在將在整個(gè)推理計(jì)算過(guò)程中被量化。早期的卷積層捕獲基本形狀,因此需要的對(duì)象更少。后面的層將這些形狀組合起來(lái),創(chuàng)建具有多種組合的更復(fù)雜的對(duì)象,所以需要大量的通道來(lái)保存它們。
Inception
接下來(lái)介紹與VGGNet[2]同年出現(xiàn)但晚一點(diǎn)的第二個(gè)CNN,Inception[5]。這個(gè)名字的靈感來(lái)自克里斯托弗諾蘭的著名電影,這個(gè)網(wǎng)絡(luò)引發(fā)了關(guān)于“尋求更深層次的 CNN”的爭(zhēng)論,并很快變成了一個(gè)問(wèn)題。事實(shí)上,深度學(xué)習(xí)研究人員意識(shí)到,如果能正確訓(xùn)練更深層次的神經(jīng)網(wǎng)絡(luò),那么獲得的準(zhǔn)確性就越高,尤其是在涉及 ImageNet 等復(fù)雜分類任務(wù)時(shí)。簡(jiǎn)而言之,更多的堆疊層提高了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力,使其能夠捕捉復(fù)雜的模式并并能在復(fù)雜的數(shù)據(jù)中進(jìn)行泛化。
但是設(shè)法訓(xùn)練更深的網(wǎng)絡(luò)是非常困難的。堆疊更多層會(huì)產(chǎn)生成本,并使訓(xùn)練神經(jīng)網(wǎng)絡(luò)變得更加困難。這是由于梯度消失問(wèn)題,當(dāng)損失梯度通過(guò)無(wú)數(shù)計(jì)算層反向傳播,并逐漸收斂到幾乎為零的微小的值時(shí),就會(huì)發(fā)生這種情況。因此訓(xùn)練網(wǎng)絡(luò)的早期層(距離輸入近的層)變得很復(fù)雜,這些層無(wú)法執(zhí)行特征提取并將提取的信息傳遞給后續(xù)層。
在Inception中,研究人員在一個(gè)深度級(jí)別上模擬了幾個(gè)層。這樣既增強(qiáng)了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力,又?jǐn)U大了神經(jīng)網(wǎng)絡(luò)的參數(shù)空間,避免了梯度的消失。
上圖 2 是這個(gè)多尺度處理層的內(nèi)部視圖結(jié)構(gòu)。關(guān)注藍(lán)色
審核編輯:劉清
-
cnn
+關(guān)注
關(guān)注
3文章
353瀏覽量
22265 -
卷積神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
4文章
367瀏覽量
11885
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論