1. 程式人生 > >清華出品:最易懂的AI晶片報告!人才技術趨勢都在這裡

清華出品:最易懂的AI晶片報告!人才技術趨勢都在這裡

清華出品:最易懂的AI晶片報告!人才技術趨勢都在這裡

 

https://mp.weixin.qq.com/s/kDZFtvYYLLqJSED_0V1RZA

 

2010 年以來, 由於大資料產業的發展, 資料量呈現爆炸性增長態勢,而傳統的計算架構又無法支撐深度學習的大規模平行計算需求, 於是研究界對 AI 晶片進行了新一輪的技術研發與應用研究。 AI 晶片是人工智慧時代的技術核心之一,決定了平臺的基礎架構和發展生態。

 

這裡推薦清華大學的報告《 人工智慧晶片研究報告 》,全面講解人工智慧晶片,系統梳理人工智慧晶片的發展現狀及趨勢。

 

AI晶片基本知識及現狀

從廣義上講只要能夠執行人工智慧演算法的晶片都叫作 AI 晶片。但是通常意義上的 AI 晶片指的是針對人工智慧演算法做了特殊加速設計的晶片, 現階段, 這些人工智慧演算法一般以深度學習演算法為主,也可以包括其它機器學習演算法。 人工智慧與深度學習的關係如圖所示。

人工智慧與深度學習

深度學習演算法,通常是基於接收到的連續數值, 通過學習處理, 並輸出連續數值的過程,實質上並不能完全模仿生物大腦的運作機制。 基於這一現實, 研究界還提出了SNN(Spiking Neural Network,脈衝神經網路) 模型。 作為第三代神經網路模型, SNN 更貼近生物神經網路——除了神經元和突觸模型更貼近生物神經元與突觸之外, SNN 還將時域資訊引入了計算模型。目前基於 SNN 的 AI 晶片主要以 IBM 的 TrueNorth、 Intel 的 Loihi 以及國內的清華大學天機芯為代表。

 

1、AI 晶片發展歷程

從圖靈的論文《計算機器與智慧》 和圖靈測試, 到最初級的神經元模擬單元——感知機, 再到現在多達上百層的深度神經網路,人類對人工智慧的探索從來就沒有停止過。 上世紀八十年代,多層神經網路和反向傳播演算法的出現給人工智慧行業點燃了新的火花。反向傳播的主要創新在於能將資訊輸出和目標輸出之間的誤差通過多層網路往前一級迭代反饋,將最終的輸出收斂到某一個目標範圍之內。 1989 年貝爾實驗室成功利用反向傳播演算法,在多層神經網路開發了一個手寫郵編識別器。 1998 年 Yann LeCun 和 Yoshua Bengio 發表了手寫識別神經網路和反向傳播優化相關的論文《Gradient-based learning applied to documentrecognition》,開創了卷積神經網路的時代。

 

此後, 人工智慧陷入了長時間的發展沉寂階段,直到 1997年 IBM的深藍戰勝國際象棋大師和 2011年 IBM的沃森智慧系統在 Jeopardy節目中勝出,人工智慧才又一次為人們所關注。 2016 年 Alpha Go 擊敗韓國圍棋九段職業選手,則標誌著人工智慧的又一波高潮。從基礎演算法、 底層硬體、 工具框架到實際應用場景, 現階段的人工智慧領域已經全面開花。

 

作為人工智慧核心的底層硬體 AI 晶片,也同樣經歷了多次的起伏和波折,總體看來,AI 晶片的發展前後經歷了四次大的變化,其發展歷程如圖所示。

 

AI 晶片發展歷程

(1) 2007 年以前, AI 晶片產業一直沒有發展成為成熟的產業; 同時由於當時演算法、資料量等因素, 這個階段 AI 晶片並沒有特別強烈的市場需求,通用的 CPU 晶片即可滿足應用需要。

 

(2) 隨著高清視訊、 VR、 AR遊戲等行業的發展, GPU產品取得快速的突破; 同時人們發現 GPU 的平行計算特性恰好適應人工智慧演算法及大資料平行計算的需求,如 GPU 比之前傳統的 CPU在深度學習演算法的運算上可以提高几十倍的效率,因此開始嘗試使用 GPU進行人工智慧計算。

 

(3) 進入 2010 年後,雲端計算廣泛推廣,人工智慧的研究人員可以通過雲端計算藉助大量 CPU 和 GPU 進行混合運算,進一步推進了 AI 晶片的深入應用,從而催生了各類 AI 晶片的研發與應用。

 

(4) 人工智慧對於計算能力的要求不斷快速地提升,進入 2015 年後, GPU 效能功耗比不高的特點使其在工作適用場合受到多種限制, 業界開始研發針對人工智慧的專用晶片,以期通過更好的硬體和晶片架構,在計算效率、能耗比等效能上得到進一步提升。

 

 2、我國 AI 晶片發展情況

