芯片三劍客 云端終端雙場景各顯神通
AI(人工智能)沉浮數(shù)十載,在“預期-失望-進步-預期”周期中破浪前行。
本文引用地址:http://m.butianyuan.cn/article/201710/370218.htm根據(jù)賽迪咨詢發(fā)布報告,2016年全球人工智能市場規(guī)模達到293億美元。我們預計2020年全球人工智能市場規(guī)模將達到1200億美元,復合增長率約為20%。人工智能芯片是人工智能市場中重要一環(huán),根據(jù)英偉達,AMD,賽靈思,谷歌等相關公司數(shù)據(jù),我們測算2016年人工智能芯片市場規(guī)達到23.88億美元,約占全球人工智能市場規(guī)模8.15%,而到2020年人工智能芯片市場規(guī)模將達到146.16億美元,約占全球人工智能市場規(guī)模12.18%。人工智能芯片市場空間極其廣闊。
芯片承載算法,是競爭的制高點
人工智能的基礎是算法,深度學習是目前最主流的人工智能算法。深度學習又叫深度神經網絡(DNN:Deep Neural Networks),從之前的人工神經網絡(ANN:Artificial Neural Networks)模型發(fā)展而來。這種模型一般采用計算機科學中的圖模型來直觀表達,深度學習的“深度”便指的是圖模型的層數(shù)以及每一層的節(jié)點數(shù)量。神經網絡復雜度不斷提升,從最早單一的神經元,到2012年提出的AlexNet(8個網絡層),再到2015年提出的ResNET(150個網絡層),層次間的復雜度呈幾何倍數(shù)遞增,對應的是對處理器運算能力需求的爆炸式增長。深度學習帶來計算量急劇增加,對計算硬件帶來更高要求。
深度學習算法分“訓練”和“推斷”兩個過程。簡單來講,人工智能需要通過以大數(shù)據(jù)為基礎,通過“訓練”得到各種參數(shù),把這些參數(shù)傳遞給“推斷”部分,得到最終結果。
“訓練”和“推斷”所需要的神經網絡運算類型不同。神經網絡分為前向計算(包括矩陣相乘、卷積、循環(huán)層)和后向更新(主要是梯度運算)兩類,兩者都包含大量并行運算?!坝柧殹彼璧倪\算包括“前向計算+后向更新”;“推斷”則主要是“前向計算”。一般而言訓練過程相比于推斷過程計算量更大。一般來說,云端人工智能硬件負責“訓練+推斷”,終端人工智能硬件只負責“推斷”。
“訓練”需大數(shù)據(jù)支撐并保持較高靈活性,一般在“云端”(即服務器端)進行。人工智能訓練過程中,頂層上需要有一個海量的數(shù)據(jù)集,并選定某種深度學習模型。每個模型都有一些內部參數(shù)需要靈活調整,以便學習數(shù)據(jù)。而這種參數(shù)調整實際上可以歸結為優(yōu)化問題,在調整這些參數(shù)時,就相當于在優(yōu)化特定的約束條件,這就是所謂的“訓練”。云端服務器收集用戶大數(shù)據(jù)后,依靠其強大的計算資源和專屬硬件,實現(xiàn)訓練過程,提取出相應的訓練參數(shù)。由于深度學習訓練過程需要海量數(shù)據(jù)集及龐大計算量,因此對服務器也提出了更高的要求。未來云端AI服務器平臺需具備相當數(shù)據(jù)級別、流程化的并行性、多線程、高內存帶寬等特性。
“推斷”過程可在云端(服務器端)進行,也可以在終端(產品端)進行。等待模型訓練完成后,將訓練完成的模型(主要是各種通過訓練得到的參數(shù))用于各種應用場景(如圖像識別、語音識別、文本翻譯等)。“應用”過程主要包含大量的乘累加矩陣運算,并行計算量很大,但和“訓練”過程比參數(shù)相對固化,不需要大數(shù)據(jù)支撐,除在服務器端實現(xiàn)外,也可以在終端實現(xiàn)?!巴茢唷彼鑵?shù)可由云端“訓練”完畢后,定期下載更新到終端。
傳統(tǒng)CPU算力不足,新架構芯片支撐AI成必須。核心芯片決定計算平臺的基礎架構和發(fā)展生態(tài),由于AI所需的深度學習需要很高的內在并行度、大量浮點計算能力以及矩陣運算,基于CPU的傳統(tǒng)計算架構無法充分滿足人工智能高性能并行計算(HPC)的需求,因此需要發(fā)展適合人工智能架構的專屬芯片。
專屬硬件加速是新架構芯片發(fā)展主流。目前處理器芯片面向人工智能硬件優(yōu)化升級有兩種發(fā)展路徑:(1)延續(xù)傳統(tǒng)計算架構,加速硬件計算能力:以GPU、FPGA、ASIC(TPU、NPU等)芯片為代表,采用這些專屬芯片作為輔助,配合CPU的控制,專門進行人工智能相關的各種運算;(2)徹底顛覆傳統(tǒng)計算架構,采用模擬人腦神經元結構來提升計算能力,以IBM TrueNorth芯片為代表,由于技術和底層硬件的限制,第二種路徑尚處于前期研發(fā)階段,目前不具備大規(guī)模商業(yè)應用的可能性。從技術成熟度和商業(yè)可行性兩個角度,我們判斷使用AI專屬硬件進行加速運算是今后五年及以上的市場主流。
云端終端雙場景,三種專屬芯片各顯其能
我們把人工智能硬件應用場景歸納為云端場景和終端場景兩大類。云端主要指服務器端,包括各種共有云、私有云、數(shù)據(jù)中心等業(yè)務范疇;終端主要指包括安防、車載、手機、音箱、機器人等各種應用在內的移動終端。由于算法效率和底層硬件選擇密切相關,“云端”(服務器端)和“終端”(產品端)場景對硬件的需求也不同。
除CPU外,人工智能目前主流使用三種專用核心芯片,分別是GPU,F(xiàn)PGA,ASIC。
GPU:先發(fā)制人的“十項全能”選手,云端終端均拔頭籌。GPU(Graphics Processing Unit)又稱圖形處理器,之前是專門用作圖像運算工作的微處理器。相比CPU,GPU由于更適合執(zhí)行復雜的數(shù)學和幾何計算(尤其是并行運算),剛好與包含大量的并行運算的人工智能深度學習算法相匹配,因此在人工智能時代剛好被賦予了新的使命,成為人工智能硬件首選,在云端和終端各種場景均率先落地。目前在云端作為AI“訓練”的主力芯片,在終端的安防、汽車等領域,GPU也率先落地,是目前應用范圍最廣、靈活度最高的AI硬件。
FPGA:“變形金剛”,算法未定型前的階段性最佳選擇。FPGA(Field-Programmable Gate Array)即現(xiàn)場可編程門陣列,是一種用戶可根據(jù)自身需求進行重復編程的“萬能芯片”。編程完畢后功能相當于ASIC(專用集成電路),具備效率高、功耗低的特點,但同時由于要保證編程的靈活性,電路上會有大量冗余,因此成本上不能像ASIC做到最優(yōu),并且工作頻率不能太高(一般主頻低于500MHz)。FPGA相比GPU具有低功耗優(yōu)勢,同時相比ASIC具有開發(fā)周期快,更加靈活編程等特點。FPGA于“應用爆發(fā)”與“ASIC量產”夾縫中尋求發(fā)展,是效率和靈活性的較好折衷,“和時間賽跑”,在算法未定型之前具較大優(yōu)勢。在現(xiàn)階段云端數(shù)據(jù)中心業(yè)務中,F(xiàn)PGA以其靈活性和可深度優(yōu)化的特點,有望繼GPU之后在該市場爆發(fā);在目前的終端智能安防領域,目前也有廠商采用FPGA方案實現(xiàn)AI硬件加速。
ASIC:“專精職業(yè)選手”,專一決定效率,AI芯片未來最佳選擇。ASIC(Application Specific Integrated Circuit)即專用集成電路,本文中特指專門為AI應用設計、專屬架構的處理器芯片。近年來涌現(xiàn)的類似TPU、NPU、VPU、BPU等令人眼花繚亂的各種芯片,本質上都屬于ASIC。無論是從性能、面積、功耗等各方面,AISC都優(yōu)于GPU和FPGA,長期來看無論在云端和終端,ASIC都代表AI芯片的未來。但在AI算法尚處于蓬勃發(fā)展、快速迭代的今天,ASIC存在開發(fā)周期較長、需要底層硬件編程、靈活性較低等劣勢,因此發(fā)展速度不及GPU和FPGA。
本報告我們分別仔細分析云端和終端兩種應用場景下,這三種專屬AI芯片的應用現(xiàn)狀、發(fā)展前景及可能變革。
云端場景:GPU生態(tài)領先,未來多芯片互補共存
核心結論:GPU、TPU等適合并行運算的處理器未來成為支撐人工智能運算的主力器件,既存在競爭又長期共存,一定程度可相互配合;FPGA有望在數(shù)據(jù)中心業(yè)務承擔較多角色,在云端主要作為有效補充存在;CPU會“變小”,依舊作為控制中心。未來芯片的發(fā)展前景取決于生態(tài),有望統(tǒng)一在主流的幾個軟件框架下,形成云端CPU+GPU/TPU+FPGA(可選)的多芯片協(xié)同場景。
(1)依托大數(shù)據(jù),科技巨頭不同技術路徑布局AI云平臺
基于云平臺,各大科技巨頭大力布局人工智能。云計算分為三層,分別是Infrastructure(基礎設施)-as-a-Service(IaaS),Platform(平臺)-as-a-Service(Paas),Software(軟件)-as-a-Service(Saas)?;A設施在最下端,平臺在中間,軟件在頂端。IaaS公司提供場外服務器,存儲和網絡硬件。大數(shù)據(jù)為人工智能提供信息來源,云計算為人工智能提供平臺,人工智能關鍵技術是在云計算和大數(shù)據(jù)日益成熟的背景下取得了突破性進展。目前各大科技巨頭看好未來人工智能走向云端的發(fā)展態(tài)勢,紛紛在自有云平臺基礎上搭載人工智能系統(tǒng),以期利用沉淀在云端的大數(shù)據(jù)挖掘價值。
(2)千億美元云服務市場,AI芯片發(fā)展?jié)摿薮?/p>
千億美元云服務市場,云計算硬件市場規(guī)模巨大。云計算的市場規(guī)模在逐漸擴大。據(jù)Gartner的統(tǒng)計,2015年以IaaS、PaaS和SaaS為代表的典型云服務市場規(guī)模達到522.4億美元,增速20.6%,預計2020年將達到1435.3億美元,年復合增長率達22%。其中IaaS公司到2020年市場空間達到615億美元,占整個云計算市場達43%,云計算硬件市場空間巨大,而云計算和人工智能各種加速算法關系密切,未來的云計算硬件離不開AI芯片加速。
云端AI芯片發(fā)展?jié)摿薮?。根?jù)英偉達與AMD財務數(shù)據(jù),我們預計GPU到2020年在數(shù)據(jù)中心業(yè)務中將達到約50億美元市場規(guī)模。同時根據(jù)賽靈思與阿爾特拉等FPGA廠商,我們預計2020年FPAG數(shù)據(jù)中心業(yè)務將達到20億美元。加上即將爆發(fā)的ASIC云端市場空間,我們預計到2020年云端AI芯片市場規(guī)模將達到105.68億美元,AI芯片在云端會成為云計算的重要組成部分,發(fā)展?jié)摿薮蟆?/p>
(3)云端芯片現(xiàn)狀總結:GPU領先,F(xiàn)PGA隨后,ASIC萌芽
AI芯片在云端基于大數(shù)據(jù),核心負責“訓練”。云端的特征就是“大數(shù)據(jù)+云計算”,用戶依靠大數(shù)據(jù)可進行充分的數(shù)據(jù)分析和數(shù)據(jù)挖掘、提取各類數(shù)據(jù)特征,與人工智能算法充分結合進行云計算,從而衍生出服務器端各種AI+應用。AI芯片是負責加速人工智能各種復雜算法的硬件。由于相關計算量巨大,CPU架構被證明不能滿足需要處理大量并行計算的人工智能算法,需要更適合并行計算的芯片,所以GPU、FPGA、TPU等各種芯片應運而生。AI芯片在云端可同時承擔人工智能的“訓練”和“推斷”過程。
云端芯片現(xiàn)狀:GPU占據(jù)云端人工智能主導市場,以TPU為代表的ASIC目前只運用在巨頭的閉環(huán)生態(tài),F(xiàn)PGA在數(shù)據(jù)中心業(yè)務中發(fā)展較快。
GPU應用開發(fā)周期短,成本相對低,技術體系成熟,目前全球各大公司云計算中心如谷歌、微軟、亞馬遜、阿里巴巴等主流公司均采用GPU進行AI計算。
谷歌除大量使用GPU外,努力發(fā)展自己的AI專屬的ASIC芯片。今年5月推出的TPU與GPU相比耗電量降低60%,芯片面積下降40%,能更好的滿足其龐大的AI算力要求,但由于目前人工智能算法迭代較快,目前TPU只供谷歌自身使用,后續(xù)隨著TensorFlow的成熟,TPU也有外供可能,但通用性還有很長路要走。
百度等廠商目前在數(shù)據(jù)中心業(yè)務中也積極采用FPGA進行云端加速。FPGA可以看做從GPU到ASIC重點過渡方案。相對于GPU可深入到硬件級優(yōu)化,相比ASIC在目前算法不斷迭代演進情況下更具靈活性,且開發(fā)時間更短。AI領域專用架構芯片(ASIC)已經被證明可能具有更好的性能和功耗,有望成為未來人工智能硬件的主流方向。
(4)云端GPU:云端AI芯片主流,先發(fā)優(yōu)勢明顯
發(fā)展現(xiàn)狀:GPU天然適合并行計算,是目前云端AI應用最廣的芯片
GPU目前云端應用范圍最廣。目前大量涉足人工智能的企業(yè)都采用GPU進行加速。根據(jù)英偉達官方資料,與英偉達合作開發(fā)深度學習項目的公司2016年超過19000家,對比2014年數(shù)量1500 家。目前百度、Google、Facebook 和微軟等IT巨頭都采用英偉達的GPU對其人工智能項目進行加速,GPU目前在云端AI深度學習場景應用最為廣泛, 由于其良好的編程環(huán)境帶來的先發(fā)優(yōu)勢,預計未來仍將持續(xù)強勢。
GPU芯片架構脫胎圖像處理,并行計算能力強大。GPU(Graphics Processing Unit),又稱視覺處理器,是之前應用在個人電腦、工作站、游戲機、移動設備(如平板電腦、智能手機等)等芯片內部,專門用作圖像運算工作的微處理器。與CPU類似可以編程,但相比CPU更適合執(zhí)行復雜的數(shù)學和幾何計算,尤其是并行運算。內部具有高并行結構(highly paralle lstructure),在處理圖形數(shù)據(jù)和復雜算法方面擁有比CPU更高的效率。
GPU較CPU結構差異明顯,更適合并行計算。對比GPU和CPU在結構上的差異,CPU大部分面積為控制器和寄存器,GPU擁有更多的ALU(Arithmetic Logic Unit,邏輯運算單元)用于數(shù)據(jù)處理,而非數(shù)據(jù)高速緩存和流控制,這樣的結構適合對密集型數(shù)據(jù)進行并行處理。CPU執(zhí)行計算任務時,一個時刻只處理一個數(shù)據(jù),不存在真正意義上的并行,而GPU具有多個處理器核,同一時刻可并行處理多個數(shù)據(jù)。
與CPU相比,GPU在AI領域的性能具備絕對優(yōu)勢。深度學習在神經網絡訓練中,需要很高的內在并行度、大量的浮點計算能力以及矩陣運算,而GPU可以提供這些能力,并且在相同的精度下,相對傳統(tǒng)CPU的方式,擁有更快的處理速度、更少的服務器投入和更低的功耗。在2017年5月11日的加州圣何塞GPU技術大會上,NVIDIA就已經發(fā)布了Tesla V100。這個目前性能最強的GPU運算架構Volta采用臺積電12nm FFN制程并整合210億顆電晶體,在處理深度學習的性能上等同于250顆CPU。
評論