為移動(dòng)設(shè)備設(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型是很具挑戰(zhàn)性的,因?yàn)橐苿?dòng)設(shè)備的模型需要小,要快,而且仍然要求準(zhǔn)確性。盡管在這三個(gè)維度上設(shè)計(jì)和改進(jìn)模型已經(jīng)有很多研究,但由于需要考慮如此多的結(jié)構(gòu)可能性,手動(dòng)去權(quán)衡這些維度是很有挑戰(zhàn)性的。
在這篇論文中,谷歌大腦AutoML組的研究人員提出一種自動(dòng)神經(jīng)結(jié)構(gòu)搜索方法,用于設(shè)計(jì)資源有限的移動(dòng)端CNN模型(mobile CNN)。
Jeff Dean在推特推薦了這篇論文:這項(xiàng)工作提出將模型的計(jì)算損失合并到神經(jīng)結(jié)構(gòu)搜索的獎(jiǎng)勵(lì)函數(shù)中,以自動(dòng)找到滿(mǎn)足推理速度目標(biāo)的高準(zhǔn)確率的模型。
在以前的工作中,移動(dòng)延遲(mobile latency)通常是通過(guò)另一個(gè)代理(例如FLOPS)來(lái)考慮的,這些代理經(jīng)常不準(zhǔn)確。與之前的工作不同,在我們的實(shí)驗(yàn)中,我們通過(guò)在特定平臺(tái)(如Pixel phone)上執(zhí)行模型,從而直接測(cè)量實(shí)際的推理延遲(inference latency)。
為了進(jìn)一步在靈活性和搜索空間大小之間取得平衡,我們提出了一種新的分解分層搜索空間(factorized hierarchical search space),允許在整個(gè)網(wǎng)絡(luò)中的層存在多樣性。
實(shí)驗(yàn)結(jié)果表明,我們的方法在多個(gè)視覺(jué)任務(wù)中始終優(yōu)于state-of-the-art的移動(dòng)端CNN模型。在ImageNet圖像分類(lèi)任務(wù)中,我們的模型在Pixel phone上達(dá)到74.0%的top-1 精度(延遲為76ms)。達(dá)到相同的top-1精度的條件下,我們的模型比MobileNetV2快1.5倍,比NASNet快2.4倍。在COCO對(duì)象檢測(cè)任務(wù)中,我們的模型實(shí)現(xiàn)了比MobileNets更高的mAP質(zhì)量和更低的延遲。
Platform-Aware神經(jīng)結(jié)構(gòu)搜索
具體來(lái)說(shuō),我們提出一種用于設(shè)計(jì)移動(dòng)端的CNN模型的自動(dòng)神經(jīng)結(jié)構(gòu)搜索方法,稱(chēng)之為Platform-Aware神經(jīng)結(jié)構(gòu)搜索。圖1是Platform-Aware神經(jīng)結(jié)構(gòu)搜索方法的總體視圖,它與以前的方法的主要區(qū)別在于延遲感知多目標(biāo)獎(jiǎng)勵(lì)(latency aware multi-objective reward)和新的搜索空間。
圖1:Platform-Aware神經(jīng)結(jié)構(gòu)搜索的概覽
這一方法主要受到兩個(gè)想法的啟發(fā):
首先,我們將設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)的問(wèn)題表述為一個(gè)多目標(biāo)優(yōu)化問(wèn)題,這個(gè)問(wèn)題要考慮CNN模型的準(zhǔn)確性和推理延遲。然后,我們使用基于強(qiáng)化學(xué)習(xí)的結(jié)構(gòu)搜索來(lái)找到在準(zhǔn)確性和延遲之間實(shí)現(xiàn)最佳權(quán)衡的模型。
其次,我們觀察到先前的自動(dòng)化結(jié)構(gòu)搜索方法主要是搜索幾種類(lèi)型的cells,然后通過(guò)CNN網(wǎng)絡(luò)反復(fù)堆疊相同的cell。這樣搜索到的模型沒(méi)有考慮由于模型的具體形狀不同,卷積之類(lèi)的操作在延遲上有很大差異:例如,2個(gè)3x3的卷積具有同樣的理論FLOPS,但形狀不同的情況下,可能 runtime latency是不同的。
在此基礎(chǔ)上,我們提出一個(gè)分解的分層搜索空間(factorized hierarchical search space),它由很多分解后的塊(factorized blocks)組成,每個(gè)block包含由分層子搜索空間定義的層的list,其中包含不同的卷積運(yùn)算和連接。
圖3:Factorized Hierarchical搜索空間
我們證明了,在一個(gè)架構(gòu)的不同深度應(yīng)該使用不同的操作,并且可以使用利用已測(cè)量的推理延遲作為獎(jiǎng)勵(lì)信號(hào)一部分的架構(gòu)搜索方法來(lái)在這個(gè)巨大的選擇空間中進(jìn)行搜索。
總結(jié)而言,這一研究的主要貢獻(xiàn)有:
我們提出一種基于強(qiáng)化學(xué)習(xí)的多目標(biāo)神經(jīng)結(jié)構(gòu)搜索方法,該方法能夠在低推理延遲的條件下找到高精度的CNN模型。
我們提出一種新的分解分層搜索空間(factorized hierarchical search space),通過(guò)在靈活性和搜索空間大小之間取得適當(dāng)?shù)钠胶猓畲笙薅鹊靥岣咭苿?dòng)設(shè)備上模型的資源效率。
我們?cè)?strong>ImageNet圖像分類(lèi)和COCO對(duì)象檢測(cè)兩個(gè)任務(wù)上,證明了我們的模型相對(duì)state-of-the-art的mobile CNN模型有顯著改進(jìn)。
MnasNet的結(jié)構(gòu)
圖7:MnasNet的結(jié)構(gòu)
圖7的(a)描繪了表1所示的baseline MnasNet的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。它由一系列線(xiàn)性連接的blocks組成,每個(gè)block由不同類(lèi)型的layer組成,如圖7(b) - (f)所示。此外,我們還觀察到一些有趣的發(fā)現(xiàn):
MnasNet有什么特別之處呢?
為了更好地理解MnasNet模型與之前的 mobile CNN模型有何不同,我們注意到這些模型包含的5x5 depthwise的卷積比以前的工作(Zhang et al.1188; Huang et al.1188; Sandler et al.1188)的更多,以前的工作一般只使用3x3 的kernels。實(shí)際上,對(duì)于depthwise可分離的卷積來(lái)說(shuō),5×5 kernels 確實(shí)比3×3 kernels更具資源效率。
layer的多樣性重要嗎?
表3
我們將MnasNet與它的在整個(gè)網(wǎng)絡(luò)中重復(fù)單一類(lèi)型的層的變體進(jìn)行了比較。如表3所示,MnasNet比這些變體在精度和延遲之間的權(quán)衡表現(xiàn)更好,這表明在資源有限的CNN模型中,layer的多樣性相當(dāng)重要。
實(shí)驗(yàn)結(jié)果
ImageNet分類(lèi)性能
我們將所提出的方法應(yīng)用于ImageNet圖像分類(lèi)和COCO對(duì)象檢測(cè)任務(wù)。
表1展示了本模型在ImageNet上的性能。
表1:在ImageNet上進(jìn)行分類(lèi)的性能結(jié)果
本文將MnasNet模型與手動(dòng)設(shè)計(jì)的移動(dòng)模型以及其它自動(dòng)化方法做了比較,其中MnasNet是基準(zhǔn)模型。MnasNet-65和MnasNet-92是同一體系結(jié)構(gòu)搜索實(shí)驗(yàn)中不同延遲的兩種模型(用于比較)。其中,“+SE”表示附加的squeeze-and-excitation優(yōu)化;“#Parameters”表示可訓(xùn)練參數(shù)的數(shù)量;“#Mult-Adds”表示每張圖片multiply-add操作的數(shù)量;“Top-1/5 Acc.”表示在ImageNet驗(yàn)證集上排名第一或前五的精度;“CPU延遲”表示在Pixel1手機(jī)上批量大小為1的推斷延遲。
如表1所示,與當(dāng)前最優(yōu)的MobileNetV2相比,我們的MnasNet模型在Pixel phone平臺(tái)上,在同樣的延遲下,將ImageNet top-1的準(zhǔn)確率提高了2%。
此外,限制目標(biāo)top-1準(zhǔn)確率的條件下,我們的方法得到同樣精度的速度比MobileNetV2快1.5倍,比NASNet快2.4倍。
結(jié)構(gòu)搜索方法
多目標(biāo)搜索方法通過(guò)在方程2中對(duì)α和β設(shè)置不同的值來(lái)設(shè)置硬性或軟性延遲約束。下圖展示了在典型α和β下多目標(biāo)搜索的結(jié)果:
多目標(biāo)搜索結(jié)果
其中,目標(biāo)延遲(target latency)為T(mén)=80ms。上方圖片展示了對(duì)1000個(gè)樣本模型(綠色點(diǎn))的柏拉圖曲線(xiàn)(藍(lán)色線(xiàn));下方圖片展示了模型延遲的直方圖。
模型擴(kuò)展的靈敏度
現(xiàn)實(shí)世界中,各式各樣的應(yīng)用程序有著許多不同的需求,并且移動(dòng)設(shè)備也不是統(tǒng)一的,所以開(kāi)發(fā)人員通常會(huì)做一些擴(kuò)展性方面的工作。下圖便展示了不同模型擴(kuò)展技術(shù)的結(jié)果:
不同模型擴(kuò)展技術(shù)的性能比較
MnasNet表1中的基準(zhǔn)模型。將該基準(zhǔn)模型與MobileNet V2的深度倍增器(depth multiplier)和輸入保持一致。
除了模型擴(kuò)展之外,本文提出的方法還能為任何新的資源約束搜索新的結(jié)構(gòu)。例如,一些視頻應(yīng)用程序可能需要低至25ms的模型延遲。為了滿(mǎn)足這些約束,可以使用更小的輸入規(guī)模和深度倍增器來(lái)擴(kuò)展一個(gè)基準(zhǔn)模型,也可以搜索更適合這個(gè)新延遲約束的模型。圖6就展示了上述兩個(gè)方法的性能比較。
模型擴(kuò)展 vs. 模型搜索
COCO目標(biāo)檢測(cè)性能
對(duì)于COCO目標(biāo)檢測(cè),選擇與表1相同的MnasNet模型作為SSDLite的特征提取器。根據(jù)其他研究人員的建議,只用本文提出的模型與其他SSD或YOLO探測(cè)器進(jìn)行比較。表2展示了在COCO上MnasNet模型的性能。
表2:在COCO上進(jìn)行目標(biāo)檢測(cè)的性能結(jié)果
其中,“#Parameters”表示可訓(xùn)練參數(shù)的數(shù)量;“#Mult-Adds”表示每張圖片multiply-add操作的數(shù)量;mAP表示在test-dev2017上的標(biāo)準(zhǔn)MAP值;mAPS、mAPM、mAPL表示在小型、中等、大型目標(biāo)中的MAP值;“CPU延遲”表示在Pixel1手機(jī)上批量大小為1的推斷延遲。
如表2所示,將我們的模型作為特征提取器插入SSD對(duì)象檢測(cè)框架,在COCO數(shù)據(jù)集上我們的模型在推理延遲和mAP質(zhì)量上都比MobileNetV1和MobileNetV2有提升,并且達(dá)到與 SSD300差不多的mAP質(zhì)量時(shí)(22.9 vs 23.2)計(jì)算成本降低了35倍。
結(jié)論
本文提出了一種利用強(qiáng)化學(xué)習(xí)來(lái)設(shè)計(jì)mobile CNN模型的自動(dòng)神經(jīng)結(jié)構(gòu)搜索方法。這種方法背后的關(guān)鍵想法是將platform-aware的真實(shí)的延遲信息集成到搜索過(guò)程中,并利用新的分解分層搜索空間來(lái)搜索移動(dòng)模型,在準(zhǔn)確性和延遲之間進(jìn)行最佳的權(quán)衡。我們證明了這一方法可以比現(xiàn)有方法更好地自動(dòng)地找到移動(dòng)模型,并在典型的移動(dòng)推理延遲約束下,在ImageNet圖像分類(lèi)和COCO對(duì)象檢測(cè)任務(wù)上獲得新的最優(yōu)結(jié)果。由此產(chǎn)生的MnasNet架構(gòu)還提供了一些有趣的發(fā)現(xiàn),將指導(dǎo)我們?cè)O(shè)計(jì)下一代的mobile CNN模型。
-
谷歌
+關(guān)注
關(guān)注
27文章
6217瀏覽量
106989 -
Layer
+關(guān)注
關(guān)注
0文章
17瀏覽量
6737 -
卷積神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
4文章
368瀏覽量
12101
原文標(biāo)題:計(jì)算成本降低35倍!谷歌發(fā)布手機(jī)端自動(dòng)設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)MnasNet
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論