<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          加州大學(xué)與微軟提出MicroNet,比MobileNetv3更小更快的網(wǎng)絡(luò)

          共 3814字,需瀏覽 8分鐘

           ·

          2021-09-11 18:19

          點(diǎn)擊左上方藍(lán)字關(guān)注我們



          一個(gè)專注于目標(biāo)檢測與深度學(xué)習(xí)知識分享的公眾號

          編者薦語
          今天跟大家分享的論文是MicroNet,它是一種高效的卷積神經(jīng)網(wǎng)絡(luò)具有極低的計(jì)算成本。在邊緣設(shè)備上非常需要這樣的低成本網(wǎng)絡(luò),但是通常會遭受明顯的性能下降。
          轉(zhuǎn)載自 |  邁微AI研習(xí)社


          • 論文地址:https://arxiv.org/pdf/2108.05894.pdf

          • 開源代碼:GitHub目前未開放


          MicroNet基于2個(gè)設(shè)計(jì)原則來處理極低的FLOPs:

          • 1、降低網(wǎng)絡(luò)節(jié)點(diǎn)(神經(jīng)元)之間的連通性不降低網(wǎng)絡(luò)的寬度

          • 2、使用更復(fù)雜的非線性激活函數(shù)來彌補(bǔ)通性網(wǎng)絡(luò)深度的減少所帶來的精度損失


          設(shè)計(jì)方法簡述

          本文設(shè)計(jì)的MicroNet主要是在MobileNet系列上進(jìn)行改進(jìn)和對比,提出了兩項(xiàng)改進(jìn)方法:

          • Micro-Factorized convolution 將MobileNet中的point-wise卷積以及depth-wise卷積分解為低秩矩陣,從而使得通道數(shù)目輸入輸出的連通性得到一個(gè)良好的平衡。
          • Dynamic Shift-Max 使用一種新的激活函數(shù),通過最大化輸入特征圖與其循環(huán)通道偏移之間的多重動(dòng)態(tài)融合,來增強(qiáng)非線性特征。之所以稱之為動(dòng)態(tài)是因?yàn)椋?span style="outline: 0px;max-width: 100%;font-weight: 600;box-sizing: border-box !important;overflow-wrap: break-word !important;">融合過程的參數(shù)依賴于輸入特征圖。


          作者使用Micro-Factorized convolutionDynamic Shift-Max建立了MicroNets家族,最終實(shí)現(xiàn)了低FLOPs的STOA表現(xiàn)。MicroNet-M1在ImageNet分類任務(wù)上僅僅用12 MFLOPs的計(jì)算量,就實(shí)現(xiàn)了61.1%的top1準(zhǔn)確度,比MobileNetV3要強(qiáng)11.3% .


          詳細(xì)解讀

          1. 設(shè)計(jì)原理

          要想實(shí)現(xiàn)低FLOPs,主要是要限制網(wǎng)絡(luò)寬度(通道數(shù))和網(wǎng)絡(luò)深度(網(wǎng)絡(luò)層數(shù))。如果把一個(gè)卷積層抽象為一個(gè)圖,那么該層輸入和輸出中間的連接邊,可以用卷積核的參數(shù)量來衡量。因此作者定義了卷積層連通性(connectivity)的概念,即每個(gè)輸出節(jié)點(diǎn)所連接的邊數(shù)。如果我們把一個(gè)卷積層的計(jì)算量設(shè)為固定值,那么更多的網(wǎng)絡(luò)通道數(shù)就意味著更低的連通性(比如深度可分離卷積,具有較多的通道數(shù)但是有很弱的連通性)。作者認(rèn)為平衡好通道數(shù)目和連通性之間的關(guān)系,避免減少通道數(shù),可以有效地提升網(wǎng)絡(luò)的容量。除此之外,當(dāng)網(wǎng)絡(luò)的深度(層數(shù))大大減少時(shí),其非線性性質(zhì)會受到限制,從而導(dǎo)致明顯的性能下降。因此,作者提出以下兩個(gè)設(shè)計(jì)原則:

          • 1. 通過降低節(jié)點(diǎn)連接性來避免網(wǎng)絡(luò)寬度的減小

          作者是通過分解points-wise卷積以及depth-wise卷積來實(shí)現(xiàn)如上原則。

          • 2. 增強(qiáng)每一層的非線性性質(zhì)來彌補(bǔ)網(wǎng)絡(luò)深度減少所帶來的損失

          作者是通過設(shè)計(jì)了一個(gè)全新的激活函數(shù)來實(shí)現(xiàn)如上原則,稱為Dynamic Shift-Max


          2. Micro-Factorized 卷積

          作者將pointwise卷積和depthwise卷積分解為更為合適的尺度,用來平衡通道數(shù)目和輸入輸出連通性。

          • Micro-Factorized Point-wise Convolution

          將point-wise卷積進(jìn)行分解,原文給出的公式較為復(fù)雜,我這里直接對圖進(jìn)行講解。假設(shè)輸出和輸出通道數(shù)都為C。對于常規(guī)的點(diǎn)卷積,其實(shí)就是一個(gè)C*C的實(shí)矩陣W(C維到C維的線性變換)。

          但是這樣的點(diǎn)卷積是一種稠密的全連接,在這就帶來巨大的計(jì)算負(fù)擔(dān)。為了進(jìn)一步減少計(jì)算量,提升網(wǎng)絡(luò)的稀疏性(降低連通性),作者將原始的稠密矩陣W分解為3個(gè)更加稀疏的矩陣。

          如上圖所示,W為  矩陣,P為一個(gè)  的矩陣,  為一個(gè)   的矩陣,Q也是一個(gè)  的矩陣。其中P和Q都為對角塊矩陣,  為置換矩陣。R為壓縮率,另外分組數(shù)G代表P和Q中矩陣塊的數(shù)目(G自適應(yīng)為  )。聽起來很抽象,我們直接看下面的圖示。


          微分解點(diǎn)卷積網(wǎng)絡(luò)拓?fù)鋱D

          如上圖所示,我們把一個(gè)特征圖(通道)當(dāng)作一個(gè)節(jié)點(diǎn),輸入和輸出都是C=18個(gè)節(jié)點(diǎn), 壓縮率 R=2, 分組數(shù) G=3。原始點(diǎn)卷積就需要一個(gè)18*18的實(shí)矩陣實(shí)現(xiàn)變換。作者將原始的點(diǎn)卷積操作分為3步:

          1. 將18個(gè)節(jié)點(diǎn)映射到9個(gè)節(jié)點(diǎn)(壓縮率為2),分三組卷積,因此每組需要一個(gè)6*3的矩陣。

          2. 將9個(gè)節(jié)點(diǎn)使用置換矩陣,進(jìn)行重新排序。

          3. 將9個(gè)節(jié)點(diǎn)分三組,映射回18個(gè)節(jié)點(diǎn),每組需要一個(gè)3*6的矩陣。


          微分解點(diǎn)卷積矩陣分解圖


          如上圖所示,上圖即為計(jì)算過程中矩陣的形態(tài),其中P和Q為對角塊矩陣,  為置換(排序)矩陣。分解后的3個(gè)矩陣的效果,相當(dāng)于將原始W矩陣分成G*G個(gè)塊,每個(gè)塊的秩都為1。從節(jié)點(diǎn)的拓?fù)鋱D可以看出網(wǎng)絡(luò)是十分稀疏的(非全連接),從上面的矩陣計(jì)算圖示可以看出計(jì)算量會降低。

          • Micro-Factorized Depth-wise Convolution

          對于depth-wise卷積的分解,就是常規(guī)的空間可分離卷積,即將一個(gè)K*K的卷積核分解為兩個(gè)K*1和1*K的向量。


          微分解深度卷積


          將Micro-Factorized Pointwise Convolution和Depth-wise Convolution結(jié)合起來,得到Lite Combination。其并非是簡單地將depthwise和pontwise卷積拼在一起,而是先用depthwise進(jìn)行expand(通道數(shù)增加),再使用pointwise進(jìn)行squeeze(通道壓縮),這樣可以節(jié)省更多的計(jì)算資源用到depthwise上,而非通道融合的pointwise上。

          3. Dynamic Shift-Max

          假設(shè)  為輸入的第i個(gè)通道的特征圖,則定義第i個(gè)通道在第j個(gè)組上的組循環(huán)偏移函數(shù)如下:(C為輸入通道數(shù),G為分組數(shù))


          組循環(huán)偏移函數(shù)


          則引入動(dòng)態(tài)最大偏移函數(shù)(Dynamic Shift-Max)如下:

          Dynamic Shift-Max 激活函數(shù)

          其中  是可學(xué)習(xí)參數(shù),并且是依賴于輸入樣本x的動(dòng)態(tài)參數(shù),類似于SE-Net中的動(dòng)態(tài)通道加權(quán)。動(dòng)態(tài)參數(shù)可以簡單地通過兩個(gè)全連接層后加平均池化層實(shí)現(xiàn)。J和K為手工設(shè)置的超參數(shù),一般設(shè)置J=K=2。特別地,ReLU激活函數(shù)可以看作Dynamic Shift-Max的一種特例,即每個(gè)通道單獨(dú)激活。


          使用dynamic Shift-Max激活函數(shù)的微分解點(diǎn)卷積


          如上圖所示,使用Dynamic Shift-Max改裝后的Micro-Factorized Pointwise Convolution(K=1,J=2),在置換矩陣之后又添加了Group Shift映射,實(shí)現(xiàn)2個(gè)通道的信息融合(每個(gè)節(jié)點(diǎn)都來自兩個(gè)不同組節(jié)點(diǎn)的映射)。通過添加Dynamic Shift-Max激活函數(shù),卷積矩陣W中9個(gè)子矩陣塊的秩從1上升到了2,提高了連通性。

          4. Micro-Net Architecture

          作者介紹了3種不同MicroNet模型,其計(jì)算量FLOPs從6M到44M.它們都是由 Micro-Factorized Pointwise Convolution 和 Micro-Factorized Depth-wise Convolution以不同的形式組合而來,并且它們都使用Dynamic Shift-Max作為激活函數(shù)。


          四種不同形態(tài)的MicroNet


          總結(jié)

          這篇論文主要的創(chuàng)新點(diǎn):

          1. 通過分解卷積核,進(jìn)一步壓縮網(wǎng)絡(luò)的連接性,使得網(wǎng)絡(luò)更加稀疏化,提高計(jì)算性能。

          2. 設(shè)計(jì)了全新的動(dòng)態(tài)激活函數(shù),引入更多的非線性特征,增強(qiáng)模型表現(xiàn)力。


          我在GitHub上開源了一個(gè)加法網(wǎng)絡(luò)硬件加速開源項(xiàng)目,歡迎大家加入,一起完善。



          GitHub鏈接 https://github.com/Charmve/AccANN


          更多模型壓縮、剪枝的內(nèi)容,可以參考CSDN付費(fèi)專欄:


          專欄鏈接 https://blog.csdn.net/charmve/category_10101246.html



          參考資料

          [1] 知乎@有童心的老王 鏈接:https://zhuanlan.zhihu.com/p/337107958

          [2] Micro-Net: Towards Image Recognition with Extremely Low FLOPs

          [3] Mobile-Nets: Efficient Convolutional Neural Networks for Mobile Vision Applications

          [4] Shuffle-Net: An Extremely Efficient Convolutional Neural Network for Mobile Devices

          [5] Squeeze-and-Excitation Networks


          END



          雙一流大學(xué)研究生團(tuán)隊(duì)創(chuàng)建,專注于目標(biāo)檢測與深度學(xué)習(xí),希望可以將分享變成一種習(xí)慣!

          點(diǎn)贊三連,支持一下吧↓

          瀏覽 70
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩三级片在线播放 | 亚洲免费在线观看的高清视频网站 | 中文字幕+乱码+中文ktv | 日韩黄色视频在线 | 2019人人操 |