【中國(guó)安防展覽網(wǎng) 媒體導(dǎo)讀】雖然說(shuō),我國(guó)的人工智能芯片處于起步階段,進(jìn)步空間巨大,芯片的市場(chǎng)前景也非常高,在人工智能行業(yè),得芯片者可以說(shuō)得天下??傊酒夹g(shù)含量極高,非常重要,市場(chǎng)空白,前景廣闊。
AI 芯片作為產(chǎn)業(yè)核心,也是技術(shù)要求和附加值高的環(huán)節(jié),在AI產(chǎn)業(yè)鏈中的產(chǎn)業(yè)價(jià)值和戰(zhàn)略地位遠(yuǎn)遠(yuǎn)大于應(yīng)用層創(chuàng)新。騰訊發(fā)布的《中美兩國(guó)人工智能產(chǎn)業(yè)發(fā)展全面解讀》報(bào)告顯示,基礎(chǔ)層的處理器/芯片企業(yè)數(shù)量來(lái)看,中國(guó)有 14 家,美國(guó) 33 家。本文將對(duì)這一領(lǐng)域產(chǎn)業(yè)生態(tài)做一個(gè)簡(jiǎn)單梳理。
AI 芯片分類
從功能看,可以分為 Training(訓(xùn)練)和 Inference(推理)兩個(gè)環(huán)節(jié)
Training 環(huán)節(jié)通常需要通過(guò)大量的數(shù)據(jù)輸入,或采取增強(qiáng)學(xué)習(xí)等非監(jiān)督學(xué)習(xí)方法,訓(xùn)練出一個(gè)復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)模型。訓(xùn)練過(guò)程由于涉及海量的訓(xùn)練數(shù)據(jù)和復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),運(yùn)算量巨大,需要龐大的計(jì)算規(guī)模,對(duì)于處理器的計(jì)算能力、精度、可擴(kuò)展性等性能要求很高。目前,在訓(xùn)練環(huán)節(jié)主要使用 NVIDIA 的 GPU(Graphics Processing Unit,圖形處理器)集群來(lái)完成,Google 自主研發(fā)的 ASIC(Application Specific Integrated Circuit,專用集成電路)芯片 TPU 2.0 也支持訓(xùn)練環(huán)節(jié)的深度網(wǎng)絡(luò)加速。
Inference 環(huán)節(jié)指利用訓(xùn)練好的模型,使用新的數(shù)據(jù)去「推理」出各種結(jié)論,如視頻監(jiān)控設(shè)備通過(guò)后臺(tái)的深度神經(jīng)網(wǎng)絡(luò)模型,判斷一張抓拍到的人臉是否屬于黑名單。雖然 Inference 的計(jì)算量相比 Training 少很多,但仍然涉及大量的矩陣運(yùn)算。在推理環(huán)節(jié),GPU、FPGA(Field Programmable Gate Array,現(xiàn)場(chǎng)可編程門(mén)陣列)和 ASIC 都有很多應(yīng)用價(jià)值。
從應(yīng)用場(chǎng)景看,可以分成「Cloud/DataCenter(云)」和「Device/ Embedded(設(shè)備端)」兩大類
在深度學(xué)習(xí)的 Training 階段,由于對(duì)數(shù)據(jù)量及運(yùn)算量需求巨大,單一處理器幾乎不可能獨(dú)立完成一個(gè)模型的訓(xùn)練過(guò)程,因此,Training 環(huán)節(jié)目前只能在云端實(shí)現(xiàn),在設(shè)備端做 Training 目前還不是很明確的需求。
在 Inference 階段,由于目前訓(xùn)練出來(lái)的深度神經(jīng)網(wǎng)絡(luò)模型大多仍非常復(fù)雜,其推理過(guò)程仍然是計(jì)算密集型和存儲(chǔ)密集型的,若部署到資源有限的終端用戶設(shè)備上難度很大。因此,云端推理目前在人工智能應(yīng)用中需求更為明顯。GPU、FPGA、ASIC(Google TPU1.0/2.0)等都已應(yīng)用于云端 Inference 環(huán)境。
在設(shè)備端 Inference 領(lǐng)域,由于智能終端數(shù)量龐大且需求差異較大。如 ADAS、VR 等設(shè)備對(duì)實(shí)時(shí)性要求很高,推理過(guò)程不能交由云端完成,要求終端設(shè)備本身需要具備足夠的推理計(jì)算能力,因此一些低功耗、低延遲、低成本的專用芯片也會(huì)有很大的市場(chǎng)需求。
按照上述兩種分類,我們得出 AI 芯片分類象限如下圖所示。
除了按照功能場(chǎng)景劃分外,AI 芯片從技術(shù)架構(gòu)發(fā)展來(lái)看,大致也可以分為四個(gè)類型:通用類芯片,代表如 GPU、FPGA;基于 FPGA 的半定制化芯片,代表如深鑒科技 DPU、百度 XPU 等;全定制化 ASIC 芯片,代表如 TPU、寒武紀(jì) Cambricon-1A 等;類腦計(jì)算芯片,代表如 IBM TrueNorth、westwell、高通 Zeroth 等。
AI 芯片產(chǎn)業(yè)生態(tài)
從上述分類象限來(lái)看,目前 AI 芯片的市場(chǎng)需求主要是三類:面向于各大人工智能企業(yè)及實(shí)驗(yàn)室研發(fā)階段的 Training 需求(主要是云端,設(shè)備端 Training 需求尚不明確);Inference On Cloud,F(xiàn)ace++、出門(mén)問(wèn)問(wèn)、Siri 等主流人工智能應(yīng)用均通過(guò)云端提供服務(wù);Inference On Device,面向智能手機(jī)、智能攝像頭、機(jī)器人/無(wú)人機(jī)、自動(dòng)駕駛、VR 等設(shè)備的設(shè)備端推理市場(chǎng),需要高度定制化、低功耗的 AI 芯片產(chǎn)品。如華為麒麟 970 搭載了「神經(jīng)網(wǎng)絡(luò)處理單元(NPU,實(shí)際為寒武紀(jì)的 IP)」、蘋(píng)果 A11 搭載了「神經(jīng)網(wǎng)絡(luò)引擎(Neural Engine)」。
1. Training,訓(xùn)練
2007 年以前,人工智能研究受限于當(dāng)時(shí)算法、數(shù)據(jù)等因素,對(duì)于芯片并沒(méi)有特別強(qiáng)烈的需求,通用的 CPU 芯片即可提供足夠的計(jì)算能力。
Andrew Ng 和 Jeff Dean 打造的 Google Brain 項(xiàng)目,使用包含 16000 個(gè) CPU 核的并行計(jì)算平臺(tái),訓(xùn)練超過(guò) 10 億個(gè)神經(jīng)元的深度神經(jīng)網(wǎng)絡(luò)。但 CPU 的串行結(jié)構(gòu)并不適用于深度學(xué)習(xí)所需的海量數(shù)據(jù)運(yùn)算需求,用 CPU 做深度學(xué)習(xí)訓(xùn)練效率很低。在早期使用深度學(xué)習(xí)算法進(jìn)行語(yǔ)音識(shí)別的模型中,擁有 429 個(gè)神經(jīng)元的輸入層,整個(gè)網(wǎng)絡(luò)擁有 156M 個(gè)參數(shù),訓(xùn)練時(shí)間超過(guò) 75 天。
與 CPU 少量的邏輯運(yùn)算單元相比,GPU 整個(gè)就是一個(gè)龐大的計(jì)算矩陣,GPU 具有數(shù)以千計(jì)的計(jì)算核心、可實(shí)現(xiàn) 10-100 倍應(yīng)用吞吐量,而且它還支持對(duì)深度學(xué)習(xí)至關(guān)重要的并行計(jì)算能力,可以比傳統(tǒng)處理器更加快速,大大加快了訓(xùn)練過(guò)程。
從上圖對(duì)比來(lái)看,在內(nèi)部結(jié)構(gòu)上,CPU中 70% 晶體管都是用來(lái)構(gòu)建 Cache(高速緩沖存儲(chǔ)器)和一部分控制單元,負(fù)責(zé)邏輯運(yùn)算的部分(ALU 模塊)并不多,指令執(zhí)行是一條接一條的串行過(guò)程。
GPU 由并行計(jì)算單元和控制單元以及存儲(chǔ)單元構(gòu)成,擁有大量的核(多達(dá)幾千個(gè))和大量的高速內(nèi)存,擅長(zhǎng)做類似圖像處理的并行計(jì)算,以矩陣的分布式形式來(lái)實(shí)現(xiàn)計(jì)算。同 CPU 不同的是,GPU 的計(jì)算單元明顯增多,特別適合大規(guī)模并行計(jì)算。
在人工智能的通用計(jì)算 GPU 市場(chǎng),NVIDIA 現(xiàn)在一家獨(dú)大。2010 年 NVIDIA 就開(kāi)始布局人工智能產(chǎn)品,2014年發(fā)布了新一代 PASCAL GPU 芯片架構(gòu),這是 NVIDIA 的第五代 GPU 架構(gòu),也是為深度學(xué)習(xí)而設(shè)計(jì)的 GPU,它支持所有主流的深度學(xué)習(xí)計(jì)算框架。
2016 年上半年,NVIDIA 又針對(duì)神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程推出了基于 PASCAL 架構(gòu)的 TESLA P100 芯片以及相應(yīng)的超級(jí)計(jì)算機(jī) DGX-1。DGX-1 包含 TESLA P100 GPU 加速器,采用 NVLINK 互聯(lián)技術(shù),軟件堆棧包含主要深度學(xué)習(xí)框架、深度學(xué)習(xí) SDK、DIGITS GPU 訓(xùn)練系統(tǒng)、驅(qū)動(dòng)程序和 CUDA,能夠快速設(shè)計(jì)深度神經(jīng)網(wǎng)絡(luò)(DNN),擁有高達(dá) 170TFLOPS 的半精度浮點(diǎn)運(yùn)算能力,相當(dāng)于 250 臺(tái)傳統(tǒng)服務(wù)器,可以將深度學(xué)習(xí)的訓(xùn)練速度加快 75 倍,將 CPU 性能提升 56 倍。
Training 市場(chǎng)目前能與 NVIDIA 競(jìng)爭(zhēng)的就是 Google。今年 5 月份 Google 發(fā)布了 TPU 2.0,TPU(Tensor Processing Unit)是 Google 研發(fā)的一款針對(duì)深度學(xué)習(xí)加速的 ASIC 芯片,代 TPU 僅能用于推理,而目前發(fā)布的 TPU 2.0 既可以用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),又可以用于推理。
據(jù)介紹,TPU 2.0 包括了四個(gè)芯片,每秒可處理 180 萬(wàn)億次浮點(diǎn)運(yùn)算。Google 還找到一種方法,使用新的計(jì)算機(jī)網(wǎng)絡(luò)將 64 個(gè) TPU 組合到一起,升級(jí)為所謂的 TPU Pods,可提供大約 11500 萬(wàn)億次浮點(diǎn)運(yùn)算能力。Google 表示,公司新的深度學(xué)習(xí)翻譯模型如果在 32 塊性能好的 GPU 上訓(xùn)練,需要一整天的時(shí)間,而八分之一個(gè) TPU Pod 就能在 6 個(gè)小時(shí)內(nèi)完成同樣的任務(wù)。
目前 Google 并不直接出售 TPU 芯片,而是結(jié)合其開(kāi)源深度學(xué)習(xí)框架 TensorFlow 為 AI 提供 TPU 云加速的服務(wù),以此發(fā)展 TPU2 的應(yīng)用和生態(tài),比如 TPU2 同時(shí)發(fā)布的 TensorFlow Research Cloud (TFRC)。
上述兩家以外,傳統(tǒng) CPU/GPU 廠家 Intel 和 AMD 也在努力進(jìn)入這 Training 市場(chǎng),如 Intel 推出的 Xeon Ph + Nervana 方案,AMD 的下一代 VEGA 架構(gòu) GPU 芯片等,但從目前市場(chǎng)進(jìn)展來(lái)看很難對(duì) NVIDIA 構(gòu)成威脅。
初創(chuàng)公司中,Graphcore 的 IPU 處理器(Intelligence Processing Unit)據(jù)介紹也同時(shí)支持 Training 和 Inference。該 IPU 采用同構(gòu)多核架構(gòu),有超過(guò) 1000 個(gè)獨(dú)立的處理器;支持 All-to-All 的核間通信,采用 Bulk Synchronous Parallel 的同步計(jì)算模型;采用大量片上 Memory,不直接連接 DRAM。
總之,對(duì)于云端的 Training(也包括 Inference)系統(tǒng)來(lái)說(shuō),業(yè)界比較一致的觀點(diǎn)是競(jìng)爭(zhēng)的核心不是在單一芯片的層面,而是整個(gè)軟硬件生態(tài)的搭建。NVIDIA的CUDA + GPU、Google 的 TensorFlow + TPU 2.0,巨頭的競(jìng)爭(zhēng)也才剛剛開(kāi)始。