【知识星球】总有些骨骼轻奇,姿态妖娆的模型结构设计,不知道你知不知道,反正我知道一些...
大家好,歡迎來到《知識星球》專欄,這個專欄專欄剖析有三AI知識星球的內(nèi)容生態(tài),今天的內(nèi)容屬于網(wǎng)絡(luò)結(jié)構(gòu)1000變板塊。
作者&編輯 | 言有三
你大概已經(jīng)見慣了基本的卷積結(jié)構(gòu),對殘差網(wǎng)絡(luò)也了如指掌,對分組卷積也爛熟于心,也知道模型壓縮的一些技巧,不過今天這里要說的,大部分同學(xué)可未必知道噢。
大眾的模型結(jié)構(gòu)咱們不講,今天從卷積方式,通道變化,拓?fù)浣Y(jié)構(gòu)等各方面給大家介紹幾個模型,立志于在這個方向發(fā)文章的同學(xué),可要看仔細(xì)了。
1 漸變的寬度-金字塔結(jié)構(gòu)
這是一個通道數(shù)的變化方式相關(guān)的網(wǎng)絡(luò)結(jié)構(gòu)。
有三AI知識星球-網(wǎng)絡(luò)結(jié)構(gòu)1000變
Pyramidal Residual Networks
通常來說,網(wǎng)絡(luò)結(jié)構(gòu)的通道數(shù)量變化是突變的,那有沒有網(wǎng)絡(luò)的增加是緩慢變化的呢?這就是金字塔結(jié)構(gòu)了,名為Pyramidal Residual Networks。
作者/編輯 言有三
大家都知道,CNN等結(jié)構(gòu)在特征圖尺度減小的時候,通常會隨之增加特征圖的通道數(shù)目來增加高層的表達(dá)能力,這是模型性能的保證,大部分的模型其特征圖通道數(shù)的增加是跳變的,比如從128增加到256。
之前我們講述過隨機(jī)刪減深度的殘差網(wǎng)絡(luò)證明了深度殘差網(wǎng)絡(luò)的深度其實沒有想象中那么深,在文章“Residual networks behave like ensembles of relatively shallow networks[C]”中的研究也表明刪除掉一些block并不會顯著降低性能,但是降采樣的網(wǎng)絡(luò)層除外。
本篇文章基于這個現(xiàn)象,認(rèn)為要降低降采樣的敏感性,必須要讓通道的變化是緩慢的,即隨著層數(shù)增加,每一層都慢慢增加寬度,命名為金字塔結(jié)構(gòu),如下。
這里a圖是線性增加,b圖是指數(shù)級增加。
那么到底性能如何呢?首先看下訓(xùn)練曲線對比:
這里兩個網(wǎng)絡(luò)的參數(shù)差不多,都是1.7M左右,從曲線上看,性能也相當(dāng)。
另一個要關(guān)注的問題是,金字塔ResNet有沒有實現(xiàn)它的初衷,即改善降低分辨率的網(wǎng)絡(luò)層被刪除時帶來的性能下降,結(jié)果如下:
從結(jié)果看來,錯誤率確實降低了。更加具體的實驗結(jié)果,大家自己去看論文吧。
[1] Han D, Kim J, Kim J. Deep pyramidal residual networks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017: 5927-5935.
2 分支眾多-分形結(jié)構(gòu)
這是一個多分支結(jié)構(gòu)相關(guān)的網(wǎng)絡(luò)結(jié)構(gòu)。
有三AI知識星球-網(wǎng)絡(luò)結(jié)構(gòu)1000變
FractalNet
殘差網(wǎng)絡(luò)可以使得上千層的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計成為可能,但并不是只有殘差網(wǎng)絡(luò)可以做到,FractalNet(分形網(wǎng)絡(luò))便是如此。
作者/編輯 言有三
分形是一個數(shù)學(xué)概念,指的是具有以非整數(shù)維形式填充空間的形態(tài)特征,也就是說它的有效維度不是整數(shù)。不過我們這里可以不用關(guān)注它的數(shù)學(xué)定義,而是關(guān)注它的,分形幾何結(jié)構(gòu)的一部分具有和整體相似的結(jié)構(gòu),即自相似,如下圖形:
分形網(wǎng)絡(luò),顧名思義也是這樣的特點了,局部的結(jié)構(gòu)和全局相似,如下圖:
可以看到包含了各種長度不同的子路徑,從左到右:
第一列路徑只有一條,長度l。
第二列路徑兩條,長度l/2。
第三列路徑四條,長度l/4。
第二列路徑八條,長度l/8。
它與殘差網(wǎng)絡(luò)的不同之處在于,綠色模塊表示的非線性變換,即下一層不可能直接得到上一層的信號,而是經(jīng)過了變換。
這樣的一種包含了不同深度的子網(wǎng)絡(luò),與之前提過的stochastic depth有異曲同工之妙,它也可以被看作是不同深度的網(wǎng)絡(luò)的ensemble。
作者們通過隨機(jī)丟棄某些深度的方法也做了實驗,丟棄的樣例如下:
上面展示了兩種路徑,訓(xùn)練時混合使用。
Global: 只選擇一條路徑,且是同一列,這條路徑就是獨立的強(qiáng)預(yù)測路徑。
Local:包含多個路徑,但是保證每一層至少要有一個輸入。
那么結(jié)果如何呢?
如上,與各種網(wǎng)絡(luò)進(jìn)行了對比,性能很好。在添加了drop-path技術(shù)后,還有極大提升,并且單獨只拿出其中最深的一條路徑所得的網(wǎng)絡(luò),都有接近最好的模型的性能。
與殘差網(wǎng)絡(luò)的相關(guān)研究一樣,分形網(wǎng)絡(luò)的研究也表明路徑的有效長度才是訓(xùn)練深度網(wǎng)絡(luò)的真正影響因素,不論是分形網(wǎng)絡(luò),還是殘差網(wǎng)絡(luò),都擁有更短的有效的梯度傳播路徑,從而使得深層網(wǎng)絡(luò)訓(xùn)練更不容易過擬合。
[1]?Larsson G, Maire M, Shakhnarovich G. Fractalnet: Ultra-deep neural networks without residuals[J]. arXiv preprint arXiv:1605.07648, 2016.
3 一切可連-環(huán)形網(wǎng)絡(luò)
這是一個基于跳層的復(fù)雜拓?fù)渚W(wǎng)絡(luò)結(jié)構(gòu)。
有三AI知識星球-網(wǎng)絡(luò)結(jié)構(gòu)1000變
CliqueNet
DenseNet通過復(fù)用不同層級的特征圖,提高了通道的利用率,不過它的連接是前向的,即信息只能從淺層向深層傳遞,而CliqueNet則更進(jìn)一步,信息的傳遞是雙向的。
作者/編輯 言有三
結(jié)構(gòu)如上圖所示,CliqueNet不僅有前傳的部分,還有后傳,這種網(wǎng)絡(luò)架構(gòu)同時受到了RNN等循環(huán)網(wǎng)絡(luò)和注意力機(jī)制的啟發(fā),使得特征圖重復(fù)使用而且更加精煉。
CliqueNet的訓(xùn)練包含兩個階段。第一個階段與 DenseNet 相同,即圖中的Stage-1,此時淺層特征向深層進(jìn)行傳遞,這可以視為初始化過程。
第二個階段中每一層不僅接受前面所有層的特征圖,也接受后面層級的特征圖反饋。可以看出這是一種循環(huán)的反饋結(jié)構(gòu),可以利用更高級視覺信息來精煉前面層級的特征,實現(xiàn)空間注意力的效果。實驗結(jié)果表明,它有效地抑制了背景和噪聲的激活。
整體的網(wǎng)絡(luò)架構(gòu)如上:網(wǎng)絡(luò)由很多的block組成,每一個block的stage II的特征通過global pool串接生成最終的特征。與DenseNet的不同之處在于,隨著網(wǎng)絡(luò)架構(gòu),每一個block的輸入輸出特征圖不需要增加,從而更加高效,結(jié)果如下:
從上表可以看出,參數(shù)量和精度是非常具有優(yōu)勢的。
[1]?Yang Y, Zhong Z, Shen T, et al. Convolutional neural networks with alternately updated clique[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 2413-2422.
4 不規(guī)則的卷積核-可變形網(wǎng)絡(luò)
這是一個卷積核的形狀相關(guān)的網(wǎng)絡(luò)結(jié)構(gòu)。
有三AI知識星球-網(wǎng)絡(luò)結(jié)構(gòu)1000變
Deformable Convolution
卷積操作本身具有非常固定的幾何結(jié)構(gòu),標(biāo)準(zhǔn)的卷積操作是一個非常規(guī)矩的采樣,通常是正方形,如果卷積核采用非規(guī)矩的采樣,即它的形狀不再是標(biāo)準(zhǔn)的方形,而是任意形狀,則稱之為可形變卷積(Deformable Convolution)。
作者/編輯 言有三
要描述上面的卷積核,不僅僅需要權(quán)重系數(shù),還需要每一個點的偏移量,可變形卷積的思想最早以Active Convolution的形式被提出。
在Active Convolution中,卷積核的各個分量都有自己的偏移量,對于一個3*3的卷積,就包含了18個系數(shù),其中X方向和Y方向的偏移量各9個。不過各個通道共享該系數(shù),所以與輸入輸出通道數(shù)無關(guān)。
對于輸入通道為M,輸出通道為N,使用3*3的卷積的Active Convolution,權(quán)重參數(shù)量為M*N*3*3,偏移參數(shù)量為2*3*3,遠(yuǎn)遠(yuǎn)小于權(quán)重參數(shù)量,所以增加的參數(shù)量幾乎可以忽略不計。
在Deformable convolutional networks,每一個通道不共享偏移量,偏移參數(shù)量為2*M*3*3,增加的參數(shù)量比Active Convolution更多,但是相比卷積核權(quán)重參數(shù)量M*N*3*3,仍然小很多,所以不會大幅度增加模型的大小,而且實際實現(xiàn)時可以對輸出通道進(jìn)行分組。
從上圖就可以看出可變形卷積有更靈活的感受野。
可變形卷積的實現(xiàn)只需要增加偏移量的學(xué)習(xí),實際就是多了一個offset層,給offset輸出通道數(shù)變量,我們還可以對輸出進(jìn)行分組,控制要學(xué)習(xí)的變形的種類。
最后看一下參數(shù)對比和性能。
實驗了各個網(wǎng)絡(luò)層的結(jié)果,參數(shù)量的增加很小,性能也是提升的。具體的效果如何,大家不妨用自己的實驗結(jié)果來驗證。
[1] Jeon Y , Kim J . Active Convolution: Learning the Shape of Convolution for Image Classification[J]. 2017.
[2] Dai J, Qi H, Xiong Y, et al. Deformable Convolutional Networks[J]. 2017.
5 測試可變的網(wǎng)絡(luò)-可分叉網(wǎng)絡(luò)
這是一個推理時動態(tài)變化的網(wǎng)絡(luò)結(jié)構(gòu)。
有三AI知識星球-網(wǎng)絡(luò)結(jié)構(gòu)1000變
BranchyNet
通常來說模型訓(xùn)練完之后結(jié)構(gòu)就是固定的,測試時圖片沿著固定的通路進(jìn)行計算。然而測試樣本本身有不同的難度,簡單的樣本只需要少量的計算量就可以完成任務(wù),困難的樣本則需要更多的計算量。
作者/編輯 言有三
如上圖所示,它在正常網(wǎng)絡(luò)通道上包含了多個旁路分支,這樣的思想是基于觀察到隨著網(wǎng)絡(luò)的加深,表征能力越來越強(qiáng),大部分簡單的圖片可以在較淺層時學(xué)習(xí)到足以識別的特征,如上圖中的Exit 1通道。一些更難的樣本需要進(jìn)一步的學(xué)習(xí),如上圖中的Exit 2通道,而只有極少數(shù)樣本需要整個網(wǎng)絡(luò),如Exit3通道。這樣的思想可以實現(xiàn)精度和計算量的平衡,對于大部分樣本,可以用更小的計算量完成任務(wù)。
那么如何判斷是否可以提前結(jié)束呢?在提出該網(wǎng)絡(luò)的論文中,作者采用分類信息熵,一旦該通道的分類信息熵低于某一個閾值,說明已經(jīng)以很高的置信度獲得了分類的結(jié)果,直到最終的通道。
在訓(xùn)練的時候,每一個通道都會對損失有貢獻(xiàn),越靠近淺層的網(wǎng)絡(luò)權(quán)重越大。多通道的損失不僅增強(qiáng)了梯度信息,也在一定程度上實現(xiàn)了正則化。
將BranchyNet的設(shè)計思想用于LeNet,AlexNet,ResNet結(jié)構(gòu)后,在維持性能的前提下,加速效果明顯。
對于擁有N個分支的網(wǎng)絡(luò),需要的就是N-1個閾值,因為最后一個分支不需要閾值。
LeNet系列網(wǎng)絡(luò)可以讓超過90%的樣本在第一個分支提前終止,AlexNet提前終止樣本比例也超過一半,ResNet提前終止樣本比例超過了40%。
[1] Teerapittayanon S, McDanel B, Kung H T. Branchynet: Fast inference via early exiting from deep neural networks[C]//2016 23rd International Conference on Pattern Recognition (ICPR). IEEE, 2016: 2464-2469.
更多相關(guān)模型的解讀,在有三AI知識星球中進(jìn)行剖析,感興趣的可以來,【知識星球】超3萬字的網(wǎng)絡(luò)結(jié)構(gòu)解讀,學(xué)習(xí)必備。
有三AI夏季劃
暑期正濃,有三AI夏季劃進(jìn)行中,相比春季劃內(nèi)容更難更全,且更加貼近工業(yè)界實戰(zhàn),目標(biāo)是系統(tǒng)性成長為中級CV算法工程師。這一次的報名周期會持續(xù)到國慶,請有需要的同學(xué)持續(xù)關(guān)注,點擊圖片閱讀詳細(xì)信息。
有三AI“夏季劃”出爐,今夏進(jìn)階中級CV算法工程師
轉(zhuǎn)載文章請后臺聯(lián)系
侵權(quán)必究
往期知識星球
有三AI知識星球官宣,BAT等大咖等你來撩
揭秘7大AI學(xué)習(xí)板塊,這個星球推薦你擁有
有三AI 1000問回歸,備戰(zhàn)秋招,更多,更快,更好,等你來戰(zhàn)!
【知識星球】做作業(yè)還能贏獎金,傳統(tǒng)圖像/機(jī)器學(xué)習(xí)/深度學(xué)習(xí)盡在不言
【知識星球】顏值,自拍,美學(xué)三大任務(wù)簡介和數(shù)據(jù)集下載
【知識星球】數(shù)據(jù)集板塊重磅發(fā)布,海量數(shù)據(jù)集介紹與下載
【知識星球】貓貓狗狗與深度學(xué)習(xí)那些事兒
【知識星球】超3萬字的網(wǎng)絡(luò)結(jié)構(gòu)解讀,學(xué)習(xí)必備
【知識星球】視頻分類/行為識別網(wǎng)絡(luò)和數(shù)據(jù)集上新
【知識星球】3D網(wǎng)絡(luò)結(jié)構(gòu)解讀系列上新
【知識星球】動態(tài)推理網(wǎng)絡(luò)結(jié)構(gòu)上新,不是所有的網(wǎng)絡(luò)都是不變的
【知識星球】Attention網(wǎng)絡(luò)結(jié)構(gòu)上新,聚焦才能贏
【知識星球】幾個人像分割數(shù)據(jù)集簡介和下載
總結(jié)
以上是生活随笔為你收集整理的【知识星球】总有些骨骼轻奇,姿态妖娆的模型结构设计,不知道你知不知道,反正我知道一些...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【每周论文推荐】 初入深度学习CV领域必
- 下一篇: 【NLP】 理解NLP中网红特征抽取器T