利用算法自動(dòng)設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)是人工智能的新領(lǐng)域,但稱為神經(jīng)架構(gòu)搜索(NAS)的技術(shù)非常昂貴。美國(guó)麻省理工學(xué)院開(kāi)發(fā)一種新的NAS算法,可以直接學(xué)習(xí)針對(duì)目標(biāo)硬件平臺(tái)的專門卷積神經(jīng)網(wǎng)絡(luò)。當(dāng)在一個(gè)大型圖像數(shù)據(jù)集運(yùn)行時(shí),只需200 GPU小時(shí),而谷歌開(kāi)發(fā)的最佳NAS算法則需要4.8萬(wàn)GPU小時(shí)來(lái)產(chǎn)生一個(gè)卷積神經(jīng)網(wǎng)絡(luò)。研究人員利用“路徑級(jí)二值化”與“路徑級(jí)修剪”相結(jié)合的技術(shù),修剪整個(gè)路徑,剔除所有低概率路徑,只保留概率最高的路徑,最終完全改變神經(jīng)網(wǎng)絡(luò)的架構(gòu)。算法針對(duì)特定硬件進(jìn)行了優(yōu)化,效率大幅提高。這類新算法不會(huì)取代人類工程師,但可以減輕設(shè)計(jì)和改進(jìn)神經(jīng)網(wǎng)絡(luò)所帶來(lái)的重復(fù)性繁瑣工作。 MIT電子工程和計(jì)算機(jī)科學(xué)助理教授Song Han表示:“在模型大小、推理延遲、準(zhǔn)確性和模型容量之間存在各種各樣的權(quán)衡?!彼a(bǔ)充說(shuō):“(這些)加起來(lái)就是一個(gè)巨大的設(shè)計(jì)空間。以前,人們?cè)O(shè)計(jì)了基于啟發(fā)法的神經(jīng)網(wǎng)絡(luò)。神經(jīng)架構(gòu)搜索試圖將這種勞動(dòng)密集型的、基于啟發(fā)法的探索轉(zhuǎn)變?yōu)榛趯W(xué)習(xí)的、基于AI的設(shè)計(jì)空間探索。就像AI可以學(xué)習(xí)下圍棋一樣,AI也可以學(xué)習(xí)如何設(shè)計(jì)一個(gè)神經(jīng)網(wǎng)絡(luò)?!?/p> 就像在圍棋和國(guó)際象棋中獲勝的AI程序已經(jīng)向這些游戲的大師們教授新策略一樣,AI優(yōu)化的AI設(shè)計(jì)結(jié)果為AI神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)提供了新的方法。 MIT的新算法加速了其開(kāi)發(fā)的AI神經(jīng)網(wǎng)絡(luò)的類型為卷積神經(jīng)網(wǎng)絡(luò) (CNN)。CNN通常是用于圖像識(shí)別程序的首選神經(jīng)網(wǎng)絡(luò)。除了圖像和視頻領(lǐng)域的應(yīng)用外,CNN在自然語(yǔ)言處理和藥物發(fā)現(xiàn)等領(lǐng)域也有所應(yīng)用。 MIT的Han指出,一旦他們的算法建立起最優(yōu)的CNN,所得到的系統(tǒng)很可能將圖像分類的速度提高到其他神經(jīng)架構(gòu)搜索構(gòu)建的AI的1.8倍。 Han的團(tuán)隊(duì)能夠以如此驚人的速度精確定位最優(yōu)的CNN設(shè)計(jì),得益于三個(gè)重要的想法。 首先,他們減少了運(yùn)行神經(jīng)架構(gòu)搜索的GPU的內(nèi)存負(fù)載。一個(gè)標(biāo)準(zhǔn)的神經(jīng)結(jié)構(gòu)搜索可以同時(shí)檢查網(wǎng)絡(luò)中神經(jīng)層之間所有可能的連接。相反,Han的團(tuán)隊(duì)每次只在GPU的內(nèi)存中保存一條路徑。這個(gè)技巧可以在僅使用十分之一內(nèi)存空間的情況下對(duì)參數(shù)空間進(jìn)行完整的搜索,從而使他們的搜索覆蓋更多的網(wǎng)絡(luò)配置,而不會(huì)耗盡芯片上的空間。 他們的第二個(gè)錦囊妙計(jì)是從已被丟棄的神經(jīng)網(wǎng)絡(luò)搜索中刪除整個(gè)路徑,這顯著加快了神經(jīng)網(wǎng)絡(luò)搜索的速度。(通常,神經(jīng)結(jié)構(gòu)搜索只丟棄單個(gè)“神經(jīng)元”,刪除掉所有次優(yōu)的神經(jīng)網(wǎng)絡(luò)連接。) 第三個(gè)創(chuàng)新之處涉及使神經(jīng)網(wǎng)絡(luò)搜索意識(shí)到AI系統(tǒng)可能正在運(yùn)行的每種類型硬件的延遲時(shí)間——無(wú)論是直接的CPU還是用于移動(dòng)平臺(tái)的GPU加速系統(tǒng)。 令人驚訝的是,關(guān)于一些類型的圖像識(shí)別神經(jīng)網(wǎng)絡(luò)的傳統(tǒng)觀點(diǎn)是錯(cuò)誤的。從某種意義上說(shuō),AI網(wǎng)絡(luò)設(shè)計(jì)師在設(shè)計(jì)主要運(yùn)行在GPU系統(tǒng)上的網(wǎng)絡(luò)時(shí),他們的想法仍然停留在CPU時(shí)代。 CNN在其圖像識(shí)別算法中使用過(guò)濾器,這些過(guò)濾器是由3×3、5×5或7×7像素組成的正方形網(wǎng)格。傳統(tǒng)上,很少使用7×7大小的過(guò)濾器,因?yàn)槿藗冋J(rèn)為運(yùn)行多層3×3過(guò)濾器比運(yùn)行單個(gè)7×7過(guò)濾器更快。 然而,AI優(yōu)化的AI使用了相當(dāng)數(shù)量的7×7過(guò)濾器——Han認(rèn)為,這是當(dāng)今大多數(shù)AI計(jì)算中GPU占主導(dǎo)地位的一個(gè)原因。 “我們發(fā)現(xiàn),在GPU上運(yùn)行多層7×7過(guò)濾器更容易,因?yàn)镚PU具有很大的并行性,”Han說(shuō)?!岸艺{(diào)用一個(gè)大型內(nèi)核調(diào)用比調(diào)用幾個(gè)小型內(nèi)核調(diào)用更有效?!?/p> 來(lái)源:網(wǎng)絡(luò) |
|