我為什麼說AI推理晶片大有可為

半导体行业观察發表於2019-06-19

近年來科技熱潮一波接一波,2013年、2014年開始倡議物聯網、穿戴式電子,2016年開始人工智慧,2018年末則為5G人工智慧過往在1950年代、1980年代先後熱議過,但因多項技術限制與過度期許而回復平淡,2016年隨雲端資料日多與影音辨識需求再次走紅(圖1)。

我為什麼說AI推理晶片大有可為圖1人工智慧的第三波熱潮。人工智慧的運用分成兩個階段,一是學習訓練階段,二是推理階段,此與應用程式相類似,程式開發階段即為學習訓練階段,程式正式上線執行運作則為推理階段。開發即是船艦在船塢內打造或維修,執行則為船艦出海航行作業執勤(圖2)。

我為什麼說AI推理晶片大有可為圖2人工智慧訓練與推理的差別。訓練與推理階段對運算的要求有所不同,訓練階段需要大量繁複的運算,且為了讓人工智慧模型獲得更佳的引數調整資料,運算的精準細膩度較高,而推理階段則相反,模型已經訓練完成,不再需要龐大運算量,且為了儘快獲得推理結果,允許以較低的精度運算。

例如一個貓臉辨識應用,訓練階段要先提供成千上萬張各種帶有貓臉的照片來訓練,並從中抓出各種細膩辨識特點,但真正設定在前端負責辨識來者是否為貓的推理運算,只是辨識單張臉,運算量小,且可能已簡化特徵,只要簡單快速運算即可得到結果(是貓或不是)。

推理專用晶片需求顯現

對於人工智慧的訓練、推理運算,近年來已普遍使用CPU之外的晶片來加速,例如GPGPU、FPGA、ASIC等,特別是GPGPU為多,原因在於GPGPU的高階軟體生態較為完備、可支援多種人工智慧框架(Framework),相對的FPGA需要熟悉低階硬體電路者方能開發,而ASIC通常只針對限定的軟體或框架最佳化(表1)。雖然FPGA與ASIC較有難度與限制,但仍有科技大廠願意投入,如Microsoft即主張用FPGA執行人工智慧運算,Google則針對TensorFlow人工智慧框架開發ASIC,即Cloud TPU晶片。

我為什麼說AI推理晶片大有可為

人工智慧模型的開發(訓練)與執行(推理)過往多使用同一晶片,用該晶片執行訓練運算後也用該晶片執行推理運算。但近1、2年來隨著訓練成果逐漸增多,成熟的人工智慧模型逐漸普及,以相同晶片負責推理運算的缺點逐漸浮現。以GPGPU而言,晶片內具備大量的平行運算單元是針對遊戲繪圖、專業繪圖或高效能運算而設計,可運算32、64位元浮點數,這在人工智慧模型訓練階段亦適用,但到推理階段,可能只需16位元浮點、16位元整數、8位元整數等運算即可求出推理結果,甚至是4位元整數便足夠。如此過往的高精度大量平行運算單元便大材小用,電路與功耗均有所浪費,所以需要人工智慧的推理專用處理晶片。

半導體廠紛發展推理晶片

推理晶片的需求在人工智慧重新倡議後的2年開始浮現,但在此之前已有若干產品,如2014年Google對外揭露的探戈專案(Project Tango)即使用Movidius公司的Myriad晶片(圖3)。

我為什麼說AI推理晶片大有可為圖3 Intel Movidius Myriad X晶片Movidius之後於2016年推出Myriad 2晶片,同樣也在2016年,Intel購併Movidius取得Myriad 1/2系列晶片,並接續推出Myriad X晶片。Google除探戈專案外其他硬體也採用Intel/Movidius晶片,如2017年的Google Clips人工智慧攝影機、2018年Google AIY Vision人工智慧視覺應用開發套件等。

不過真正受業界矚目的仍在2018年,包含NVIDIA推出T4晶片(嚴格而論是已帶晶片的加速介面卡)(圖4)、Google推出Edge TPU晶片(圖5),以及Amazon Web Services在2018年11月宣告將在2019年推出Inferentia晶片,均為推理型晶片。

我為什麼說AI推理晶片大有可為圖4 NVIDIA展示T4介面卡

我為什麼說AI推理晶片大有可為圖5 Google Edge TPU小於一美分銅板。另外,臉書(Facebook)也已經意識到各形各色的推理型晶片將會在未來幾年內紛紛出籠,為了避免硬體的多元分歧使軟體支援困難,因此提出Glow編譯器構想,期望各人工智慧晶片商能一致支援該編譯標準,目前Intel、Cadence、Marvell、Qualcomm、Esperanto Technologies(人工智慧晶片新創業者)均表態支援。

