摩爾定律的迫在眉睫和深度學習的不斷使用推動了針對特定神經(jīng)體系結(jié)構(gòu)進行優(yōu)化的定制芯片的設計。這些定制芯片也被稱為加速器,可以顯著地增加可用的算力,從而提高神經(jīng)網(wǎng)絡的性能以及廣泛應用的可能性。
在談到有關(guān)該公司是如何利用人工智能促進其定制芯片的研發(fā)時,Google Brain的總監(jiān)杰夫迪恩(Jeff Dean)指出,在某些情況下,深度學習可以比人類做出更好的決策,像是規(guī)劃芯片中的電路布局。
2月初,Google發(fā)表了論文《阿波羅:可遷移架構(gòu)探索》(Apollo:Architecture Exploration),講述了名為Apollo的研究項目,該項目提供了一種通用的芯片架構(gòu)探索框架。
芯片架構(gòu)指的是芯片功能組件的設計,它們?nèi)绾蜗嗷プ饔靡约败浖?a href="http://www.wenjunhu.com/v/tag/1730/" target="_blank">程序員應如何訪問這些組件。例如,經(jīng)典的Intel x86處理器具有一定數(shù)量的片上內(nèi)存、專用的數(shù)學邏輯單元和寄存器以一定的組合方式組成,這種組合方式賦予「英特爾架構(gòu)」以意義。
定制芯片需要高效的架構(gòu)探索方法。然而,由于搜索空間呈指數(shù)級增長,而目標函數(shù)又是一個黑匣子,優(yōu)化架構(gòu)的參數(shù)是一個艱巨的任務,通常需要專業(yè)知識。施加在參數(shù)上的約束進一步使有效配置的識別變得復雜。
為了解決上述問題,Apollo程序執(zhí)行的是適合運行某種神經(jīng)網(wǎng)絡的架構(gòu)的探索。
這樣,目標就變成了,對于芯片架構(gòu)來說正確的參數(shù)是什么,對于給定的神經(jīng)網(wǎng)絡任務,芯片應滿足哪些標準?
該團隊將目標函數(shù)定義為找到適合于給定的AI任務的某種正確的數(shù)學運算單元組合,并對超過4.52億個參數(shù)進行排序檢索,包括將使用多少個數(shù)學運算單元(處理器)以及對于給定模型而言最佳的參數(shù)存儲量和激活存儲量。
圖示:人工智能加速器芯片的搜索空間,即芯片架構(gòu)必須優(yōu)化的功能塊。許多AI芯片的特征是用于大量簡單數(shù)學運算的并行,相同的處理器用于執(zhí)行許多矢量矩陣乘法,這是神經(jīng)網(wǎng)絡處理的主力軍。(來源:Google Blog)
他們選擇了一個名為MobileNet的較為簡單的AI任務進行測試,這是一種由資源節(jié)約型網(wǎng)絡組成的卷積神經(jīng)網(wǎng)絡。實驗演示了如何利用針對復雜的高維度的定制優(yōu)化策略進行架構(gòu)探索,并以合理的少量評估(約占搜索空間的0.0004%)產(chǎn)生大的改進(高達24.6%)。此外,他們還測試了執(zhí)行諸如對象檢測和語義分段之類任務的工作負載。
Apollo可以采用多種方法進行所謂的「黑盒優(yōu)化」,并且可以比較每種方法在解決不同目標的效果,使這些方法適應于特定的任務。
該團隊在架構(gòu)探索的背景下探索了四種優(yōu)化策略,這些優(yōu)化策略實際上是為開發(fā)神經(jīng)網(wǎng)絡體系結(jié)構(gòu)而設計的,包括隨機采樣、貝葉斯優(yōu)化、為「設計」 DNA序列而研發(fā)的進化搜索以及基于總體的黑盒優(yōu)化(P3BO)。
對這些優(yōu)化進行比較的主要目的是為了有條不紊地指出最有效的方法。實驗結(jié)果表明,進化方法和P3BO優(yōu)于隨機選擇和貝葉斯優(yōu)化。
圖示:Apollo的優(yōu)點是可以將各種現(xiàn)有的優(yōu)化方法相結(jié)合,以了解它們?nèi)绾卧趦?yōu)化新型芯片設計的體系結(jié)構(gòu)中相互疊加。(來源:Google Blog)
Apollo的搜索是高效的,可遷移的。
研究人員將P3BO與架構(gòu)解決方案的半窮盡搜索集進行了比較,發(fā)現(xiàn)基于總體的黑盒優(yōu)化方法能夠發(fā)現(xiàn)并使用像是計算與內(nèi)存這類的電路中權(quán)衡取舍的解決方案,而這些通常需要特定領域的知識。并且,基于總體的方法可以找到半窮盡搜索無法找到的解決方案。
因此,Apollo能夠弄清楚不同的優(yōu)化方法在芯片設計中的效果如何。但是,它還可以做更多的事情,那就是它可以運用「遷移學習」展示如何依次改進這些優(yōu)化。
Yazdanbakhsh及其同事將Apollo稱為「第一個可遷移的架構(gòu)探索的基礎框架」,它在不同的芯片上工作的越多,越能更好地探索可能的芯片體系結(jié)構(gòu),從而將學到的知識遷移到每個新任務上。研究表明,遷移學習可以有效地改善目標體系結(jié)構(gòu)的探索,尤其是當優(yōu)化約束具有更嚴格的界限時。
使用AI設計運行AI的芯片具有很好的對稱性。
Apollo代表著一個有趣的發(fā)展,超越了之前所說的機器學習僅用于一些「布局與布線」之類的低層次的設計決策。相比之下,Apollo程序執(zhí)行的是更高層次的「架構(gòu)探索」,而不僅僅是創(chuàng)建類似于建筑中的平面設計圖的產(chǎn)物。
當被問及Dean的描述時,主要作者阿米爾雅茲丹巴赫什(Amir Yazdanbakhsh)解釋:「我會看到我們的工作和布局布線工作是正交且互補的。相比于計算堆棧中的布局布線,架構(gòu)探索的層次要更高。」他認為「架構(gòu)探索」是存在更高性能的改進余地的方式。
但是,為MobileNet或任何其他網(wǎng)絡設計的芯片受到一定程度上的適用性的限制。
文章的作者之一Berkin Akin指出優(yōu)化結(jié)果是芯片和神經(jīng)網(wǎng)絡共同優(yōu)化的產(chǎn)物。「神經(jīng)網(wǎng)絡架構(gòu)必須了解目標硬件架構(gòu),以優(yōu)化整體系統(tǒng)性能和能效?!顾硎荆珹pollo對于給定的工作負載可能就足夠了,但在芯片和神經(jīng)網(wǎng)絡之間進行「共同優(yōu)化」,將在未來產(chǎn)生其他好處。
「我們用ML為給定的工作負載找到最佳的硬件體系結(jié)構(gòu)。當然,在某些情況下,可以靈活地同時優(yōu)化硬件設計和神經(jīng)網(wǎng)絡體系結(jié)構(gòu)。實際上,我們正在進行一些此類聯(lián)合優(yōu)化的工作,我們希望可以取得更好的折衷。.. 」
因此,雖然芯片設計受到AI的工作量的影響,但是新的芯片設計進程也會對神經(jīng)網(wǎng)絡的設計產(chǎn)生相當?shù)挠绊?,這類的辯證法在未來幾年中可能會以有趣的方式發(fā)展。
責任編輯:YYX
-
芯片
+關(guān)注
關(guān)注
456文章
51157瀏覽量
426666 -
Google
+關(guān)注
關(guān)注
5文章
1772瀏覽量
57748 -
AI
+關(guān)注
關(guān)注
87文章
31493瀏覽量
270097
發(fā)布評論請先 登錄
相關(guān)推薦
評論