當前位置:
首頁 > 科技 > 異構智能推出NovuTensor,吳韌的極簡主義觸發計算暴力

異構智能推出NovuTensor,吳韌的極簡主義觸發計算暴力

撰文 | 微胖

與主流方案不同,NovuTensor 是一種特殊處理器,可以直觀地將張量作為抽象單元處理,而無需將其切割成 2D 矩陣來理解,異構智能認為這才是 CNN 運算的最佳硬體方案。從一張白紙開始作畫,背後不僅有對深度學習的深刻認知、既有硬體方案的反思,還有方法論上的支持,和既往經驗的深刻影響。不過,跨過技術風險後,接下來的考驗更為嚴峻:滿足用戶的胃口,讓產品與市場匹配。吳韌對此很有信心,如果用戶對價格、功耗等關鍵指標有要求,這枚晶元會非常有競爭力。

10 月,異構智能 CEO 吳韌終於拿到 GlobalFoundries 代工的第一批晶元(NovuTensor)的樣本。雖比預期推出時間晚了近一年,但接下來便是矽谷速度:

九天後,晶元正常運行;三周後,Benchmark測試出爐(如下圖)。運行 ResNet-18 等各種測試,無論是吞吐量、延遲還是性能功耗比,NovuTensor 均優於 Nvidia Xavier晶元,而後者正是英偉達未來收入的重要增長點。

NovuTensor Benchmark results.

「性能比預期的還要好。」吳韌言語中透露著喜悅,這是獨特的晶元架構——能在深度學習的自然單位(張量)上運行,帶來的先天優勢。

9 月,公司的原生張量計算處理器(Native Tensor Processor)獲得美國專利(US Patent No. 10,073,816, Native Tensor Processor and Partitioning of Tensor Contractions)。從提交到批准,耗時僅 14 個月。

「在惠普實驗室工作十幾年,一起工作的不乏頂級科學家,但沒聽說過誰在三年內拿到美國專利。」吳韌說。

這也佐證了這一思路的獨創性,「完全沒有可以參考的資料,沒有人這樣想過。」

每個人都想「發明」自己的晶元,很多創業公司聲稱擁有可靠的晶元。遺憾的是,研究機構 Mentor/Wilson 功能驗證研究表明(The 2018 Wilson Research Group ASIC and FPGA Functional Verification Study),2018 年,只有 26% 的 ASIC 實現了一次流片成功,比如有的晶元不能正常工作,有的沒能達到性能目標等。

NovuTensor 屬於 26%。

NovuTensor 晶元峰值算力可達 15TOPS,單晶元功耗為 5W,加速板卡功耗為 15W。圖片來自吳韌 LinkedIn。


一、「矩陣」or「張量」,這是個問題

儘管 Google TPU 翻譯過來是張量(Tensor)處理單元,但運算元並非張量而是矩陣,旨在大規模執行矩陣乘法。矩陣乘法也是目前絕大多數 AI 加速器最重要的目標演算法。

異構智能前工程副總裁(著名 GPU 晶元設計專家、目前在三星負責自研 GPU)、Native Tensor Processor 專利發明人之一呂堅平推測,TPU 的設計靈感可能源自英偉達的 GPU。

「當 GPU 被用於深度學習時,張量被展開成多個二維矩陣,矩陣運算由從 host CPU 調用矩陣代碼庫完成,矩陣代碼庫是針對 GPU 底層優化過的矩陣運算代碼。」他在《我們應該擁抱「脈動陣列」嗎?》一文中分析道,

「因此,儘管程序開發人員可以編寫他們自己的代碼,但大部分人仍然會選擇採用已經內置的矩陣代碼庫。」

矩陣,是一個非常好的抽象表達方式——簡潔並且適合大部分適用場景,科學、工程計算關心的大部分演算法都可以用矩陣方式高效做出來。

「矩陣操作做好了,絕大多數工程計算(包括 AI 計算在內)都可以靠它做出來。」吳韌說。

事實上,矩陣乘法的優化和加速問題已經過充分研究,工程師們對矩陣乘法的實現、優化和 Trade-off 也非常熟悉。BDTI(伯克利設計技術公司)主席 Jeff Bier 在接受 EETimes 採訪時曾坦言,人們已經對 GPU 所需要的矩陣數學有很多了解,

「但是,在開始學習 AI 之前,很多人甚至不知道張量是什麼。」

從左到右:向量(DSP 的基本操作單元)、矩陣(TPU、GPU 的基本操作單元)和張量

然而,這一輪人工智慧的進步正是來自深度學習。正是基於張量進行的卷積運算,深度學習才在圖像識別領域任務(比如目標識別、圖像分類)中超越其他所有機器學習手段。

無論是向量還是矩陣運算,對於卷積神經網路來說,並不夠原生(native),以此為基礎的設計也會存在先天不足。

