為了讓人工智慧(AI)加速器在最短延遲內達到最佳精準性,特別是在自動駕駛車(AV)中,TFLOP(兆次浮點運算)已經成為許多所謂大腦晶片的關鍵指標。這場競賽的選手包括Nvidia的Xavier、Mobileye的EyeQ5、特斯拉(Tesla)的全自動駕駛(FSD)電腦晶片,以及NXP-Kalray晶片。

然而,有專家認為這種野蠻處理方式並不可持續。在EE Times的一次獨家專訪中,DeepScale執行長Forrest Iandola提出其不可持續的理由,是因為AI硬體設計師所持有的許多常見假設已經過時。隨著AI應用日益增多,AI供應商從中積累更多的經驗,這導致不同的AI任務開始需求不同的技術方法。如果事實的確如此,AI使用者購買AI技術的方式將會改變,供應商也必將做出回應。

20191008NT31P1 DeepScale執行長Forrest Iandola

Iandola表示,就拿神經網路架構搜尋(NAS)為例,其快速發展不僅加快最佳化深度神經網路(DNN)的搜尋過程,並降低這一過程的成本。他相信有一種方法可以「在目標任務和目標運算平台上建立最低延遲、最高精準度的DNN,」而不是依賴於更大的晶片來處理所有的AI任務。

Iandola設想未來AI晶片或感測器系統(如電腦視覺、雷達或光達)供應商不僅提供硬體,而且還會提供自己的高速、高效的DNN——為應用而設計的DNN架構。任何供應商都會為不同的運算平台匹配各自所需的DNN,如果事實真是如此,那AI競賽中的所有賭注都將失效。

需要明確的是,目前無論是晶片公司還是感測器供應商都沒有提出上述前景。甚至很少有人在特定硬體上運作有針對性AI任務的可能性。

Iandola及其DeepScale團隊最近設計了一系列DNN模型,稱為「SqueezeNAS」。在最近的一篇報告中,他們聲稱,當在目標平台上搜尋延遲時,SqueezeNAS「可以建立更快、更準確的模型」。這篇報告推翻了AI社區先前對NAS、乘積累加(MAC)運算和將ImageNet精確度應用於目標任務時所做的一些假設。

DeepScale於2015年由Iandola和Kurt Keutzer教授共同創立,是一家位於加州山景城的新創公司,致力於開發「微型DNN」。兩位聯合創始人曾在加州大學柏克萊大學分校共事,DeepScale因其快速高效的DNN研究而在科學界備受推崇。

手工設計(Manual designs)

要想真正理解機器學習在電腦視覺方面的最新進展的意義,需要瞭解其發展歷史。

還記得AlexNet網路結構模型在2012年贏得ImageNet影像分類競賽嗎?這為研究人員打開了競爭的大門,讓他們專注於ImageNet研究,並尋找能夠在電腦視覺任務上達到最高精準度的DNN,以此開展競爭。

20191008NT31P2 ImageNet分類錯誤統計。(資料來源:ResearchGate)

通常,這些電腦視覺研究人員依靠專家工程師,他們會手工設計快速且高精準度的DNN架構。

從2012年到2016年,他們提高了電腦視覺的準確性,但都是透過大幅增加執行DNN所需資源來實現這一目標。Iandola解釋,例如,贏得2014年ImageNet比賽冠軍的VGGNet,其使用的運算量是AlexNet的10倍,參數是AlexNet的2倍。

到2016年,學術研究界發現利用增加DNN的資源需求來提高準確性「不可持續」。SqueezeNet便是研究人員尋找的眾多替代方案之一,由Iandola及其同事在2016年發表,它展示出在微小預算(低於5MB)參數下ImageNet的「合理的準確性」。

Squeezenet引發了兩個重大變化。相對於SqueezeNet和其他早期運算而言,MobileNetV1能夠大幅度減少MAC的數量,Shufflenetv1是為行動端CPU實現低延遲而最佳化的DNN。

