許多技術公司都在大肆宣揚自己擁有比其他公司更好的處理transformer算法的解決方案。但其實業(yè)界transformer的基準測試尚未推出。
Generative AI(GAI)的蓬勃發(fā)展已經顛覆了整個AI世界,似乎是這樣。
大語言模型(LLM),如ChatGPT所示,大多局限于語言建模和文本生成。但transformer(一種支撐LLM和其他GAI應用的總體深度學習架構)提供了一種可用于文本、語音、圖像、3D和視頻等數據流或任何傳感數據的模型。
Nvidia汽車部門副總裁Danny Shapiro提到了GAI的多功能性,他說:“AI領域新的神奇之處在于它的無限性。而我們現在只觸及到了表面?!?/p>
與任何新興技術一樣,硅谷也充斥著科技公司大肆宣揚其革命性解決方案的聲音。坊間傳聞,硅谷也在爭相用transformer取代基于卷積神經網絡(CNN)的模型。其中一種猜測提到了一家robotaxi公司,該公司剛剛淘汰了其內部設計的汽車芯片,并急于開發(fā)一種可以處理transformer的新款芯片。
Quadric是一家機器學習推理IP公司,Untether AI則將其硬件宣傳為是“通用推理加速器”,這兩家公司都在兜售可處理transformer的技術。Quadric說日本的Denso和Megachip是其客戶,而Untether AI則說通用是其技術開發(fā)合作方之一。
Quadric的CMO Steve Roddy認為,transformer話題“在過去幾周內真正活躍了起來”。他說:“顯然,transformer總體上已經初具規(guī)模了,因為每個人都在玩生成式圖像或ChatGPT等等。但到目前為止,LLM類型的東西都是在云端運行的,因為它們涉及數十億個參數。”
Qualcomm因素??
Roddy說:“盡管如此,人們現對‘設備端(on-device)’的transformer的關注要迫切得多。他猜測,引發(fā)這一變化的是Qualcomm。Qualcomm上月宣布了其2024年計劃,即在智能手機和PC上提供Meta的新聊天工具、基于Llama 2的AI。
Qualcomm表示,其目的是“讓開發(fā)者能夠利用Snapdragon平臺的AI功能,迎來全新的、令人興奮的GAI應用”。Qualcomm的這一聲明讓Roddy和其他行業(yè)玩家感到不安。為什么要等到2024年?
越來越多的人猜測,Apple可能會率先采用設備端的transformer。今年秋季發(fā)布的新款iPhone能否實現這一目標?這是人們無法證實的猜測。
Gartner認為,GAI主導了有關AI的討論,利用ChatGPT等系統(tǒng)以非常實際的方式提高了開發(fā)者和知識工作者的工作效率,該公司上周宣布,市場趨勢正在將GAI推向“Hype Cycle中的預期膨脹高峰”。
工程咨詢公司BDTI總裁、Edge AI and Vision Alliance創(chuàng)始人Jeff Bier在被問及一些公司吹噓的transformer芯片時持謹慎態(tài)度。他說:“我們已經看到了相當可信的說法。但我們尚未對這些說法進行獨立驗證。就實際應用而言,transformer在很大程度上仍然處于領先地位。”
BDTI從事處理器基準測試(benchmarking)。不過,他說:“我們還沒有對transformer或LLM進行任何處理器基準測試……我們剛剛收到第一批請求?!?/p>
什么是transformer???
首先,了解transformer模型到底是什么很重要。
在處理輸入流時,與傳統(tǒng)神經網絡相比,transformer模型基于不同算法,使用不同的方法。該模型側重于“關系”。
在自然語言處理(如ChatGPT)中,transformer模型(最初應用于LLM)是一種神經網絡,用于查找和跟蹤輸入句子之間的關系,從而學習上下文和含義。
BDTI的高級工程師Mihran Touriguian說:“transformer非常適合查找輸入之間的關系。即使輸入之間的關系在時間或地點上相距甚遠,該模型也能發(fā)揮作用?!?/p>
人們對transformer的興趣之所以如此高漲,是因為它們與輸入流無關。Touriguian解釋說,該模型不僅可以應用于語言,還可以應用于視頻或被分割成塊的單一大型圖像。
與其他模型相比,transformer的優(yōu)勢在于能找到圖像中多個時間或位置輸入之間的“關系”。Touriguian指出:“如果你的應用中使用了不同類型的傳感器,那么transformer就非常適合。這些‘傳感器’可以是圖像、文本或語音。Transformer非常適合將不同的數據流結合到一個應用中?!?/p>
與數據類型無關??
以往的神經網絡模型需要單獨的算法或拓撲結構來處理每種數據類型。Touriguian說:“在后端或前端,你可以將信息組合起來進行預測?!?/p>
與此相反,“transformer與輸入類型無關”,他解釋道?!耙虼耍憧梢詫a生數據的多種類型傳感器輸入transformer。transformer基本上可以找到它們之間的關系,例如語音、圖像和標題(文本)之間的關系?!?/p>
例如,在車載應用中,關鍵的輸入數據流來自各種類型的傳感器,攝像頭、雷達和激光雷達都至關重要。Transformer如果能像承諾的那樣發(fā)揮作用,就能將來自不同傳感器的信息結合起來,為汽車提供更好的決策和解決方案。
但,我們還沒有做到??????
然而,現實世界還沒有實現這一愿景。要實現這一目標,transformer必須先進行大量的準備工作,即對輸入數據進行預處理。Touriguian說,你需要“對輸入的類型進行規(guī)范化”,這個過程被稱為“嵌入(embedding)”,它捕捉并存儲語言或其他數據流的意義和關系。它們是模型比較不同標記或數據輸入的方式。
Touriguian說,在神經網絡中,來自任何傳感器的任何輸入都必須轉換為包含一定數量元素的矢量。這種規(guī)范化是transformer在多種類型傳感器上運行的關鍵步驟。
Transformer面臨的另一個障礙是其所依賴的龐大的參數和權重(數以億計)。不過,Touriguian表示,最近這些參數已經縮小到與CNN模型相當的大小。他補充道,在精度方面,transformer與基于CNN的模型相同或略勝一籌。
然而,值得注意的是,研究人員和開發(fā)者已經意識到,通過結合CNN和transformer的優(yōu)勢,他們可以取得更好的結果,Touriguian指出,“CNN部分在圖像上的表現非常出色,因為CNN關注的是相鄰像素之間的關系。同時,在此基礎上,transformer基本上可以找到這些鄰域與圖像中其他區(qū)域之間的關系。”
Transformer在車載領域中的應用????????
Transformer可以應用在哪里以及如何應用,似乎沒有限制,從銷售工具、聊天框、翻譯到設計/工程、工廠和倉儲……
例如,ChatGPT可以在車載中最明顯的應用之一,就是讓新手司機無需閱讀數百頁的使用手冊,就能向汽車問:“嘿,XX,我該如何換輪胎?”
訓練數據是另一個重要的應用領域。Nvidia的Shapiro舉例說,GAI生成合成數據的能力可以用來向汽車的感知系統(tǒng)輸入“一堆停車標志的圖像”(有的上面有涂鴉,有的已經風化、生銹,有的被樹木遮擋)。
他補充說,ViT、SwinTransformer、DETR、Perceiver等流行的視覺transformer目前已廣泛應用于自動駕駛軟件棧中。此外,GPT等LLM DNN可用于座艙應用,以自然、直觀的方式向車內的人提供信息。他表示,Nvidia Drive“能夠在車內部署運行這些復雜的視覺transformer和LLM”。
Transformer硬件需要什么?????????????????????
Bier指出,如今,一些專注于邊緣或嵌入式處理的AI硬件更加專業(yè)化,更偏愛CNN等成熟模型。另一些則更加靈活,更容易適應transformer。
Bier強調說:“這種適應性取決于兩點。一是架構本身。另一個是支持它的軟件工具和庫。”
憑借其GPNPU架構Chimera所獨有的IP,Quadric是一家聲名顯赫的AI IP供應商,其架構被宣傳為能夠“運行任何機器學習圖形,包括最新的視覺transformer”。
Quadric聲稱,Chimera結合了神經加速器(NPU)和DSP的最佳特性,提供經典代碼和圖形代碼的混合。Quadric的Roddy強調說,這對軟件開發(fā)者尤為重要,因為他們希望“只需混合和匹配預構建的應用代碼構件”。
Roddy認為,Quadric的優(yōu)勢在于它能夠運行不同的內核來完成不同的任務(經典的DSP代碼任務、經典神經網絡kernel(包括檢測器和驗證器),以及介于兩者之間的類似CPU的任務),所有這些都可以在Quadric的“單處理器”上完成。Roddy解釋說:“無需多個引擎。實際只有一個處理器、一個執(zhí)行流水線、一個代碼流,所有這些都編譯在一起。”
這與許多芯片設計者對機器學習出現的反應形成了鮮明對比。他們部署了一大塊NPU加速器,并將新的加速器添加到SoC上已有的DSP和CPU內核中。
Roddy說,他們意識到無法在CPU或DSP上運行最新版本的ResNet(Residual Neural Network),“因為它太強大了”。這導致大多數公司創(chuàng)建了一個復雜的架構,迫使程序員“每年都要進行越來越高的抽象”,并對每個塊的內存大小和工作負載分區(qū)進行“細致入微的思考”。結果導致了漫長的開發(fā)周期。
然后是transformer。
對于正在努力開發(fā)AI硬件的芯片公司來說,這無疑又是一記響亮的耳光。對于芯片設計師和程序員來說,本已復雜的局面變得更加混亂。Quadric說:“Transformer打破了你對傳統(tǒng)NPU加速器的認知。”
Quadric認為,與以往的神經網絡算法相比,視覺transformer“在網絡拓撲結構和構件運算符方面大不相同”。該公司建議,“如果你的傳統(tǒng)NPU無法處理視覺transformer,那么Quadric的GPNPU會更好”。
DNN以外的數學?????????????????
Untether AI正在宣傳其芯片對transformer的適應性。產品副總裁Bob Beachler說:“與兩三年前相比,我在視覺應用中看到了更多的transformer式網絡,當時大家都專注于CNN?!?/p>
因為Untether AI“一直在研究自然語言處理”,而自然語言處理是一種attention transformer式網絡。Beachler稱:“我們可以把為自然語言處理投入的相同電路用于基于視覺的transformer應用。”
當被問及Untether AI是否只是運氣好時,Beacher回避了。他說,這個故事的寓意是“不要過度限制你的AI加速、AI應用”。
他指出:“我也看到一些初創(chuàng)公司在嘗試進行特定類型的數學運算、棘手的數學變換。當你開始這樣做時,你可以進行大量的數學變換,但你也開始失去精度。最終,你的芯片可能只能運行一次?!?/p>
要設計出能處理transformer式算法的處理器,最重要的是什么?
除了在處理器中加入靈活性之外,Beachler還強調,芯片必須處理DNN處理之外所需的所有數學運算,“比如視頻縮放、激活和邊界框的非最大值抑制。所有這些類型的事情都需要一種更通用的方法”。
BDTI的Bier表示贊同。他說,需要牢記的一個關鍵是,“現實世界中的大多數應用并不是簡單地獲取數據并將其輸入某種DNN。它們需要使用非神經網絡技術(如經典圖像和信號處理技術)進行某種預處理。然后,再應用一個或多個DNN。然后再應用額外的經典算法,如跟蹤算法?!?/p>