比如,傳統矩陣處理器需要把一個 3D 張量展開成一個 2D 矩陣才能進行運算,這往往需要從存儲器中提取一整個張量才能展開成 2D 矩陣。不僅造成數據傳輸負擔很大(因此需要很寬內存帶寬),而且內存訪問帶來的能量開銷也很大(進而限制了能效比)。

吳韌打了一個比方。

CNN 就像冰激凌,用 CPU 來跑,就像用手蘸著、一點一點地吃;DSP 利用單一指令完成一系列操作,向量化操作就像用吸管吃;GPU 一次處理一片,切片吃法的效率就高出許多。

但真要大快朵頤,最高效的辦法還是設計一次能吃一整塊的專用工具。


二、鎖定運算元,極簡帶來暴力

卷積神經網路的運作過程,就像按照一定的標準將兩桶信息進行攪拌,這個攪拌標準就是卷積核(Kernel),尺寸大小通常是 3x3、5x5、7x7,較大卷積核都可以用 3x3 卷積核堆疊。

卷積操作

經典的 VGGNet 通過比較徹底地採用 3x3 尺寸的卷積核來堆疊神經網路,證明了更小卷積核尺寸的重要性。較之直接使用大卷積核,堆疊 3x3 卷積核有兩個好處:

在達到相同感受野的情況下,卷積核越小,所需參數和計算量越小,而且特徵學習能力更強。

對晶元設計來說,這無疑是好消息。

「從數學上說,CNN 的運算元就是三維張量空間下的卷積。3 x 3、1 x1 的卷積核是極簡操作符,將最小的 operation 最大程度優化後,其他相關網路都能得到很好支持。」吳韌解釋道。

通過使用非常小的(3 x 3)卷積核,NovuTensor 可以最有效地在本地執行「逐層」計算。由於架構無需一次取一個完整張量,只需取子張量,所以內存訪問負擔大大降低,能效比也得到提升。而多個 3D 空間中的子矩陣形成的子張量、一次處理完之後直接得到結果子張量,以及所有計算完成後得到的最終結果,與傳統矩陣處理器使用矩陣展開做的結果一樣。

呂堅平曾在前述文中主張,由於脈動陳列本身擴充性不高,我們應該繼續尋找其他替代方案。事實上,這枚晶元的一些重要設計汲取了超級計算機的設計靈感,比如 collective streaming、Map-Reduce(專利 Partitioning of Tensor Concatenation 的靈感來源)。

在吳韌看來,這種做法更具方法論上的深意。

數學之美,本質在於簡單而直接。數學的美妙,就是尋找儘可能適用更多場景的最小操作,這也是 Matlab(矩陣實驗室)被視為傑作的根本原因。這種極簡主義方法論,也是與 NovuTensor 的方法論。

「矩陣是覆蓋大多數科學和工程計算的關鍵運算元,但不是人工智慧的最關鍵的運算元,基於矩陣的做法可能不是最優解。」吳韌解釋道,「我們做的,就是為人工智慧的關鍵運算元做一個最優解」。

極簡的好處,就是會帶來處理能力的暴力。

比如,異構智能的全新體系架構如果採納台積電的 7 納米製程,可以做到晶元面積不到 1 平方毫米,耗電不到 365 毫瓦,就達到 10 TOPS 的計算能力,比蘋果最新 A12 晶元中的 NPU 面積小了六倍,而性能提升了一倍。

而這種暴力能力,恰恰是解決問題的關鍵。

多年前「深藍」的成功,讓深耕計算機象棋領域十多年的吳韌對算力有了深深的敬畏,也對他做事情的方式產生了影響:算力可以帶來數量級的差異,但演算法不會。

「如果拿到暴力,我們會比別人有更多的空間去解決問題。」


三、異構計算的精髓

由於沒有矩陣的概念,那些可以用矩陣表示的概念,NovuTensor 就沒法表示。這也是「術業有專攻」帶來的 Trade-off。

在吳韌看來,用最適合的專用硬體去做最適合的事,正是異構計算的精髓。針對深度學習中的卷積神經網路做到最優,異構做不了的,可以合作。這與過去造就巨大商業成功的「一個體系結構覆蓋所有可能性(one size fits all)」的哲學,形成鮮明對比。

然而,在吳韌看來,真正理解異構計算的人並不多。

最新的高通驍龍 855 在 Hexagon 690 DSP 中添加了張量處理單元,裡面添加了更多 MAC block,當 CPU、GPU、DSP 不能滿足計算需求時,設計這樣的單元針對 AI 計算加速,「這正是異構計算的精髓。」吳韌認為,所謂異構計算,就是將不同的架構放在一起做事。

然而,將這個設計放到過去的 Pipeline 里的做法,又與異構計算精髓背道而馳。因為,「用向量指令激活 block,工作效率先天受到限制。」

