深度學(xué)習(xí)中的大型卷積網(wǎng)絡(luò)匯總

Inception v1

Inception v1也叫GoogLeNet 厉碟。

這是Google的一篇論文但汞,在當(dāng)時無法網(wǎng)絡(luò)深度上提升網(wǎng)絡(luò)性能時夹孔,論文另辟蹊徑办陷,改用加大網(wǎng)絡(luò)的寬度方法说搅。使用多通道卷積進(jìn)行構(gòu)建更寬的網(wǎng)絡(luò)炸枣,不僅提高模型在分類的效果,也提高了模型在目標(biāo)檢測的效果弄唧。主要構(gòu)建一種 Inception module适肠。如下所示:

左圖對輸入做了4個分支,分別用不同尺寸的filter進(jìn)行卷積或池化候引,最后再在特征維度上拼接到一起侯养。這種全新的結(jié)構(gòu)有什么好處呢?Szegedy從多個角度進(jìn)行了解釋:

在直觀感覺上在多個尺度上同時進(jìn)行卷積澄干,能提取到不同尺度的特征逛揩。特征更為豐富也意味著最后分類判斷時更加準(zhǔn)確柠傍。

四個分支同步進(jìn)行會導(dǎo)致計算爆炸,所在會在進(jìn)行計算之前使用1x1卷積進(jìn)行通道的尺度縮放息尺。

下面就是Inception v1的全整個網(wǎng)絡(luò)圖携兵。

上圖中,在網(wǎng)絡(luò)的中間層還有兩個中間的loss搂誉,在中間進(jìn)行權(quán)重的調(diào)整調(diào)整徐紧。

各層的卷積尺度。作者提到輸入尺寸是224x224.所以這里的7x7 / 2卷積輸入是224x224x3的圖片炭懊,輸出就是112x112x3.

VGG

VGG和GoogLeNet 是同一時期的論文并级,VGG沿用了Alex框架,使用了dropout等手段加深了網(wǎng)絡(luò)深度侮腹,并使用堆疊3x3卷積核代替7x7的網(wǎng)絡(luò)嘲碧。論文探討了很多的調(diào)參技巧是再進(jìn)行實驗的時候比較有用的。

vgg一共進(jìn)行了6次實驗父阻,其中D和E表現(xiàn)最佳愈涩。D就是VGG16網(wǎng)絡(luò),E是VGG19網(wǎng)絡(luò)加矛,所有的網(wǎng)絡(luò)都是使用3x3卷積核履婉。

Inception v2 + v3

這兩個模型出現(xiàn)在同一篇論文中,主要探討三個原則:

  • 將 5×5 的卷積分解為兩個 3×3 的卷積運算以提升計算速度
  • 作者將 n*n 的卷積核尺寸分解為 1×n 和 n×1 兩個卷積斟览。例如毁腿,一個 3×3 的卷積等價于首先執(zhí)行一個 1×3 的卷積再執(zhí)行一個 3×1 的卷積。


  • 對于前面的串聯(lián)改為并聯(lián)

  • inception v2的模型結(jié)構(gòu)

其中v2/v3模型結(jié)構(gòu)上的差別只有一點即在inception v3中使用的Aug loss里面使用了BN進(jìn)行regularization苛茂。

ResNet

殘差神經(jīng)網(wǎng)絡(luò)是一個卷積神經(jīng)網(wǎng)絡(luò)模型的大突破已烤,直接解決了無法訓(xùn)練更深層的網(wǎng)絡(luò)問題。
運用如下公式:

  • 使用殘差塊對已經(jīng)訓(xùn)練的的網(wǎng)絡(luò)進(jìn)行連接:

這里x使上層的網(wǎng)絡(luò)妓羊,相當(dāng)于已經(jīng)擬合90%的模型胯究,二F(x)就是殘差塊,這就是真實網(wǎng)絡(luò)和x的一個殘差(誤差)躁绸。F(x) + x就像可以更加精確的擬合網(wǎng)絡(luò)了唐片。公式1中的x和F(x)的尺度不變。

若x和F(x)的尺度不一樣涨颜,就需要使用公式2:


完整模型如下:


inception v4和 Inception-ResNet-v1,Inception-ResNet-v2