目前,我國的人工智慧晶片行業發展尚處於起步階段。 長期以來,中國在 CPU、 GPU、DSP 處理器設計上一直處於追趕地位,絕大部分晶片設計企業依靠國外的 IP 核設計晶片,在自主創新上受到了極大的限制。 然而,人工智慧的興起,無疑為中國在處理器領域實現彎道超車提供了絕佳的機遇。 人工智慧領域的應用目前還處於面向行業應用階段,生態上尚未形成壟斷,國產處理器廠商與國外競爭對手在人工智慧這一全新賽場上處在同一起跑線上,因此, 基於新興技術和應用市場,中國在建立人工智慧生態圈方面將大有可為。

 

由於我國特殊的環境和市場,國內 AI 晶片的發展目前呈現出百花齊放、百家爭鳴的態勢, AI 晶片的應用領域也遍佈股票交易、金融、商品推薦、安防、早教機器人以及無人駕駛等眾多領域,催生了大量的人工智慧晶片創業公司,如地平線、深鑑科技、中科寒武紀等。

 

儘管如此, 國內公司卻並未如國外大公司一樣形成市場規模, 反而出現各自為政的散裂發展現狀。除了新興創業公司,國內研究機構如北京大學、清華大學、中國科學院等在AI 晶片領域都有深入研究;而其他公司如百度和位元大陸等, 2017 年也有一些成果釋出。可以預見,未來誰先在人工智慧領域掌握了生態系統,誰就掌握住了這個產業的主動權。

 

3、AI學者概況

基於來自清華大學AMiner 人才庫資料,全球人工智慧晶片領域學者分佈如圖所示, 從圖中可以看到, 人工智慧晶片領域的學者主要分佈在北美洲,其次是歐洲。 中國對人工智慧晶片的研究緊跟其後,南美洲、非洲和大洋洲人才相對比較匱乏。

人工智慧晶片領域研究學者全球分佈

按國家進行統計來看美國是人工智慧晶片領域科技發展的核心。 英國的人數緊排在美國之後。其他的專家主要分佈在中國、 德國、 加拿大、義大利和日本 。

人工智慧晶片領域研究學者全球分佈

 

對全球人工智慧晶片領域最具影響力的 1000 人的遷徙路徑進行了統計分析,得出下圖所示的各國人才逆順差對比。

各國人才逆順差

可以看出,各國人才的流失和引進是相對比較均衡的,其中美國為人才流動大國,人才輸入和輸出幅度都大幅度領先。英國、 中國、 德國和瑞士等國次於美國,但各國之間人才流動相差並不明顯。

 

AI 晶片的分類及技術

人工智慧晶片目前有兩種發展路徑:

一種是延續傳統計算架構,加速硬體計算能力,主要以 3 種類型的晶片為代表,即 GPU、 FPGA、 ASIC,但 CPU依舊發揮著不可替代的作用;

另一種是顛覆經典的馮·諾依曼計算架構,採用類腦神經結構來提升計算能力, 以 IBM TrueNorth 晶片為代表。

 

1、傳統 CPU

計算機工業從 1960 年代早期開始使用 CPU 這個術語。迄今為止, CPU 從形態、設計到實現都已發生了巨大的變化,但是其基本工作原理卻一直沒有大的改變。 通常 CPU 由控制器和運算器這兩個主要部件組成。 傳統的 CPU 內部結構圖如圖 3 所示, 從圖中我們可以看到:實質上僅單獨的 ALU 模組(邏輯運算單元)是用來完成資料計算的,其他各個模組的存在都是為了保證指令能夠一條接一條的有序執行。這種通用性結構對於傳統的程式設計計算模式非常適合,同時可以通過提升 CPU 主頻(提升單位時間內執行指令的條數)來提升計算速度。 但對於深度學習中的並不需要太多的程式指令、 卻需要海量資料運算的計算需求, 這種結構就顯得有些力不從心。尤其是在功耗限制下, 無法通過無限制的提升 CPU 和記憶體的工作頻率來加快指令執行速度, 這種情況導致 CPU 系統的發展遇到不可逾越的瓶頸。

傳統 CPU 內部結構圖(僅 ALU 為主要計算模組)

 

2、並行加速計算的 GPU

GPU 作為最早從事並行加速計算的處理器,相比 CPU 速度快, 同時比其他加速器晶片程式設計靈活簡單。

 

傳統的 CPU 之所以不適合人工智慧演算法的執行,主要原因在於其計算指令遵循序列執行的方式,沒能發揮出晶片的全部潛力。與之不同的是, GPU 具有高並行結構,在處理圖形資料和複雜演算法方面擁有比 CPU 更高的效率。對比 GPU 和 CPU 在結構上的差異, CPU大部分面積為控制器和暫存器,而 GPU 擁有更多ALU(ARITHMETIC LOGIC UNIT,邏輯運算單元)用於資料處理,這樣的結構適合對密集型資料進行並行處理, CPU 與 GPU 的結構對比如圖 所示。程式在 GPU系統上的執行速度相較於單核 CPU往往提升幾十倍乃至上千倍。隨著英偉達、 AMD 等公司不斷推進其對 GPU 大規模並行架構的支援,面向通用計算的 GPU(即GPGPU, GENERAL PURPOSE GPU,通用計算圖形處理器)已成為加速可並行應用程式的重要手段。

