當前位置:首頁 >  科技 >  IT業(yè)界 >  正文

ACL2024:云天勵飛SPACE引擎亮相,大模型推理或將進入新階段

 2024-08-14 17:45  來源: 互聯網   我來投稿 撤稿糾錯

  域名預訂/競價,好“米”不錯過

8月11日-16日,第62屆國際計算語言學年會(Annual Meeting of the Association for Computational Linguistics,簡稱 ACL)在泰國曼谷舉行。

云天勵飛大模型團隊的論文《Generation Meets Verification: Accelerating Large Language Model Inference with Smart Parallel Auto-Correct Decoding》被錄用為ACL24的Findings長文。這是云天勵飛大模型部分研究成果的階段性展示。

ACL 年會是計算語言學和自然語言處理領域國際排名第一的頂級學術會議,由國際計算語言學協會組織,每年召開一次,在中國計算機學會(CCF)推薦會議列表中被列為 A 類會議。

云天勵飛的入選論文提出了SPACE引擎—— 一種實現大模型推理無損加速的創(chuàng)新方案。在不同類型大模型測試的結果表明,使用SPACE引擎后,模型在HumanEval測試集上推理速度提升270%-400% ,推理結果質量保持不變,可做到兼顧“算得快”和“算得準”。

云天勵飛大模型團隊的入選論文

主流推理方案難以做到“既要又要”

SPACE是S mart P arallel A uto-C orrect De coding的簡稱,意為“智能并行自動糾錯解碼”。

這個推理方案有兩大特點:一是采用半自回歸 推理模型,極大加快推理速度;二是在推理過程中加入驗證 手段,能夠在提升推理速度的同時,保證推理精度。

“半自回歸”是什么?為什么要加入驗證的環(huán)節(jié)?在解釋這些問題前,我們需要先了解一下當前大模型是如何“工作”的。

打開大語言模型的APP,我們在對話框輸入“大模型是什么?”,大模型會逐字逐句地輸出它的回答:“大模型是具有數千萬參數的深度學習模型。”這個回答的過程看似很簡單。但實際上,大模型在背后經歷了多次“自回歸”的循環(huán)。

首先,大模型會根據我們輸入的內容,先預測輸出的第一個字——“大”,然后把“大”字重新帶回到輸入端,基于“大”字預測下一個字應該輸出什么。當然,這個“預測”并不是憑空“瞎猜”,而是模型會根據前期訓練過程中見過的數據綜合判斷,選擇概率最高的字,作為下一個輸出字。

在這個案例中,第二個輸出的字是“模”,輸出了第二個字后,大模型會再次把“大模”這兩個字帶回到輸入端,預測第三個生成的字。如此不斷循環(huán)往復,直至完整的句子結束。

這個過程就是“自回歸”。

目前,自回歸是大模型推理采用的主流方案。 無論是ChatGPT、開源的Llama,還是國內的一眾大模型,主要都是采用自回歸的推理方案。

自回歸方案示意圖

自回歸方案的優(yōu)勢和弊端也十分明顯。優(yōu)勢是能夠確保生成的內容準確且有意義,而且上下文連貫。弊端是計算成本高、推理延時長。

為了克服這些問題,行業(yè)提出的解決方案是 “半自回歸” “投機解碼” 。

“半自回歸”是在“自回歸”和“非自回歸”之間的一種折中方案。上文提到,“自回歸” 是用已生成的詞來預測下一個詞;“非自回歸” 則是“自回歸”的反面,一次性預測整個句子。“非自回歸” 方案能夠提升推理效率,但是輸出的精度卻大打折扣。“半自回歸”方案,則是綜合考慮了“自回歸”和“非自回歸”的優(yōu)缺點,平衡大模型推理對速度和精度的要求。

但是,采用“半自回歸”方案又引發(fā)了新的問題——一是大部分大模型用不了,二是精度無法達到產業(yè)要求。 主流大模型是按照自回歸的推理模式打造的,如果要采用半自回歸方案,則需要從頭開始重新訓練大模型。而訓練一次大模型需要消耗大量的電力、算力、人力,幾乎沒有人會為了改變推理方案,把好不容易訓練出來的大模型推倒重來。

