<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Long-Context下LLM模型架構全面介紹

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 2023-11-27 17:37 ? 次閱讀

深度學習自然語言處理 原創
作者:cola

隨著ChatGPT的快速發展,基于Transformer的大型語言模型(LLM)為人工通用智能(AGI)鋪平了一條革命性的道路,并已應用于知識庫、人機界面和動態代理等不同領域。然而,存在一個普遍的限制:當前許多LLM受資源限制,主要是在較短的文本上進行預訓練,使它們對現實世界中常見的較長的上下文提示不太有效。本文對基于Transformer的LLM模型架構的進展進行了全面的介紹。

介紹

近年來,利用深度學習的技術,特別是BERT、GPT系列等基于Transformer的模型大量涌現,NLP取得了顯著進步,使機器能夠理解和生成人類語言,從而徹底改變了自然語言理解(NLU)中的許多任務(如情感分析),自然語言生成(NLG)(如文本摘要),以及其他領域,如計算機視覺自動駕駛。此外,隨著ChatGPT、PaLM、GPT4等的出現,基于Transformer的大型語言模型(LLMs)可擴展到1B ~100B參數以增強涌現能力,已顯示出一條通向人工通用智能(AGI)的令人振奮的新道路,并迅速被大量人機交互應用程序采用,如聊天機器人、編程助手和教育導師。

Transformer是一個深度神經網絡模型,當代LLM主要通過使用Transformer的全部或部分模塊來建立其基礎。其成功可歸因于核心的注意力機制,捕捉了整個輸入中每一對token的全局依賴關系,使模型能夠處理具有復雜關系的序列。雖然注意力機制提供了卓越的性能,但其關于輸入序列長度的二次時間和空間復雜性導致了顯著的計算資源瓶頸,不僅限制了訓練期間允許的輸入文本長度,還由于效率不理想以及推理過程中生成的token增加而增加昂貴的內存消耗,也限制了提示的有效上下文窗口。對推理來說更糟糕的是,當面對比訓練中的序列更長的序列時,LLM的性能也會下降,這是因為對輸入長度的可泛化機制設計較差。

然而,LLM在需要長上下文理解和生成的應用,對能夠有效和高效地理解和生成極長序列的長上下文LLM的需求變得越來越不可或缺和迫切。因此,研究人員投入了大量精力來增強Transformer架構,以解決LLM中的長上下文問題,包括對注意力效率的優化、具有額外記憶機制的上下文窗口擴展、使用外推位置嵌入的有效長度泛化、上下文預處理/后處理和其他方法,如特定的預訓練目標、專家混合、量化、并行等。

概覽

我們從基本的語言建模目標、典型的建模階段到基于Transformer的僅解碼器的LLM中的關鍵架構模塊進行初步介紹。簡要分析了LLM遇到廣泛的上下文窗口時的架構限制。提出了一種全面的方法分類法,旨在通過架構創新增強LLM的長上下文能力。

預備知識

語言建模

LLM的核心是語言建模,其目的是使神經網絡能夠理解和生成人類語言。從數學的角度來看,神經語言建模的本質是近似任何給定文本出現的精確對數概率,記為,其中表示要學習的網絡參數,由一系列表示自然語言的元素組成,包括單詞、標點符號、數學符號等。然而,這項任務遇到了一個重要的實際障礙,稱為維數詛咒,它源于隨著的增加,可能性呈指數增長。為了避免,LLM采用掩碼語言建模(MLM)和因果語言建模(CLM)。

MLM是根據雙向剩余未掩碼token來預測掩碼token,其目標可以寫成式1。在給定所有其他token的情況下,最大化第個標記的條件概率,其中表示被掩碼的索引集。相比之下,CLM的目標是預測下一個token,即在給定單向之前token的情況下,最大化每個token的條件概率(見公式2)。在這種設置中,因果LLM可以有效地利用自然語言序列中固有的時間依賴關系,使LLM能夠生成連貫和上下文相關的文本。a9aecdee-8d04-11ee-939d-92fbcf53809c.png

建模階段

LLM的操作通常經歷多階段的建模過程。在預處理階段,原始文本數據通過BPE等算法被分割并標記為單個token。然后,在預訓練階段,以MLM或CLM為目標,在大量文本語料庫上訓練模型,以捕獲自然語言的語義模式和語言結構。預訓練后,模型進入微調階段,在此階段中,它會在特定任務的數據上進一步訓練。最后,將微調后的模型部署到下游場景中,以推理模式預測預期答案。在推理步驟中,模型通過一些解碼策略(如貪婪搜索、波束搜索、核采樣)從詞匯表的概率分布進行預測,以逐個token的自回歸范式對提示生成上下文連貫的響應。

解碼器塊

Transformer架構主要由一個編碼器和一個解碼器組成,每個編碼器和解碼器都由多個相同的塊堆疊。每個塊的骨架與圖1(a)中所示的框架基本一致。一般來說,第一個塊將采用由詞嵌入層編碼的token化序列,然后是具有與特定語言建模目標相對應的注意力掩碼的多頭自注意力(MHA)層和前饋網絡(FFN)層。在塊的每個入口/出口,MHA層和FFN層都豐富了層歸一化和殘差連接。然后,每個更高級別的塊將前一個塊的輸出隱藏狀態作為輸入,用其MHA和FFN層表示它們,并將它們提供給下一個塊。最后一個塊的最終輸出隱藏狀態被送入一個稱為語言建模頭的線性層,輸出的logits將通過softmax操作轉換為目標詞匯表上的概率分布。在編碼器-解碼器Transformer中,編碼器塊和解碼器塊之間的輕微區別是,后者在輸入FFN層之前,通過交叉注意力(CA)層與編碼器的輸出進行連接。a9c09b96-8d04-11ee-939d-92fbcf53809c.png然而,這種結構最初是為機器翻譯任務中的序列到序列建模而設計的。隨后,它產生了幾個變種,旨在更通用的語言建模目標,如MLM和CLM。BERT系列僅利用編碼器與MLM來增強雙向信息,作為判別模型。相反,GPT系列只使用CLM的解碼器,專注于單向生成模型。然而,T5和BART變體將每個NLP任務視為文本到文本的轉換,利用編碼器和解碼器。僅解碼器的生成模型架構最近成為當前LLM的主要選擇。如GPT4、PaLM、LLaMA和GLM等。

注意力機制

注意力機制作為在MHA層實現的Transformer的核心設計,根據輸入序列中每個token與任何其他token的相關性計算每個token的加權表示。如圖1 (a)所示,詞嵌入的token序列,連接了總長度為L的長上下文和用戶提示,將推導出三個具有線性投影層的嵌入矩陣(見公式3):query, key以及 value。然后,對于公式4中的注意力核操作,首先通過的矩陣乘法計算非歸一化的相關矩陣,其中每一項對應token對的相關性。然后,歸一化注意力分數矩陣通過縮放因子、的元素級掩碼操作、以及行級softmax計算而得。最后,輸出隱藏狀態是由的每一行注意力權重的加權和生成的,通常需要額外的線性變換。a9def320-8d04-11ee-939d-92fbcf53809c.png的嵌入維度可以不同,文中默認。至于掩碼矩陣,它通常用于掩碼填充token,以對齊所有批量輸入序列,也適用于生成式LLM的因果語言建模的因果掩碼操作。此外,為了捕獲多樣化的關系,該模型通常采用多頭注意力而不是單頭注意力,通過將等可學習參數劃分為,以不同權重的集合并行執行注意力過程,其中表示頭的數量。與嵌入維度類似,頭的數量可以是特定于。