CPU 及 GPU 結構對比圖(引用自 NVIDIA CUDA 文件)

 

GPU 的發展歷程可分為 3 個階段, 發展歷程如圖所示:

第 一 代 GPU(1999 年 以 前 ) , 部 分 功 能 從 CPU 分 離 , 實 現 硬 件 加 速 , 以GE(GEOMETRY ENGINE)為代表,只能起到 3D 影象處理的加速作用,不具有軟體程式設計特性。

 

第二代 GPU(1999-2005 年), 實現進一步的硬體加速和有限的程式設計性。 1999 年,英偉達釋出了“專為執行復雜的數學和幾何計算的” GeForce256 影象處理晶片,將更多的電晶體用作執行單元, 而不是像 CPU 那樣用作複雜的控制單元和快取,將 T&L(TRANSFORM AND LIGHTING)等功能從 CPU 分離出來,實現了快速變換,這成為 GPU 真正出現的標誌。之後幾年, GPU 技術快速發展,運算速度迅速超過 CPU。 2001 年英偉達和 ATI 分別推出的GEFORCE3 和 RADEON 8500,圖形硬體的流水線被定義為流處理器,出現了頂點級可程式設計性,同時畫素級也具有有限的程式設計性,但 GPU 的整體程式設計性仍然比較有限。

 

第三代 GPU(2006年以後), GPU實現方便的程式設計環境建立, 可以直接編寫程式。 2006年英偉達與 ATI分別推出了 CUDA(Compute United Device Architecture,計算統一裝置架構)程式設計環境和 CTM(CLOSE TO THE METAL)程式設計環境, 使得 GPU 打破圖形語言的侷限成為真正的並行資料處理超級加速器。

 

關於使用hdfs的檔案,官方給出的是一語帶過的用gfile模組。關於gfile的使用在百度上是搜不到的,TF官方給出的資料有的地方也有問題,很容易誤解,Google可以搜到使用範例。我也給出一條載入檔案的替換程式碼。

 

2008 年,蘋果公司提出一個通用的平行計算程式設計平臺 OPENCL(OPEN COMPUTING LANGUAGE,開放運算語言),與 CUDA 繫結在英偉達的顯示卡上不同,OPENCL 和具體的計算裝置無關。

 

在看了這四種方法後,相信大家也已經有了一些自己的想法,但我還是來做一個總結吧,從各個方面來對這四個方法進行評分。

 

 

GPU 晶片的發展階段

目前, GPU 已經發展到較為成熟的階段。谷歌、 FACEBOOK、微軟、 TWITTER 和百度等公司都在使用 GPU 分析圖片、視訊和音訊檔案,以改進搜尋和影象標籤等應用功能。此外,很多汽車生產商也在使用 GPU 晶片發展無人駕駛。 不僅如此, GPU 也被應用於VR/AR 相關的產業。

 

但是 GPU也有一定的侷限性。 深度學習演算法分為訓練和推斷兩部分, GPU 平臺在演算法訓練上非常高效。但在推斷中對於單項輸入進行處理的時候,平行計算的優勢不能完全發揮出來。

 

3、半定製化的 FPGA

FPGA 是在 PAL、 GAL、 CPLD 等可程式設計器件基礎上進一步發展的產物。使用者可以通過燒入 FPGA 配置檔案來定義這些閘電路以及儲存器之間的連線。這種燒入不是一次性的,比如使用者可以把 FPGA 配置成一個微控制器 MCU,使用完畢後可以編輯配置檔案把同一個FPGA 配置成一個音訊編解碼器。因此, 它既解決了定製電路靈活性的不足,又克服了原有可程式設計器件閘電路數有限的缺點。

 

FPGA 可同時進行資料並行和任務平行計算,在處理特定應用時有更加明顯的效率提升。對於某個特定運算,通用 CPU 可能需要多個時鐘週期; 而 FPGA 可以通過程式設計重組電路,直接生成專用電路,僅消耗少量甚至一次時鐘週期就可完成運算。

 

此外,由於 FPGA的靈活性,很多使用通用處理器或 ASIC難以實現的底層硬體控制操作技術, 利用 FPGA 可以很方便的實現。這個特性為演算法的功能實現和優化留出了更大空間。同時 FPGA 一次性成本(光刻掩模製作成本)遠低於 ASIC,在晶片需求還未成規模、深度學習演算法暫未穩定, 需要不斷迭代改進的情況下,利用 FPGA 晶片具備可重構的特性來實現半定製的人工智慧晶片是最佳選擇之一。

 

功耗方面,從體系結構而言, FPGA 也具有天生的優勢。傳統的馮氏結構中,執行單元(如 CPU 核)執行任意指令,都需要有指令儲存器、譯碼器、各種指令的運算器及分支跳轉處理邏輯參與執行, 而 FPGA 每個邏輯單元的功能在重程式設計(即燒入)時就已經確定,不需要指令,無需共享記憶體,從而可以極大的降低單位執行的功耗,提高整體的能耗比。

 

