CNN網(wǎng)絡(luò)結(jié)構(gòu)的發(fā)展——看懂這一篇就夠了(2)
6. MobileNet系列
V1
使用depthwise separable convolutions;放棄pooling層,而使用stride=2的卷積。標(biāo)準(zhǔn)卷積的卷積核的通道數(shù)等于輸入特征圖的通道數(shù);而depthwise卷積核通道數(shù)是1;還有兩個參數(shù)可以控制,a控制輸入輸出通道數(shù);p控制圖像(特征圖)分辨率。
V2
相比v1有三點不同:1.引入了殘差結(jié)構(gòu);2.在dw之前先進(jìn)行1×1卷積增加feature map通道數(shù),與一般的residual block是不同的;3.pointwise結(jié)束之后棄用ReLU,改為linear激活函數(shù),來防止ReLU對特征的破環(huán)。這樣做是因為dw層提取的特征受限于輸入的通道數(shù),若采用傳統(tǒng)的residual block,先壓縮那dw可提取的特征就更少了,因此一開始不壓縮,反而先擴張。但是當(dāng)采用擴張-卷積-壓縮時,在壓縮之后會碰到一個問題,ReLU會破環(huán)特征,而特征本來就已經(jīng)被壓縮,再經(jīng)過ReLU還會損失一部分特征,應(yīng)該采用linear。
V3
互補搜索技術(shù)組合:由資源受限的NAS執(zhí)行模塊集搜索,NetAdapt執(zhí)行局部搜索;網(wǎng)絡(luò)結(jié)構(gòu)改進(jìn):將最后一步的平均池化層前移并移除最后一個卷積層,引入h-swish激活函數(shù),修改了開始的濾波器組。
V3綜合了v1的深度可分離卷積,v2的具有線性瓶頸的反殘差結(jié)構(gòu),SE結(jié)構(gòu)的輕量級注意力模型。
7. EffNet
EffNet是對MobileNet-v1的改進(jìn),主要思想是:將MobileNet-1的dw層分解層兩個3×1和1×3的dw層,這樣 第一層之后就采用pooling,從而減少第二層的計算量。EffNet比MobileNet-v1和ShuffleNet-v1模型更小,進(jìn)度更高。
8. EfficientNet
研究網(wǎng)絡(luò)設(shè)計時在depth, width, resolution上進(jìn)行擴展的方式,以及之間的相互關(guān)系??梢匀〉酶叩男屎蜏?zhǔn)確率。
9. ResNet
VGG證明更深的網(wǎng)絡(luò)層數(shù)是提高精度的有效手段,但是更深的網(wǎng)絡(luò)極易導(dǎo)致梯度彌散,從而導(dǎo)致網(wǎng)絡(luò)無法收斂。經(jīng)測試,20層以上會隨著層數(shù)增加收斂效果越來越差。ResNet可以很好的解決梯度消失的問題(其實是緩解,并不能真正解決),ResNet增加了shortcut連邊。
10. ResNeXt
基于ResNet和Inception的split+transform+concate結(jié)合。但效果卻比ResNet、Inception、Inception-ResNet效果都要好??梢允褂胓roup convolution。一般來說增加網(wǎng)絡(luò)表達(dá)能力的途徑有三種:1.增加網(wǎng)絡(luò)深度,如從AlexNet到ResNet,但是實驗結(jié)果表明由網(wǎng)絡(luò)深度帶來的提升越來越??;2.增加網(wǎng)絡(luò)模塊的寬度,但是寬度的增加必然帶來指數(shù)級的參數(shù)規(guī)模提升,也非主流CNN設(shè)計;3.改善CNN網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計,如Inception系列和ResNeXt等。且實驗發(fā)現(xiàn)增加Cardinatity即一個block中所具有的相同分支的數(shù)目可以更好的提升模型表達(dá)能力。
11. DenseNet
DenseNet通過特征重用來大幅減少網(wǎng)絡(luò)的參數(shù)量,又在一定程度上緩解了梯度消失問題。
12. SqueezeNet
提出了fire-module:squeeze層+expand層。Squeeze層就是1×1卷積,expand層用1×1和3×3分別卷積,然后concatenation。squeezeNet參數(shù)是alexnet的1/50,經(jīng)過壓縮之后是1/510,但是準(zhǔn)確率和alexnet相當(dāng)。
13. ShuffleNet系列
V1
通過分組卷積與1×1的逐點群卷積核來降低計算量,通過重組通道來豐富各個通道的信息。Xception和ResNeXt在小型網(wǎng)絡(luò)模型中效率較低,因為大量的1×1卷積很耗資源,因此提出逐點群卷積來降低計算復(fù)雜度,但是使用逐點群卷積會有副作用,故在此基礎(chǔ)上提出通道shuffle來幫助信息流通。雖然dw可以減少計算量和參數(shù)量,但是在低功耗設(shè)備上,與密集的操作相比,計算、存儲訪問的效率更差,故shufflenet上旨在bottleneck上使用深度卷積,盡可能減少開銷。
V2
使神經(jīng)網(wǎng)絡(luò)更加高效的CNN網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計準(zhǔn)則:
- 輸入通道數(shù)與輸出通道數(shù)保持相等可以最小化內(nèi)存訪問成本;
- 分組卷積中使用過多的分組會增加內(nèi)存訪問成本;
- 網(wǎng)絡(luò)結(jié)構(gòu)太復(fù)雜(分支和基本單元過多)會降低網(wǎng)絡(luò)的并行程度;
element-wise的操作消耗也不可忽略。
14. SENet
15. SKNet
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。