天天看點

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

作者:佐思汽車研究

大模型最初叫Large language model,LLM,即大規模語言模型,其沒有準确的定義,在2018年一般定義為參數達到數十億以上的模型。如今這個定義應該是1000億參數以上的模型,它是與預訓練(Pre-Training Model, PTM)同時出現的,彼此相輔相成,大模型自2018年Bert和GPT的問世而宣告正式出現。

大模型的海量參數意味着其瘋狂消耗存儲成本,基本上能夠對應大模型的晶片單單存儲成本都在2000美元以上,這意味着真正的大模型不可能上車。不過汽車行業,超過10億參數的模型或許也能叫大模型,這與真正的大模型有着天壤之别,它又會有什麼影響呢?

  • 首先是運算晶片領域,需要更高帶寬的存儲器,非常昂貴的HBM有可能出現在汽車晶片上,這意味着汽車運算晶片價格會超過1000美元;
  • 其次是老舊的針對CNN網絡設計的加速器完全無法使用或效率極低,GPU或基于CPU+GPU的系統更合适,也更能應對未來模型的變化;
  • 最後是PTM讓資料訓練的成本大大降低,資料集的含金量縮水了。
大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

要分析大模型或者說Transformer對運算硬體的影響,可以看這篇論文:英偉達與巴克利大學的《Full Stack Optimization of Transformer Inference: a Survey》。論文做了非常詳細的描述,長達45頁,有興趣的可以去看全文。

該論文指出Transformer加速器運算中瓶頸主要在CPU,非矩陣運算部分消耗的時間占了總時間的96%。換句話說,CPU遠比加速器重要,Transformer時代,加速器沒有存在的必要,CPU+GPU是最好的選擇。如果非要用加速器的話,也得訂做一個高性能的CPU。

另外還得指出,目前大模型都可算是Transformer的一種。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

大模型進化樹,其根基就是Transformer。Transformer是2017年提出的一個語言模型,最初被用于解決機器翻譯的問題,但随着研究的深入,Transformer在不同問題,甚至不同領域上大放異彩,在自然語言領域的文本表征、分類、生成、問答等問題上都成為了強勁的解決方案,在視覺領域也很出色。

與傳統的CNN聚焦設計相比,Transformer主要由矩陣乘法(矩陣模數)和記憶體密集型的非線性操作組成。Transformer模型的計算圖和資料流比CNN更複雜,有更多的操作節點,更多的資料流分割和連接配接。而上一代傳統的汽車領域AI加速器基本都是針對CNN的,無法應對資料流分割,傳統AI加速器都是最大可能地讓資料在運算單元之間流動,減少存儲和讀取,面對資料流分割就無能為力。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

上面是Transformer示意圖,編碼器由相同的層堆疊,每層的結構有兩部分,多頭注意力和前饋。解碼器亦由相同的層堆疊,每層的結構為多頭注意力、編碼器-解碼器注意力和前饋。編碼器中的每個元素對整個序列來說都是可見的。解碼器的每一層中有兩個多頭注意力,一個是解碼器的輸入部分作為qkv的自注意力,一個是上一個解碼器層的輸出作為q,最後一個編碼器層的輸出作為kv的編碼-解碼注意力。

編碼器層和解碼器層的每一個部分都是殘差塊的形式而且包括了一個layer norm。在編碼器和解碼器的輸入處都有位置編碼,位置編碼和token嵌入相加。Transformer采用的是三角式位置編碼,這就意味着三角函數運算,三角函數運算屬于标量運算,CPU最擅長,AI加速器對此無能為力,AI加速器隻能計算矩陣的乘積和累加。即使GPU也需要CPU的大力配合,這也是英偉達一心要自研CPU的原因之一。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

現在LLM模型的架構都是以Transformer為主,進一步分成Encoder-Only、Decoder-Only、Encoder-Decoder三種,選取了Bert (Encoder),GPT2 (Decoder)這兩個代表模型進行分析。

由于大模型參數巨大,即便是H100這樣每片3萬美元的晶片也放不下1750億參數,是以英偉達提出了張量并行的計算方法,這也再次說明真正的大模型上不了車。英偉達論文題目為《Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism》。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

簡單來說就是給參數模型(即權重模型)豎着切一刀,橫着切一刀,然後插入一個AllReduce。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

Attention的多頭計算簡直是為張量模型并行量身定做的,因為每個頭上都可以獨立計算,最後再将結果concat起來。也就是說,可以把每個頭的參數放到一塊GPU上。對三個參數矩陣Q,K,V,按照“列切割”,每個頭放到一塊GPU上,做并行計算。對線性層B,按照“行切割”。切割的方式和MLP層基本一緻,其forward與backward原理也一緻,這裡不再贅述。

關于模型切割在此不做深入解析,大家隻需要知道目前大模型都是基于多張GPU運算就行。通常是8張GPU加2個CPU作為一個節點node,8張GPU之間用NVLink連接配接,節點與節點之間用NVIDIA Connect TX-7智能網卡連接配接,這個網卡可不一般,台積電7nm工藝,800億個半導體,400G GPUDirect吞吐量,400G加密加速,4.05億/秒資訊率,成本估計也在500美元以上。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