晶元的設計,不僅是通用與專用之間的平衡,也涉及當下與未來的預判。

還在不斷演進中的 CNN 是否會發生突變,比如出現 0.5x 0.5 尺寸的卷積核,以至於讓這個底層設計作廢?

吳韌認為不會,「最近演算法的演進,更多的是層數變深、加入短路 (shortcuts),濾波器(filters)數變多了。但回到運算元上,還是三維張量空間做 3x 3x D 的卷積操作。」

其實,吳軍在《數學之美》中也曾提及當年穀歌大腦選擇神經網路而不是其他機器學習技術的原因,其中一點就是各種機器學習演算法不斷湧現,但是人工神經網路演算法非常穩定,幾乎沒有怎麼變過。

那麼,即將到來的 5G 元年對本地計算又意味著什麼?吳韌又打了一個比方:孩子是在做了很多本地處理後,再和長輩溝通。

「正確和可擴展系統的設計,AI 會分布到越來越多的層級,它們溝通不是原始數據,而是不同抽象等級上的通訊。」

為每一層的各種東西提供智能,或者是智能需要的計算能力,這個事情本身是正確的,不會受到 5G 影響。


四、「Whole Product」的商業模式

有人曾形容,中國 AI 晶元創業公司商業模式如同「創造 101」(偶像選秀節目)。

有的做起了垂直領域的解決方案供應商,被打包在解決方案中的晶元成為控制標的成本的重要手段;有的公司將業務擴展到產業鏈下游,打造集自身演算法與硬體於一體的終端產品;有的仍然將業務局限在一塊板子上。

異構智能的「晶元+模型」商業模式,似乎很難嚴格歸納到上述模式中,但可以從公司的人工智慧觀中推演出來:人工智慧並非技術,而是會改變現實生活的產品。在這個過程中,能在本地做強力計算(但價格和功耗低)的晶元,至關重要。

吳韌經常提及「實時性」的重要性。比如醫療診斷中,關鍵的不是事後比對,而是智能設備能實時對病人內部身體情況做出反應,指引醫生接下來應該注意哪裡並拍照。在他看來,這是真正的人工智慧應用。

不過,晶元只是人工智慧改變生活的第二步,首先,普通單位通常需要一個聰明的模型。

比如,在與希氏異構的合作中,異構智能不僅會為希氏異構提供晶元幫助模型的本地實現,還為其搭建了用於快速訓練模型的超級計算機。

其實,異構的商業模式還可以追溯到矽谷營銷大家 Bill Davidow「全產品(whole product)」戰略思想。

在 Bill Davidow 看來,大多數初創企業都失敗了,最常見的原因是他們開發技術而不是產品。營銷必須發明完整的產品,並推動他們在防禦性細分市場中佔據領先地位。

易言之,一方面,開發技術的同時,更需要提供比對手更加完整的產品。比如硬體,軟體,基礎設施,銷售渠道,促銷,客戶服務等等。這正是異構智能垂直優化的思路來源。

另一方面,如果創業者的產品並非市場領導者所需的東西,還可以考慮更細分市場。當然,從商業角度來看,這個較窄的細分市場仍然必須足夠大。AI 硬體加速器市場已經足夠大,專利申請成功也為公司在這個領域的競爭設置了一道防禦系統。

吳韌表示,針對每個垂直行業具體複雜的要求,異構智能更願意以合資公司的方式去解決,而不是自己去做解決方案供應商。

比如,NovuTensor 屬於工業級別晶元,過車規並不是異構智能願意做的,更傾向交給合資公司去解決。希氏異構就是一個合作的範本。

「這是做技術的樸素邏輯。」吳韌說,「對於核心零部件,當你比所有競爭對手做得都好,客戶就只能選擇你。英特爾如是,英偉達如是,NovuMind 也將如是。」

目前,異構智能正將晶元開放給第一批 Tier One 合作夥伴,「非常優雅」的 SDK 很快也會推出。A 輪融到的 1500 多萬美元交出成績單後,接下來就要看是否滿足用戶的胃口,這裡才是絕大多數創業公司倒下的地方。公司也正在進行新一輪融資,計劃利用更加先進的製程保持技術優勢。

2017 年,大家紛紛進入 AI 晶元大 Party。2018 年行將結束之際,大面積宣告失敗並未如專家預言般出現,儘管並非所有創業公司都拿出了自己的作品,但似乎沒有妨礙他們能夠籌集更多資金。

不過,Party 的高潮尚未到來。最後剩下為數不多的人時,競爭才最精彩。「具有絕對競爭力的人,才能笑到最後。」吳韌說。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之能 的精彩文章:

一位集成商老兵眼中的安防「新」市場——AIoT
小米的B計劃:AI賦能IoT,生態鏈發力

TAG:機器之能 |