博客專欄

        EEPW首頁 > 博客 > CNN網絡結構的發展——看懂這一篇就夠了(2)

        CNN網絡結構的發展——看懂這一篇就夠了(2)

        發布人:數據派THU 時間:2023-08-04 來源:工程師 發布文章

        6. MobileNet系列

        V1

        使用depthwise separable convolutions;放棄pooling層,而使用stride=2的卷積。標準卷積的卷積核的通道數等于輸入特征圖的通道數;而depthwise卷積核通道數是1;還有兩個參數可以控制,a控制輸入輸出通道數;p控制圖像(特征圖)分辨率。

        圖片


        圖片

        V2

        相比v1有三點不同:1.引入了殘差結構;2.在dw之前先進行1×1卷積增加feature map通道數,與一般的residual block是不同的;3.pointwise結束之后棄用ReLU,改為linear激活函數,來防止ReLU對特征的破環。這樣做是因為dw層提取的特征受限于輸入的通道數,若采用傳統的residual block,先壓縮那dw可提取的特征就更少了,因此一開始不壓縮,反而先擴張。但是當采用擴張-卷積-壓縮時,在壓縮之后會碰到一個問題,ReLU會破環特征,而特征本來就已經被壓縮,再經過ReLU還會損失一部分特征,應該采用linear。

        圖片圖片


        V3

        互補搜索技術組合:由資源受限的NAS執行模塊集搜索,NetAdapt執行局部搜索;網絡結構改進:將最后一步的平均池化層前移并移除最后一個卷積層,引入h-swish激活函數,修改了開始的濾波器組。

        V3綜合了v1的深度可分離卷積,v2的具有線性瓶頸的反殘差結構,SE結構的輕量級注意力模型。

        圖片圖片


        圖片


        7. EffNet

        EffNet是對MobileNet-v1的改進,主要思想是:將MobileNet-1的dw層分解層兩個3×1和1×3的dw層,這樣 第一層之后就采用pooling,從而減少第二層的計算量。EffNet比MobileNet-v1和ShuffleNet-v1模型更小,進度更高。

        圖片


        圖片


        8. EfficientNet

        研究網絡設計時在depth, width, resolution上進行擴展的方式,以及之間的相互關系。可以取得更高的效率和準確率。

        圖片

        9. ResNet

        VGG證明更深的網絡層數是提高精度的有效手段,但是更深的網絡極易導致梯度彌散,從而導致網絡無法收斂。經測試,20層以上會隨著層數增加收斂效果越來越差。ResNet可以很好的解決梯度消失的問題(其實是緩解,并不能真正解決),ResNet增加了shortcut連邊。

        圖片


        10. ResNeXt

        基于ResNet和Inception的split+transform+concate結合。但效果卻比ResNet、Inception、Inception-ResNet效果都要好。可以使用group convolution。一般來說增加網絡表達能力的途徑有三種:1.增加網絡深度,如從AlexNet到ResNet,但是實驗結果表明由網絡深度帶來的提升越來越??;2.增加網絡模塊的寬度,但是寬度的增加必然帶來指數級的參數規模提升,也非主流CNN設計;3.改善CNN網絡結構設計,如Inception系列和ResNeXt等。且實驗發現增加Cardinatity即一個block中所具有的相同分支的數目可以更好的提升模型表達能力。

        圖片


        圖片


        11. DenseNet

        DenseNet通過特征重用來大幅減少網絡的參數量,又在一定程度上緩解了梯度消失問題。

        圖片


        12. SqueezeNet

        提出了fire-module:squeeze層+expand層。Squeeze層就是1×1卷積,expand層用1×1和3×3分別卷積,然后concatenation。squeezeNet參數是alexnet的1/50,經過壓縮之后是1/510,但是準確率和alexnet相當。

        圖片


        13. ShuffleNet系列

        V1

        通過分組卷積與1×1的逐點群卷積核來降低計算量,通過重組通道來豐富各個通道的信息。Xception和ResNeXt在小型網絡模型中效率較低,因為大量的1×1卷積很耗資源,因此提出逐點群卷積來降低計算復雜度,但是使用逐點群卷積會有副作用,故在此基礎上提出通道shuffle來幫助信息流通。雖然dw可以減少計算量和參數量,但是在低功耗設備上,與密集的操作相比,計算、存儲訪問的效率更差,故shufflenet上旨在bottleneck上使用深度卷積,盡可能減少開銷。

        圖片

        V2

        使神經網絡更加高效的CNN網絡結構設計準則:

        • 輸入通道數與輸出通道數保持相等可以最小化內存訪問成本;
        • 分組卷積中使用過多的分組會增加內存訪問成本;
        • 網絡結構太復雜(分支和基本單元過多)會降低網絡的并行程度;
        • element-wise的操作消耗也不可忽略。

        圖片

        14. SENet

        圖片

        15. SKNet

        圖片


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 佛冈县| 苏尼特右旗| 泰和县| 乾安县| 神农架林区| 静海县| 浠水县| 民乐县| 缙云县| 金平| 右玉县| 额济纳旗| 陇西县| 永胜县| 江北区| 图木舒克市| 阿拉善左旗| 山阴县| 肃北| 永顺县| 丹巴县| 浦东新区| 静宁县| 宣汉县| 临江市| 防城港市| 颍上县| 芦山县| 泊头市| 广丰县| 察哈| 大丰市| 都江堰市| 肥乡县| 吉林市| 江安县| 黑水县| 若尔盖县| 澄江县| 从江县| 扶绥县|