av天堂久久天堂色综合,最近中文字幕mv免费高清在线,在线a级毛片免费视频,av动漫,中文字幕精品亚洲无线码一区

微信掃一掃,關(guān)注公眾號

  • 科技行者

  • 算力行者

見證連接與計算的「力量」

首頁 zip2zip:通過令牌壓縮實現(xiàn)大語言模型的推理時自適應(yīng)詞匯表

zip2zip:通過令牌壓縮實現(xiàn)大語言模型的推理時自適應(yīng)詞匯表

2025-06-05 18:04
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2025-06-05 18:04 ? 科技行者

在大型語言模型(LLMs)迅速發(fā)展的今天,一項來自EPFL(瑞士聯(lián)邦理工學(xué)院洛桑分校)、東北大學(xué)和微軟聯(lián)合研究團(tuán)隊的創(chuàng)新成果正在改變我們對模型效率的認(rèn)識。這篇名為"zip2zip: 通過令牌壓縮實現(xiàn)大語言模型的推理時自適應(yīng)詞匯表"的研究由Saibo Geng、Nathan Ranchin、Yunzhen Yao、Maxime Peyrard、Chris Wendler、Michael Gastpar和Robert West共同完成,于2025年6月1日發(fā)布在arXiv預(yù)印本平臺(arXiv:2506.01084v1)。

想象一下,如果你只會說單個詞,而不能組合詞語成句,交流會變得多么繁瑣。這正是當(dāng)前大語言模型面臨的一個問題。它們使用固定的"詞匯表"——一組預(yù)先定義的單詞或子詞(稱為"tokens")。這就像給模型一本固定的字典,不管它在討論醫(yī)學(xué)、編程還是法語文學(xué),都只能使用這本字典里的詞匯。當(dāng)模型需要表達(dá)特定領(lǐng)域的術(shù)語或非英語語言時,常常需要用多個基本tokens拼湊而成,這就像用積木一塊塊搭建復(fù)雜的結(jié)構(gòu),既耗時又低效。

研究團(tuán)隊提出的zip2zip框架就像是給模型提供了一個動態(tài)擴(kuò)展的字典,能夠在對話過程中即時學(xué)習(xí)和創(chuàng)建新的"復(fù)合詞"(hypertokens)。這些復(fù)合詞由多個基本tokens組成,但作為整體處理,大大提高了處理效率。想象一個人在交談中發(fā)現(xiàn)自己經(jīng)常重復(fù)使用某些詞組,于是決定創(chuàng)造一個簡短的縮寫來代替——這正是zip2zip的工作原理。

zip2zip的核心是基于Lempel-Ziv-Welch(LZW)壓縮算法,這也是常見的zip文件壓縮技術(shù)所使用的算法。它能在模型推理(即模型生成回答)的過程中,動態(tài)識別并合并經(jīng)常一起出現(xiàn)的tokens,形成新的超級tokens(hypertokens)。這種方法顯著減少了處理相同內(nèi)容所需的tokens數(shù)量,從而提高了效率。

研究表明,使用zip2zip可以將輸入和輸出序列長度減少20-60%,大幅提高推理速度。更令人驚喜的是,研究團(tuán)隊證明現(xiàn)有的LLM可以通過參數(shù)高效微調(diào)在短短10個GPU小時內(nèi)適應(yīng)這一框架,無需重新訓(xùn)練整個模型。

這項技術(shù)對于提高大語言模型的實用性具有深遠(yuǎn)意義。它能讓模型在相同的計算資源下處理更長的文本,降低運行成本,并提供更快的響應(yīng)速度。特別是對于專業(yè)領(lǐng)域(如醫(yī)學(xué)、法律或編程)或非英語語言的應(yīng)用,zip2zip提供了顯著的性能提升。

讓我們深入了解這項技術(shù)的工作原理、實現(xiàn)方式以及實驗結(jié)果,看看它如何改變大語言模型的運行方式。