另一個方案是“投機解碼”。 這一方案按照“草擬——驗證” 的流程工作,首先需要引入一個參數量相對較小的輔助模型,由小模型先“草擬”出候選答案,再由大模型去驗證候選答案正確與否。得益于小模型相比大模型推理速度快,并且大模型能夠同時對多個候選答案進行驗證,這樣的解碼方式既能夠保證輸出結果的精度,同時也能夠加快推理速度。

但是這個方案同樣存在弊端。一是需要先做出十分“靠譜”的小模型,要能夠又快又準地“草擬”出答案,而這本身就具有一定難度。二是兩個模型之間要做到“書同文,車同軌,度同制”,在分詞器、詞表等方面做到高度一致,才能夠保證驗證結果。

SPACE推理引擎——小小改造、大大提速

既然幾個方案都無法做到“既要又要”,有沒有一種方案,能只保留它們的優(yōu)點,規(guī)避他們的缺點呢?這就是云天勵飛大模型團隊提出的SPACE推理引擎。SPACE通過結合“半自回歸監(jiān)督微調”和“自動修正解碼”兩種方案,使得大模型能夠在一次推理中生成多個結果,并且同步完成結果驗證,保證生成結果的質量。同時,這套推理引擎適用于任何的大模型 。通過模型的微調和優(yōu)化,任何大模型采用該推理引擎時,不僅無需再訓練額外的輔助模型,還能提高推理效率,充分利用GPU等并行計算資源,達到較高的算力利用率。

自回歸方案(左)與SPACE方案(右)的區(qū)別

上文提到,多數大語言模型自帶“自回歸”的屬性,無法直接套用“半自回歸”的方案。對此,SPACE采用的是“半自回歸監(jiān)督微調”的方式,通過有監(jiān)督的訓練,模型學會在遇到特殊的[MASK]標識時提出一系列可能的候選字(如上圖所示)。這使得模型在推理時能夠進行類似“猜測”的操作,輸出幾個最可能正確的候選字,從而具備半自回歸推理的能力。

簡單來說,有了“半自回歸監(jiān)督微調”方案的加持,在推理時大模型自己就能夠做出“猜測”,輸出大概率是正確的多個字作為候選答案。

但是,就跟考試一樣,草稿上可以列出大量的內容,但是填到考卷上的,必須得是正確答案。如何保證正確?這就需要對結果進行驗證,而這就是“自動修正解碼”要做的工作。

具體來說,在推理時,我們把大模型在上一步推理時自己生成的候選詞也輸入到模型中,讓模型進行自我校驗,自行判斷這些候選答案是否正確。

判斷的方式也很簡單,如果模型生成的詞與早先的候選答案相匹配,那就認為候選詞是正確的?;仡櫹?在傳統(tǒng)的自回歸推理里面,如果一個詞是正確的,那么這個詞需要再重新輸入到語言模型中去推理產生下一個詞。

但是在SPACE這里卻不需要。由于我們已經把候選詞提前輸入到模型中,并且這個候選詞被驗證是正確的,所以這時候我們就可以直接從正確的候選詞里面獲取新的答案,從而節(jié)省了將答案重新輸入模型再進行一次推理的時間。因此這種機制的優(yōu)勢在于,當一個候選詞被驗證為正確后,就無需再將其回輸模型生成下一個答案,從而減少了推理的時間。

作為類比,可以把傳統(tǒng)的自回歸推理比作4×100米接力賽跑:在常規(guī)比賽中,四名運動員需按順序逐個接棒完成全部賽程,這就好比自回歸方案,需要逐字推理。而在SPACE的方案中,四名運動員是同步起跑的,當第一名運動員沖刺完100米到達終點的同時,其他運動員也到達了屬于各自百米賽段的終點。但是第一名運動員到達終點后需要進行驗證,若驗證通過,第二名運動員的成績即可確認,而后可以對第二名運動員進行驗證,并依此類推。