位置嵌入

位置嵌入(PE)在Transformer中至關重要,特別是對于NLP任務。與循環神經網絡(Rnn)不同,Transformer將輸入token作為詞袋并行處理,并且缺乏固有的序列順序感。為了保留順序信息,Transformer提出了一種新的正弦位置嵌入(SinPE)。如公式5所示,SinPE的每個維度中的每個條目都是基于sin、cos等三角函數推導出來的,周期相對于絕對token位置呈指數變化,其中base是一個大整數,根據原始論文手動設置為10000,沒有進一步解釋,d是隱藏狀態的單位嵌入維度。最近出現了一些變體,包括可訓練的嵌入來學習嵌入映射和基于相對位置的相對嵌入。其中,Rotary PE (RoPE)對復數域進行旋轉操作(見公式6),而不是基于絕對位置對Q、K進行相加,與SinPE共享相同的基函數。根據Eq.7中描述的性質,不僅RoPEs保證q,k的大小,并且P中的每一對q, k,只會根據它們在序列中的相對距離標記嵌入。a9f3180a-8d04-11ee-939d-92fbcf53809c.png

鍵值緩存

從狹義上講,鍵值(KV)緩存是一個張量列表,存儲每個塊的注意力層中所有先前token的k,v嵌入,在因果LLM的自回歸生成過程中使用和更新。如圖1(a)所示,在生成第一個token之前,所有KV緩存都被初始化為空,在進行L個query和L個key的heave attention計算后,將被L個(key, value)對填充。然后,第一個生成的token也將被視為輸入,將整個序列擴展為L+1個token。為了避免冗余計算,真正的輸入將只包含最新生成的token,從而派生出一個新的(query, key, value)三元組。

但是同樣的計算,新的query必須關注和應用所有L+1個之前的鍵和值,因此新的(key,value)必須與存儲在KV緩存中的過去的L對連接,并將自己更新到它中以供下一個生成的令牌參與。但是,從廣義上講,我們可以將KV緩存視為LLM的內存存儲,其占用隨著生成token的增加呈線性增長。

限制分析

注意力復雜度

通常的場景中,MHA的計算復雜度可以總結如下:它的時間復雜度為,包括投影的時間復雜度為,計算的時間復雜度為,獲得的softmax操作的時間復雜度為,和的乘法的時間復雜度為,輸出的時間復雜度為。它的空間復雜度為,包括嵌入的復雜度為,以及存儲權重和的額外空間復雜度為。時間和空間計算成本都隨著序列長度的擴展呈二次增長,這對訓練和推理都是負擔。

上下文存儲

LLM缺乏顯式的存儲機制,僅依賴KV緩存將之前所有token的表示存儲在一個列表中。這種設計意味著,一旦query在一次調用中完成,Transformer就不會在后續調用中保留或回憶任何先前的狀態或序列,因此,Transformer在每次調用期間只具有上下文中的工作記憶,而不是諸如長短期記憶(LSTM)等固有記憶機制。

最大長度約束

在訓練階段,通常需要確定一個關鍵的超參數max-length,在本文中記為。這個超參數表示批次中任何訓練樣本的序列長度上界。根據可用的計算資源,它通常被設置為1k、2k或4k,以避免GPU上的內存不足(OOM)錯誤。然而,在推理過程中,LLM服務提供商還必須限制用戶提示的長度,或自動截斷它們以與預定義的對齊,即使推理資源通常比訓練期間更豐富。然而,當前的語言模型在處理超過的輸入序列時表現出明顯的性能下降,往往導致重復和不合理的輸出。

分類

根據各階段不同的提升LLM的長上下文能力方法,可分類為5大類,如圖1(b)所示:

高效注意力:這些方法專注于實現高效的注意力機制,減少計算需求,甚至實現線性復雜度。

長期記憶:一些方法旨在設計顯式記憶機制,以補償LLM中高效和有效的長期記憶的缺乏。

外推PEs:通過改進現有位置編碼方案的外推特性來增強LLM的長度泛化能力。

上下文處理:這些方法通過引入多個調用開銷來確保每次調用中饋送到LLM的輸入始終滿足最大長度要求,并打破上下文窗口限制。

其他:不能完全歸入前四個類別的各種通用和有價值的方法。

高效注意力

局部注意力

傳統注意力機制的特點是其全局和完全注意力的性質,其中每個token都期望關注其他每個token,導致二次時間和空間復雜度??紤]到局部上下文在某些應用中的重要性,近年來提出了各種方法來實現局部注意力機制。這些機制將每個token的注意力限制在其相鄰的token上,而不是所有token,這些方法之間的差異來自于確定誰是token鄰居的啟發式標準,如圖2所示。aa0576da-8d04-11ee-939d-92fbcf53809c.png

基于塊的注意力

實現局部注意力的一個簡單方法是將輸入序列分割為不重疊的塊。正如BlockBERT所提出的,在固定大小B的每個塊中,token只允許關注同一塊中的其他token。這種分塊注意力涉及在每個B×B塊中進行LB迭代的完全注意力計算,導致時間復雜度為和內存復雜度為。

然而,這種方法限制了全局感受野,并可能限制對長期依賴關系進行建模的能力。為了解決這個限制,Bi-BloSAN引入了一種塊間注意力機制來捕獲長程依賴關系。SPADE增強了狀態空間模型(SSMs)以解決長程依賴限制。此外,Landmark Attention為每個塊引入了一個稱為Landmark token的新token,通過訓練注意力機制使用它來選擇相關塊,從而實現塊級表示。在微調階段,LongLoRA在LoRA的基礎上引入了shift short attention (-Attn),將token移動一半的注意力頭中的塊大小,以確保相鄰塊之間的信息流動。

滑動窗口注意力

在這種方法中,每個token被分配一個連續的固定窗口,并且只允許關注前一個相鄰的w?L tokens作為它的鄰居。為了擴展類似于擴張卷積的感受野,窗口被擴張為的間隙,使每個token能夠關注以外的token。為了在不進行額外計算的情況下聚合全局信息,還將全局注意力應用于一些預選位置,這些位置上有特殊標記(如[CLS]),將計算復雜度降低到。

全局-局部混合注意力

ETC和LongT5也采用了類似的全局-局部注意力機制,顯式或隱式地構建輔助全局tokens來表示全局注意力的分割信息,而只對源tokens應用局部注意力。另一種有趣的全局token技術來自最近的streamLLM,他們觀察到不僅在推理期間保持初始token的KV可以在很大程度上恢復滑動窗口注意力的性能,而且在預訓練期間添加占位符token也可以進一步改善流部署。