由於 FPGA 具備靈活快速的特點, 因此在眾多領域都有替代 ASIC 的趨勢。 FPGA 在人工智慧領域的應用如圖所示。

FPGA 在人工智慧領域的應用

 

4、全定製化的 ASIC

目前以深度學習為代表的人工智慧計算需求,主要採用 GPU、 FPGA 等已有的適合平行計算的通用晶片來實現加速。在產業應用沒有大規模興起之時,使用這類已有的通用晶片可以避免專門研發定製晶片(ASIC) 的高投入和高風險。但是,由於這類通用晶片設計初衷並非專門針對深度學習,因而天然存在效能、 功耗等方面的侷限性。隨著人工智慧應用規模的擴大,這類問題日益突顯。

 

GPU 作為影象處理器, 設計初衷是為了應對影象處理中的大規模平行計算。因此,在應用於深度學習演算法時,有三個方面的侷限性:第一,應用過程中無法充分發揮平行計算優勢。 深度學習包含訓練和推斷兩個計算環節, GPU 在深度學習演算法訓練上非常高效, 但對於單一輸入進行推斷的場合, 並行度的優勢不能完全發揮。 第二, 無法靈活配置硬體結構。 GPU 採用 SIMT 計算模式, 硬體結構相對固定。 目前深度學習演算法還未完全穩定,若深度學習演算法發生大的變化, GPU 無法像 FPGA 一樣可以靈活的配製硬體結構。 第三,執行深度學習演算法能效低於 FPGA。

 

儘管 FPGA 倍受看好,甚至新一代百度大腦也是基於 FPGA 平臺研發,但其畢竟不是專門為了適用深度學習演算法而研發,實際應用中也存在諸多侷限:

第一,基本單元的計算能力有限。為了實現可重構特性, FPGA 內部有大量極細粒度的基本單元,但是每個單元的計算能力(主要依靠 LUT 查詢表)都遠遠低於 CPU 和 GPU 中的 ALU 模組;

第二、 計算資源佔比相對較低。 為實現可重構特性, FPGA 內部大量資源被用於可配置的片上路由與連線;

第三,速度和功耗相對專用定製晶片(ASIC)仍然存在不小差距;

第四, FPGA 價格較為昂貴,在規模放量的情況下單塊 FPGA 的成本要遠高於專用定製晶片。

 

因此,隨著人工智慧演算法和應用技術的日益發展,以及人工智慧專用晶片 ASIC產業環境的逐漸成熟, 全定製化人工智慧 ASIC也逐步體現出自身的優勢,從事此類晶片研發與應用的國內外比較有代表性的公司如圖所示。

人工智慧專用晶片(包括類腦晶片) 研發情況一覽

 

深度學習演算法穩定後, AI 晶片可採用 ASIC 設計方法進行全定製, 使效能、功耗和麵積等指標面向深度學習演算法做到最優。

 

5、類腦晶片

類腦晶片不採用經典的馮·諾依曼架構, 而是基於神經形態架構設計,以 IBM Truenorth為代表。

IBM 研究人員將儲存單元作為突觸、計算單元作為神經元、傳輸單元作為軸突搭建了神經晶片的原型。目前, Truenorth 用三星 28nm 功耗工藝技術,由 54 億個電晶體組成的晶片構成的片上網路有 4096 個神經突觸核心,實時作業功耗僅為 70mW。由於神經突觸要求權重可變且要有記憶功能, IBM 採用與 CMOS 工藝相容的相變非揮發儲存器(PCM)的技術實驗性的實現了新型突觸,加快了商業化程序。

 

AI晶片產業及趨勢

1、AI晶片應用領域

隨著人工智慧晶片的持續發展,應用領域會隨時間推移而不斷向多維方向發展,這裡我們選擇目前發展比較集中的幾個行業做相關的介紹。

AI晶片目前比較集中的應用領域

 

(1)智慧手機

2017 年 9 月,華為在德國柏林消費電子展釋出了麒麟 970 晶片,該晶片搭載了寒武紀的 NPU,成為“全球首款智慧手機移動端 AI 晶片” ; 2017 年 10 月中旬 Mate10 系列新品(該系列手機的處理器為麒麟 970)上市。搭載了 NPU 的華為 Mate10 系列智慧手機具備了較強的深度學習、本地端推斷能力,讓各類基於深度神經網路的攝影、影象處理應用能夠為使用者提供更加完美的體驗。

 

而蘋果釋出以 iPhone X 為代表的手機及它們內建的 A11 Bionic 晶片。A11 Bionic 中自主研發的雙核架構 Neural Engine(神經網路處理引擎),它每秒處理相應神經網路計算需求的次數可達 6000 億次。這個 Neural Engine 的出現,讓 A11 Bionic 成為一塊真正的 AI 晶片。 A11 Bionic 大大提升了 iPhone X 在拍照方面的使用體驗,並提供了一些富有創意的新用法。 

