機(jī)器之心編譯
原文作者:Albert Gu
編輯:陳陳、杜偉
「Tokenization(分詞)是 Transformer 模型為彌補(bǔ)自身缺陷不得不戴上的枷鎖。」
近日,Mamba 作者、CMU 助理教授、Cartesia AI 首席科學(xué)家 Albert Gu 撰寫了一篇新博客,探討了狀態(tài)空間模型(SSM)和 Transformer 之間的權(quán)衡,并提出了這樣一種觀點(diǎn)。
這篇博客改編自 Albert Gu 過去一年來多次進(jìn)行的一場(chǎng)演講。雖然演講內(nèi)容通俗易懂,面向比較廣泛的受眾群體,但其中的一些有趣的見解、觀點(diǎn)和原理闡釋,相信對(duì)專業(yè)研究者也不乏啟發(fā)價(jià)值。
在社交媒體 X 上,Albert Gu 拋出了「tokens are bullshit」的觀點(diǎn),并預(yù)告了接下來要發(fā)布的重大架構(gòu)進(jìn)展。
圖源:https://x.com/_albertgu/status/1942615020111876248
評(píng)論區(qū)的很多網(wǎng)友贊成 Albert Gu 的觀點(diǎn),認(rèn)為移除 tokenization 會(huì)在計(jì)算效率方面帶來積極影響。
狀態(tài)空間模型
本文首先定義了什么是狀態(tài)空間模型(State Space Model,SSM)。
下面的公式定義了(結(jié)構(gòu)化)狀態(tài)空間模型,它源自一系列工作,最終催生了 Mamba。狀態(tài)空間模型可被視為現(xiàn)代版本的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),具有一些關(guān)鍵的特性。盡管實(shí)現(xiàn)這類模型需要大量技術(shù)工作,但本文首先提煉出了使這類模型成功匹配 Transformer 語言建模性能的核心要素。
三大要素
1. 狀態(tài)大小
SSM 的一大特性是其隱藏狀態(tài) h_t 的維度大于輸入和輸出「x_t, y_t.」。關(guān)鍵思路在于:在自回歸建模中,任何循環(huán)網(wǎng)絡(luò)的隱藏狀態(tài)是其獲取模型上下文的唯一途徑。所以,對(duì)于語言等信息密集模態(tài)的建模,模型需要足夠大的狀態(tài)空間來存儲(chǔ)其后續(xù)想要調(diào)用的相關(guān)信息。
在 SSM 中,如果每個(gè)輸入 x_t 是一維標(biāo)量,則隱藏狀態(tài) h_t 為 N 維向量,其中 N 是獨(dú)立超參數(shù),被稱為狀態(tài)空間、狀態(tài)維度或者狀態(tài)擴(kuò)展因子。這類模型也被稱為 SISO(單輸入單輸出)SSM,允許模型存儲(chǔ)的信息是 LSTM 和 GRU 等傳統(tǒng) RNN 的 N 倍。
2. 狀態(tài)表現(xiàn)力
模型不僅需要擁有足夠大的狀態(tài)空間以在理論上存儲(chǔ)相關(guān)上下文信息,更需要具備表現(xiàn)力強(qiáng)大的狀態(tài)更新函數(shù),以精確編碼和調(diào)用其需要的信息。
早期版本的「線性時(shí)不變」SSM 使用簡(jiǎn)單的遞歸公式「h_t=Ah_t?1+Bx_t」,其更新規(guī)則在每一個(gè)時(shí)間步保持恒定。雖然這一機(jī)制對(duì)音頻等壓縮數(shù)據(jù)的適用性很好,卻難以應(yīng)對(duì)語言這類信息速率多變的序列 —— 模型必須選擇性記憶關(guān)鍵信息。以 Mamba 為代表的選擇性 SSM 通過動(dòng)態(tài)轉(zhuǎn)移矩陣解決了此問題:其轉(zhuǎn)移矩陣隨時(shí)間變化且依賴數(shù)據(jù)本身,使得遞歸過程更具有表現(xiàn)力。值得注意的是,這些機(jī)制與經(jīng)典 RNN 的門控結(jié)構(gòu)緊密相關(guān)。
這正是現(xiàn)代循環(huán)模型最活躍的研究領(lǐng)域,聚焦理解轉(zhuǎn)移矩陣 A_t 不同參數(shù)化的理論表現(xiàn)力,以及這些參數(shù)化如何影響模型在狀態(tài)空間中的記憶能力。
3. 訓(xùn)練效率
擴(kuò)展循環(huán)狀態(tài)的容量和表現(xiàn)力很重要,但隨之而來的是模型面臨的關(guān)鍵計(jì)算效率瓶頸。Mamba 通過精心設(shè)計(jì)遞歸參數(shù)化方式,并采用經(jīng)典的并行掃描算法攻克了這一難題。
當(dāng)前涌現(xiàn)的諸多算法創(chuàng)新都具有以下共性特征:
- 并行化能力:致力于實(shí)現(xiàn)并行化,并在 GPU、TPU 等加速器上達(dá)到實(shí)用級(jí)效率 —— 通常利用矩陣乘法(matmuls)作為主力運(yùn)算;
- 內(nèi)存管理機(jī)制:必須精細(xì)控制內(nèi)存使用,尤其是采用狀態(tài)擴(kuò)展的模型,實(shí)際上在主內(nèi)存中無法實(shí)體化整個(gè)狀態(tài)!Mamba 憑借對(duì) GPU 存儲(chǔ)層級(jí)的深度認(rèn)知實(shí)現(xiàn)硬性解決,而大多數(shù)替代方案通過重構(gòu)整個(gè)計(jì)算路徑,在并行訓(xùn)練過程中規(guī)避顯式狀態(tài)計(jì)算;
- 線性特征:模型通常需要保持關(guān)于「x_t」的線性特征,因而一些人稱此類模型為線性循環(huán)模型。線性特征對(duì)計(jì)算效率以及建模或優(yōu)化能力均產(chǎn)生重要影響(具體分析詳見下文)。
Mamba—— 系統(tǒng)性整合
需特別指出,以下三大技術(shù)要素均非首創(chuàng):
- 要素 1:線性注意力和早期 SSM 已經(jīng)采用類似的狀態(tài)擴(kuò)展公式;
- 要素 2:選擇性機(jī)制的設(shè)計(jì)靈感來自于 LSTM 和 GRU 等經(jīng)典 RNN 的門控結(jié)構(gòu),兩者緊密相關(guān);
- 要素 3:并行掃描算法在 S5 和 LRU 等早期 SSM 或線性 RNN 中已使用,線性注意力變體也采用了基于矩陣乘法的并行訓(xùn)練算法。
Mamba 的核心突破在于證明了:當(dāng)將所有這些技術(shù)要素整合在一起時(shí),模型在語言建模任務(wù)中可以實(shí)現(xiàn)跨越式性能突破,并達(dá)到比肩 Transformer 的效果。
現(xiàn)代循環(huán)模型
此后,現(xiàn)代循環(huán)模型研究呈現(xiàn)爆發(fā)式增長(zhǎng),各類新模型密集涌現(xiàn)。這些研究雖然動(dòng)機(jī)不同,術(shù)語繁雜,卻共享類似的技術(shù)內(nèi)核:
- RWKV、xLSTM 和 Griffin 等模型延續(xù)了 RNN 范式,將狀態(tài)擴(kuò)展稱為矩陣化狀態(tài)(要素 1),將選擇性機(jī)制稱為門控;
- 線性注意力率先融合了要素 1 和要素 3(并行算法),后續(xù)變體如 GLA、Gated DeltaNet 等引入數(shù)據(jù)依賴型遞歸選擇性機(jī)制,并使用基于注意力的術(shù)語(如使用 (K,Q,V) 而不是 (B,C,X))。Mamba-2 可以同時(shí)視為 SSM 或線形注意力;
- 近期的很多模型提出了測(cè)試時(shí)訓(xùn)練 / 回歸框架,將遞歸更新視為上下文記憶的在線優(yōu)化過程。在這些框架中,狀態(tài)被視為聯(lián)想記憶,并行化通過小批量梯度下降實(shí)現(xiàn)。
核心共性在于:幾乎所有模型可納入相同的 SSM 公式 (1),主要差異在于轉(zhuǎn)移矩陣 A_t 的結(jié)構(gòu)設(shè)計(jì)(要素 2)以及對(duì)應(yīng)的高校訓(xùn)練算法(要素 3)。本文采用狀態(tài)空間模型(或現(xiàn)代循環(huán)模型)來統(tǒng)稱這一大類新興模型 —— 它們精確捕捉了 SISO 線性遞歸和狀態(tài)擴(kuò)展等核心共性特征。當(dāng)然,考慮到技術(shù)同源性,其他命名體系同樣合理!
盡管該領(lǐng)域的研究加速推進(jìn),并且新模型持續(xù)涌現(xiàn),但本文認(rèn)為當(dāng)前模型仍然呈現(xiàn)高度同質(zhì)化的特征,實(shí)證性能也基本相當(dāng)。尤其是相較于二次注意力機(jī)制,這些模型之間的相似度遠(yuǎn)高于它們于 Transformer 的差異。
接下來將重點(diǎn)剖析 SSM 和 Transformer 之間的高階權(quán)衡關(guān)系。
狀態(tài)、大腦和數(shù)據(jù)庫
本文認(rèn)為:可以通過觀察不同模型在自回歸狀態(tài)中存儲(chǔ)了什么,以及它們是如何操作這些狀態(tài)的,來更好地理解它們之間的權(quán)衡。這是什么意思呢?
從某種意義上說,每一個(gè)自回歸模型 —— 比如像現(xiàn)代大語言模型那樣按從左到右順序生成數(shù)據(jù)的模型 —— 都是一種「狀態(tài)空間模型」,它在內(nèi)存中保存某種狀態(tài),并在每一個(gè)時(shí)間步中對(duì)其進(jìn)行更新(比如 LLM 生成每一個(gè)詞之間的過程)。
序列模型的自回歸狀態(tài)
自回歸 Transformer 的核心組件是(因果)自注意力機(jī)制,往往通過一種特定的操作來定義:計(jì)算序列中每一對(duì)元素之間的相互作用。因此,其計(jì)算成本隨著序列長(zhǎng)度呈二次增長(zhǎng),這也常被視為注意力機(jī)制的主要劣勢(shì)。
相比之下,由于遞歸公式(1)中每一步的計(jì)算耗時(shí)是常數(shù),整個(gè)序列的處理時(shí)間與序列長(zhǎng)度成線性關(guān)系,這通常被認(rèn)為是狀態(tài)空間模型的主要優(yōu)勢(shì)。
但是,與其去思考這些模型在訓(xùn)練階段的計(jì)算成本,本文認(rèn)為更有啟發(fā)性的是去關(guān)注它們?cè)谕评黼A段處理新輸入時(shí)會(huì)發(fā)生什么。
- 當(dāng)一個(gè)自注意力層接收到一個(gè)新 token 時(shí),它需要將這個(gè) token 與序列中此前出現(xiàn)的所有元素進(jìn)行比較。這意味著,它必須緩存整個(gè)上下文中每一個(gè)先前 token 的表示。每接收一個(gè)新輸入,它都必須將其加入緩存,因此緩存的大小會(huì)隨著上下文長(zhǎng)度線性增長(zhǎng)。
- 相比之下,狀態(tài)空間模型始終將上下文「x_1,? ,x_t」總結(jié)為一個(gè)隱藏狀態(tài) h_t(見公式 (1)),這個(gè)隱藏狀態(tài)的大小是固定的。這個(gè)固定大小的狀態(tài)就是模型與數(shù)據(jù)交互的唯一方式:它持續(xù)接收數(shù)據(jù)流,將其壓縮進(jìn)狀態(tài)中,并依賴這一狀態(tài)來做出決策或生成新輸出。
這里甚至不需要深入探討這些不同模型的具體定義。可以粗略地說,這些模型完全可以從「自回歸狀態(tài)」的第一性原理出發(fā)來定義:
- Transformer(自注意力機(jī)制)的特點(diǎn)是其狀態(tài)會(huì)緩存歷史中的每一個(gè)元素,并通過遍歷整個(gè)緩存來與新輸入的數(shù)據(jù)進(jìn)行交互。
- 狀態(tài)空間模型(SSM)的特點(diǎn)則是其狀態(tài)會(huì)壓縮整個(gè)歷史信息,并以在線流式的方式與新輸入數(shù)據(jù)進(jìn)行交互。
粗略的類比
盡管狀態(tài)空間模型(SSM)常被視為更高效但稍遜于 Transformer 的變體,事情其實(shí)并沒有那么簡(jiǎn)單。
即使不考慮計(jì)算效率,這兩類模型在歸納偏置(或建模能力)上也存在不同的權(quán)衡。考慮到兩者處理數(shù)據(jù)的方式差異,本文做了一個(gè)粗略但貼切的類比來說明這一點(diǎn)。
Transformer 更像是數(shù)據(jù)庫:它們把每一個(gè)新的觀測(cè)都當(dāng)作重要的信息存檔,以備將來查用。相比之下,狀態(tài)空間模型(SSM)更像是大腦:擁有有限大小的記憶,一直處于工作狀態(tài),實(shí)時(shí)處理新輸入并產(chǎn)生輸出。
這個(gè)類比雖然有些淺顯,但在直觀上確實(shí)有助于解釋一些經(jīng)驗(yàn)上觀察到的行為模式。例如,SSM 無法在只讀一遍的情況下記住整個(gè)電話簿并完整背誦出來,或者從記憶中準(zhǔn)確回憶任意一個(gè)人的電話號(hào)碼。當(dāng)然,人類也做不到這一點(diǎn) —— 我們?cè)诰_記憶和檢索方面表現(xiàn)得非常差 —— 但這似乎并不妨礙智能的產(chǎn)生!
另一方面,Transformer 在上下文長(zhǎng)度上有一個(gè)根本的硬性限制(當(dāng)緩存大小被超過時(shí)),而像 SSM 這樣的遞歸模型在理論上可以像人類一樣,保有一段無限長(zhǎng)(但模糊)的過去記憶。
一個(gè)更有趣的經(jīng)驗(yàn)發(fā)現(xiàn) —— 也許可以從上述類比中預(yù)測(cè)到 —— 將這兩種信息處理方式結(jié)合起來,可能會(huì)表現(xiàn)得更強(qiáng)大!就像人類的智能能夠通過使用筆記本和外部參考資料得到增強(qiáng)一樣,當(dāng)語言模型通過一種簡(jiǎn)單的交替策略將 SSM 與注意力層結(jié)合使用時(shí),其能力也得到了提升。
更令人感興趣的是,經(jīng)過多個(gè)研究團(tuán)隊(duì)的獨(dú)立驗(yàn)證(包括 H3、Jamba、Zamba、Samba 以及隨后涌現(xiàn)出的許多模型),最優(yōu)的 SSM 與注意力層的比例大致在 3:1 到 10:1 之間。如果你認(rèn)同這樣一個(gè)粗略的類比(即人類智能主要依賴于大腦,并通過輕量訪問外部數(shù)據(jù)庫得到增強(qiáng)),那么這個(gè)比例似乎也在某種程度上印證了這一觀點(diǎn)!
如今,這類混合模型已被大規(guī)模擴(kuò)展到非常龐大的規(guī)模(例如采用 MoE 架構(gòu)的總參數(shù)量達(dá)到 5600 億),并由一些頂級(jí)實(shí)驗(yàn)室推出,如 NVIDIA 的 Nemotron-H 和騰訊的 T1/TurboS,都已在多個(gè)任務(wù)上取得了最先進(jìn)的性能。
Is Attention All You Need?
所以,「Attention is all you need」,對(duì)吧?如今普遍存在一種看法:Transforme 是終極架構(gòu),能夠從原始數(shù)據(jù)中學(xué)到任何東西,只要數(shù)據(jù)足夠多、計(jì)算資源充足,唯一的瓶頸就是算力。
但事實(shí)并非如此簡(jiǎn)單。Attention 確實(shí)非常出色,已經(jīng)成為幾乎所有模態(tài)的核心骨干,從最初在語言上的應(yīng)用拓展到了視覺、音頻,甚至更多領(lǐng)域。不過,這其中還有更多細(xì)節(jié)值得探討。
本文想提出的觀點(diǎn)是:要真正有效地使用 Transformer,數(shù)據(jù)必須經(jīng)過相當(dāng)程度的預(yù)處理。為了支持這個(gè)觀點(diǎn),可以先來看看 Transformer 在實(shí)際中的使用方式。
在幾乎所有真實(shí)的應(yīng)用流程中,原始數(shù)據(jù)在輸入 Transformer 之前都會(huì)先通過某種編碼器進(jìn)行處理,例如:
- 在視覺任務(wù)中,無論是分類還是生成,都需要一個(gè)「切塊」(patchification)步驟;
- 在語言建模中,需要先進(jìn)行「分詞」(tokenization)。
這聽起來也許很直觀:畢竟注意力機(jī)制的計(jì)算復(fù)雜度是二次的,我們會(huì)希望盡量簡(jiǎn)化輸入數(shù)據(jù)(比如縮短序列長(zhǎng)度)。
但本文想說的并不僅僅是計(jì)算效率的問題,而是一個(gè)更強(qiáng)的觀點(diǎn):Transformer 在建模能力上本身就存在一定的局限性。
我們應(yīng)該擺脫 tokenization 嗎?
Tokenization 是所有語言建模流程中一個(gè)重要步驟,最常見的是 BPE 算法,本文中 tokenization 與 BPE 可互換使用。
但這個(gè)過程帶來很多問題,如詢問大模型「strawberry 里有幾個(gè)字母 r?」,它們經(jīng)常回答錯(cuò)誤,這些都暴露了分詞機(jī)制在理解語言細(xì)節(jié)上的局限。
那我們?yōu)槭裁催€要使用 tokenization 呢?
從大量觀點(diǎn)來看,幾乎所有人都同意:tokenizer 既笨拙又丑陋,但它又必然存在。
在實(shí)際應(yīng)用中,tokenization 大約可以將序列長(zhǎng)度縮短一個(gè)數(shù)量級(jí)左右,這顯著提升了語言模型的運(yùn)算效率。盡管存在一些極端案例,但大多數(shù)情況下,它們確實(shí)能用。
但本文恰恰相反,認(rèn)為我們應(yīng)該徹底擺脫 tokenization,這不僅僅是出于實(shí)際原因,也是為了美觀和無形的考慮。
除了可以修復(fù)邊緣案例(如 strawberry 這個(gè)單詞里有幾個(gè)字母 r),移除 tokenization 更符合深度學(xué)習(xí)的本質(zhì)。
深度學(xué)習(xí)一直都致力于用強(qiáng)大的端到端神經(jīng)網(wǎng)絡(luò)取代手工設(shè)計(jì)的特征工程,這些神經(jīng)網(wǎng)絡(luò)可以自動(dòng)從數(shù)據(jù)中學(xué)習(xí)模式。從 CNN 取代計(jì)算機(jī)視覺領(lǐng)域中人工設(shè)計(jì)的邊緣檢測(cè)器,到 Transformers 取代自然語言處理領(lǐng)域的語言特征,人工智能的重大進(jìn)步總是伴隨著更少的數(shù)據(jù)處理和更多的自動(dòng)學(xué)習(xí)(正如《苦澀的教訓(xùn)》所倡導(dǎo)的那樣)。
用端到端模型替代 tokenization 將帶來深遠(yuǎn)的影響,具體體現(xiàn)在以下幾個(gè)方面:
- 擴(kuò)展律(scaling laws):從原始數(shù)據(jù)中學(xué)習(xí)更優(yōu)的模式,總能帶來更強(qiáng)大的模型能力;
- 多語言與多模態(tài)處理:對(duì)某些語言和其他類型的序列數(shù)據(jù)而言,tokenization 一直是一個(gè)出了名的難題,甚至根本無法適配;
- 推理能力:模型可以從數(shù)據(jù)中學(xué)習(xí)到更具語義的模式,并在更高抽象層面上進(jìn)行推理。
假如沒有 tokenization,會(huì)發(fā)生什么?
LLM 時(shí)代,幾乎沒有幾篇論文真正認(rèn)真思考或嘗試解決「去除 tokenizer」這個(gè)問題。甚至很難找到一套可靠的基準(zhǔn),用來評(píng)估無 tokenizer 模型的表現(xiàn)。
假如沒有 tokenization,會(huì)發(fā)生什么?
由上圖,我們可以得出一些讓人頗感意外的結(jié)論。
但現(xiàn)在我們只做一件事:保持模型和數(shù)據(jù)不變,僅僅取消 tokenization(直接用字節(jié)輸入),結(jié)果是 ——Transformer 用上了更多的計(jì)算資源,表現(xiàn)卻明顯落后于 SSM。
首先要指出的是:在 FLOPs 匹配的前提下,SSM 的表現(xiàn)遠(yuǎn)優(yōu)于 Transformer。
這一點(diǎn)對(duì)一些人來說也許并不意外,因?yàn)樵谧止?jié)級(jí)建模中,輸入序列遠(yuǎn)長(zhǎng)于 BPE token 序列,而 Transformer 會(huì)因其對(duì)序列長(zhǎng)度呈二次復(fù)雜度的計(jì)算瓶頸而受到影響。
然而,Transformer 的弱點(diǎn)并不僅僅在于效率問題,更在于其建模能力的局限。
值得注意的是,即使讓 Transformer 使用遠(yuǎn)多于 SSM 的計(jì)算資源(以數(shù)據(jù)量匹配,而非計(jì)算量匹配),SSM 依然始終領(lǐng)先。
作為對(duì)比:如果用完全相同的數(shù)據(jù)對(duì)這兩類模型進(jìn)行對(duì)比,但對(duì)數(shù)據(jù)做了 tokenization,那么兩者的困惑度(perplexity)曲線會(huì)基本相似(甚至 Transformer 會(huì)略優(yōu)),并且它們的 FLOP 也會(huì)差不多。
但如果在保持模型和數(shù)據(jù)不變的前提下,只是將輸入不進(jìn)行 tokenize,Transformer 雖然使用了更多的計(jì)算量,其性能反而相對(duì) SSM 有明顯下降。
最初的 Mamba 論文顯示,在 DNA 語言建模任務(wù)中,Mamba 在無需特別調(diào)優(yōu)的情況下,其擴(kuò)展能力明顯優(yōu)于 Transformer。
這或許給我們一點(diǎn)啟示:tokenization 本質(zhì)上是為 Transformer 缺陷設(shè)計(jì)的補(bǔ)丁,而 SSM 類模型在原生處理低語義密度數(shù)據(jù)時(shí)展現(xiàn)出更根本的建模優(yōu)勢(shì),這可能重塑我們對(duì)語言模型本質(zhì)能力的認(rèn)知框架。
要理解這里發(fā)生了什么,一個(gè)有用的思維模型是回到自回歸狀態(tài)。簡(jiǎn)而言之,由于 Transformer 顯式緩存了所有先前的 token,它就帶有一種歸納偏置:傾向于關(guān)注每一個(gè)具體的 token。或者更簡(jiǎn)潔地說:軟注意力的歸納偏置,其實(shí)是硬注意力。
在處理語言時(shí),我們通常關(guān)注的是詞(word)或子詞(如詞根、前綴 / 后綴)這樣的單位,它們具有明確的語義含義。
但反過來看,如果這種假設(shè)不成立 —— 比如閱讀時(shí)我們很少會(huì)關(guān)注某個(gè)單獨(dú)的字符,那么注意力機(jī)制的表現(xiàn)就會(huì)下降。
更有趣的是,很多其他類型的數(shù)據(jù)處于這兩者之間的模糊地帶。
比如圖像中的 patch 在某些情況下能捕捉到顯著特征,有時(shí)是有意義的;但在其他時(shí)候,它們可能毫無用處,或者語義不完整。
一個(gè)假想
當(dāng)序列中存在噪聲時(shí)會(huì)發(fā)生什么?
眾所周知,LLM 的訓(xùn)練數(shù)據(jù)通常需要大量的預(yù)處理、篩選和清洗,但現(xiàn)實(shí)世界中的數(shù)據(jù)(尤其是多模態(tài)數(shù)據(jù))并非如此。人類也能在大量噪聲中學(xué)習(xí)得很好!
那么,在一個(gè)非常簡(jiǎn)單的情形下,如果我們?cè)谛蛄兄胁迦胍恍┎话魏涡畔⒌奶畛?token,會(huì)發(fā)生什么呢?
圖中揭示了標(biāo)準(zhǔn)注意力機(jī)制的又一個(gè)失敗模式:計(jì)算不應(yīng)該按 k^2 擴(kuò)展,推理時(shí)的內(nèi)存消耗更不應(yīng)該這樣擴(kuò)張,緩存這些毫無意義的噪聲 token 是完全沒有意義的。
相比之下,SSM 做得更好:即使冗余因子增加,模型的內(nèi)存不會(huì)增加。
但這也并未完全解決問題,因?yàn)槿魏螛?biāo)準(zhǔn)架構(gòu)的計(jì)算量仍然會(huì)隨著 token 的增加而增加。所以說,所有當(dāng)前的大模型在面對(duì)噪聲或冗余時(shí)都存在性能損耗的問題。
所以,理想的模型體系架構(gòu)應(yīng)該在不(實(shí)質(zhì)上)增加計(jì)算或內(nèi)存使用的情況下,能夠處理這種帶有填充序列的任務(wù),而不是盲目地處理所有 token。
更一般地,假設(shè)我們有一個(gè)數(shù)據(jù)集的兩個(gè)副本,其中一個(gè)包含很多額外的噪聲,但總體而言,它們具有基本相同的有用信息。我們應(yīng)該預(yù)期正確的架構(gòu)在這兩個(gè)數(shù)據(jù)集上的表現(xiàn)基本相同。
這就引出一個(gè)問題:Is attention all you need? 答案是注意力機(jī)制對(duì)處于正確抽象層級(jí)的預(yù)壓縮數(shù)據(jù)最為有效。
當(dāng)然,這種說法是對(duì)實(shí)際情況的過度簡(jiǎn)化,作者表示也不知道該如何正式定義抽象層級(jí)這種概念。但作者相信,在某種模糊的意義上,這確實(shí)是對(duì)的。
狀態(tài)空間模型與 Transformer 之間的權(quán)衡
狀態(tài)空間模型
先說優(yōu)勢(shì),SSM 是一種天然具備狀態(tài)記憶的模型,擅長(zhǎng)高效、交互式、在線處理。缺點(diǎn)是缺乏精細(xì)的回憶(recall)和檢索能力。
這兩者好比同一枚硬幣的兩面,根源都在于狀態(tài)壓縮機(jī)制的本質(zhì)特性。
那么壓縮是否其實(shí)是智能的根本特征之一?是否有可能,正是因?yàn)閷⑿畔?qiáng)行壓縮進(jìn)一個(gè)更小的狀態(tài)空間,才迫使模型去學(xué)習(xí)更有用的模式和抽象?
雖然在很多文獻(xiàn)中,壓縮狀態(tài)常被視為一種缺陷,但這種觀點(diǎn)的產(chǎn)生可能是因?yàn)閴嚎s帶來的弱點(diǎn)很容易被量化衡量,而壓縮所帶來的那些更微妙的、定性的正面影響卻很難被準(zhǔn)確評(píng)估。
無論如何,現(xiàn)在肯定有很多有趣的應(yīng)用,SSM 看起來是非常合適的工具。
Transformer
Transformer 的表現(xiàn)非常出色,事實(shí)上,在那些需要關(guān)注上下文中單個(gè) token 的任務(wù)中,Transformer 幾乎是唯一能夠勝任的工具。
Transformer 的優(yōu)勢(shì)是擁有完美的召回率,并能在其上下文中對(duì)單個(gè) token 進(jìn)行細(xì)粒度的操作。
那么它的缺點(diǎn)呢?大家都知道 Transformer 的主要弱點(diǎn)是其二次方復(fù)雜度。
并非如此。這篇文章的主題是要闡明 Transformer 確實(shí)存在歸納偏差,這使其在建模能力方面存在弱點(diǎn),而不僅僅是效率方面。與 SSM 一樣,Transformer 的高層優(yōu)勢(shì)和劣勢(shì)是同一枚硬幣的兩面,都是其自回歸狀態(tài)結(jié)構(gòu)的結(jié)果:token 緩存會(huì)維持給定輸入分辨率的粒度。
Transformer 弱點(diǎn)是受制于賦予它們的 token。
換句話說,它們對(duì)數(shù)據(jù)的分辨率和語義內(nèi)容更加敏感。Transformer 的特點(diǎn)在于其上下文緩存,它為序列中的每個(gè)元素存儲(chǔ)單獨(dú)的表示,這意味著每個(gè)元素最好都有用。
最后,讓我們來談?wù)劗?dāng)前人工智能發(fā)展浪潮的主要驅(qū)動(dòng)力之一:擴(kuò)展律 Scaling Laws,或者說,在模型上投入更多計(jì)算資源會(huì)持續(xù)帶來更多能力的現(xiàn)象。
這些定律總是以 FLOP(浮點(diǎn)運(yùn)算次數(shù))為 x 軸,以某種性能指標(biāo)為 y 軸來繪制,其理念是,這條線的斜率衡量「計(jì)算能力轉(zhuǎn)化為能力的速率」。事實(shí)上,本文認(rèn)為有一種流行的觀點(diǎn)認(rèn)為 Transformer 只是一種以最佳方式執(zhí)行這種轉(zhuǎn)換的工具。
這很好地描述了架構(gòu)研究的目標(biāo),本文只是在尋找一個(gè)能夠以最佳方式執(zhí)行這種轉(zhuǎn)換的黑匣子。從這個(gè)角度來看,只有一個(gè)核心問題:
模型是否合理地利用了它的計(jì)算能力?
換句話說,本文希望每個(gè) FLOP 都有效。希望讀完這篇文章后,大家能夠清楚地認(rèn)識(shí)到 Transformer 遠(yuǎn)非最佳方案(至少作者已經(jīng)說服了自己!)。
題外話:這真的重要嗎?
盡管作者被譽(yù)為 Transformer 替代方案方向的領(lǐng)導(dǎo)者,但他同時(shí)也認(rèn)為 Transformer 非常棒,注意力機(jī)制確實(shí)是建模的基本原語。但作者也認(rèn)為,Transformer 本身顯然不是最終的解決方案。我們還有很多工作要做。
博客鏈接:https://goombalab.github.io/blog/2025/tradeoffs/#a-coarse-analogy
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.