LSH注意力

與直接位置鄰接相比,Reformer利用基于k-最近鄰(kNN)和局部敏感哈希(LSH)算法的鄰居token選擇機制。LSH注意力允許每個查詢關注單個哈希內的一組鍵。哈希函數被設計為以高概率將相同的哈希值分配給兩個相似的向量,反之亦然。

層次注意力

要進一步思考全局token技術或塊注意力,我們可以將它們視為向自注意力引入一些分層特征,以從更高級別的注意力中獲得更多的全局信息進行補償,同時保持來自低級別局部注意力的低計算成本。

兩級層次結構

HAN率先使用了兩級注意力機制。該方法首先將自注意力應用于詞特征以獲得句子表示,然后利用句子級特征的自注意力生成文檔級特征。這種分層的方法提高了文檔分類的效率和性能。

多級層次結構

BPT引入了更詳細的注意力機制。Token節點可以用于更近的上下文,也可以用于更遠距離的上下文。這種方法將層次結構形式化為圖神經網絡,并使用圖自注意力對其進行更新。在自適應Span Transformer中可以看到一種更簡單的變化,它采用軟注意力掩碼函數,將相對距離非遞增地映射到[0,1]范圍內的真實值。該函數控制每個頭部的注意力范圍,允許模型關注不同的上下文范圍。在假設的基礎上,許多NLP任務中的注意力矩陣具有層次低秩結構,H-Transformer-1D將注意力矩陣劃分為具有不同低秩范圍的不同塊,從而實現不同層次的逼近。

稀疏注意力

這些方法旨在引入一個稀疏注意力掩碼,記為,其中每一行分配一個稀疏索引集表示第個標記要處理的對象。這些基于稀疏性的注意力機制既提供了計算效率,又提供了捕捉全局上下文信息的能力。圖3提供了這些稀疏注意力機制的可視化。

aa1a4ca4-8d04-11ee-939d-92fbcf53809c.png

固定的稀疏注意力

從稀疏Transformer開始,它從CIFAR-10上學習的注意力模式中獲得靈感,并提出了一種行列分解注意力方案。這種方法保證了更快的計算,同時仍然保持全局上下文感知。形式上,它采用了一個選定的步幅,接近。每個查詢將一行注意力應用于局部上下文信息(即局部注意力),另一列注意力總結以前的位置并將信息傳播到所有未來的標記,類似于一種全局注意力。作者提供了兩種特定的行和列注意力模式,分別對應于圖3 (c),(d)所示的步幅模式和固定模式。最近的LongNet通過引入擴張注意力進一步提高了計算效率,隨著token之間的距離增加,注意力領域呈指數級擴展。它結合混合膨脹率來對長和短依賴關系進行建模,最終將計算復雜度降低到,同時成功擴展到多達10億個token的序列。

自適應稀疏注意力

一些方法通過考慮嵌入值以一種可學習的方式自適應地尋求稀疏度。Expire-Span為每個前一個token引入了一個在[0,1]范圍內的可學習標量,允許模型保留具有最重要信息的token,同時使不再相關的token過期,類似于基于LSTM的RNN中的遺忘門。Routing Transformer利用k均值聚類來識別Q, k中top-k個最相關的質心向量,并將每個查詢分配給具有相同聚類成員的鍵,降低了注意力的總體復雜度。SparseBERT引入了一個使用Gumbel放松技術的可微注意力掩碼,允許模型學習按重要性指導注意力模式選擇。該算法引入了預定義的稀疏率,計算復雜度為。

近似注意力

一些研究還探索了注意力核計算背后的數學本質。這些研究使用基于注意力矩陣的稀疏性或低秩特性的估計方法,以線性復雜度來近似注意力。之前我們沒有區分這些方法是用于類BERT的編碼器型LLM還是類GPT的解碼器型LLM,因為它們中的大多數可以通過因果注意力掩碼從BERT設置輕松轉移到GPT設置。然而,對于許多近似策略來說,隨意的掩碼往往不是那么簡單。因此,我們首先定義了公式8中的廣義加權因果函數,其中表示每行的權重向量。該函數將替代因果注意力掩碼操作,因此為了簡化,我們在下面的所有注意力方程中省略掩碼M。aa36c64a-8d04-11ee-939d-92fbcf53809c.png

低秩近似

Linformer使用奇異值分解(SVD)用低秩矩陣來近似注意力矩陣。該方法涉及維數的兩個可學習投影矩陣和,其中。該過程包括分別用,投影,,然后用投影的在上進行標準MHA。這種低秩技術以線性復雜度逼近全注意力,同時允許誤差。

嵌套的注意力

Luna將注意力核解耦為兩種嵌套的注意力方法,這兩種方法相對于L都具有線性復雜度。具體來說,首先將pack attention作為公式9,得到打包的上下文,其中是一個額外的輸入序列,長度k?L,激活函數為指數線性單元。然后將unpack attention應用于公式10,得到解包的輸出。然后,他們將和傳遞到下一個注意力層,仍然記為和,通過傳播打包的上下文信息,而不會泄露未來的信息。aa484f0a-8d04-11ee-939d-92fbcf53809c.png

核近似

除了依賴于低秩先驗,一些工作基于廣義可核注意力(generalized kernelizable attention)提供近似,如公式11所示,其中核函數逐行應用于中的每一對,是公式12中定義的歸一化因子。aa613f2e-8d04-11ee-939d-92fbcf53809c.pngLinear Transformer基于elu核設計了一個簡單的特征映射,如公式13所示。因此,它避免了二次注意力矩陣,將時空復雜度降低到和。Performer基于正交隨機特征(ORFs)映射實現無偏低方差估計,如公式14所示,其中是基函數,是范數函數,是正交隨機特征,采樣自分布。aa8698fa-8d04-11ee-939d-92fbcf53809c.png

稀疏-核混合近似

Scatterbrain通過將基于LSH的稀疏矩陣和低秩核分解與隨機特征圖相結合,提供了更準確而有效的近似,如公式15中簡化的那樣,其中我們省略了歸一化步驟和因果掩膜應用函數。該方法不僅統一了兩種近似技術,以更高的精度實現了O(Lrd)的線性時間復雜度,而且還提供了靈活性,可以利用各種低秩和稀疏近似方法作為子組件。aaa3c66e-8d04-11ee-939d-92fbcf53809c.png

IO感知注意力

基于注意力矩陣和NLP任務的一些理論或經驗屬性,包括局部性、稀疏性、低秩性和其他啟發式或數學技巧,上述所有追求高效注意力的方法都可以被認為是高注意力質量與低計算復雜度的權衡。相比之下,以下這些IO感知注意力機制統稱為通過考慮內存瓶頸而優化注意力計算的努力,同時保留注意力核計算的準確性。

內存高效的注意力

這種簡單的方法在利用lazy softmax算法,通過順序處理每個單個/分塊查詢注意力,跟蹤歸一化因子來計算標準的和數字穩定的注意力。該方法只需對序列長度保持恒定的工作記憶,時間復雜度為二次型。

Flash注意力