這三個個模型同時出現(xiàn)在一篇論文里面茧球。論文中有大量的圖和表庭瑰,這是一篇實驗性很強的論文,大部分在討論模型的基礎(chǔ)結(jié)構(gòu)的功能抢埋,對比模型在分類和檢測任務(wù)的性能弹灭。

Inception v4 引入了專用的「縮減塊」(reduction block)督暂,它被用于改變網(wǎng)格的寬度和高度。早期的版本并沒有明確使用縮減塊穷吮,但也實現(xiàn)了其功能逻翁。
如下:

Inception-ResNet-v2和Inception-ResNet-v1結(jié)構(gòu)類似如下:

受 ResNet 的優(yōu)越性能啟發(fā),研究者提出了一種混合 inception 模塊捡鱼。Inception ResNet 有兩個子版本:v1 和 v2八回。在分析其顯著特征之前,先看看這兩個子版本之間的微小差異驾诈。

  • Inception-ResNet v1 的計算成本和 Inception v3 的接近缠诅。
  • Inception-ResNetv2 的計算成本和 Inception v4 的接近。
  • 它們有不同的 stem乍迄。兩個子版本都有相同的模塊 A管引、B、C 和縮減塊結(jié)構(gòu)闯两。唯一的不同在于超參數(shù)設(shè)置褥伴。

參考:一文概覽Inception家族的

ResNeXt

ResNeXt 結(jié)構(gòu)可以在不增加參數(shù)復(fù)雜度的前提下提高準(zhǔn)確率,同時還減少了超參數(shù)的數(shù)量漾狼。

文中提出網(wǎng)絡(luò) ResNeXt重慢,同時采用 VGG 堆疊的思想和 Inception 的 split-transform-merge 思想,但是可擴展性比較強邦投,可以認(rèn)為是在增加準(zhǔn)確率的同時基本不改變或降低模型的復(fù)雜度伤锚。這里提到一個名詞cardinality,右邊的 ResNeXt 中每個分支一模一樣志衣,分支的個數(shù)就是 cardinality屯援。通過在大卷積核層兩側(cè)加入 1x1 的網(wǎng)絡(luò)層,控制核個數(shù)念脯,減少參數(shù)個數(shù)的方式狞洋。

圖中中括號內(nèi)就是 split-transform-merge,通過 cardinality(C) 的值控制 repeat layer绿店。
output 在上下相鄰的格子不斷減半吉懊,中括號內(nèi)的逗號后面卷積核的個數(shù)不斷翻倍。
參考:ResNeXt算法詳解

Xception

Xception網(wǎng)絡(luò)結(jié)構(gòu)假勿,不僅借鑒了depthwise separable convolution的思想借嗽,也結(jié)合了ResNet的思想,最后作者也比較了ResNet在其中的作用

  • 首先通過‘1x1’卷積转培,將輸入數(shù)據(jù)拆分cross-channel相關(guān)性恶导,拆分成3或者4組獨立的空間
  • 然后,通過‘3x3’或者‘5x5’卷積核映射到更小的空間上去

模型使用的殘差塊:

Xception模型結(jié)構(gòu):

  1. 整個網(wǎng)絡(luò)結(jié)構(gòu)具有14個模塊浸须,36個卷積
  2. 殘差連接
    3.最后采用logistic regression

參考基礎(chǔ)模型

DenseNet

DenseNet使RseNet上演變出來的又一個超級網(wǎng)絡(luò)惨寿,網(wǎng)絡(luò)設(shè)計了一種Dense Block模塊邦泄。如下:

這里的Dense Block模塊層數(shù)為5,即具有5個BN+Relu+Conv(3*3)這樣的layer裂垦,網(wǎng)絡(luò)增長率為k=4顺囊,簡單的說就是每一個layer輸出的feature map的維度為4。這里的網(wǎng)絡(luò)增長率就是每層網(wǎng)絡(luò)的的特征層輸出數(shù)量蕉拢。因為DenseNet的每層網(wǎng)絡(luò)的輸入是前面所有層的輸出特碳。所以這里要統(tǒng)一每層網(wǎng)絡(luò)的輸入層數(shù)k。
若k=32企量,第L 層網(wǎng)絡(luò)的網(wǎng)絡(luò)輸入未 k0 + k(L-1).第L層的網(wǎng)絡(luò)的輸出為32.

  • k0是網(wǎng)絡(luò)的輸入層的輸出層數(shù)
  • k是就是前面每層的網(wǎng)絡(luò)輸出测萎。

