爆火B(yǎng)lock Diffusion引發(fā)LLM架構(gòu)變革?自回歸+擴散模型完美結(jié)合
擴散模型被廣泛應(yīng)用于生成圖像和視頻,并且在生成離散數(shù)據(jù)(如文本或生物序列)任務(wù)上的效果也越來越好,與自回歸模型相比,擴散模型有望加速「生成過程」并提高模型輸出的「可控性」。
然而,離散擴散模型目前仍然有三個局限性:
- 在聊天系統(tǒng)等應(yīng)用中,模型需要生成任意長度的輸出序列(例如,對用戶問題的回答),但大多數(shù)現(xiàn)有的擴散架構(gòu)只能生成固定長度的向量;
- 離散擴散在生成過程中使用雙向上下文,因此無法利用鍵值緩存(KV caching)復用之前的計算,使得推理效率較低。
- 從困惑度等標準指標來看,離散擴散模型的質(zhì)量仍落后于自回歸方法,也進一步限制了其應(yīng)用范圍。
為了克服這些局限性,康奈爾科技校區(qū)(Cornell Tech)、斯坦福大學的研究人員提出了「塊離散去噪擴散語言模型」(BD3-LMs,Block Discrete Denoising Diffusion Language Models),介于離散擴散模型和自回歸模型之間:塊擴散模型(也稱為半自回歸模型)在離散隨機變量的塊上定義了一個自回歸概率分布;給定前面的塊,當前塊的條件概率由離散去噪擴散模型指定。
圖片
論文鏈接:https://arxiv.org/pdf/2503.09573
代碼鏈接:https://github.com/kuleshov-group/bd3lms
想要開發(fā)出一個高效的BD3-LMs,仍然有兩大難題需要解決:
- 計算塊擴散模型的訓練目標無法通過神經(jīng)網(wǎng)絡(luò)的標準前向傳播實現(xiàn),需要開發(fā)專門的算法;
- 擴散目標的梯度方差較大,導致即使在塊大小為1(此時兩種模型理論上等價)時,BD3-LMs的表現(xiàn)仍不如自回歸模型。
研究人員通過推導梯度方差的估計器,發(fā)現(xiàn)了導致自回歸模型與擴散模型之間困惑度差距的關(guān)鍵因素,文中提出了定制的噪聲過程,以最小化梯度方差,并縮小了困惑度差距。
圖片
自回歸生成過程
擴散生成過程
圖片
塊擴散生成過程
圖片
研究人員在語言建模基準測試中評估了BD3-LMs,結(jié)果表明,該模型能夠生成任意長度的序列,包括超出其訓練上下文長度的序列,并且在離散擴散模型中達到了新的最低困惑度。
與在嵌入層上進行高斯擴散的其他半自回歸方法相比,文中提出的離散方法具有可處理的(tractable)似然估計,并且在生成步驟少了一個數(shù)量級的情況下,生成樣本的困惑度還更低。
Block Diffusion語言建模
自回歸語言模型vs擴散語言模型
語言建模任務(wù)就是從數(shù)據(jù)分布q(x)中獲得具有L個token的序列,目標是擬合出一個服從q分布的模型
。
自回歸模型(Autoregressive Models)將token的分布分解成一種逐步生成的形式,即根據(jù)前面的token來預測下一個token
但這種方法存在一個問題:由于token之間的順序依賴關(guān)系,自回歸模型在生成長序列時需要逐個token進行采樣,可能會導致生成速度變慢。
相比之下,擴散模型(Diffusion Models)通過獨立建模tokens實現(xiàn)了并行生成,其核心思想是通過「去噪」來逆轉(zhuǎn)預先設(shè)計的「加噪」過程,利用轉(zhuǎn)移矩陣(transition matrices)告訴模型如何從噪聲中恢復出清晰的token
然而,擴散模型也有局限性,其目標是最小化似然的一個上界,也就意味著在生成質(zhì)量和預測準確性方面可能不如自回歸模型;并且擴散模型目前只能生成固定長度的序列,限制了其在生成任意長度輸出應(yīng)用中的靈活性。
BD3-LMs
研究人員結(jié)合了自回歸模型在「生成質(zhì)量」和「靈活長度生成」方面的優(yōu)勢,以及擴散模型在「快速并行生成」方面的優(yōu)點,提出了塊離散去噪擴散語言模型(Block Discrete Denoising Diffusion Language Models,BD3-LMs)。
塊擴散似然
研究人員提出了一種新的建??蚣?,將token分組成塊(block),并在每個塊內(nèi)執(zhí)行擴散操作。
具體來說,模型以自回歸的方式處理這些塊,同時在每個塊內(nèi)部使用擴散模型進行生成,其似然函數(shù)可以分解為B個長度為L'的部分。
每個塊都通過離散擴散的變分下界(ELBO)來建模,覆蓋的塊尺寸為L'個token。
通過優(yōu)化似然下界,可以得到一個合理的訓練目標:
研究人員采用一種簡單的離散擴散參數(shù)化方法來建模每個塊的似然,最終模型的目標函數(shù)變成了加權(quán)交叉熵項的總和。
高效訓練與采樣算法
通常情況下,需要循環(huán)B次操作來計算結(jié)果,研究人員提出了一種高效訓練方法,只需要進行兩次正向傳播即可完成計算。
第一次正向傳播會預先計算出整個序列的鍵(keys)和值(values)
;第二次正向傳播則利用這些預先計算好的鍵和值,同時為所有塊生成去噪后的預測結(jié)果。
在從塊離散去噪擴散語言模型(BD3-LMs)中采樣時,一次生成一個塊,并且這個塊的生成是基于之前已經(jīng)生成的塊的條件。
生成一個塊后,像自回歸模型(AR)一樣將鍵和值緩存起來;在生成過程中,可以使用任意擴散采樣方法,從條件分布中生成樣本,并且每個塊的采樣步驟可以獨立進行。
擴散模型與自回歸模型之間的似然差距
單個token生成
塊擴散模型在理論上與自回歸模型的負對數(shù)似然(NLL)是等價的,尤其是在L'=1的極限情況下。
然而,研究人員發(fā)現(xiàn),在LM1B數(shù)據(jù)集上訓練這兩種模型時,即使在塊大小為1的情況下,塊擴散模型與自回歸模型之間仍然存在2個點的困惑度差距。
經(jīng)過分析,可以發(fā)現(xiàn)擴散模型的目標函數(shù)在訓練過程中具有較高的方差,是導致困惑度差距的主要原因。
圖片
在離散擴散模型的訓練中,使用變分下界(ELBO)時會遇到高方差的問題。
從直覺上來說,如果被遮蔽的部分太少,那么恢復原始內(nèi)容就會很容易,這種情況下模型就得不到有效的學習信號;
反過來,如果把所有內(nèi)容都遮蔽掉,那么最優(yōu)的恢復方式就是簡單地根據(jù)數(shù)據(jù)分布中每個token的獨立概率來進行猜測,這種任務(wù)雖然容易完成,但也同樣沒有意義。
最終的目標是找到一種合適的噪聲調(diào)度(noise schedule),以減少由擴散目標引起的訓練過程中的波動,并進一步縮小模型在困惑度上的差距。
為了避免因遮蔽率(masking rates)過高而導致訓練過程中的大幅波動,研究人員在訓練塊離散去噪擴散語言模型(BD3-LMs)時,采用了「限制性」的遮蔽率:通過降低訓練過程中的波動,當在評估時使用均勻采樣的遮蔽率時,模型的預測準確性得到了提升。
由于最優(yōu)的遮蔽率可能因塊的大小而有所不同,研究人員在訓練過程中自適應(yīng)地學習這些遮蔽率,在每次驗證步驟中,每完成5000次梯度更新后,通過網(wǎng)格搜索來優(yōu)化遮蔽率。
研究結(jié)果表明,針對每個塊大小優(yōu)化噪聲調(diào)度可以減少損失估計器的方差,并在與其他噪聲時間表的比較中實現(xiàn)最佳的困惑度性能。
實驗結(jié)果
似然評估
BD3-LMs在擴散模型中達到了最先進的預測準確性(似然性),通過調(diào)整塊的長度,BD3-LMs能夠在擴散模型的似然性和自回歸模型的似然性之間實現(xiàn)平衡。
圖片
任意長度序列生成
許多現(xiàn)有的擴散語言模型有一個重大缺陷:無法生成比訓練時選擇的輸出上下文長度更長的完整文檔。
例如,OpenWebText數(shù)據(jù)集中包含的文檔最長可達13.1萬個tokens,但離散擴散模型SEDD只能生成最多1024個token的內(nèi)容。
圖片
實驗結(jié)果展現(xiàn)了BD3-LMs能夠通過解碼任意數(shù)量的塊來生成長度可變的文檔,研究人員評估了BD3-LMs在生成長度可變的序列時的質(zhì)量,并使用相同的生成步數(shù)(NFEs)來比較所有方法。
研究人員還測量了在GPT2-Large模型下采樣序列的生成困惑度,結(jié)果顯示BD3-LMs在所有之前的擴散方法中達到了最佳的生成困惑度。
圖片
研究人員還將其與半自回歸SSD-LM進行了比較,在詞嵌入上執(zhí)行高斯擴散,但無法進行似然估計;相比之下,文中提出的離散方法在少一個數(shù)量級的生成步數(shù)下,生成的樣本具有更低的生成困惑度。
簡單來說,BD3-LMs不僅能夠生成任意長度的文檔,而且在生成效率和質(zhì)量上都優(yōu)于其他擴散模型。