Flash Attention通過使其在GPU高帶寬內存(HBM)和GPU片上SRAM之間實現IO感知,在應用精確注意力計算的同時設法減少時間和內存消耗。它已經被廣泛采用,并直接合并到Pytorch v2.0中。更具體地說,對于前向傳遞,它利用分塊技術將大型softmax注意力分解為更小的塊,從HBM逐塊加載到SRAM,從而在芯片上執行所有注意力計算步驟以減少HBM訪問,并通過縮放增量更新輸出回HBM。如公式16所示,表示一對基于塊從Q和K的矩陣乘法,小到可以加載在SRAM和計算,以及重新調節因子只包含一些關于的統計數據。aab59902-8d04-11ee-939d-92fbcf53809c.png

SCFA

雖然Flash注意力可以很容易地擴展到支持塊稀疏結構,但在處理其他不規則結構和任意注意力掩碼的稀疏策略時可能缺乏靈活性。SCFA的工作擴展了Flash Attention GPU內核,以適應廣泛的注意力稀疏模式,包括key/query刪除和像Reformer這樣的基于哈希的注意力。

頁注意力

由于碎片化和冗余而造成的內存浪費,研究人員提出了頁注意力。該技術有效地管理KV高速緩存以減少浪費,并允許在批請求之間靈活共享,靈感來自虛擬內存操作系統中的內存分頁技術。

長期記憶

研究人員探索了兩種主要途徑來解決Transformer難以捕獲長期依賴這一挑戰,同時又不損害全注意力的優勢。一種方法是通過合并可通過注意力層訪問的內部內存緩存,將循環機制引入注意力。這種方法使模型能夠在較長的序列中維護和檢索信息,補償內置長期記憶的固有缺乏。另一種方法涉及利用現有模型作為外部知識庫(如特定文檔或數據集)的接口。在推理過程中,模型可以從這些知識庫中讀取內容以豐富上下文輸入,并從用戶的響應中寫入內容以刷新其長期記憶。通過這種方式整合外部知識,模型獲得了更廣泛的上下文,增強了其有效處理長期依賴關系的能力。

內部內存緩存

將長文本劃分為固定長度的片段流,并在第n層中利用更多的上下文信息增強當前第個片段的查詢。這些上下文信息是從緩存中獲得的,或從前一段提取的信息,存儲在內存緩存中,記為,如公式17所示。我們假設每個片段都具有相同的長度,模型由層Transformer塊組成。符號表示沿長度維度的拼接操作。aac47134-8d04-11ee-939d-92fbcf53809c.png

段級重現

從Transformer-XL開始,引入了段級重現(Segment-Level Recurrence)。如公式18所示,它在最后一層緩存個之前連續段的輸出,并將它們連接到當前層的當前段,以擴展當前查詢的上下文。這種機制允許將最大可能的依賴距離擴展到,其中可以在GPU內存允許的范圍內設置。Segatron通過結合句子級甚至段落級來增強token級PEs,引入了段感知機制。為了進一步擴展多粒度內存緩存的依賴性,Transformer與Transformer-XL一樣,為前面的段存儲第一個FIFO細粒度內存隊列。然而,它并沒有丟棄舊內存,而是應用了速率為的壓縮函數,沿著長度維度壓縮內存,并將其放入大小為的二級FIFO粗粒度壓縮內存隊列中,如式19所示。aad44d52-8d04-11ee-939d-92fbcf53809c.png

回溯重現

為了解決最大有效上下文長度受到的限制這個問題,ERNIE-Do提出了一種增強的遞歸機制,通過連接同一層(而不是最后一層)中前一段的輸出隱藏狀態來進行替換,簡單地形式化為式21。通過這種方式,不僅可以隱式地擴展最大有效上下文長度,而且還可以利用過去的高級表示來豐富未來的低級表示。此外,它通過兩次饋送片段采用回溯饋機制,其中第一次僅瀏覽每個片段,而第二次回溯以實現雙向信息流,這類似于READTWICE中的機制。aaee9dba-8d04-11ee-939d-92fbcf53809c.png

連續信號內存

為了與LSTM進行比較,我們可以將Transformer中的壓縮記憶視為LSTM中長期單元記憶的有限尺寸離散版本,而第一個隊列存儲短期單元記憶。如等式20所示,為了實現像LSTM一樣的無界長期記憶,former將離散嵌入轉換為連續信號。該信號表示為個徑向基函數(RBFs)的線性組合,記為,系數矩陣,由多元嶺回歸擬合。這種連續的信號表示允許具有固定內存存儲的無界上下文表示,與上下文長度無關,類似于LSTM。然而,由于內存緩存是作為連續信號存儲的,它不能簡單地添加到當前段,而必須通過持續注意力轉換回嵌入。

備用緩存設計

除了遵循作為內存緩存的Mem的前置樣式外,RMT將內存緩存形式化為特殊的tokens,在每個段的開始和結束處都有前綴,如等式22所示。在處理每個段之后,讀/寫標記將從輸出嵌入中分離出來,寫標記將被作為下一個段的[mem]標記。通過將這種遞歸機制與全局記憶標記相結合,RMT被證明可以將有效的上下文大小擴展到1M tokens。此外,他們沒有使用簡單的FIFO緩存來讀取內存,而是使用KNN算法來為每個查詢檢索top-k個最相似的(key,value)對,并將其添加到本地查詢的前面,如等式23所示。相比之下,Memformer充分利用具有遺忘機制的自注意力變體來讀寫記憶緩存,以通過長程時間步檢索和保留最重要的信息。ab0850fc-8d04-11ee-939d-92fbcf53809c.png

外部記憶庫

前面討論的機制通過在內部內存緩存中添加先前輸入的額外隱藏狀態,用順序遞歸增強了普通的無狀態轉換器模型。然而,這些機制有一定的缺點。首先,記憶機制的輕微變化可能需要從頭開始重新訓練模型,而不是充分利用預訓練的LLM,這些LLM已經具有跨上下文窗口的良好依賴性表示。其次,研究人員經常遇到內存陳舊的問題,在訓練期間,內存緩存中較舊的隱藏狀態可能會表現出與最新狀態的分布變化,限制了內存增強的有效性。

另一種檢索增強機制將模型本身與其長期記憶存儲解耦可以解決這些問題。它們利用語言頭之前的部分作為性能良好的上下文信息編碼器,以嵌入的形式將長序列存儲為外部記憶庫。在查詢過程中,模型根據一定的標準從該記憶庫中檢索信息,并將其實時連接組成上下文工作記憶。

基于cosine的檢索準則

LangChain是一個熱門的開源框架,用于開發像聊天機器人這樣的應用程序,它接受用戶指定的通用可讀格式的本地文檔,然后使用現成的LLM將該文檔向量化到內存庫中。在每次用戶交互過程中,根據用戶提示嵌入與存儲上下文的點積余弦相似度檢索最相關的上下文。然后,它將這些外部上下文前置到提示,為LLM提供更相關的輸入以生成響應。

啟發式檢索準則