一、理解問題:為什么當(dāng)前的分詞方式不夠高效?

在深入了解zip2zip之前,我們需要理解為什么當(dāng)前大型語言模型的分詞方式存在效率問題。當(dāng)你使用ChatGPT或其他大語言模型時,它實際上并不是直接處理我們的文字,而是先將文字切分成一個個"tokens"。這些tokens可能是完整的單詞、常用詞組或單詞的一部分。

舉個簡單的例子,當(dāng)模型處理"machine learning"這個詞組時,它可能將其分割為["machine", "learning"]兩個tokens;但當(dāng)處理更專業(yè)的詞匯如"transcription factor"時,可能會被分割為["trans", "cri", "ption", "factor"]四個tokens。這就是為什么有時你會發(fā)現(xiàn)大語言模型在處理特定領(lǐng)域的專業(yè)術(shù)語或非英語文本時顯得不夠高效。

研究者們指出,當(dāng)前大多數(shù)LLM使用的是在通用文本語料庫上訓(xùn)練的靜態(tài)詞匯表,通常采用字節(jié)對編碼(Byte Pair Encoding,BPE)等算法生成。雖然這種全局優(yōu)化的詞匯表在平均情況下表現(xiàn)尚可,但在處理特定領(lǐng)域或語言時卻不盡如人意。

比如,當(dāng)處理生物醫(yī)學(xué)文本時,專業(yè)術(shù)語如"transcription factor"或"mitochondrial DNA"可能被分割成多個tokens,導(dǎo)致表示同一內(nèi)容需要的tokens數(shù)量增加2-3倍。這不僅增加了內(nèi)存和計算需求,還增加了用戶成本。

研究團(tuán)隊發(fā)現(xiàn),目前業(yè)界嘗試解決這個問題的方法主要是在特定領(lǐng)域或語言適應(yīng)時擴(kuò)展詞匯表。例如,為中文、韓文或特定專業(yè)領(lǐng)域(如心理健康、法律)定制專門的詞匯表。然而,這種方法需要為每個目標(biāo)領(lǐng)域或語言重復(fù)進(jìn)行,并且需要維護(hù)多個分詞器。

另一種趨勢是直接增加詞匯表的大小——從32K增加到128K甚至200K tokens。但研究表明,簡單擴(kuò)大詞匯表的收益遞減,超過一定規(guī)模后可能反而會降低模型性能。

這些局限性表明,我們需要一種自適應(yīng)的分詞機(jī)制——一種能夠在推理時動態(tài)調(diào)整詞匯表以適應(yīng)輸入文本的機(jī)制,而無需重新訓(xùn)練模型或維護(hù)多個分詞器。這正是zip2zip所要解決的核心問題。

二、zip2zip的核心理念:動態(tài)詞匯表如何工作?

zip2zip的革命性理念在于它能讓語言模型在對話進(jìn)行時實時調(diào)整詞匯表,就像我們?nèi)祟愒诮徽勚袝磁d創(chuàng)造簡稱或縮寫一樣。這種動態(tài)適應(yīng)能力無需事先重新訓(xùn)練模型,也不需要為每種語言或每個專業(yè)領(lǐng)域準(zhǔn)備單獨的詞匯表。

為了實現(xiàn)這一目標(biāo),研究團(tuán)隊將每個LLM與一個"超級詞匯表"(hyper-vocabulary)關(guān)聯(lián)起來,用于補充模型的原始靜態(tài)詞匯表。原始詞匯表中的tokens被稱為"基礎(chǔ)tokens",而超級詞匯表中的每個條目都是一個"超級token",代表基礎(chǔ)tokens的合并序列。

在每次對話開始時,超級詞匯表初始為空集,然后在解碼過程中通過識別和合并上下文窗口中重復(fù)出現(xiàn)的token子序列而逐步填充。這就像是模型在交談過程中不斷學(xué)習(xí)和創(chuàng)建新的"詞組",使后續(xù)的交流更加高效。