利用機器學習改善機器學習

如前所述,所有這些先進DNN都是透過手工設計和調整神經網路架構開發而成。由於手工流程需要專業的工程師大量的除錯,這很快就成為一個成本太高、耗時太久的提議。

因而基於機器學習,實現人工神經網路設計自動化的理念,NAS應運而生。NAS是一種搜尋最佳神經網路架構的演算法,並改變了AI格局。Iandola稱,「到2018年,NAS已經開始構建能夠以較低延遲運行的DNN,並且比以前手工設計的DNN產生更高的準確性。」

強化學習(Reinforcement Learning)

隨後,電腦視覺界開始使用基於機器學習的強化方法——強化學習。換句話說,「機器學習得到回饋來改善機器學習,」Iandola解釋。在基於強化學習的NAS下,未經訓練的強化學習獲得建議,指定層數和參數來訓練DNN架構。一旦對DNN進行訓練,訓練運作的結果將作為回饋,從而推動強化學習執行更多DNN來展開訓練。

經證明,基於強化學習的NAS是有效的。Google MnasNet就是一個很好的例子,它在ImageNet延遲和準確性方面都優於ShuffleNet。但它也有一個關鍵的弱點:成本太高。基於強化學習的搜尋通常需要數千個GPU天(GPU day),以訓練數百乃至數千個不同的DNN,才能生成理想的設計。「Google負擔得起,」Iandola表示,但大多數其他公司負擔不起。

現實地說,一個基於強化學習的NAS要訓練一千個DNN,每個DNN通常需要一個GPU天。考慮到目前亞馬遜(Amazon)雲端服務平台的價格,Iandola估計,一個使用基於強化學習的NAS搜尋所花費的雲端運算時間可能耗資高達7萬美元。

超級網路(Supernetwork)

在這種情況下,去年底出現了一種新的NAS類型,稱為基於「超級網路」的搜尋。它的典型代表包括FBNet(Facebook柏克萊網路)和SqueezNet。

20191008NT31P3 搜尋時間減少100倍。(資料來源:DeepScale)

Iandola解釋:「超級網路採用一步到位的方法,而不是培訓1,000個獨立的DNN。」例如,一個DNN有20個模組,每個模組有13個選項。若為每個模組選擇一個最喜歡的選項,「你正在以10個DNN訓練運作花費為代價,一次性訓練一個彙集了千兆種DNN設計的DNN,」Iandola解釋。

結果顯示,基於超級網路的NAS可以在10個GPU天的搜尋時間內建立DNN,其延遲和準確性優於MnasNet。「這讓搜尋成本從7萬多美元減少到大約700美元的亞馬遜雲端服務GPU時間,」Iandola說。

「10個GPU天」的搜尋時間相當於在一台如衣櫃般大小的8 GPU機器上花費一天的時間,」Iandola解釋。

20191008NT31P4 基於強化學習與基於超級網路的NAS比較。(資料來源:DeepScale)

過時的假設

機器學習的簡短歷史向我們展示神經結構搜尋的出現如何為電腦視覺研究奠定基礎。但是在這個過程中,它也反駁了研究團體早期的一些假設,Iandola指出。

那麼,哪些假設需要糾正呢?

Iandola稱,大多數AI系統設計者認為,ImageNet分類中最精確的神經網路可以為目標任務提供最精確的骨幹網路。但電腦視覺包括許多AI任務——從目標檢測、分割和3D空間到目標追蹤、距離估計和自由空間等。「並非所有任務都是平等的,」Iandola強調。

ImageNet的準確性與目標任務的準確性沒有太緊密的關聯。「這沒法保證。」他說。

來看由Iandola團隊創建的SqueezeNet。Iandola解釋,這是一個小型的神經網路,它的ImageNet分類精準度明顯低於VGG,但在「用於辨識一組影像中相似斑塊的任務」時,它比VGG更準確。