(2)ADAS(高階輔助駕駛系統)

ADAS 是最吸引大眾眼球的人工智慧應用之一, 它需要處理海量的由鐳射雷達、毫米波雷達、攝像頭等感測器採集的實時資料。相對於傳統的車輛控制方法,智慧控制方法主要體現在對控制物件模型的運用和綜合資訊學習運用上,包括神經網路控制和深度學習方法等,得益於 AI 晶片的飛速發展, 這些演算法已逐步在車輛控制中得到應用。

(3)CV(計算機視覺(Computer Vision) 裝置

需要使用計算機視覺技術的裝置,如智慧攝像頭、無人機、 行車記錄儀、人臉識別迎賓機器人以及智慧手寫板等裝置, 往往都具有本地端推斷的需要,如果僅能在聯網下工作,無疑將帶來糟糕的體驗。而計算機視覺技術目前看來將會成為人工智慧應用的沃土之一,計算機視覺晶片將擁有廣闊的市場前景。

(4) VR 裝置

VR 裝置晶片的代表為 HPU 晶片, 是微軟為自身 VR 裝置 Hololens 研發定製的。 這顆由臺積電代工的晶片能同時處理來自 5個攝像頭、 1個深度感測器以及運動感測器的資料,並具備計算機視覺的矩陣運算和 CNN 運算的加速功能。這使得 VR 裝置可重建高質量的人像 3D 影像,並實時傳送到任何地方。

(5)語音互動裝置

語音互動裝置晶片方面,國內有啟英泰倫以及雲知聲兩家公司,其提供的晶片方案均內建了為語音識別而優化的深度神經網路加速方案,實現裝置的語音離線識別。穩定的識別能力為語音技術的落地提供了可能; 與此同時,語音互動的核心環節也取得重大突破。語音識別環節突破了單點能力,從遠場識別,到語音分析和語義理解有了重大突破,呈現出一種整體的互動方案。

(6)機器人

無論是家居機器人還是商用服務機器人均需要專用軟體+晶片的人工智慧解決方案,這方面典型公司有由前百度深度學習實驗室負責人餘凱創辦的地平線機器人,當然地平線機器人除此之外,還提供 ADAS、智慧家居等其他嵌入式人工智慧解決方案。

 

2、AI晶片國內外代表性企業

本篇將介紹目前人工智慧晶片技術領域的國內外代表性企業。文中排名不分先後。人工智慧晶片技術領域的國內代表性企業包括中科寒武紀、中星微、地平線機器人、深鑑科技、 靈汐科技、 啟英泰倫、百度、華為等,國外包括英偉達、 AMD、 Google、高通、Nervana Systems、 Movidius、 IBM、 ARM、 CEVA、 MIT/Eyeriss、蘋果、三星等。

 

中科寒武紀。寒武紀科技成立於 2016 年,總部在北京,創始人是中科院計算所的陳天石、陳雲霽兄弟,公司致力於打造各類智慧雲伺服器、智慧終端以及智慧機器人的核心處理器晶片。阿里巴巴創投、聯想創投、國科投資、中科圖靈、元禾原點、湧鏵投資聯合投資,為全球 AI晶片領域第一個獨角獸初創公司。

 

寒武紀是全球第一個成功流片並擁有成熟產品的 AI 晶片公司,擁有終端 AI 處理器 IP和雲端高效能 AI 晶片兩條產品線。 2016 年釋出的寒武紀 1A 處理器(Cambricon-1A) 是世界首款商用深度學習專用處理器,面向智慧手機、安防監控、無人機、可穿戴裝置以及智慧駕駛等各類終端裝置,在執行主流智慧演算法時效能功耗比全面超越傳統處理器。

中星微。1999 年, 由多位來自矽谷的博士企業家在北京中關村科技園區建立了中星微電子有限公司, 啟動並承擔了國家戰略專案——“星光中國芯工程”,致力於數字多媒體晶片的開發、設計和產業化。

 

2016 年初,中星微推出了全球首款集成了神經網路處理器(NPU)的 SVAC 視訊編解碼 SoC,使得智慧分析結果可以與視訊資料同時編碼,形成結構化的視訊碼流。該技術被廣泛應用於視訊監控攝像頭,開啟了安防監控智慧化的新時代。自主設計的嵌入式神經網路處理器(NPU)採用了“資料驅動平行計算” 架構,專門針對深度學習演算法進行了優化,具備高效能、低功耗、高整合度、小尺寸等特點,特別適合物聯網前端智慧的需求。

集成了 NPU 的神經網路處理器 VC0616 的內部結構

 

地平線機器人(Horizon Robotics)。地平線機器人成立於 2015 年,總部在北京,創始人是前百度深度學習研究院負責人餘凱。BPU(BrainProcessing Unit) 是地平線機器人自主設計研發的高效人工智慧處理器架構IP,支援 ARM/GPU/FPGA/ASIC 實現,專注於自動駕駛、人臉影象辨識等專用領域。 2017年,地平線釋出基於高斯架構的嵌入式人工智慧解決方案,將在智慧駕駛、智慧生活、公共安防三個領域進行應用,第一代 BPU晶片“盤古” 目前已進入流片階段,預計在 2018年下半年推出,能支援 1080P 的高清影象輸入,每秒鐘處理 30 幀,檢測跟蹤數百個目標。地平線的第一代 BPU 採用 TSMC 的 40nm工藝,相對於傳統 CPU/GPU, 能效可以提升 2~3 個數量級(100~1,000 倍左右)。

 

深鑑科技。深鑑科技成立於 2016 年,總部在北京。由清華大學與斯坦福大學的世界頂尖深度學習硬體研究者創立。深鑑科技於 2018 年 7 月被賽靈思收購。深鑑科技將其開發的基於 FPGA 的神經網路處理器稱為 DPU。到目前為止,深鑑公開發布了兩款 DPU:亞里士多德架構和笛卡爾架構,其中,亞里士多德架構是針對卷積神經網路 CNN 而設計;笛卡爾架構專為處理 DNN/RNN 網路而設計,可對經過結構壓縮後的稀疏神經網路進行極致高效的硬體加速。相對於 Intel XeonCPU 與 Nvidia TitanX GPU,應用笛卡爾架構的處理器在計算速度上分別提高 189 倍與 13 倍,具有 24,000 倍與 3,000 倍的更高能效。

 

靈汐科技。靈汐科技於 2018 年 1 月在北京成立,聯合創始人包括清華大學的世界頂尖類腦計算研究者。公司致力於新一代神經網路處理器(Tianjic) 開發, 特點在於既能夠高效支撐現有流行的機器學習演算法(包括 CNN, MLP, LSTM 等網路架構),也能夠支撐更仿腦的、更具成長潛力的脈衝神經網路演算法; 使晶片具有高計算力、高多工並行度和較低功耗等優點。 軟體工具鏈方面支援由 Caffe、 TensorFlow 等演算法平臺直接進行神經網路的對映編譯,開發友善的使用者互動介面。 Tianjic 可用於雲端計算和終端應用場景,助力人工智慧的落地和推廣。

 

啟英泰倫。啟英泰倫於2015年 11月在成都成立,是一家語音識別晶片研發商。啟英泰倫的 CI1006是基於 ASIC 架構的人工智慧語音識別晶片,包含了腦神經網路處理硬體單元,能夠完美支援 DNN 運算架構,進行高效能的資料平行計算,可極大的提高人工智慧深度學習語音技術對大量資料的處理效率。

 

百度。百度 2017 年 8 月 Hot Chips 大會上釋出了 XPU,這是一款 256 核、基於 FPGA 的雲端計算加速晶片。合作伙伴是賽思靈(Xilinx)。 XPU 採用新一代 AI 處理架構,擁有 GPU 的通用性和 FPGA 的高效率和低能耗,對百度的深度學習平臺 PaddlePaddle 做了高度的優化和加速。據介紹, XPU 關注計算密集型、基於規則的多樣化計算任務,希望提高效率和效能,並帶來類似 CPU 的靈活性。

 

華為。麒麟 970 搭載的神經網路處理器 NPU 採用了寒武紀 IP,如圖 12 所示。麒麟 970 採用了 TSMC 10nm 工藝製程,擁有 55 億個電晶體,功耗相比上一代晶片降低 20%。 CPU 架構方面為 4 核 A73+4 核 A53 組成 8 核心,能耗同比上一代晶片得到 20%的提升; GPU 方面採用了 12 核 Mali G72 MP12GPU,在圖形處理以及能效兩項關鍵指標方面分別提升 20%和50%; NPU 採用 HiAI移動計算架構,在 FP16 下提供的運算效能可以達到 1.92 TFLOPs,相比四個 Cortex-A73 核心,處理同樣的 AI 任務,有大約具備 50 倍能效和 25 倍效能優勢。

 

英偉達(Nvidia)。英偉達創立於 1993 年,總部位於美國加利福尼亞州聖克拉拉市。 早在 1999 年, 英偉達發明了 GPU,重新定義了現代計算機圖形技術,徹底改變了平行計算。深度學習對計算速度有非常苛刻的要求, 而英偉達的 GPU 晶片可以讓大量處理器並行運算,速度比 CPU 快十倍甚至幾十倍,因而成為絕大部分人工智慧研究者和開發者的首選。自從 Google Brain 採用 1.6 萬個 GPU 核訓練 DNN 模型, 並在語音和影象識別等領域獲得巨大成功以來, 英偉達已成為 AI 晶片市場中無可爭議的領導者。

 

AMD美國 AMD 半導體公司專門為計算機、 通訊和消費電子行業設計和製造各種創新的微處理器(CPU、 GPU、 APU、 主機板晶片組、 電視卡晶片等),以及提供快閃記憶體和低功率處理器解決方案, 公司成立於 1969 年。 AMD 致力為技術使用者——從企業、 政府機構到個人消費者——提供基於標準的、 以客戶為中心的解決方案。

 

2017 年 12 月 Intel 和 AMD 宣佈將聯手推出一款結合英特爾處理器和 AMD 圖形單元的膝上型電腦晶片。 目前 AMD 擁有針對 AI 和機器學習的高效能 Radeon Instinc 加速卡,開放式軟體平臺 ROCm 等。

 

Google Google 在 2016 年宣佈獨立開發一種名為 TPU 的全新的處理系統。 TPU 是專門為機器學習應用而設計的專用晶片。通過降低晶片的計算精度,減少實現每個計算操作所需電晶體數量的方式,讓晶片的每秒執行的操作個數更高,這樣經過精細調優的機器學習模型就能在晶片上執行得更快,進而更快地讓使用者得到更智慧的結果。 在 2016 年 3 月打敗了李世石和 2017 年 5 月打敗了柯傑的阿爾法狗,就是採用了谷歌的 TPU 系列晶片。

 

Google I/O-2018 開發者大會期間,正式釋出了第三代人工智慧學習專用處理器 TPU 3.0。TPU3.0 採用 8 位低精度計算以節省電晶體數量, 對精度影響很小但可以大幅節約功耗、加快速度,同時還有脈動陣列設計,優化矩陣乘法與卷積運算, 並使用更大的片上記憶體,減少對系統記憶體的依賴。 速度能加快到最高 100PFlops(每秒 1000 萬億次浮點計算)。

 

高通。在智慧手機晶片市場佔據絕對優勢的高通公司,也在人工智慧晶片方面積極佈局。據高通提供的資料顯示,其在人工智慧方面已投資了 Clarifai 公司和中國“專注於物聯網人工智慧服務” 的雲知聲。而早在 2015 年 CES 上,高通就已推出了一款搭載驍龍 SoC 的飛行機器人——Snapdragon Cargo。高通認為在工業、農業的監測以及航拍對拍照、攝像以及視訊新需求上,公司恰好可以發揮其在計算機視覺領域的能力。此外,高通的驍龍 820 晶片也被應用於 VR頭盔中。事實上,高通已經在研發可以在本地完成深度學習的移動端裝置晶片。

 

Nervana SystemsNervana 創立於 2014 年, 公司推出的 The Nervana Engine 是一個為深度學習專門定製和優化的 ASIC 晶片。這個方案的實現得益於一項叫做 High Bandwidth Memory 的新型記憶體技術, 這項技術同時擁有高容量和高速度,提供 32GB 的片上儲存和 8TB 每秒的記憶體訪問速度。該公司目前提供一個人工智慧服務“in the cloud” ,他們聲稱這是世界上最快的且目前已被金融服務機構、醫療保健提供者和政府機構所使用的服務。 他們的新型晶片將會保證 Nervana 雲平臺在未來的幾年內仍保持最快的速度。

 

Movidius(被 Intel 收購)。2016 年 9 月, Intel 發表宣告收購了 Movidius。 Movidius 專注於研發高效能視覺處理晶片。其最新一代的 Myriad2 視覺處理器主要由 SPARC 處理器作為主控制器,加上專門的DSP 處理器和硬體加速電路來處理專門的視覺和影象訊號。這是一款以 DSP 架構為基礎的視覺處理器,在視覺相關的應用領域有極高的能耗比,可以將視覺計算普及到幾乎所有的嵌入式系統中。

該晶片已被大量應用在 Google 3D 專案的 Tango 手機、大疆無人機、 FLIR 智慧紅外攝像機、海康深眸系列攝像機、華睿智慧工業相機等產品中。

 

IBMIBM 很早以前就釋出過 watson,投入了很多的實際應用。除此之外,還啟動了類腦晶片的研發, 即 TrueNorth。TrueNorth 是 IBM 參與 DARPA 的研究專案 SyNapse 的最新成果。 SyNapse 全稱是Systems of Neuromorphic Adaptive Plastic Scalable Electronics(自適應可塑可伸縮電子神經系統,而 SyNapse 正好是突觸的意思),其終極目標是開發出打破馮·諾依曼體系結構的計算機體系結構。

 

ARMARM 推出全新晶片架構 DynamIQ,通過這項技術, AI 晶片的效能有望在未來三到五年內提升 50 倍。

ARM的新CPU架構將會通過為不同部分配置軟體的方式將多個處理核心集聚在一起,這其中包括一個專門為 AI 演算法設計的處理器。晶片廠商將可以為新處理器配置最多 8 個核心。同時為了能讓主流 AI 在自己的處理器上更好地執行, ARM 還將推出一系列軟體庫。

 

CEVACEVA 是專注於 DSP 的 IP 供應商,擁有眾多的產品線。其中,影象和計算機視覺 DSP產品 CEVA-XM4是第一個支援深度學習的可程式設計 DSP,而其釋出的新一代型號 CEVA-XM6,具有更優的效能、更強大的計算能力以及更低的能耗。CEVA 指出,智慧手機、汽車、安全和商業應用,如無人機、自動化將是其業務開展的主要目標。

 

MIT/EyerissEyeriss 事實上是 MIT 的一個專案,還不是一個公司, 從長遠來看,如果進展順利,很可能孵化出一個新的公司。Eyeriss 是一個高效能的深度卷積神經網路(CNN)加速器硬體,該晶片內建 168 個核心,專門用來部署神經網路(neural network),效能為一般 GPU 的 10 倍。其技術關鍵在於最小化 GPU 核心和記憶體之間交換資料的頻率(此運作過程通常會消耗大量的時間與能量):一般 GPU 內的核心通常共享單一記憶體,但 Eyeriss 的每個核心擁有屬於自己的記憶體。

目前, Eyeriss 主要定位在人臉識別和語音識別,可應用在智慧手機、穿戴式裝置、機器人、自動駕駛車與其他物聯網應用裝置上。

 

蘋果。在 iPhone 8 和 iPhone X 的釋出會上,蘋果明確表示其中所使用的 A11 處理器集成了一個專用於機器學習的硬體——“神經網路引擎(Neural Engine) ”, 每秒運算次數最高可達6000 億次。這塊晶片將能夠改進蘋果裝置在處理需要人工智慧的任務時的表現,比如面部識別和語音識別等。

 

三星。2017 年,華為海思推出了麒麟 970 晶片,據知情人士透露,為了對標華為,三星已經研發了許多種類的人工智慧晶片。 三星計劃在未來三年內新上市的智慧手機中都採用人工智慧晶片,並且他們還將為人工智慧裝置建立新的元件業務。三星還投資了Graphcore、深鑑科技等人工智慧晶片企業。

 

3、技術趨勢

目前主流 AI 晶片的核心主要是利用 MAC(Multiplier and Accumulation, 乘加計算) 加速陣列來實現對 CNN(卷積神經網路)中最主要的卷積運算的加速。這一代 AI 晶片主要有如下 3 個方面的問題。

(1)深度學習計算所需資料量巨大,造成記憶體頻寬成為整個系統的瓶頸,即所謂“memory wall” 問題。

 

(2)與第一個問題相關, 記憶體大量訪問和 MAC陣列的大量運算,造成 AI晶片整體功耗的增加。

 

(3)深度學習對算力要求很高,要提升算力,最好的方法是做硬體加速,但是同時深度學習演算法的發展也是日新月異,新的演算法可能在已經固化的硬體加速器上無法得到很好的支援,即效能和靈活度之間的平衡問題。

 

因此可以預見下一代 AI 晶片將有如下的五個發展趨勢。

(1)、更高效的大卷積解構/複用

在標準 SIMD 的基礎上, CNN 由於其特殊的複用機制,可以進一步減少總線上的資料通訊。而複用這一概念,在超大型神經網路中就顯得格外重要。 如何合理地分解、 對映這些超大卷積到有效的硬體上成為了一個值得研究的方向,

 

(2)、更低的 Inference 計算/儲存位寬

AI 晶片最大的演進方向之一可能就是神經網路引數/計算位寬的迅速減少——從 32 位浮點到 16 位浮點/定點、 8 位定點,甚至是 4 位定點。在理論計算領域, 2 位甚至 1 位引數位寬,都已經逐漸進入實踐領域。

 

(3)、更多樣的儲存器定製設計

當計算部件不再成為神經網路加速器的設計瓶頸時,如何減少儲存器的訪問延時將會成為下一個研究方向。通常,離計算越近的儲存器速度越快,每位元組的成本也越高,同時容量也越受限,因此新型的儲存結構也將應運而生。

 

(4)、更稀疏的大規模向量實現

神經網路雖然大,但是,實際上有很多以零為輸入的情況, 此時稀疏計算可以高效的減少無用能效。來自哈佛大學的團隊就該問題提出了優化的五級流水線結,在最後一級輸出了觸發訊號。在 Activation層後對下一次計算的必要性進行預先判斷,如果發現這是一個稀疏節點,則觸發 SKIP 訊號,避免乘法運算的功耗,以達到減少無用功耗的目的。

 

(5)、計算和儲存一體化

計算和儲存一體化(process-in-memory)技術,其要點是通過使用新型非易失性儲存(如 ReRAM)器件,在儲存陣列裡面加上神經網路計算功能,從而省去資料搬移操作,即實現了計算儲存一體化的神經網路處理,在功耗效能方面可以獲得顯著提升。

 

相關閱讀

NVIDIA GPU—Tesla和GeForce的比較

NVIDIA推出新款圖靈架構專業顯示卡Quadro RTX 4000
 

TensorFlow GPU基準測試:2080 Ti vs V100 vs 1080 Ti vs Titan V

雙精度,單精度和半精度,瞭解一下

CUDA與OpenCL之間的差異

3D建模和渲染吃什麼硬體?專業顯示卡和遊戲顯示卡的區別

NVIDIA GPU的浮點計算能力

“NVIDIA Quadro專業顯示卡”都做了什麼?

顯示卡光線追蹤是什麼?RTX實時光線追蹤技術有什麼用?