zip2zip的持續(xù)詞匯擴(kuò)展過程是其核心特性。隨著解碼的進(jìn)行,zip2zip會持續(xù)合并共同出現(xiàn)的tokens作為新的超級tokens添加到超級詞匯表中,并在新生成的tokens上反復(fù)應(yīng)用合并操作。這種持續(xù)擴(kuò)展允許模型以更緊湊的方式表示較長的、重復(fù)出現(xiàn)的基礎(chǔ)tokens序列。

超級tokens被視為模型中的一等公民,在整個解碼過程中與基礎(chǔ)tokens可互換使用。重要的是,這個過程完全發(fā)生在推理過程中,無需修改底層分詞器或要求模型重新訓(xùn)練。

研究團(tuán)隊選擇Lempel-Ziv-Welch(LZW)壓縮算法作為實現(xiàn)詞匯擴(kuò)展的核心技術(shù)。LZW是一種基于字典的無損壓縮方法,可以增量構(gòu)建變長序列的碼本。在zip2zip中,碼本初始化為基礎(chǔ)token詞匯表,并在遇到重復(fù)的token模式時通過添加新的超級tokens進(jìn)行擴(kuò)展。

為了控制動態(tài)擴(kuò)展詞匯表的增長,研究者們設(shè)置了一個最大合并大小M,限制單個超級token能代表的基礎(chǔ)tokens數(shù)量。LZW算法特別適合zip2zip,主要因為它具有以下特性:

1. 它是流式的——在步驟t創(chuàng)建的超級tokens可以在步驟t+1立即重用;相比之下,像BPE這樣的方法需要訪問完整序列并離線操作。

2. 它是自包含的——壓縮后的token序列可以完美地重建輸入的基礎(chǔ)tokens,無需傳輸或保存碼本。

3. 它是無歧義的——當(dāng)基礎(chǔ)tokens和超級tokens都可用時,LZW算法會明確決定使用哪一個,無需人為干預(yù)。

這些特性使得zip2zip能夠在不改變現(xiàn)有LLM庫和接口的情況下,實現(xiàn)動態(tài)、自適應(yīng)的分詞機(jī)制,為語言模型帶來顯著的效率提升。

三、技術(shù)實現(xiàn):超級嵌入和架構(gòu)設(shè)計

實現(xiàn)動態(tài)詞匯表面臨一個關(guān)鍵挑戰(zhàn):超級tokens沒有在原始模型的嵌入層(和投影層)中預(yù)定義的固定嵌入向量,因為它們不是原始詞匯表的一部分。zip2zip通過引入一個巧妙的機(jī)制來解決這個問題。

研究團(tuán)隊引入了一個"超級編碼器"(hyper-encoder),這是一個神經(jīng)網(wǎng)絡(luò),接收組成超級token的基礎(chǔ)tokens的嵌入作為輸入,并輸出相應(yīng)的超級token嵌入。具體來說,對于一個由M個基礎(chǔ)tokens y1:M組成的序列,超級編碼器fφ產(chǎn)生超級token嵌入h = fφ(y1:M)。對于由少于M個基礎(chǔ)tokens組成的超級tokens,研究者們會將輸入序列填充到長度M。

由于基礎(chǔ)tokens的嵌入映射保持不變,超級編碼器fφ本質(zhì)上是將拼接的基礎(chǔ)token嵌入從(M × d)維空間映射到d維的超級token嵌入向量,執(zhí)行非線性降維。這就像是將多個單詞的含義壓縮成一個新詞的含義,保留原始信息但形式更緊湊。

對于輸出投影層,如果底層transformer綁定了嵌入和投影矩陣,可以重用相同的超級編碼器來計算用于投影的表示。否則,會訓(xùn)練一個單獨的超級編碼器來生成超級token的投影向量。

zip2zip的整體架構(gòu)(如圖2所示)包含以下幾個關(guān)鍵步驟:

1. 輸入文本首先被分詞為基礎(chǔ)tokens(步驟1)。