網(wǎng)絡(luò)結(jié)構(gòu):

這里有bottleneck layer和Translation layer。

  • 這里bottleneck layer就是Dense Block的1x1結(jié)構(gòu)届巩,dense block的33卷積前面都包含了一個11的卷積操作硅瞧,就是所謂的bottleneck layer,目的是減少輸入的feature map數(shù)量恕汇,既能降維減少計算量腕唧,又能融合各個通道的特征,這里11卷積的channel是growth rate4
  • 放在兩個Dense Block中間,是因為每個Dense Block結(jié)束后的輸出channel個數(shù)很多瘾英,需要用1*1的卷積核來降維枣接。

參考1, 2, 3

SENet

Momenta 的胡杰一篇大作。

SE 模塊的示意圖缺谴。給定一個輸入 x但惶,其特征通道數(shù)為 c_1,通過一系列卷積等一般變換后得到一個特征通道數(shù)為 c_2 的特征湿蛔。與傳統(tǒng)的 CNN 不一樣的是膀曾,接下來通過三個操作來重標(biāo)定前面得到的特征。

  • 首先是 Squeeze 操作阳啥,順著空間維度來進(jìn)行特征壓縮添谊,將每個二維的特征通道變成一個實數(shù),這個實數(shù)某種程度上具有全局的感受野察迟,并且輸出的維度和輸入的特征通道數(shù)相匹配斩狱。它表征著在特征通道上響應(yīng)的全局分布,而且使得靠近輸入的層也可以獲得全局的感受野扎瓶,這一點在很多任務(wù)中都是非常有用的所踊。

  • 其次是 Excitation 操作,它是一個類似于循環(huán)神經(jīng)網(wǎng)絡(luò)中門的機制概荷。通過參數(shù) w 來為每個特征通道生成權(quán)重污筷,其中參數(shù) w 被學(xué)習(xí)用來顯式地建模特征通道間的相關(guān)性。

  • 最后是一個 Reweight 的操作,將 Excitation 的輸出的權(quán)重看做是進(jìn)過特征選擇后的每個特征通道的重要性瓣蛀,然后通過乘法逐通道加權(quán)到先前的特征上,完成在通道維度上的對原始特征的重標(biāo)定雷厂。

在resnet和inception上的改動如下:

上左圖是將 SE 模塊嵌入到 Inception 結(jié)構(gòu)的一個示例惋增。方框旁邊的維度信息代表該層的輸出。

這里我們使用 global average pooling 作為 Squeeze 操作改鲫。緊接著兩個 Fully Connected 層組成一個 Bottleneck 結(jié)構(gòu)去建模通道間的相關(guān)性诈皿,并輸出和輸入特征同樣數(shù)目的權(quán)重。我們首先將特征維度降低到輸入的 1/16像棘,然后經(jīng)過 ReLu 激活后再通過一個 Fully Connected 層升回到原來的維度稽亏。這樣做比直接用一個 Fully Connected 層的好處在于:1)具有更多的非線性,可以更好地擬合通道間復(fù)雜的相關(guān)性缕题;2)極大地減少了參數(shù)量和計算量截歉。然后通過一個 Sigmoid 的門獲得 0~1 之間歸一化的權(quán)重,最后通過一個 Scale 的操作來將歸一化后的權(quán)重加權(quán)到每個通道的特征上烟零。

除此之外瘪松,SE 模塊還可以嵌入到含有 skip-connections 的模塊中。上右圖是將 SE 嵌入到 ResNet 模塊中的一個例子锨阿,操作過程基本和 SE-Inception 一樣宵睦,只不過是在 Addition 前對分支上 Residual 的特征進(jìn)行了特征重標(biāo)定。如果對 Addition 后主支上的特征進(jìn)行重標(biāo)定墅诡,由于在主干上存在 0~1 的 scale 操作壳嚎,在網(wǎng)絡(luò)較深 BP 優(yōu)化時就會在靠近輸入層容易出現(xiàn)梯度消散的情況,導(dǎo)致模型難以優(yōu)化末早。