若某名運動員未能通過驗證,那他就需要返回至屬于他的百米起跑線,重新起跑完成比賽。在最好的情況下,四個運動員每人都能通過驗證,那么這個小組相當于只需要花常規(guī)比賽1/4的時間,就能完成比賽,從而達到加速效果;在最差的情況下,每個運動員都未能通過驗證,那么這時候需要花的時間就跟常規(guī)比賽一樣了。而能不能通過驗證,主要取決于候選答案準不準確。

與此同時,在SPACE模型的推理過程中,我們也在輸入中插入特殊的[MASK]標識,以此來引導大模型生成更新版的候選答案。在這種機制下,每一輪推理模型不僅驗證了前一輪生成的候選詞的準確性,也為接下來的推理提供了新的候選詞。

這種設計旨在增強候選詞的準確度 ,因為每當有新答案出現時,原有的候選詞通過更新將變得更加精確。這個過程有如天氣預報:我們每天都會對接下來一周的氣候情況做出預測,并且隨著時間的推移,對未來特定一天的天氣預測準確度會逐漸提升。這是因為隨著時間的推移,我們累積了更多的傳感數據,這使得我們能夠提供更為精確的天氣預測。

傳統(tǒng)的驗證和修正方法,是上文提到的“投機解碼”,即需要先訓練出一個靠譜的小模型,再用大模型去驗證,小模型的生成質量很大程度上影響了最終結果。

但SPACE提出了一種新的方案,不需要使用小模型,就能夠達到生成和驗證的目的,而且驗證工作和生成工作可以同步進行。如此一來,推理的效率和準確率都能夠得到大幅提升。

讓我們再回到開頭例子,當我們輸入“大模型是什么?”,在SPACE推理模式下,大模型首先會同時生成“大模型是具有數千萬參數的”這幾個詞,同時自動修正解碼算法會立馬對生成的多個詞逐一進行驗證,并且僅保留驗證結果正確的詞輸出作為最終答案,從而實現在一次大模型前向推理的過程中生成多個詞的效果,達到加速目的。

最后,讓我們來看看SPACE的效果。

我們在一眾開源大語言模型上進行了實驗,實驗涵蓋了從60億到700億不同參數量的主流大語言模型。從下表中可以看到,SPACE在參數量更大的模型上,加速效果更明顯 。

此外,SPACE也能跟其他推理加速技術,例如continue batching, flash attention, KV cache, quantization等,一起結合使用,從而帶來更快的推理速度。

為了驗證這個觀點,我們在一個主流推理框架TGI上實現了SPACE,實驗證明在結合其他推理加速技術的情況下,SPACE帶來的加速效果也是同樣出眾。

大模型走入千行百業(yè),“推理”至關重要

訓練和推理是大模型生命周期的兩個核心階段,訓練是解決大模型“從無到有”的問題,而推理解決的是大模型如何應用到千行百業(yè)的問題。

如果將去年定義為大模型爆發(fā)的元年,那么今年就是大模型應用落地的元年,因此大模型的推理能力愈發(fā)受到重視。

云天勵飛為加速大模型的應用做出了許多努力。在算力方面,去年公司推出大模型邊緣推理芯片DeepEdge10,近期推出IPU-X6000加速卡,可應用于語言、視覺、多模態(tài)等各類大模型的推理加速。

在算法方面,云天勵飛提出SPACE推理引擎,大幅提升大模型推理速度。在應用方面,云天勵飛自研大模型云天天書已經在智慧政務、城市治理、智慧安防、智慧交通、智慧商業(yè)、智慧教育等多行業(yè)落地應用,探索打造行業(yè)標桿。

未來,云天勵飛將繼續(xù)努力,在大模型相關技術的研發(fā)和應用推廣方面做出更大貢獻。

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

相關文章

熱門排行

信息推薦