2. 然后通過在線LZW壓縮模塊將token序列壓縮成超級tokens流(步驟2)。

3. 由于超級tokens不是模型原始嵌入層的一部分,它們的嵌入向量在推理過程中由超級編碼器即時計算(步驟3-4)。

4. 嵌入后,基礎(chǔ)token嵌入和超級tokens嵌入都通過基礎(chǔ)模型的標(biāo)準(zhǔn)transformer層處理,產(chǎn)生上下文化的隱藏狀態(tài)(步驟5-6)。

5. 在輸出投影層,超級token投影向量(在綁定情況下與超級token嵌入向量相同,否則由單獨的超級編碼器計算)被附加到原始投影矩陣中(步驟7)。

6. 這允許模型在基礎(chǔ)詞匯表和超級詞匯表的并集V∪Vh上計算聯(lián)合softmax(步驟8)。

7. 結(jié)果概率分布覆蓋V∪Vh,采樣的token可以是基礎(chǔ)token或超級token(步驟9)。

8. 在下一個循環(huán)中,新生成的token(步驟10)——無論是基礎(chǔ)還是超級——都被附加到輸入序列中,過程重復(fù)(回到步驟1)。

9. 在生成結(jié)束時,超級token序列通過LZW解碼函數(shù)解壓縮為基礎(chǔ)tokens序列(步驟11-12)。

整個過程以完全自回歸的方式工作,新生成的tokens也會被合并成供未來步驟使用的超級tokens。

研究團(tuán)隊特別強(qiáng)調(diào)了兩個重要點:

1. 一致的詞匯表更新:擴(kuò)展的詞匯表(包含新創(chuàng)建的超級tokens)必須在輸入嵌入層和輸出投影層之間以一致的方式更新,維持超級token集的一致視圖。未能一致更新兩側(cè)可能導(dǎo)致兩類錯誤:無法解碼的超級tokens,或模型嘗試解碼不存在的超級token。

2. 超級嵌入緩存:雖然超級token嵌入是即時計算的,但它們是上下文無關(guān)的,因此可以在推理步驟之間緩存。類似于transformer的KV緩存,這使得增量更新成為可能:在每個步驟只需處理新創(chuàng)建的超級tokens。由于碼本隨著上下文中的tokens數(shù)量n線性增長,總緩存大小也線性增長。因此,超級token嵌入的計算成本在每一步保持恒定——即每步計算一個token嵌入。

這種精心設(shè)計的架構(gòu)使zip2zip能夠在不修改基礎(chǔ)模型架構(gòu)的情況下,實現(xiàn)動態(tài)詞匯表擴(kuò)展,顯著提高語言模型的效率。

四、訓(xùn)練方法:如何教會模型使用動態(tài)詞匯表

要讓語言模型能夠有效使用動態(tài)擴(kuò)展的詞匯表,研究團(tuán)隊設(shè)計了一種特殊的訓(xùn)練方法。傳統(tǒng)的語言模型訓(xùn)練使用因果語言建模(CLM)目標(biāo),即最小化數(shù)據(jù)序列在模型下的負(fù)對數(shù)概率:

min(θ) E[y~D][-log πθ(y)]

其中πθ(y)表示模型πθ下token序列y的概率。

在zip2zip中,研究團(tuán)隊的目標(biāo)是在壓縮序列上優(yōu)化相同的CLM損失。設(shè)C為在線壓縮算法(如LZW),φ為超級編碼器的參數(shù)。給定序列y~D,設(shè)z = C(y)為其壓縮形式。訓(xùn)練目標(biāo)變?yōu)椋?/p>

min(θ,φ) E[y~D][-log πθ,φ(C(y))] = min(θ,φ) E[z~C(D)][-log πθ,φ(z)]

這里,πθ,φ(z)表示壓縮序列z的概率,由基礎(chǔ)模型權(quán)重θ和超級編碼器參數(shù)φ參數(shù)化。