與此同時,臉書也坦承開發自有人工智慧晶片中,並且將與Intel技術合作;目前臉書技術高層已經表示其晶片與Google TPU不相同,但是無法透露更多相關的技術細節。而Intel除了在2016年購併Movidius之外,在同一年也購併了另一家人工智慧技術業者Nervana System,Intel也將以Nervana的技術發展推理晶片。

推理晶片不單大廠受吸引投入新創業者也一樣積極,Habana Labs在2018年9月對特定客戶提供其推理晶片HL-1000的工程樣品,後續將以該晶片為基礎產製PCIe介面的推理加速卡,代號Goya。Habana Labs宣稱HL-1000是目前業界最快速的推理晶片(圖6)。

我為什麼說AI推理晶片大有可為圖6 Habana Labs除推出HL-1000推理晶片Goya外也推出訓練晶片Gaudi。雲端機房/快速反應推理晶片可分兩種取向


透過前述可瞭解諸多業者均已投入發展推理晶片,然嚴格而論推理晶片可分成兩種取向,一是追求更佳的雲端機房效率,另一是更快速即時反應。前者是將推理晶片安置於雲端機房,以全職專精方式執行推理運算,與訓練、推理雙用型的晶片相比,更省機房空間、電能與成本,如NVIDIA T4。

後者則是將推理晶片設定於現場,例如配置於物聯網閘道器、門禁攝影機內、車用電腦上,進行即時的影像物件辨識,如Intel Movidius Myriad系列、Google Edge TPU等。

設定於機房內的推理晶片由於可自電源插座取得源源不絕的電能,因此仍有數十瓦用電,如NVIDIA T4的TDP(Thermal Design Power)達70瓦,相對的現場設定的推理晶片必須適應各種環境可能,例如僅以電池供電運作,因此儘可能節約電能,如Google Edge TPU的TDP僅1.8瓦。現場型目前觀察僅有車用例外,由於汽車有蓄電瓶可用,電能充沛性居於電池與電源插座間,因此晶片功耗表現可高些。

為能快速反應推理晶片精度須調整

如前所述,推理晶片為能即時快速求解,通常會採較低精度進行運算,過去過於高效能運算的64位元雙精度浮點數(Double Precision, DP),或用於遊戲與專業繪圖的32位元單精度浮點數(Single Precision, SP)可能都不適用,而是降至(含)16位元以下的精度。

例如Intel Movidius Myriad X原生支援16位元浮點數(新稱法為半精度Half-Precision, HP)與8位元整數;Google Edge TPU則只支援8位元、16位元整數,未支援浮點數;NVIDIA T4則支援16與32位元浮點數外,也支援8位元與4位元整數。

進一步的,推理晶片可能同時使用兩種以上的精度運算,例如NVIDIA T4可同時執行16位元浮點數與32位元浮點數的運算,或者尚未推出的AWS Inferentia宣稱將可同時執行8位元整數與16位元浮點數的運算(圖7),同時使用兩種以上精度的作法亦有新詞,稱為混精度(Mixed Precision, MP)運算。

我為什麼說AI推理晶片大有可為圖7 AWS預告2019年將推出自家推理晶片Inferentia,將可同時推算整數與幅點數格式。圖片來源:AWS上述不同位元表達長度的整數、浮點數格式,一般寫成INT4(Integer)、INT8、FP16、FP32(Float Point)等字樣,另也有強調可針對不帶正負表達,單純正整數表達的格式運算,如Habana Labs的HL-1000強調支援INT8/16/32之餘,也支援UINT8/16/32格式,U即Unsigned之意。

推理晶片雖然支援多種精度格式,然精度愈高運算效能也會較低,以NVIDIA T4為例,在以INT4格式推算下可以有260 TOPS的效能,亦即每秒有260個Tera(10的12次方)運算,而改以INT8格式時則效能減半,成為130 TOPS,浮點格式也相同,以FP16格式運算的效能為65 TFOPS(F=Float),而以FP32格式運算則降至8.1 TFLOPS,浮點格式的位元數增加一倍效能退至1/8效能,比整數退減程度高。

推理晶片前景仍待觀察晶片商須步步為營

推理晶片是一個新市場,重量級晶片業者與新興晶片商均積極投入發展,但就數個角度而言其後續發展難以樂觀,主要是超規模(Hyperscale)雲端機房業者自行投入發展。

例如Google在雲端使用自行研發的Cloud TPU晶片,針對Google提出的人工智慧框架TensorFlow最佳化,如此便限縮了Intel、NVIDIA的機會市場(雖然2019年1月NVIDIA T4已獲Google Cloud採用並開放Beta服務)。而Google也在2018年提出針對人工智慧框架TensorFlow Lite最佳化的Edge TPU,如此也可能排擠過往已使用的Intel Movidius晶片。

