NeurIPS 2024 | Transformer長(zhǎng)度外推,全新位置編碼DAPE大幅提升模型性能
本篇論文已被NeurIPS 2024接收,論文第一作者鄭傳陽來自香港中文大學(xué),共同作者包括新加波國(guó)立大學(xué)高伊杭,諾亞實(shí)驗(yàn)室石涵、任曉哲、蔣欣、李震國(guó),香港中文大學(xué) 黃敏斌、 李靖瑤,香港大學(xué)熊璟,香港浸會(huì)大學(xué)吳國(guó)寶,香港中文大學(xué)李煜
在當(dāng)今的人工智能領(lǐng)域,Transformer 模型已成為解決諸多自然語言處理任務(wù)的核心。然而,Transformer 模型在處理長(zhǎng)文本時(shí)常常遇到性能瓶頸。傳統(tǒng)的位置編碼方法,如絕對(duì)位置編碼(APE)和相對(duì)位置編碼(RPE),雖然在許多任務(wù)中表現(xiàn)良好,但其固定性限制了其在處理超長(zhǎng)文本時(shí)的適應(yīng)性和靈活性。
為了應(yīng)對(duì)這一挑戰(zhàn),提出了一種全新的位置編碼方法:Data-Adaptive Positional Encoding(DAPE)。DAPE 通過動(dòng)態(tài)調(diào)整位置編碼,使其能夠根據(jù)輸入上下文和學(xué)習(xí)到的固定先驗(yàn)進(jìn)行自適應(yīng)調(diào)整。這種創(chuàng)新方法不僅保留了局部和反局部信息,還在模型訓(xùn)練長(zhǎng)度和長(zhǎng)度泛化方面顯著提升了模型性能。相關(guān)研究成果已被 NeurIPS 2024 收錄。
- 論文地址: https://arxiv.org/abs/2405.14722
- 代碼地址: https://github.com/chuanyang-Zheng/DAPE
背景與挑戰(zhàn)
Transformer 模型的成功離不開其強(qiáng)大的序列處理能力,但在超出其訓(xùn)練長(zhǎng)度時(shí),其性能往往會(huì)顯著下降。這主要是由于傳統(tǒng)的位置編碼方法(如 APE 和 RPE)在處理長(zhǎng)文本時(shí)的固定性和缺乏適應(yīng)性,導(dǎo)致模型難以有效捕捉長(zhǎng)距離的依賴關(guān)系。最近的一些工作(e.g. Kerple, FIRE, BiPE)指出 transformer 通過合適的位置編碼可以提升模型長(zhǎng)度外推的能力,但是在外推長(zhǎng)度達(dá)到訓(xùn)練長(zhǎng)度 (512) 16 倍 (8192) 的時(shí)候,依然出現(xiàn)了 perplexity 的上升。相反的,DAPE 做到了在 128 長(zhǎng)度上訓(xùn)練,在 8192 乃至 16384 上拿到了更低的困惑度(perplexity)。
方法
Additive Relative Position Encoding
對(duì)于大多數(shù)這些加性相對(duì)位置編碼(RPE)方法,(softmax 之前的) 注意力 logits 的計(jì)算可以通過以下公式統(tǒng)一表示:,其中,偏置矩陣
由位置編碼函數(shù)
生成,
的
項(xiàng)定義為
。
不同的b的公式和參數(shù)化方法導(dǎo)致了各種 RPE 的變體。一些支持任意序列長(zhǎng)度的方法包括 T5 的 RPE,ALiBi,Kerple,Sandwich,以及 FIRE。加性 RPE 的示例包括:
(1) ALiBi:,其中標(biāo)量
為超參數(shù);
(2) Kerple:,其中
和
是兩個(gè)可學(xué)習(xí)的參數(shù);
(3) FIRE:,其中位置編碼函數(shù)
由參數(shù)
從數(shù)據(jù)中學(xué)習(xí),
是一個(gè)轉(zhuǎn)換函數(shù),旨在為局部位置分配更多的模型能力。
之前方法的局限
這些位置編碼的共同特征是它們是預(yù)定義且靜態(tài)的。具體來說,它們?cè)诟鞣N任務(wù)和模型中都是固定的,這可能導(dǎo)致它們無法有效適應(yīng)不同的輸入長(zhǎng)度和上下文。為了解決這個(gè)問題,近期的研究提出了相對(duì)位置編碼的函數(shù)插值方法(FIRE),它利用神經(jīng)網(wǎng)絡(luò)從輸入位置到位置偏置的隱式映射進(jìn)行學(xué)習(xí)。盡管 FIRE 使用多層感知機(jī)(MLP)來學(xué)習(xí)位置嵌入,但這些嵌入在訓(xùn)練完成后在不同任務(wù)中仍然是固定的。從直觀上看,所學(xué)習(xí)的靜態(tài)位置編碼(如 Kerple 和 FIRE)是所有訓(xùn)練樣本的平均最優(yōu)解。因此,盡管它們通常是有效的,但對(duì)于任何特定實(shí)例來說,它們本質(zhì)上是次優(yōu)的。這種靜態(tài)特性限制了它們?cè)谟?xùn)練上下文以外的各種實(shí)際場(chǎng)景中的靈活性和適用性。
Data-Adaptive Positional Encoding
本文受靜態(tài)位置編碼局限性的啟發(fā),提出了一種數(shù)據(jù)自適應(yīng)位置編碼(DAPE)方法。DAPE 根據(jù)語義信息(如當(dāng)前的注意力值)和位置信息動(dòng)態(tài)調(diào)整位置編碼。由于 MLP 具有普適逼近能力,本文采用來根據(jù)注意力動(dòng)態(tài)調(diào)整位置編碼。我們注意到 DAPE 與所有加性相對(duì)位置編碼兼容,并在可解釋性和易于實(shí)現(xiàn)方面具有優(yōu)勢(shì)。所提出的 DAPE 結(jié)合了語義信息和位置信息,使得位置編碼能夠根據(jù)輸入數(shù)據(jù)進(jìn)行自適應(yīng)調(diào)整。這種適應(yīng)性使 DAPE 能夠克服靜態(tài)編碼的局限性,通過對(duì)每個(gè)具體輸入數(shù)據(jù)的動(dòng)態(tài)調(diào)整,實(shí)現(xiàn)相對(duì)最優(yōu)的性能。據(jù)我們所知,這是在 Transformer 架構(gòu)中首次引入的基于數(shù)據(jù)語義依賴的自適應(yīng)位置編碼方法。
在這里,我們使用注意力來表示注意力語義信息,使用位置偏置矩陣B(例如 ALiBi, Kerple 和 FIRE)來捕捉位置信息。然后,數(shù)據(jù)自適應(yīng) PE 可表示為
,其中
是一個(gè)隱式函數(shù),它將語義和位置信息整合為所需的位置編碼。因此,結(jié)合 DAPE 的 softmax 前注意力 logit 公式如下:
這里是逐元素函數(shù)。實(shí)際上,我們采用一個(gè)兩層
神經(jīng)網(wǎng)絡(luò)來參數(shù)化
,因?yàn)樗哂衅者m逼近性。所有參數(shù)在訓(xùn)練過程中直接從數(shù)據(jù)中學(xué)習(xí)。這種架構(gòu)允許
根據(jù)輸入上下文動(dòng)態(tài)調(diào)整位置嵌入,確保編碼方法既具有自適應(yīng)性又依賴于輸入數(shù)據(jù)。
在自然語言任務(wù)中,DAPE 的設(shè)計(jì)旨在捕捉 token 之間復(fù)雜的關(guān)系。Arora et al. 指出 aassociate recall 占據(jù)了 Transformer 模型、基于 RNN 的模型和卷積模型之間困惑度(perplexity)差異的大部分。比如,我們考慮一個(gè)在長(zhǎng)段落中 “Hakuna” 總是緊跟 “Matata” 的一致配對(duì)。這種模式表明模型對(duì)位置信息的依賴減少,而更注重增強(qiáng)詞嵌入的相似性,從而使得 “Hakuna” 可以有效地與前面的 “Matata” 聯(lián)系起來。同樣,在涉及長(zhǎng)上下文理解和搜索的任務(wù)中,注意力機(jī)制應(yīng)該優(yōu)先考慮語義相似性,而不是被與位置編碼相關(guān)的信息所掩蓋,因?yàn)樵谳^長(zhǎng)距離上位置編碼的相關(guān)性可能較低。因此,Transformer 應(yīng)能夠保存信息而不受位置距離的過度影響。相反,一個(gè)滿意的 PE 應(yīng)該結(jié)合語義和位置信息。因此,基于語義依賴的位置編碼方法是更優(yōu)的,預(yù)計(jì)能夠提升模型性能。
實(shí)驗(yàn)結(jié)果
相比于之前的方法
在訓(xùn)練長(zhǎng)度內(nèi)更好的效果。DAPE 增強(qiáng)了在序列長(zhǎng)度內(nèi)部的表現(xiàn),表明其較低的困惑度可能來自對(duì)整個(gè)句子的充分利用,而不是忽視長(zhǎng)距離信息。與 ALiBi、Kerple 和 FIRE 相比,改進(jìn)后的版本 DAPE-ALiBi、DAPE-Kerple 和 DAPE-FIRE 在序列長(zhǎng)度內(nèi)部的表現(xiàn)始終顯著更好。隨著序列長(zhǎng)度的增加,ALiBi 往往從全局注意力過渡到幾乎局部的注意力,這就是為什么 ALiBi 在訓(xùn)練長(zhǎng)度內(nèi)的表現(xiàn)比大多數(shù)基線差,但在超出訓(xùn)練長(zhǎng)度后表現(xiàn)更好的原因。結(jié)果表明 DAPE 在序列長(zhǎng)度內(nèi)部的優(yōu)越表現(xiàn)具有統(tǒng)計(jì)顯著性,p 值小于 0.05。因此,在不同訓(xùn)練長(zhǎng)度 (長(zhǎng)度 128,512 以及 1024) 中的表現(xiàn)表明,DAPE 較低的困惑度是由于它有效利用了整個(gè)序列,而不是僅關(guān)注局部部分并忽視長(zhǎng)距離信息。
在長(zhǎng)度外推上更好的效果。與 ALiBi、Kerple 和 FIRE 相比,DAPE 顯著提升了長(zhǎng)度外推(length extrapolation)性能。在不同長(zhǎng)度的訓(xùn)練和評(píng)估中,DAPE-Kerple 明顯超越 Kerple 等競(jìng)爭(zhēng)對(duì)手。在 Arxiv 數(shù)據(jù)集上,訓(xùn)練長(zhǎng)度為 128 時(shí),DAPE-Kerple 在評(píng)估長(zhǎng)度為 8192 時(shí)達(dá)到了驚人的低困惑度 5.00,而 Kerple 的困惑度為 31.93。同樣,在 Books3 數(shù)據(jù)集上,訓(xùn)練長(zhǎng)度為 512 時(shí),DAPE-Kerple 在相同的擴(kuò)展評(píng)估長(zhǎng)度下的困惑度為 17.88,遠(yuǎn)遠(yuǎn)優(yōu)于 Kerple 的 39.31。這些結(jié)果證明,DAPE 通過其語義適應(yīng)性和靈活性,持續(xù)提升了超出訓(xùn)練長(zhǎng)度的性能,超越了靜態(tài)位置編碼方法。
在更大模型上上保持更好的結(jié)果
DAPE 在更大模型上有效。隨著模型規(guī)模的增長(zhǎng)(如圖 4 所示),DAPE 在性能指標(biāo)上持續(xù)展現(xiàn)出提升。當(dāng)模型規(guī)模從 125M 增加到 350M 時(shí),DAPE-ALiBi 在評(píng)估序列長(zhǎng)度為 8192(訓(xùn)練長(zhǎng)度為 512)時(shí)的困惑度顯著下降,從 3.82 降至 3.57。這些數(shù)值明顯小于原始 ALiBi 的困惑度,ALiBi 從 4.54 降至 4.21,表明了 DAPE 的強(qiáng)勁性能提升。此外,DAPE-Kerple 大幅減少了 Kerple 的困惑度,從最初的 22.76 降至令人印象深刻的 3.43。在 2.7B 和 6.7B 的模型上,DAPE-Kerple 依然取得了最低的 perplexity。這些結(jié)果證實(shí)了 DAPE 即使在模型規(guī)模增大的情況下仍能保持其有效性,并繼續(xù)表現(xiàn)出色,主要得益于其采用了語義自適應(yīng)的位置編碼方法。
不同 hidden dimension 情況下的表現(xiàn)
即使是較小的 hidden dimension 也能提升性能。實(shí)驗(yàn)在 ALiBi 和 DAPE-ALiBi 上進(jìn)行。如附錄圖 6 所示,當(dāng)訓(xùn)練長(zhǎng)度為 128,且
設(shè)置為 4 時(shí),DAPE-ALiBi 在評(píng)估長(zhǎng)度為 128 時(shí)的困惑度為 8.25,在評(píng)估長(zhǎng)度為 8192 時(shí)為 5.67,均優(yōu)于 ALiBi 的 8.31 和 5.85。不論 hiddien dimension 設(shè)置為 4、16、32 或 64,DAPE 的性能在所有評(píng)估長(zhǎng)度上都優(yōu)于原始 ALiBi。這表明即使使用較小的
,DAPE 仍然具有有效性。
關(guān)于偏置矩陣 Bias Matrix 的消融實(shí)驗(yàn)
我們進(jìn)一步對(duì)函數(shù) f 進(jìn)行了消融研究,證明 f 有助于增強(qiáng)偏置矩陣。DAPE(動(dòng)態(tài)位置編碼)改進(jìn)了偏置矩陣,使得最終的注意力矩陣得到了提升,而
用于計(jì)算
。對(duì)于未見過的位置,偏置矩陣 B 部分可以一定程度上處理(FIRE 將問題轉(zhuǎn)化為插值),但不夠準(zhǔn)確,因此 DAPE 通過注意力得分幫助增強(qiáng)偏置矩陣 B。實(shí)驗(yàn)結(jié)果表明兩點(diǎn):1).
優(yōu)于
,這表明通過提高偏置矩陣的表達(dá)能力可以獲得更好的效果;2). DAPE 的
優(yōu)于簡(jiǎn)單的
,這表明上下文自適應(yīng)是重要的。
在 CHE 基準(zhǔn)上的表現(xiàn)
DAPE 在需要位置信息的任務(wù)中表現(xiàn)更好。DAPE(與 Kerple 和 FIRE 結(jié)合)在 11 項(xiàng)需要位置信息的任務(wù)中有 10 項(xiàng)表現(xiàn)最佳,并在 Solve Equation 任務(wù)中取得了第二好的表現(xiàn)。這凸顯了 DAPE 通過語義適應(yīng)性處理需要位置信息的任務(wù)的有效性。
可視化結(jié)果
DAPE 展現(xiàn) local pattern 和 anti-local pattern. 我們?cè)趫D 1 中繪制了第 8192 個(gè)位置的查詢 token 的學(xué)習(xí)位置編碼偏置,涵蓋了所選層中的所有注意力頭。我們想強(qiáng)調(diào) DAPE 的兩個(gè)特點(diǎn)。首先,與固定的局部歸納偏置(如 Kerple 和 ALiBi)相比,DAPE 的偏置矩陣在不同的注意力頭中,能夠?qū)W習(xí)到既包含局部注意力模式,又包含 “反局部” 注意力模式 (DAPE Bias Head-8),強(qiáng)調(diào)更遠(yuǎn)的 key(類似于 FIRE)。其次,與為所有注意力固定的靜態(tài)偏置相比,DAPE 的偏置矩陣可以根據(jù)不同的注意力值動(dòng)態(tài)調(diào)整。
代碼實(shí)現(xiàn)
未來展望
通過引入語義和位置信息的結(jié)合,DAPE 極大地提升了 Transformer 模型在長(zhǎng)文本處理上的表現(xiàn)。同時(shí),應(yīng)將繼續(xù)優(yōu)化 DAPE 的方法,提高其計(jì)算效率和適應(yīng)性,探索其在更多實(shí)際應(yīng)用中的潛力。