為了構(gòu)建壓縮數(shù)據(jù)集C(D),研究團(tuán)隊首先使用標(biāo)準(zhǔn)分詞器對語料庫進(jìn)行分詞,然后應(yīng)用LZW壓縮算法。這個預(yù)處理步驟在訓(xùn)練前執(zhí)行一次,可以通過批處理進(jìn)行高效并行化。

雖然超級tokens引入了額外的詞匯動態(tài),但訓(xùn)練仍然是完全可并行的。研究團(tuán)隊利用語言模型中使用的標(biāo)準(zhǔn)因果掩碼機(jī)制,允許模型并行預(yù)測每個位置的下一個token——無論是基礎(chǔ)token還是超級token。為了在推理過程中消除對序列碼本更新的需求,研究團(tuán)隊通過對整個輸入序列應(yīng)用LZW壓縮來預(yù)先計算固定的碼本。這個預(yù)先計算的碼本在訓(xùn)練過程中一致使用,以條件化token預(yù)測,確保效率和與標(biāo)準(zhǔn)訓(xùn)練管道的兼容性。

研究團(tuán)隊還引入了一個輔助重建目標(biāo),鼓勵超級token嵌入保留有關(guān)其底層基礎(chǔ)token序列的足夠信息。具體來說,模型被訓(xùn)練為從超級token嵌入重建原始基礎(chǔ)token嵌入。他們使用結(jié)合了標(biāo)準(zhǔn)下一個token預(yù)測損失和輔助重建損失的組合損失來聯(lián)合優(yōu)化語言模型和超級編碼器:

min(θ,φ,ψ) E[y~D][-log πθ,φ(C(y))] + λ E[y1:M][Δ(y1:M, fψ(fφ(y1:M)))]

其中fφ是超級編碼器,fψ是旨在從其超級嵌入重建相應(yīng)基礎(chǔ)tokens的解碼器,Δ是基礎(chǔ)tokens y1:M與重建基礎(chǔ)tokens fψ(fφ(y1:M))之間的重建損失函數(shù),如交叉熵?fù)p失。超參數(shù)λ控制語言模型預(yù)測誤差與自編碼器重建誤差之間的權(quán)衡。

這種聯(lián)合優(yōu)化目標(biāo)鼓勵超級編碼器學(xué)習(xí)一個緊湊的d維流形,嵌入在更高維的(M × d)空間的基礎(chǔ)token嵌入中,而語言模型πθ,φ學(xué)習(xí)在給定前面上下文的情況下預(yù)測下一個(超級)token。重建損失可以視為一種自編碼形式,其中超級token充當(dāng)壓縮的潛在表示,重建鼓勵語義內(nèi)容的保存和壓縮的無損性。

適配預(yù)訓(xùn)練語言模型。提出的目標(biāo)(方程2、3)自然地與預(yù)訓(xùn)練語言模型集成。在這種設(shè)置中,基礎(chǔ)模型可以保持凍結(jié),只訓(xùn)練超級編碼器以適應(yīng)壓縮的token序列。也可以使用LoRA等參數(shù)高效方法來適配基礎(chǔ)模型的選定組件,實現(xiàn)使用最少計算資源的有效適配。

五、效率優(yōu)勢:zip2zip如何加速推理過程

zip2zip通過增加平均token長度來提高效率,從而減少表示相同文本所需的tokens數(shù)量。這種壓縮適用于輸入(如提示)和輸出(如完成),導(dǎo)致上下文長度更短。因此,模型執(zhí)行更少的計算——無論是在注意力機(jī)制中還是前饋層中——更重要的是,在推理過程中需要更少的自回歸解碼步驟。

由于大型語言模型的延遲主要由順序解碼的成本驅(qū)動,將輸出tokens數(shù)量減少n%會導(dǎo)致解碼延遲大約減少n%,這一點在實驗部分得到了經(jīng)驗證明。