目前大多數(shù)的主流網(wǎng)絡(luò)都是基于這兩種類似的單元通過 repeat 方式疊加來構(gòu)造的烟馅。由此可見,SE 模塊可以嵌入到現(xiàn)在幾乎所有的網(wǎng)絡(luò)結(jié)構(gòu)中荐吉。通過在原始網(wǎng)絡(luò)結(jié)構(gòu)的 building block 單元中嵌入 SE 模塊焙糟,我們可以獲得不同種類的 SENet。如 SE-BN-Inception样屠、SE-ResNet穿撮、SE-ReNeXt、SE-Inception-ResNet-v2 等等痪欲。

參考1, 2

MobileNets

論文中的主要的思想是將一個標(biāo)準(zhǔn)卷積(standard convolution)分解成兩個卷積悦穿,一個是深度卷積(depthwise convolution),這個卷積應(yīng)用在每一個輸入通道上业踢;另一個是1×1的逐點卷積(pointwise convolution)栗柒,這個卷積合并每一個深度卷積的輸出

上圖a就是標(biāo)準(zhǔn)的卷積核,它的大小就是DK×DK×M×N。它可以被分解為b和c這兩個部分瞬沦。
b的大小為M×(1×Dk×Dk)就是(depthwise convolution)太伊,c的大小為N×(M×1×1)就是(pointwise convolution).
既然卷積核分解了,那feature map也是要被分解的逛钻。
對一個DF×DF×M的特征圖僚焦。需要分解為(M×DK×DK)×(DF×DF)這兩個矩陣。
那怎么計算曙痘?芳悲?

  • feature map 先與depthwise convolution進(jìn)行計算: M×(1×Dk×Dk) * (M×DK×DK)×(DF×DF) = M×(DF×DF)
  • 再與pointwise convolution進(jìn)行計算: N×(M×1×1) * (M×1×1)×(DF×DF) = N×(DF×DF)

如下:

左邊標(biāo)準(zhǔn)卷積,右邊是深度分離卷積边坤。

總的結(jié)構(gòu):

除了最后的全連接層名扛,所有層后面跟了batchnorm和ReLU,最終輸入到softmax進(jìn)行分類茧痒。

  • 為了構(gòu)建更小和更少計算量的網(wǎng)絡(luò)肮韧,作者引入了寬度乘數(shù) ,作用是改變輸入輸出通道數(shù)文黎,減少特征圖數(shù)量惹苗,讓網(wǎng)絡(luò)變瘦。
  • 分辨率乘數(shù) 耸峭,分辨率乘數(shù)用來改變輸入數(shù)據(jù)層的分辨率桩蓉,同樣也能減少參數(shù)。

參考:1, 2

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末劳闹,一起剝皮案震驚了整個濱河市院究,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌本涕,老刑警劉巖业汰,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異菩颖,居然都是意外死亡样漆,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進(jìn)店門晦闰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來放祟,“玉大人,你說我怎么就攤上這事呻右〗辏” “怎么了祟峦?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵垒探,是天一觀的道長帐要。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么纽疟? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任罐韩,我火速辦了婚禮,結(jié)果婚禮上污朽,老公的妹妹穿的比我還像新娘伴逸。我一直安慰自己,他們只是感情好膘壶,可當(dāng)我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著洲愤,像睡著了一般颓芭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上柬赐,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天亡问,我揣著相機與錄音,去河邊找鬼肛宋。 笑死州藕,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的酝陈。 我是一名探鬼主播床玻,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼沉帮!你這毒婦竟也來了锈死?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤穆壕,失蹤者是張志新(化名)和其女友劉穎待牵,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體喇勋,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡缨该,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了川背。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贰拿。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖渗常,靈堂內(nèi)的尸體忽然破棺而出壮不,到底是詐尸還是另有隱情,我是刑警寧澤皱碘,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布询一,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏健蕊。R本人自食惡果不足惜菱阵,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望缩功。 院中可真熱鬧晴及,春花似錦、人聲如沸嫡锌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽势木。三九已至蛛倦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啦桌,已是汗流浹背溯壶。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留甫男,地道東北人且改。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像板驳,于是被迫代替她去往敵國和親又跛。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內(nèi)容