華為提出DyNet:動態(tài)卷積
點(diǎn)擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時間送達(dá)
本文轉(zhuǎn)自 | 視覺算法
背景
《DyNet: Dynamic Convolution for Accelerating Convolutional Neural Networks》是華為掛出的論文,其核心思想和谷歌的CondConv類似,產(chǎn)生kernel的方式有細(xì)微的不同,同時也取得了很高的性能漲點(diǎn)。

論文地址:http://de.arxiv.org/abs/2004.10694
一、 研究動機(jī):
該論文利用了動態(tài)卷積來做神經(jīng)網(wǎng)絡(luò)的加速。該文章對activation進(jìn)行了協(xié)方差的分析和可視化,從而提出了Coefficient prediction模塊和Dynamic generation模塊來產(chǎn)生動態(tài)卷積。相比于標(biāo)準(zhǔn)卷積,相同的通道數(shù)下,動態(tài)卷積的性能有明顯的提升。
二、研究方法
整體思路如圖所示:

其核心思想和谷歌提出的條件卷積類似,通過activation生成一組權(quán)重,然后對fixed 權(quán)重進(jìn)行加權(quán)求和生成動態(tài)卷積的權(quán)重。和CondConv主要區(qū)別在于該論文生成的權(quán)重參數(shù)更多,對于谷歌而言,一組卷積核的權(quán)重是共享的,而該論文是不共享的。
具體來看:
首先作者對現(xiàn)有網(wǎng)絡(luò)的輸出進(jìn)行了協(xié)方差的統(tǒng)計和可視化:

其中S代表相關(guān)性最強(qiáng),M、W、N依次減少。
可以看到,VGG的網(wǎng)絡(luò)輸出有較強(qiáng)的相關(guān)性。MobileNetv2的相關(guān)性相對較小,對于裁剪算法也較難進(jìn)行裁剪。
協(xié)方差預(yù)測模塊:

主要是生成卷積核采用一個全局pooling,然后采用全連接生成對應(yīng)的權(quán)重。注意此處c的維度應(yīng)該是 的。而在谷歌Condconv此處對應(yīng)的應(yīng)該是gt。
動態(tài)卷積核生成模塊:

如前圖所示,是各個group中的加權(quán)求和。
訓(xùn)練算法:
在訓(xùn)練過程中,由于每張圖的卷積核都是不一致的,所以在一個batch里并行計算是困難的(在曠視DRConv中,是用過將batch方向的并行計算堆疊到c方向通過group卷積實現(xiàn)),該論文通過等效在特征圖上進(jìn)行等效加權(quán),這樣就類似于通道上的注意力機(jī)制:(

作者給出了mobileNet、shuffleNet、resnet18、resnet50上的增加動態(tài)卷積的方式:

三、實驗結(jié)果:

可以看到,在相近的計算量下,Dy-MobileNetv3-small的性能更高;在性能接近的情況下,Dy-ResNet50的計算量減少了三分之二。
從可視化的角度看:

從可視化上看,MobileNetv2的activation的協(xié)方差來的更小。
四、總結(jié)分析:
該論文從輕量設(shè)計的角度提出了DyNet,能夠有效地降低模型的計算量。思路上和CondConv較為接近,在實現(xiàn)上類似于通道注意力機(jī)制,另一方面該論文的訓(xùn)練采用了cosine學(xué)習(xí)率、label smooth等技巧。
交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~