類似的,臉書過去使用NVIDIA Tesla晶片,但隨著臉書力主採行PyTorch技術,以及與Intel合作發展人工智慧晶片,未來可能減少購置NVIDIA晶片。而Intel與臉書合作開發,也意味著臉書無意購置Intel獨立自主發展的人工智慧晶片,即便Intel於此合作中獲得收益,也比全然銷售完整晶片來得少,Intel須在技術上有所讓步妥協,或提供客制服務等。

AWS方面也相同,AWS已宣告發展自有推理晶片,此意味著NVIDIA T4的銷售機會限縮,其他業者的推理晶片也失去一塊大商機。AWS同樣有其人工智慧技術主張,如MXNet

如此看來,人工智慧晶片的軟體技術主導權與晶片大買家,均在超規模機房業者身上,晶片商獨立研發、獨立供應人工智慧晶片的機會將降低,未來遷就超規模機房業者,對其提供技術合作與客制的可能性增高。因此推理晶片會以企業為主要市場,多數企業面對晶片商並無議價能力、技術指導能力,仍會接受晶片商自主研發銷售的晶片。

訓練/推理兩極化

除了推理晶片市場外,人工智慧的訓練晶片市場也值得觀察,由於人工智慧應用的開發、訓練、引數調整等工作並非時時在進行,通常在歷經一段時間的密集開發訓練後迴歸平淡,直到下一次修改調整才再次進入密集運算。類似船隻多數時間出海航行,僅少數時間進入船塢整修,或軟體多數時間執行,少數時間進行改版修補。

因此,企業若為了人工智慧應用的開發訓練購置大量的伺服器等運算力,每次訓練完成後,大量的伺服器將閒置無用,直到下一次引數調整、密集訓練時才能再次顯現價值。鑑於此,許多企業傾向將密集訓練的運算工作交付給雲端服務供應商,依據使用的運算量、運算時間付費,而不是自行購置與維護龐大運算系統,如此訓練晶片的大買家也會是雲端服務商。

不過企業須要時時運用人工智慧的推理運算,如製造業的生產良率檢測、醫療業的影像診斷等,部份推理運算不講究即時推算出結果,亦可拋丟至雲端運算,之後再回傳運算結果,但追求即時反應者仍須要在前端現場設定推算晶片,此即為一可爭取的市場,除了獨立的晶片商Intel、NVIDIA積極外,雲端業者也在爭取此市場,如Google已宣佈Edge TPU不僅自用也將對外銷售,國內的工控電腦業者已有意配置於物聯網閘道器中。

由此看來,人工智慧軟體技術的標準走向、訓練晶片的大宗買家、訓練的運算力服務等均為超規模業者,加上推理晶片的自主化,推理與訓練的前後整合呼應等,均不利晶片商的發展,晶片商與超規模業者間在未來數年內必須保持亦敵亦友的態勢,一方面是大宗晶片的買家,另一方面是技術的指導者、潛在的晶片銷售競爭者。

所以,未來的企業將會減少購置訓練用的人工智慧晶片,並儘可能的使用雲端運算力進行短暫且密集的訓練;而對於時時與現場營運連結的部份,則會配置推理用晶片,且以即時反應、低功耗的推理晶片為主。至於機房端的推理晶片,仍然會是雲端業者為主要採購者,次之為大企業為自有機房而添購,以增進機房運算效率為主。

由上述來看似乎雲端服務商佔足優勢,不過科技持續變化中,目前已有人提出供需兩端均分散的作法,即家家戶戶釋出閒置未用的CPU、GPU運算力,彙整合龐大的單一運算力,供有密集訓練需求的客戶使用。

此作法甚至匯入區塊鏈技術,供需雙方採代幣系統運作,需要運算力者購買數位代幣,釋出運算力者可獲得代幣,代幣再透過市場交易機制與各地的法定發行貨幣連結,如此可跳略過雲端供應商,一樣在短時間獲得密集運算力。

不過,完全零散排程型的作法,仍有可能無法即時湊得需求運算力,或因為在全球各地排程運算力,反應速度恐有不及,且發展者多為小型新創業者,現階段仍難對AWS、Google等大型雲端服務商競爭,僅能若干削弱其價值,追求穩定充沛效能者仍以AWS、Google為首選。

面對完全分散化的趨勢,國際大型雲端業者亦有所因應,例如AWS原即有EC2 Spot Instance服務,對於機房閒置未租出去的運算效能,或有人臨時退租退用所釋出的效能,能夠以折扣方式再賣或轉讓,類似客機即將起飛,未賣盡的座位票價較低廉,或飯店將入夜的空房折扣租出等,以便減少固定成本的負擔。

不過,Spot Instance這類的超折扣機會可遇不可求,或有諸多限制(最高僅能連續運算6個小時),以便維持正規租用者的質感,如此與前述完全分散化的運算排程服務相去不遠,均帶有較高的不確定性。

相關文章