RETRO通過基于L2距離的KNN搜索從嵌入BERT的KV記憶庫中檢索。Unlimiformer也基于KNN搜索,為任何現有的預訓練編碼器-解碼器Transformer設計了一種通用方法,以索引無限的輸入序列,使解碼器檢索其top-k鍵,以應用交叉注意力。相比而言,SiliconFriend提出了一種增強的記憶庫機制,以保持對與用戶的長聊天歷史的跟蹤,并提供專門的響應,包括帶有時間戳的對話記錄、將事件提煉為高級摘要、對用戶個性畫像的感知以及以遺忘速度的記憶刷新。與這種基于文本的記憶類似,RecurrentGPT通過模擬LSTM中的長短期記憶機制,使循環提示成為可能,并使用ChatGPT定義循環計算圖。此外,RecallM將記憶組織和更新為動態概念感知的知識圖譜,以改進聊天過程中更復雜的持續學習和知識的時間推理。Ret-LLM以三元組的形式從內存庫中存儲和檢索知識,就像?A, B, R?,這意味著“A和B具有R的關系”,作為一個通用讀寫內存單元,并采用微調的Alpaca將內存讀寫視為基于文本的API調用。

可學習的檢索準則

REALM使用MLM作為學習信號預訓練了一個潛在的神經知識檢索器,負責從大型文本語料庫中檢索知識。LongMem訓練另一個基于Transformer的SideNet,以將記憶檢索和融合過程與只負責將(key,value)對編碼到記憶庫的預訓練LLM解耦。

外推PEs

增強理解

再思考PEs作為

研究人員重新審視了正弦PE和RoPE的正弦和余弦基函數,認為它們是β編碼的近似項,如式24所示。這種方法采用了個固定的β位,其中base表示三角基函數的波長或周期的冪基,它隨著維的加深而以幾何級數增加。ab1af3e2-8d04-11ee-939d-92fbcf53809c.png

長度外推困境

在Transformer時代之前,基于RNN的語言模型是在較短的序列上訓練的,但被期望有效地泛化到較長的上下文,這種現象被稱為長度外推或長度泛化。不幸的是,最近的研突出了基于Transformer的語言模型的長度外推能力有重大缺陷。在Transformer的原始論文中,很少討論其正弦PE的設計見解或理論解釋。這使得許多研究人員對其必要性和有效性提出了質疑,特別是將其歸咎于外推不足,這也指向了同樣基于三角函數的RoPE。為理解當前三角PEs造成的糟糕外推,從以下兩個不同的角度研究和總結了兩個見解:

從數學的角度來看,外推(extrapolation),即從局部信息推斷出整體,依賴于函數的高階平滑性。然而,為了容納足夠的位置信息,這些PEs被設計為高頻振蕩三角基函數的組合。這種選擇使模型在訓練階段不進行特定學習的情況下進行泛化具有挑戰性。

從訓練的角度來看,由于基函數的波長或周期呈指數增長,與成正比,目前支持的約束下的訓練樣本通常太短,以至于后面的低頻維度無法跨度整個周期。這表明只有少數維度感知到完整的周期性信息,從而得到充分的外推訓練,邊界在中被定義為關鍵維度。因此,當依賴于這些學習較差的低頻成分時,直接外推很容易失敗。

注意力偏差

作為顯式編碼位置信息的替代機制,注意力偏差已被探索,以捕獲融入注意力的自然語言的時序性。如式所示,注意力偏差被描述為一個矩陣,記為,在應用softmax操作之前,將其添加到未歸一化的注意力權重矩陣中。該矩陣的每個元素由索引,攜帶由函數編碼的位置信息。因此,將注意力偏差視為一種相對PEs的形式是合理的。ab2b4954-8d04-11ee-939d-92fbcf53809c.png早期的方法如T5采用了可學習的注意力偏差,其每個注意力層中的每個頭都是獨立的。然而,也沒有明確解決長度外推的問題。認識和解決外推問題的突破來自于ALiBi,其啟發式地引入了消極因果注意偏差,如式26所示,其中是訓練前固定的頭部特定斜率,并隨著頭部指數呈幾何下降。之后KERPLE將ALiBi注意力偏差作為一個復合三角核擴展到自注意力。引入了兩個額外的可學習標量參數來泛化偏置核,如式27所示。Sandwich的作者重用了正弦PEs來形成RoPE風格的注意力偏差,如公式28所示,作為一個要調整的超參數。研究人員研究的另一種方法在推理過程中使用了超基線方法,如式29所示。該方法依賴于局部因果注意力掩碼,其中每個query都關注距離不超過的key,同時仍然應用RoPE。ab3aa5a2-8d04-11ee-939d-92fbcf53809c.png

擴展RoPE

縮放策略