不過,需要注意的是,zip2zip引入了一些額外的計算開銷,主要來自超級編碼器在推理時即時計算超級嵌入的過程。為了解決這一問題,研究團(tuán)隊實現(xiàn)了超級嵌入緩存并使用自定義Triton內(nèi)核優(yōu)化計算。正如實驗結(jié)果所示,這些優(yōu)化措施使得zip2zip能夠在保持高質(zhì)量輸出的同時,顯著提高推理效率。

六、實驗結(jié)果:zip2zip在實際應(yīng)用中的表現(xiàn)

為了評估zip2zip的有效性,研究團(tuán)隊對Phi-3模型(3B和14B)進(jìn)行了適配,并從四個維度進(jìn)行了評估:(1)token效率,(2)語言建模困惑度,(3)下游任務(wù)性能,(4)推理效率。

### 訓(xùn)練設(shè)置

研究團(tuán)隊沒有更新完整的模型權(quán)重,而是采用了參數(shù)高效微調(diào)技術(shù)LoRA。此外,他們訓(xùn)練了超級嵌入和超級投影模塊。他們將最大合并大小設(shè)置為M = 3,并使用兩層transformer編碼器作為超級編碼器。

微調(diào)過程非常高效,4B參數(shù)模型只需約10個H100-GPU小時,14B參數(shù)模型需要40個H100-GPU小時,僅使用0.1億訓(xùn)練tokens。有趣的是,重建損失在訓(xùn)練期間幾乎收斂到零,表明模型幾乎可以完美地從超級token表示中恢復(fù)原始基礎(chǔ)token序列,這突顯了所學(xué)壓縮的高度信息保存性。

### 樣本輸出和超級token模式

研究團(tuán)隊展示了幾個例子,提供了zip2zip模型如何生成文本的直觀理解。從示例中可以看出,模型成功地在輸出中生成了基礎(chǔ)tokens和超級tokens的混合。超級token比例在Python代碼生成示例中高達(dá)40%,在生物醫(yī)學(xué)文本生成示例中為20%。許多超級tokens對應(yīng)于有意義的語義單位或特定領(lǐng)域術(shù)語,如"torch"、"Attention"、"MultiHead"(代碼生成);"mRNA"、"transcribed"、"synthesis"(生物醫(yī)學(xué));"Eiffel"、"de la"、"Gustave"(法語)。

### Token效率

研究團(tuán)隊定義token效率η為每個token表示的平均字節(jié)數(shù),即η = Bytes(x) / Tokens(x),其中Bytes(x)是文本x的UTF-8編碼中的字節(jié)數(shù)。他們使用四種LLM的分詞器評估了token效率——Llama-3(128K詞匯量)、Qwen-2(150K)、Phi-4(200K)和Gemma-3(256K)——每種都有不同的基礎(chǔ)詞匯量大小。token效率在五個代表性領(lǐng)域進(jìn)行測量:代碼、數(shù)學(xué)、聊天、多語言和網(wǎng)絡(luò)。

結(jié)果顯示,應(yīng)用LZW zip2zip一致地提高了所有分詞器和領(lǐng)域的token效率。在代碼和數(shù)學(xué)等結(jié)構(gòu)化領(lǐng)域的收益特別顯著——比基礎(chǔ)分詞器高出50%。有趣的是,詞匯量更大的模型并不總是實現(xiàn)更好的token效率,這表明簡單地增加詞匯量并不足以提高效率。

### 困惑度

研究團(tuán)隊在四個語料庫上評估了zip2zip模型的困惑度:Wikitext、the Pile以及Paloma的兩個子集:mC4(C4的多語言子集)和dC4(又稱C4-100D,跨越100個領(lǐng)域的C4子集)。

結(jié)果表明,zip2zip模型的字節(jié)級困惑度有適度增加,表明語言建模性能有所下降。這是可以預(yù)期的,因為壓縮通常會導(dǎo)致預(yù)測性和模型性能之間的權(quán)衡。不過,困惑度的增加相對較小,特別是考慮到zip2zip帶來的顯著效率提升。