隨著分類任務達到極限,Iandola堅信是時候為不同的任務設計不同的神經網路了。

另一個普遍的假設是「在目標運算平台上減少MAC將產生更低的延遲。」然而,最近的研究說明,減少MAC與減少延遲並無太大關聯。「擁有較少MAC的神經網路並不總是能夠實現較低的延遲,」Iandola指出。

在Iandola的SqueezeNAS報告中,他堅持認為,不僅僅是不同的AI任務需要不同的DNN。為目標運算平台(如CPU、GPU或TPU的特定版本)選擇合適的DNN也非常重要。

例如,他引用了為不同智慧型手機最佳化網路的FBNet作者的話。他們發現DNN在iPhonex上運作得很快,但在三星Galaxy S8上執行得很慢。在報告中,Iandola的團隊總結,「即使MAC的數量保持不變,不同的卷積維數也會根據處理器和核心實現決定運作得更快或更慢。」

對自動駕駛的影響

今天,DeepScale已經與多家汽車供應商建立了合作關係,包括Visteon、Hella Aglaia Mobile Vision GmbH和其他未透露名稱的公司。DeepScale一直在開發微型DNN,該公司聲稱,他們在保證最先進的性能的同時,它們需要的運算量更少。

在SqueezNas的報告中,Iandola和他的同事解釋,其團隊使用基於超級網路的NAS來設計一個用於語義分割的DNN,用於辨識道路、車道、車輛和其他物體的精確形狀等具體任務。「我們對NAS系統進行配置,以最佳化Cityscapes語義分割資料集的高精準度,同時在小型車輛級運算平台上實現低延遲。」

隨著SqueezNAS的發展,DeepScale對自己的定位是:在最佳化DNN、AI硬體和特定AI任務之間的協同關係方面成為先行者。

隨著AI晶片即將席捲市場,Iandola認為系統設計師必須明智地選擇加速器。他們應該確切地考慮硬體應該執行哪種AI任務,以及硬體加速器應該在哪種神經網路上運作。

安全攝影機、自動駕駛車和智慧型手機都將使用AI晶片。考慮到每個系統所需的速度、準確性、延遲和應用程式大不相同,確定合適的硬體和NAS就變得至關重要。

Iandola表示,對於OEM車廠來說,要把一個測試版自動駕駛車變成一個商業產品,必須把目前儲存在自動駕駛車後行李箱中的刀鋒伺服器抽取出來。Iandola預測,汽車製造商可能會要求硬體晶片公司提供適合硬體平台的最佳化DNN。

對於Nvidia這樣的公司來說,這可能不成問題,因為它的GPU得到了一個大型軟體生態系統的支援。然而,大多數其他AI硬體供應商將會嚇出一身冷汗。

此外,隨著一系列新的感測器——攝影機、光達和雷達——被設計進自動駕駛車,汽車OEM將面臨一些殘酷的現實,例如,每個感測器可能使用不同類型的神經網路。另一個例子是,不同品牌設計的光達使用不同的AI硬體。Iandola指出,「今天,無論是感測器供應商還是AI處理器公司都沒有提供針對其硬體進行最佳化推薦的神經網路。」

Iandola表示,OEM車廠和一級零組件供應商將開始要求最佳化DNN,以匹配特定硬體和AI任務,這將無法避免。「我們相信,使用NAS最佳化目標運算平台上的低延遲變得越來越重要。」

隨著基於超級網路的NAS出現,NAS的成本已經在下降。因此,現在可能是時候讓硬體供應商開始尋找自己的最佳化DNN。當被問及DeepScale是否計畫透過合作、授權或為AI硬體公司開發最佳化DNN來填補這一缺口時,Iandola說,「我們還沒有真正考慮過這個問題。」

(參考原文: Does Your AI Chip Have Its Own DNN?,by Junko Yoshida)

本文同步刊登於EE Times Taiwan 10月號雜誌