最近的方法通過簡單地擴展RoPE來推斷推理上下文長度,而很少或不進行微。在LEX中,作者引入了一種稱為XPOS的擴展因果RoPE,它在縮放繩中包含了一個額外的指數衰減項,如式30所示,其中是一個標量超參數。位置插值(PI對每個位置數從到進行線性縮放,使表示空間密集,使最遠長度邊界擴展了1次(見式31)。

NTKaware Scaling RoPE(NTK-RoPE)結合了高頻外推和低頻插值。當對最低頻率項應用的比值進行插值時,它使用系數來縮放,以達到相同的效果,而對高頻項保持縮放(見式32)。令人驚訝的是,這種非線性縮放可以直接應用于用RoPE預訓練的LLM,如Llama無需任何進一步的微調來擴展上下文長度邊界。這種方法已經部署在開源LLM中,如CodeLlama。

受NTK-RoPE的啟發,出現了幾種增強的縮放方法。為了避免L仍然在“最大長度”內時性能下降,Dynamic-NTK延遲應用縮放技巧,直到L超過當前支持的上下文長度。隨著L的增大,κ的比值逐漸動態增大。這一想法也已在Qwen-7B和Llama2等模型中實現。NTK-RoPE的作者還提出了YaRN,它將NTK-by-parts與“長度縮放”技巧相結合,通過恒定的溫度因子縮放和。這種方法聲稱優于之前所有基于NTK-RoPE的方法,無論是否進行微調。此外,Giraffe引入了另一種縮放策略,稱為“功率縮放”(見式33)。這種方法確?;械母哳l元素比學習不良的低頻元素受影響更小。ab5233ca-8d04-11ee-939d-92fbcf53809c.png

截斷策略

研究人員基于NTK-RoPE的高頻外推和低頻內插思想提出了兩種簡單的截斷策略,分別以激活函數整流線性單元(ReLU)及其Leaky變體命名為ReRoPE和Leaky ReRoPE。如式34所示,這種修正截斷方法背后的主要思想是設置一個大小為w的局部窗口,對于每個標記,只要要參加的標記在窗口內,就不應用縮放。然而,線性縮放,類似于Leaky ReLU,用于在令牌位于窗口外時增加步驟的位置(LeakyReRoPE)。該方法更直接地結合了高頻外推和低頻插值,并確保了通過仔細調整和而不超過。此外,如果設置為無窮大,它對任何對施加一個恒定的位置數,只要,就可能容納無限的上下文(ReRoPE)。

根據實驗,ReRoPE在沒有對困惑度指標和QA任務進行任何微調的情況下表現非常好,甚至優于基于NTX的方案。然而,Leaky ReRoPE和ReRoPE都涉及到連接兩個縮放階段,并且它們之間的差距無法通過任何線性變換來彌補。因此,它們需要為每個階段進行兩個注意力矩陣計算,并利用一個布爾矩陣將它們縫合在一起,顯著增加了推理成本并限制了實際長度邊界。更糟糕的是,它們目前無法與Flash Attention兼容來減輕高計算成本。為了使ReRoPE與Flash Attention相適應,我們重新實現了Flash Attention前向內核,以基于Triton框架合并ReRoPE,在一定程度上緩解了其高計算成本。此外,Giraffe引入了另一種截斷策略,即基截斷,如式35所示,其中,是截止閾值。該方法在保留基的高頻成分的同時,將低頻元素截斷為接近零的常數,甚至在足夠低的情況下為零,從而降低了低頻元素的外推復雜度。ab7eff04-8d04-11ee-939d-92fbcf53809c.png

重排策略

靠后位置的PEs比前面位置嵌入的更新次數少,這種不平衡可能導致訓練不當的嵌入。近年來,一些簡單而有效的工作在一定程度上解決了這一問題。SHAP在訓練過程中隨機移動絕對位置以實現移位不變性。Random Padding涉及在微調期間將隨機數量的填充標記移動到輸入序列的前端,平衡所有位置的更新時間。PoSE通過在訓練樣本的位置索引(例如2k)中添加一個獨特的跳躍偏差項來微調模型以適應目標上下文窗口的所有相對位置(例如128k),以模擬更長的輸入。

上下文處理

之前討論的許多方法都圍繞Transformer架構中的注意力模塊提出了復雜的設計,相比之下,存在更簡單和更直接的方法,將預訓練的LLM視為黑盒或灰盒模型。這些方法通過多次調用模型來解決處理超過模型長度限制的長上下文輸入的挑戰,確保每次調用中提供給LLM的實際輸入不超過。雖然這些方法沒有顯式地增強LLM處理長上下文的固有能力,但它們利用LLM卓越的上下文學習能力來解決問題,盡管代價是計算量增加和可能不那么精確的答案。

上下文選擇

這些方法主要涉及將冗長的文本劃分為多個片段,然后根據預定義的策略選擇特定的片段。目標是確保選擇的片段可以舒適地適合LLM的上下文窗口,同時最大限度地減少與所提出的query相關的原始冗長文本中的相關信息的損失。

這些方法在兩個關鍵方面有所不同。首先,它們在如何定義選擇標準方面存在分歧,這些標準用于為每個片段分配優先級分數。其次,它們的選擇策略各不相同,有些方法是基于所有片段的分數同時排序,而其他方法采用迭代的貪婪選擇方法,逐個考慮片段。當檢索到的上下文長度超過LLM的最大上下文長度時,LangChai采用三種策略進行處理。一種策略是Map Rerank,其中LLM需要獨立地輸出每個段的答案,以及置信度分數。具有最高置信度分數的答案被選擇為最終輸出。CogLTX引入了一種稱為MemRecall的多步驟推理機制。在每個推理步驟中,依次使用兩個模型以由粗到細的方式對上下文片段進行評分。得分最高的前k個片段被添加到最終的候選隊列,而剩余的片段被推遲到下一個推理步驟,直到候選隊列被填滿。相比之下,LoBART在訓練過程中使用ROUGE-2分數來選擇top-k上下文。在推理方面,它訓練了一個額外的分層RNN模型,以生成上下文選擇的代理優先分數。

上下文聚合

與基于選擇的方法相比,這種性質的方法考慮了所有上下文片段對最終答案的貢獻,而不是只選擇一個。最初,這些方法分別從每個片段中提取相關信息。然后采用多種融合策略對檢索到的信息進行融合,最終得到最終答案。這些方法在兩個關鍵方面表現出差異。第一種涉及從每個段中提取信息的方式,而第二種涉及用于整合所有段信息的不同融合策略。在像T5和BART這樣的編碼器-解碼器架構LLM的背景下,存在一類稱為FiD的方法。這些方法既利用編碼器來提取嵌入隱藏狀態形式的信息,又利用解碼器來處理所有上下文表示,以生成最終輸出。

對于只有解碼器的LLM,除了稱為Map ReRank的選擇策略外,LangChain還引入了兩種額外的聚合技術。第一種稱為Map Reduce,即同時處理每個數據段以并行獲取答案。然后將這些答案傳遞給另一個LLM,后者將它們合成為最終的總結。第二種方法稱為Refine,通過在每個段的處理過程中逐步細化答案來操作。在該策略中,前一段得到的答案與當前段進行級聯,作為進一步細化的提示。這個迭代求精過程持續進行,直到處理完最后一個片段。

除了LangChain,另一種最近的方法PCW采用類似的方法來處理長上下文輸入。PCW將擴展的上下文劃分為多個較小的上下文窗口,每個上下文窗口的最大長度為,其中表示上下文的總長度,為query中與任務相關的token的長度,以及要生成的新token的最大數量。在每個上下文窗口中,tokens并行地相互關注,其位置索引隔離在的范圍內。隨后,與任務相關的tokens處理所有上下文tokens。該過程聚合來自每個上下文窗口的并行信息,并對其進行融合以生成最終答案。

研究人員提出的另一種方法NBCE將并行上下文窗口視為一系列獨立的條件,記為,旨在逼近對數后驗概率,用于生成token。正如在公式36中推導的,表示以第個上下文窗口為條件的可能性,表示先驗,而const是一個僅依賴于。如果可以訪問LLM的logit,則使用LLM可以直接計算此公式。將公式擴展到更一般的情況,如式37所示,引入了超參數和池化操作。ab8fc6cc-8d04-11ee-939d-92fbcf53809c.pngNBCE和PCW可以無縫應用于任何現成的開放訪問LLM,顯著擴展上下文長度。然而,需要注意的是,這兩種方法的運行都假設上下文窗口之間的關系可以忽略不計,并且可以以無序的方式統一處理。因此,當上下文窗口緊密連接且表現出順序關系時,或者當需要并行處理的窗口數量過多時,它們的性能可能會受到影響。

其他

本節簡要擴展了前面討論的四個類別的其他解決方案,為推進LLM的有效上下文窗口或利用現有LLM時的效率提供了更廣泛的視角。重要的是要注意,這里介紹的文獻可能不是詳盡的,也不是為基于transformer的模型量身定做的。事實上,這些技術中的許多都普遍適用于任何配備了深度神經網絡的模型,盡管它們對LLM尤其關鍵。

特定目標

這些方法有替代損失函數、附加術語和專門的預處理技術。例如,XLNet引入了一個在各種NLP任務中表現出色的置換目標。ERNIE-Doc將此方法擴展到長文檔,并以分段重排為目標,以建模長程關系。對于摘要任務,DANCE采用分治的預處理策略,將長文檔及其摘要分解為多個源-目標對。PEGASUS引入了用于生成摘要的間隙句子生成(GSG)目標,而PRIMERA使用實體金字塔方法將其擴展到多文檔。

混合專家。

混合專家(MoE)的概念通過將密集的FFN層替換為包含多個專家的MoE層,對巨型LLM進行了增強。每個專家擅長處理特定的輸入類型或任務,動態門控機制安排為給定輸入選擇最合適的專家。該方法可以以各種方式實現,包括采用針對特定任務優化的專家模塊,利用稀疏激活并將其分片到多個設備,以及通過訓練自適應混合權重以確定每個專家的貢獻,如Soft MoE。然后,路由機制負責根據門限值為每個令牌選擇top-k專家。然而,在Switch Transformer中,他們發現設置k=1,稱為交換機路由,可以在保持模型質量的同時減少路由計算。最后,通過對這些專家的貢獻進行加權求和得到輸出。MoE技術可以顯著增強建模的通用性,減少計算需求,提高大規模上下文建模的效率和效果。

并行性

利用節點內和節點間的現代聚合GPU內存,最近的研究引入了各種并行策略來擴大模型大小和擴展序列長度。對常用的并行化范式進行簡要介紹如下:

數據并行:廣泛集成到PyTorch中,是在多個設備上以分布式方式加速訓練的最常用方法。它在每個設備上復制模型以獨立生成梯度,并在每次迭代時傳遞它們以保持一致性。

張量并行:引入張量拆分,其中模型的各個層被水平劃分到多個設備上。

管道并行:將模型層沿批次維度垂直分割為不同設備上的不同微批次分區。每個設備以流水線方式處理從前一個設備接收到的一個微批。

序列并行:將輸入序列劃分為多個塊,并將每個塊提供給相應的設備。它融入了環形通信來計算注意力輸出。

專家并行:在MoE中,將不同的專家放在不同的GPU上并行執行。

其中前三種并行同時使用稱為3D并行,它可以有效地將模型擴展到數萬億參數。但3D并行主要是為更大的模型尺寸而不是更長的序列設計的。為了訓練具有長序列的大規模模型,將前四種并行集成到4D并行中是一種很有前途的方法。

備用內存高效推理

已經開發了其他方法,以提高基于Transformer的LLM在推理過程中的存儲效率。這些方法包括權重剪枝、權重因子分解、權重量化、權重劃分和知識蒸餾。其中,量化策略對于LLM的實際部署尤其重要,因為它們降低了參數精度,以減輕內存需求和加速推理。此外,還有更簡單的策略來緩解推理期間的大型KV緩存,如Multi-Query注意力(MQA)和GroupedQuery注意力(GQA)。特別是,它們減少了key和value的頭數量,并在多個查詢頭之間平均共享它們。據我們所知,這些方法已經應用于最先進的LLM,如GLM和PaLM。

評估的必要性&優化工具

在本節中,我們探討了評估LLM的長上下文能力常用的評估必要性,包括數據集、指標和基線模型。此外,還研究了幾個流行的優化工具包,如庫、系統和編譯器,旨在提高LLM在整個開發階段的效率和有效性。

數據集

數據集的詳細信息如表1所示,包括語言、任務類型、長度統計、質量、分片、文件大小、樣本數量和格式。aba58890-8d04-11ee-939d-92fbcf53809c.png

指標

本節簡要總結了之前分類的10種NLP任務類型中常用的9類通用評估指標。每個任務的詳細指標如表2所示。abc50ca6-8d04-11ee-939d-92fbcf53809c.png

基線

在本部分中,收集了文獻中經常使用的預訓練或微調的LLM,作為評估某些下游任務中的長上下文能力的基線。本文概述了這些模型的基本信息(名稱、基本架構、Lmax、參數大小)、特殊特征(訓練技術和微調任務),以及可用的出版鏈接(huggingface、GitHub、主頁和論文)詳細信息見表3。abddb896-8d04-11ee-939d-92fbcf53809c.png

工具

有關工具包的快速概述,請參閱表4。abf9de54-8d04-11ee-939d-92fbcf53809c.png

討論

在本節中,我們深入研究了LLM的關鍵挑戰,并在增強基于Transformer的LLM的長上下文能力的背景下,提出了未來研究和發展的潛在方向,特別是架構的增強。

注意力平衡

隨著更長的上下文,篇章結構和相關信息變得越來越復雜,需要在保持精確相關性的同時捕捉全局、長程依賴關系的能力。要解決這一挑戰,需要在計算效率和盡可能多地保留注意力模式的精度之間找到最佳平衡。因此,在長上下文語言模型領域,這仍然是一個持續的追求。幸運的是,最近的一些創新,如Flash Attention,探索了超越算法水平的IO感知的解決方案,在不損失任何注意力精度的情況下,極大地提高了運行時效率和內存開銷。此外,人們可以探索將之前的有效策略與這些替代方法集成,利用強大的GPU內核編程工具,如Cuda,或更輕量的Triton。

內存的有效性和效率

之前我們概述了由于缺乏顯式內存機制、僅依賴于上下文工作內存,以及在擴展的上下文交互期間KV緩存內存消耗的顯著增加而產生的局限性。這些挑戰共同強調了在基于Transformer的LLM中需要更有效和高效的內存機制。雖然我們之前也介紹了各種長時記憶機制,但它們受到復雜的啟發式設計帶來的額外內存開銷的限制,因此由于頻繁的刷新,可能會隨著時間的推移導致性能下降。為了應對這一挑戰,研究人員可以研究更有效的策略來組織內存存儲和提高讀寫吞吐量,從最近的進展中獲得靈感,如分頁注意力。

長度外推挖掘

本文對最近的突破進行了全面概述,特別是應用在RoPE上的擴展策略,我們認為,它在解決外推限制方面具有重大希望。然而,這些進展往往依賴于對復雜高維位置嵌入屬性的簡化觀察,并結合直接的啟發式調整。這促使我們質疑用高維嵌入建模時序性的理論基礎,并探索可學習嵌入的潛在復蘇,在這些具有許多超參數的啟發式設計的指導下。相信未來的研究應該深入這一領域,例如CLEX,特別是在開發一個魯棒的理論框架來對Transformer設置下的時序性進行建模。

具體而普遍的目標

雖然我們討論了為長文本建模量身定制的特定目標,但值得注意的是,其中許多限于某些類型的任務,或僅與MLM目標兼容,而不是當今更常見的CLM目標。這突出了對特定但普遍適用的因果語言建模目標的需求,這些目標可以從模型訓練的早期階段有效地捕捉長程依賴關系。

可靠的指標需求

從我們之前的評估經驗來看,與人類的判斷分數相比,常用的指標(如ROUGE分數)往往表現出顯著的差異。隨著LLM在現實世界場景中的快速部署,對更可靠的指標的需求越來越迫切,以評估長上下文能力,特別是在難以精確的地面事實的生成任務中。一個有希望的途徑是利用最先進的LLM(如GPT4)的魯棒性作為人類評估的替代品。

總結

主要貢獻:

建立了一個整體的分類法,通過對Transformer架構的分解,對五個部分進行分類,然后研究在每個階段增強長上下文LLM的現有方法,包括預訓練、微調、推理和預處理/后處理。

探討了廣泛使用的評估必要性,包括數據集、指標和基線,專門評估LLM的長上下文能力。以及一些流行的工具包,以優化LLM的訓練和推理的效率和有效性,如庫、系統和編譯器。

確定了改進Transformer結構以處理廣泛背景的關鍵挑戰,以及相應的未來方向。

考慮到該領域的快速增長和調查可能很快落后,我們構建了一個實時更新的存儲庫,以收集該特定領域的相關文獻。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模型
    +關注

    關注

    1

    文章

    2797

    瀏覽量

    47973
  • 深度學習
    +關注

    關注

    73

    文章

    5260

    瀏覽量

    120117
  • ChatGPT
    +關注

    關注

    28

    文章

    1485

    瀏覽量

    5656
  • LLM
    LLM
    +關注

    關注

    0

    文章

    218

    瀏覽量

    249

原文標題:Long-Context下LLM模型架構全面介紹

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    In-context learning介紹

    隨著大規模預訓練語言模型LLM)能力的不斷提升,in-context learning(ICL)逐漸成為自然語言處理領域一個新的范式。
    的頭像 發表于 04-21 10:02 ?1163次閱讀

    In-Context-Learning在更大的語言模型上表現不同

    最近,在語言模型領域取得了巨大的進展,部分是因為它們可以通過In-Context- Learning ( ICL)來完 成各種復雜的任務。
    的頭像 發表于 06-12 14:35 ?520次閱讀
    In-<b class='flag-5'>Context</b>-Learning在更大的語言<b class='flag-5'>模型</b>上表現不同

    基于Transformer的大型語言模型LLM)的內部機制

    工作原理變得越來越重要。更好地理解這些模型是如何做出決策的,這對改進模型和減輕其故障(如幻覺或推理錯誤)至關重要。 眾所周知,最近 LLM 成功的一個重要因素是它們能夠從上下文中學習和推理。L
    的頭像 發表于 06-25 15:08 ?1126次閱讀
    基于Transformer的大型語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)的內部機制

    最新綜述!當大型語言模型LLM)遇上知識圖譜:兩大技術優勢互補

    LLM 是黑箱模型,缺乏可解釋性,因此備受批評。LLM 通過參數隱含地表示知識。因此,我們難以解釋和驗證 LLM 獲得的知識。此外,LLM
    的頭像 發表于 07-10 11:35 ?1573次閱讀
    最新綜述!當大型語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)遇上知識圖譜:兩大技術優勢互補

    LLM的長度外推淺談

    蘇神最早提出的擴展LLMcontext方法,基于bayes啟發得到的公式
    的頭像 發表于 07-28 17:37 ?1652次閱讀
    <b class='flag-5'>LLM</b>的長度外推淺談

    檢索增強LLM的方案全面介紹

    分分享了 ChatGPT 這類模型是如何一步一步訓練的,后半部分主要分享了 LLM 模型的一些應用方向,其中就對檢索增強 LLM 這個應用方向做了簡單
    的頭像 發表于 09-08 16:39 ?963次閱讀
    檢索增強<b class='flag-5'>LLM</b>的方案<b class='flag-5'>全面</b>的<b class='flag-5'>介紹</b>

    mlc-llm對大模型推理的流程及優化方案

    在 MLC-LLM 部署RWKV World系列模型實戰(3B模型Mac M2解碼可達26tokens/s) 中提到要使用mlc-llm部署模型
    發表于 09-26 12:25 ?529次閱讀
    mlc-<b class='flag-5'>llm</b>對大<b class='flag-5'>模型</b>推理的流程及優化方案

    Hugging Face LLM部署大語言模型到亞馬遜云科技Amazon SageMaker推理示例

    ?本篇文章主要介紹如何使用新的Hugging Face LLM推理容器將開源LLMs,比如BLOOM大型語言模型部署到亞馬遜云科技Amazon SageMaker進行推理的示例。我們將部署12B
    的頭像 發表于 11-01 17:48 ?558次閱讀
    Hugging Face <b class='flag-5'>LLM</b>部署大語言<b class='flag-5'>模型</b>到亞馬遜云科技Amazon SageMaker推理示例

    基于單一LLM的情感分析方法的局限性

    LLM的發展為情感分析任務帶來的新的解決方案。有研究人員使用LLM,在上下文學習(in-context learning, ICL)的范式下,僅使用少量的訓練示例就能夠實現與監督學習策略旗鼓相當的性能表現。
    的頭像 發表于 11-23 11:14 ?508次閱讀
    基于單一<b class='flag-5'>LLM</b>的情感分析方法的局限性

    超出long long范圍怎么解決

    ,long long類型也無法滿足我們的需求,導致超出其范圍。本文將詳細介紹超出long long范圍問題的原因以及解決方案,希望能夠給讀者
    的頭像 發表于 11-30 11:31 ?2033次閱讀

    全面解析大語言模型LLM

    internal feedback:使用LLM去預測生成的plan取得成功的概率、Tree of Thought去對比不同的plan(有點類似AlphaGo的蒙特卡諾搜索的意思)、對中間結果進行評估并作為長期記憶存儲
    的頭像 發表于 12-05 14:49 ?1336次閱讀
    <b class='flag-5'>全面</b>解析大語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)

    一文詳解LLM模型基本架構

    LLM 中非常重要的一個概念是 Token,我們輸入給 LLM 和它輸出的都是 Token。Token 在這里可以看做語言的基本單位,中文一般是詞或字(其實字也是詞)。比如:”我們喜歡 Rust
    發表于 12-25 10:38 ?1451次閱讀
    一文詳解<b class='flag-5'>LLM</b><b class='flag-5'>模型</b>基本<b class='flag-5'>架構</b>

    優于10倍參數模型!微軟發布Orca 2 LLM

    微軟發布 Orca 2 LLM,這是 Llama 2 的一個調優版本,性能與包含 10 倍參數的模型相當,甚至更好。
    的頭像 發表于 12-26 14:23 ?365次閱讀

    2023年大語言模型(LLM)全面調研:原理、進展、領跑者、挑戰、趨勢

    大型語言模型(LLM)是基于人工智能的先進模型,經過訓練,它可以密切反映人類自然交流的方式處理和生成人類語言。這些模型利用深度學習技術和大量訓練數據來
    的頭像 發表于 01-03 16:05 ?643次閱讀
    2023年大語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)<b class='flag-5'>全面</b>調研:原理、進展、領跑者、挑戰、趨勢

    大語言模型(LLM)快速理解

    自2022年,ChatGPT發布之后,大語言模型(LargeLanguageModel),簡稱LLM掀起了一波狂潮。作為學習理解LLM的開始,先來整體理解一下大語言模型。一、發展歷史大
    的頭像 發表于 06-04 08:27 ?312次閱讀
    大語言<b class='flag-5'>模型</b>(<b class='flag-5'>LLM</b>)快速理解
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>