### NLP基準(zhǔn)測試

研究團(tuán)隊在七個廣泛使用的NLP基準(zhǔn)上評估了zip2zip的性能:ARC-[Challenge, Easy]、HellaSwag、LAMBADA、OpenbookQA、PIQA、Winogrande和GSM8K。

結(jié)果表明,使用zip2zip微調(diào)的模型在大多數(shù)任務(wù)上的表現(xiàn)與基線相似。然而,在GSM8K上,主要涉及數(shù)值計算的任務(wù),模型表現(xiàn)出顯著下降。由于這類任務(wù)對分詞敏感,模型偶爾會生成格式錯誤或重復(fù)的數(shù)字。雖然token級操作對LLM已知具有挑戰(zhàn)性,但自適應(yīng)分詞似乎加劇了這個問題。

為了驗證zip2zip在非英語語言上的有效性,研究團(tuán)隊在機(jī)器翻譯任務(wù)上評估了模型,包括WMT14和WMT16。結(jié)果表明,使用zip2zip時,BLEU、CHRF和TER指標(biāo)在所有測試的語言對上都有小幅度下降。然而,下降相對較小,表明即使在壓縮表示中,模型仍然保持強(qiáng)大的多語言能力。

### 推理效率

zip2zip通過降低需要生成的tokens數(shù)量來減少解碼時間。然而,它引入了額外的計算量,主要來自超級編碼器在推理時即時計算超級嵌入的過程。為了解決這一開銷,研究團(tuán)隊實現(xiàn)了超級嵌入緩存并使用自定義Triton內(nèi)核優(yōu)化計算。

實驗結(jié)果顯示,zip2zip在所有四種測試設(shè)置中都實現(xiàn)了顯著的速度提升,無論是在預(yù)填充階段還是解碼階段。最顯著的收益觀察到在使用Phi-3.5-4B模型的512+256設(shè)置中。在數(shù)據(jù)中心級GPU(如NVIDIA H100)上的改進(jìn)更為顯著,而在消費級硬件(如Apple M1)上則相對適中。

研究團(tuán)隊還專注于高效的LZW分詞實現(xiàn)。zip2zip在推理過程中引入了額外的LZW壓縮步驟,以及生成結(jié)束時的解壓縮步驟。為了最小化開銷,他們實現(xiàn)了一個基于Rust的zip2zip分詞器,其性能優(yōu)于Python版本,并與HuggingFace的快速BPE分詞器延遲相當(dāng)。

七、與相關(guān)工作的比較

zip2zip與現(xiàn)有研究的關(guān)系主要體現(xiàn)在以下幾個方面:

### 詞匯擴(kuò)展

先前的工作探索了在特定領(lǐng)域或語言適應(yīng)期間擴(kuò)展分詞器詞匯表以提高分詞效率。例如,有研究通過添加新tokens來適配LLaMA模型以支持中文、韓文和專門領(lǐng)域如心理健康和法律。還有研究者探索了如何通過更好地選擇要添加的tokens子集來有效擴(kuò)展詞匯表。

與這些方法不同,zip2zip是首個實現(xiàn)推理時動態(tài)詞匯擴(kuò)展的方法,基于輸入上下文構(gòu)建新tokens,無需預(yù)先重新訓(xùn)練或修改分詞器。

### 提示壓縮

提示壓縮方法包括GistTokens、Selective Context、LLMLingua、Summary Vectors、In-context Autoencoder等,這些方法減少了輸入token長度,但不影響輸出tokens數(shù)量,而輸出生成通常主導(dǎo)整體生成時間。相比之下,zip2zip同時壓縮輸入和輸出token序列。

### 潛在tokens表示

潛在token表示或patches的概念主要在計算機(jī)視覺中探索,如Token Merging和Token Pooling,旨在減少序列長度同時保留語義內(nèi)容。最近,Byte Latent Transformer (BLT)將這一概念擴(kuò)展到語言建模,完全放棄tokens直接在字節(jié)級別操作。