典型的AI加速器架構圖,沒有CPU排程任務,加速器就是無頭蒼蠅,沒法工作。

模型資料的切割與任務排程的安排都是由CPU來做更合适,GPU不适合這種有中斷分支的計算,但GPU至少可以對應矢量。AI加速器更差,AI加速器基本隻能對應張量或者說矩陣,要求資料與資料之間沒有任何關聯。而Transformer有前回報,也有時序關聯,同時AI加速器需要CPU全力配合,排除那些低效率運算的任務,隻做适合自己的任務,CPU的話語權遠高于AI加速器。CPU也需要很高的算力,如特斯拉的HW4.0中的二代FSD,用了多達24核的Cortex-A72,英偉達的Thor至少是32核心的ARM V1。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

MOPs就是每秒存取次數,模型越大,MOPs就越高。對于低于1億參數的模型,GDDR6這樣的記憶體還勉強可以接受,特斯拉和Mobileye EyeQ6H已經采用昂貴的GDDR6。不過大部分廠家還是用廉價的LPDDR5,隻能對應1千萬參數的模型,未來必須使用昂貴的HBM。HBM本身不算太昂貴,比GDDR6貴幾倍而已,但一旦用HBM就必須配合台積電的CoWoS工藝。這個CoWoS工藝産能異常緊張,價格極高,一般隻有伺服器晶片才會使用。

接下來我們說說預訓練,了解PTM要從人類的學習機制談起,利用深度學習自動學習特征已經逐漸取代了人工建構特征和統計方法。但其中一個關鍵問題是需要大量的資料,否則會因為參數過多過拟合。但是這個成本非常高昂,以圖像描述任務為例,MSCOCO資料集隻标記了12萬張圖檔,每張圖檔給出5個标記,總共花費了10.8W美金。而自動駕駛領域每張圖檔最少10個标記,資料集是百萬級起跳。

衆所周知,Transformer最初是自然語言處理(NLP)領域的産物,NLP領域采用了自監督學習進行預訓練,其動機是利用文本内在關聯作為監督信号取代人工标注。最初的探索聚焦在淺層預訓練模型擷取詞的語義,比如Word2Vec和Glove,但它們的局限是無法很好地表征一詞多義。自然而然地,就想到了利用 RNN 來提供上下文表征,但彼時的模型表現仍受限于模型大小和深度。

2018 年 GPT 和 BERT 橫空出世,将 NLP 的 PTM 帶入了新時代。這些新模型都很大,大量的參數可以從文本中捕捉到一詞多義、詞法、句法結構、現實知識等資訊,通過對模型微調,隻要很少的樣例就可以在下遊任務上取得驚人的表現。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

這種預訓練實際專業的說法是遷移學習(Transfer Learning),遷移學習的初衷是節省人工标注樣本的時間,讓模型可以通過已有的标記資料(source domain data)向未标記資料(target domain data)遷移。進而訓練出适用于target domain目标域的模型。需要指出Transfer Learning是機器學習的分支,不需要神經網絡也可以實作的,但現在神經網絡基本與遷移學習合二為一。通俗來講,就是運用已有的知識來學習新的知識,核心是找到已有知識和新知識之間的相似性,用成語來說就是舉一反三。由于直接對目标域從頭開始學習成本太高,我們故而轉向運用已有的相關知識來輔助盡快地學習新知識。

遷移學習在深度學習上的應用有兩種政策,但目前這兩種政策的命名還沒有統一。一種政策是微調(finetuning)——其中包括使用基礎資料集上的預訓練網絡以及在目标資料集中訓練所有層;另一種則是當機與訓練(freeze and train)——其中包括當機除最後一層的所有層(權重不更新)并訓練最後一層。當然遷移學習并不僅僅局限于深度學習,但目前在深度學習上的應用确實很多。

最典型的做法可以參考論文《Image as a Foreign Language: BEIT Pretraining for All Vision and Vision-Language Tasks》,微軟亞洲研究院出品。

大模型、預訓練對汽車行業的影響,AI加速晶片恐失去市場

思路很精簡的,就是把圖檔看成語言,與文本一樣,采用生成式自監督方式的預訓練,BEiT-3 利用一個共享的 Multiway Transformer 結構,通過在單模态和多模态資料上進行掩碼資料模組化完成預訓練,并可遷移到各種視覺、視覺-語言的下遊任務中。通俗地說就是隻需要很少的精細标注視訊,用這個精細标注過的資料集訓練一個模型,再用這個模型訓練大量的無标注視訊,最終得到一個更好的權重模型。其原理類似我們學習外語時,遇到不認識的單詞(掩碼資料),我們不需要知道這個單詞的準确意思,我們可以通過以前的經驗來猜測這個詞的意思,把這個猜測的意思作為一個準确的标注。

盡管已經取得了很大的成功,但還有一些基本的問題無法解決,我們仍然不清楚隐藏在大量模型參數中的本質,訓練這些龐然大物的巨大計算成本也阻礙了進一步探索大模型的本質,而這一切可能很快就将大模型推到天花闆級别,無力再進一步。

免責說明:本文觀點和資料僅供參考,和實際情況可能存在偏差。本文不構成投資建議,文中所有觀點、資料僅代表筆者立場,不具有任何指導、投資和決策意見。