MIT韓松等人團(tuán)隊(duì)開(kāi)發(fā)了一種高效的神經(jīng)結(jié)構(gòu)搜索算法,可以為在特定硬件上自動(dòng)設(shè)計(jì)快速運(yùn)行的神經(jīng)網(wǎng)絡(luò)提供一個(gè)“按鈕型”解決方案,算法設(shè)計(jì)和優(yōu)化的機(jī)器學(xué)習(xí)模型比傳統(tǒng)方法快200倍。
使用算法自動(dòng)設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)是人工智能的一個(gè)新領(lǐng)域,而且算法設(shè)計(jì)的系統(tǒng)比人類(lèi)工程師開(kāi)發(fā)的系統(tǒng)更準(zhǔn)確、更高效。
但是這種所謂的神經(jīng)結(jié)構(gòu)搜索(NAS)技術(shù)在計(jì)算上非常昂貴。
谷歌最近開(kāi)發(fā)的最先進(jìn)的NAS算法,它可以在一組GPU上運(yùn)行,需要48000小時(shí)來(lái)生成一個(gè)用于圖像分類(lèi)和檢測(cè)任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)。當(dāng)然了,谷歌擁有并行運(yùn)行數(shù)百個(gè)GPU和其他專(zhuān)用硬件的資金實(shí)力,但這對(duì)其他大部分人來(lái)說(shuō)是遙不可及的。
在5月份即將舉行的ICLR會(huì)議發(fā)表的一篇論文中,MIT的研究人員描述了一種NAS算法,僅需200小時(shí),可以專(zhuān)為目標(biāo)硬件平臺(tái)(當(dāng)在大規(guī)模圖像數(shù)據(jù)集上運(yùn)行時(shí))直接學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)。這可以使這類(lèi)算法得到更廣泛的使用。
論文:ProxylessNAS: 在目標(biāo)任務(wù)和硬件上直接搜索神經(jīng)架構(gòu)
地址:https://arxiv.org/pdf/1812.00332.pdf
研究人員表示,資源匱乏的研究人員和企業(yè)可以從節(jié)省時(shí)間和成本的算法中受益。論文作者之一、MIT電子工程與計(jì)算機(jī)科學(xué)助理教授、微系統(tǒng)技術(shù)實(shí)驗(yàn)室研究員韓松(Song Han)表示,他們的總體目標(biāo)是“AI民主化”。
MIT電子工程與計(jì)算機(jī)科學(xué)助理教授韓松
他說(shuō):“我們希望通過(guò)在特定硬件上快速運(yùn)行的一個(gè)’按鈕型’(push-button)的解決方案,讓AI專(zhuān)家和非專(zhuān)家都能夠高效地設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)架構(gòu)?!?/p>
韓松補(bǔ)充說(shuō),這樣的NAS算法永遠(yuǎn)不會(huì)取代人類(lèi)工程師?!澳康氖菧p輕設(shè)計(jì)和改進(jìn)神經(jīng)網(wǎng)絡(luò)架構(gòu)所帶來(lái)的重復(fù)和繁瑣的工作,”他說(shuō)。他的團(tuán)隊(duì)中的兩位研究人員Han Cai和Ligeng Zhu參與了論文。
ImageNet最高精度,計(jì)算成本降低200倍
在他們的工作中,研究人員開(kāi)發(fā)了一些方法來(lái)刪除不必要的神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)組件,以縮短計(jì)算時(shí)間,并僅使用一小部分硬件內(nèi)存來(lái)運(yùn)行NAS算法。另一項(xiàng)創(chuàng)新確保每個(gè)輸出的CNN在特定的硬件平臺(tái)(CPU、GPU和移動(dòng)設(shè)備)上運(yùn)行得比傳統(tǒng)方法更高效。在測(cè)試中,研究人員用手機(jī)測(cè)得CNN運(yùn)行速度是傳統(tǒng)方法的1.8倍,準(zhǔn)確度與之相當(dāng)。
CNN的架構(gòu)由可調(diào)參的計(jì)算層(稱(chēng)為“過(guò)濾器”)和過(guò)濾器之間可能的連接組成。過(guò)濾器處理正方形網(wǎng)格形式的圖像像素,如3x3、5x5或7x7,每個(gè)過(guò)濾器覆蓋一個(gè)正方形。過(guò)濾器基本上是在圖像上移動(dòng)的,并將其覆蓋的像素網(wǎng)格的所有顏色合并成單個(gè)像素。不同的層可能具有不同大小的過(guò)濾器,并以不同的方式連接以共享數(shù)據(jù)。輸出是一個(gè)壓縮圖像——來(lái)自所有過(guò)濾器的組合信息——因此可以更容易地由計(jì)算機(jī)進(jìn)行分析。
由于可供選擇的架構(gòu)的數(shù)量——稱(chēng)為“搜索空間”——是如此之大,因此應(yīng)用NAS在大型圖像數(shù)據(jù)集上創(chuàng)建神經(jīng)網(wǎng)絡(luò)在計(jì)算上是令人望而卻步的。工程師們通常在較小的proxy數(shù)據(jù)集上運(yùn)行NAS,并將它們學(xué)到的CNN架構(gòu)轉(zhuǎn)移到目標(biāo)任務(wù)。然而,這種泛化方法降低了模型的精度。此外,相同的輸出架構(gòu)也適用于所有硬件平臺(tái),這造成了效率問(wèn)題。
研究人員直接在ImageNet數(shù)據(jù)集中的一個(gè)圖像分類(lèi)任務(wù)上訓(xùn)練并測(cè)試了他們的新NAS算法。他們首先創(chuàng)建了一個(gè)搜索空間,其中包含所有可能的CNN候選“路徑”(paths)——即層和過(guò)濾器連接以處理數(shù)據(jù)的方式。這使得NAS算法可以自由地找到最優(yōu)的架構(gòu)。
ProxylessNAS在ImageNet上達(dá)到最高精度,且搜索成本的GPU hours減少了200倍
通常,這意味著所有可能的路徑都必須存儲(chǔ)在內(nèi)存中,這將超過(guò)GPU的內(nèi)存限制。為了解決這個(gè)問(wèn)題,研究人員利用了一種稱(chēng)為“路徑級(jí)二值化”(path-level binarization)的技術(shù),這種技術(shù)一次只存儲(chǔ)一個(gè)采樣路徑,并節(jié)省了一個(gè)數(shù)量級(jí)的內(nèi)存消耗。他們將這種二值化與“path-level pruning”相結(jié)合,后者是一種傳統(tǒng)的技術(shù),可以在不影響輸出的情況下學(xué)習(xí)刪除神經(jīng)網(wǎng)絡(luò)中的哪些“神經(jīng)元”。然而,他們提出的新NAS算法并不是丟棄神經(jīng)元,而是修剪了整個(gè)路徑,這完全改變了神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)。
ImageNet上精度和延遲的結(jié)果
在訓(xùn)練中,所有路徑最初都被賦予相同的選擇概率。然后,該算法跟蹤路徑——一次只存儲(chǔ)一個(gè)路徑——以記錄輸出的準(zhǔn)確性和損失(對(duì)錯(cuò)誤預(yù)測(cè)的數(shù)字懲罰)。然后,它調(diào)整路徑的概率,以?xún)?yōu)化精度和效率。最后,該算法修剪掉所有低概率路徑,只保留了概率最高的路徑——這就是最終的CNN架構(gòu)。
硬件感知:測(cè)試延遲只需一部手機(jī)
韓松表示,該研究另一個(gè)關(guān)鍵的創(chuàng)新是使NAS算法具備“硬件感知”(hardware-aware),這意味著它將每個(gè)硬件平臺(tái)上的延遲作為反饋信號(hào)來(lái)優(yōu)化架構(gòu)。
例如,為了測(cè)量移動(dòng)設(shè)備上的延遲,Google這樣的大公司會(huì)使用大量的移動(dòng)設(shè)備,這是非常昂貴的。相反,研究人員構(gòu)建了一個(gè)模型,只使用一部手機(jī)就能預(yù)測(cè)延遲。
不同硬件的延遲結(jié)果
對(duì)于網(wǎng)絡(luò)的每個(gè)所選層,算法都對(duì)該延遲預(yù)測(cè)模型的架構(gòu)進(jìn)行采樣。然后,使用這些信息來(lái)設(shè)計(jì)一個(gè)盡可能快地運(yùn)行的架構(gòu),同時(shí)實(shí)現(xiàn)高精度。在實(shí)驗(yàn)中,研究人員的CNN在移動(dòng)設(shè)備上的運(yùn)行速度幾乎是標(biāo)準(zhǔn)模型的兩倍。
針對(duì)不同硬件優(yōu)化的高效模型
韓松說(shuō),一個(gè)有趣的結(jié)果是,他們的NAS算法設(shè)計(jì)的CNN架構(gòu)長(zhǎng)期以來(lái)被認(rèn)為效率太低,但在研究人員的測(cè)試中,它們實(shí)際上針對(duì)特定的硬件進(jìn)行了優(yōu)化。
例如,工程師基本上已經(jīng)停止使用7x7過(guò)濾器,因?yàn)樗鼈兊挠?jì)算成本比多個(gè)更小的過(guò)濾器更昂貴。然而,研究人員的NAS算法發(fā)現(xiàn),具有部分7x7過(guò)濾器層的架構(gòu)在GPU上運(yùn)行得最快。這是因?yàn)镚PU具有高并行性——意味著它們可以同時(shí)進(jìn)行許多計(jì)算——所以一次處理一個(gè)大過(guò)濾器比一次處理多個(gè)小過(guò)濾器效率更高。
“這與人類(lèi)以前的思維方式背道而馳,”韓松說(shuō)。“搜索空間越大,你能找到的未知事物就越多。你不知道是否會(huì)有比過(guò)去的人類(lèi)經(jīng)驗(yàn)更好的選擇。那就讓AI來(lái)解決吧?!?/p>
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4785瀏覽量
101273 -
自動(dòng)化
+關(guān)注
關(guān)注
29文章
5654瀏覽量
79773 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1210瀏覽量
24861
原文標(biāo)題:MIT華人助理教授新作:加快神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)自動(dòng)化的步伐
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論