BLT和zip2zip都采用輸入的層次建模方法,但在三個關(guān)鍵方面有所不同:(1)目標(biāo):BLT旨在替代分詞器,而zip2zip尋求擴(kuò)展和改進(jìn)它;(2)算法:BLT使用基于熵的分割,而zip2zip應(yīng)用基于LZW的token壓縮;(3)訓(xùn)練:BLT需要從頭開始訓(xùn)練,而zip2zip支持預(yù)訓(xùn)練模型的持續(xù)適應(yīng)。

此外,Lester等人提出通過直接在用算術(shù)編碼壓縮的文本上訓(xùn)練LLM來提高語言模型效率。雖然兩種方法都利用壓縮來提高效率,但zip2zip強(qiáng)調(diào)動態(tài)詞匯擴(kuò)展以實現(xiàn)現(xiàn)有模型的升級訓(xùn)練,而Lester等人的方法需要從頭開始訓(xùn)練。

八、討論與局限性

盡管zip2zip取得了令人印象深刻的成果,研究團(tuán)隊也坦率地討論了該方法的幾個局限性和未來研究方向:

### 超越LZW

雖然研究團(tuán)隊采用LZW進(jìn)行超級tokens的動態(tài)構(gòu)建,但zip2zip廣泛兼容任何在線壓縮算法。未來的工作可能探索提供壓縮效率和模型性能之間不同權(quán)衡的替代方案。

### 碼本管理策略

LZW算法使碼本隨著上下文窗口中的tokens數(shù)量線性增長。實證結(jié)果顯示,在生成過程中只有約25%的超級tokens被重用,留下了優(yōu)化的巨大空間。兩個潛在的改進(jìn)是:(1)修剪或選擇性保留策略以減少未使用的條目,以及(2)碼本預(yù)填充,如果能提前預(yù)測可能的tokens,這可能會有所幫助。

### 壓縮-質(zhì)量權(quán)衡

壓縮和建模之間存在內(nèi)在權(quán)衡:隨著token空間被更積極地壓縮,冗余減少——但可預(yù)測性也隨之降低——使模型更難預(yù)測下一個(超級)token。在極端情況下,最優(yōu)壓縮方案如算術(shù)編碼產(chǎn)生的序列在統(tǒng)計上與隨機(jī)噪聲無法區(qū)分,使語言模型難以學(xué)習(xí)。

研究者們觀察到這種效應(yīng)表現(xiàn)為更高壓縮級別下困惑度增加(表3),這可能會通過降低生成質(zhì)量而削弱壓縮的好處(盡管在表4和表5中的任務(wù)中相對較?。?。在壓縮和模型性能之間找到正確平衡仍然是未來研究的重要方向。

九、結(jié)論

zip2zip框架為大型語言模型帶來了一種革命性的動態(tài)詞匯適應(yīng)方法。通過整合基于LZW的token壓縮與動態(tài)超級token嵌入機(jī)制,zip2zip實現(xiàn)了序列長度和解碼步驟的顯著減少,從而提高了推理效率,同時只需對架構(gòu)進(jìn)行最小修改。

實驗表明,zip2zip在保持各種任務(wù)上的強(qiáng)大性能的同時,實現(xiàn)了顯著的推理效率提升。這些發(fā)現(xiàn)突顯了將動態(tài)分詞集成到LLMs中的潛力,為LLM效率研究開辟了新方向。

最重要的是,zip2zip提供了一種實用的解決方案,可以提高大型語言模型在各種應(yīng)用場景中的效率和響應(yīng)速度,特別是在處理特定領(lǐng)域的內(nèi)容或非英語語言時。隨著大型語言模型繼續(xù)在各行各業(yè)的應(yīng)用擴(kuò)展,這種提高效率的方法將變得越來越重要,使得先進(jìn)的AI技術(shù)更加經(jīng)濟(jì)實惠和廣泛可用。

分享至
0贊

好文章,需要你的鼓勵

推薦文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-