Transformer 替代模型來啦?1-7 億參數,模型代碼開源

用揹包(backpack)裝詞比用袋子(bag)好?在這篇論文中,斯坦福大學的研究者提出了可干預的 Backpac k 語言模型,通過調控意義向量來干預語言模型行爲,引導語言模型輸出想要的結果。

針對這一問題,斯坦福大學幾位研究者提出了一種新型神經架構 Backpack,宣稱能夠調控意義向量來干預語言模型的行爲,引導語言模型輸出想要的結果。該項目的代碼和模型都已發佈。

論文地址:https://arxiv.org/abs/2305.16765

項目地址:https://backpackmodels.science

論文一作、斯坦福大學 CS 博士生 John Hewitt 表示,Backpacks 是 Transformers 的替代,它可以在表現力(expressivity)上進行擴展,併爲通過控制實現可解釋性提供一種新接口。一個 backpack 學習每個字詞的 k 個非上下文意義向量,從而無監督地解耦字詞的預測用途。

引言

首先我們假設有前半個語句「The CEO believes that _」,我們的問題是消除神經語言模型在該句子的性別分佈上的偏見。憑直覺我們就能知道該句子的性別偏見源自「CEO」一詞,因爲如果把「CEO」換成「護士」,偏見就會發生性別逆轉。爲了消除在 CEO 上的偏見,必須要對模型進行干預並且要應用到 CEO 一詞所出現的所有上下文中。

理想情況下,我們希望採取的干預措施不會改變模型的上下文並且可以預測這個干預帶來的影響。通常來說,從可解釋性與控制的各個方面看,我們更傾向於通過一個全局應用的容易操作的接口(比如非上下文表徵)來實施干預。

但對 Transformer 來說,這種干預卻難以實現,因爲它們的上下文表徵是其輸入的單體函數(monolithic function)。單體函數是指內部具有邏輯分支的函數,能夠根據輸入執行不同的邏輯。對 Transformer 模型的任何干預都會根據上下文情況產生複雜的非線性影響。但我們希望模型能實現豐富的精準干預,nenggou 預測在所有上下文中的情況,並依然能富有表現力;如此一來,這樣的模型就能成爲 Transformer 的可行替代模型。

針對這些挑戰,研究者提出了一種新的神經架構 Backpack,其預測是非上下文表徵的對數 - 線性組合。他們的做法是將詞彙表中的每個詞都表示成一組非上下文的意義向量(sense vector),這些向量表示的是學習到的該詞的不同方面。

舉個例子,「science」這個詞的意義向量可以編碼科學的類型、與技術的關係、已經得到公認的科學概念以及科學過程的不同方面(復現或實驗),參見下表 1。意義向量學習的不是經典的詞義,而是一個詞在不同語境中的潛在作用的更一般性方面;事實上,意義向量可被視爲經典詞向量的一種多向量泛化。

圖 1 :Transformer 是序列的單體函數,而 Backpack 的輸出是非上下文的、所學詞的各個方面的加權和。

在干預意義向量時,爲了使干預結果在不同上下文中都是可預測的,Backpack 會將一個序列中的每個詞都表示成該序列中所有詞的意義向量的一個線性組合。Backpack 的表現能力來自於計算該線性組合的權重的網絡模型,其計算方式是將這些權重作爲整個序列的一個函數。順便一提,研究者在實驗中使用的網絡模型是 Transformer。由於意義向量是根據上下文大致選擇的,因此它們可以專門限定到特定領域;每個意義都可以學會僅在某些上下文中才有用,並且是否有用可以預測出來。也就是說,意義對預測的貢獻呈對數 - 線性模式,這意味着不管上下文如何,對意義向量的干預也同樣適用(直到權重變成非負標量)。

研究者的實驗表明 Backpack 語言模型確實表現力強大,並且表明對意義向量進行干預有助於解釋和控制模型。在實驗中,研究者在 OpenWebText 的 500 億 token 上訓練了 Backpack 語言模型;這個 Backpack 模型的上下文網絡有 1.24 億參數(意義向量有 4600 萬參數),能達到一個 1.24 億參數 Transformer 的困惑度;但如果想要更高的可解釋性,就需要更大的模型。研究者還展示瞭如何通過意義向量來針對性地編碼豐富的詞義概念。

在四個詞彙相似性數據集(例如 SimLex999)上的定量分析結果看,1.7 億參數的 Backpack 的意義向量優於 60 億參數的 GPT-J-6B Transformer 的詞嵌入,並且接近針對該任務的專用方法的當前最佳表現。研究者還表明意義向量能爲 Backpack 語言模型提供一種控制機制。

舉個例子,對於具有職業性別刻板偏見的詞(如「CEO」或「護士」),往往會學習到與該性別偏見相關聯的意義向量;研究者發現通過爲該意義向量降幅,能在有限環境中極大降低上下文預測中的性別差異。

表 1:左側是表示 science 一詞的意義向量示例,其中具有豐富的特定領域指向;右側是以非上下文的方式編輯意義向量的示例(將 MacBook 變得與惠普相關),從而改變了所得的上下文預測。

Backpack 架構

下面首先將定義 Backpack 架構的一般形式,然後會證明連續詞袋 word2vec(CBOW)和僅自注意力網絡其實就是 Backpack 的特例。

Backpack 的一般形式

映射成向量序列的參數函數,其中每個符號 x_i 都屬於一個有限詞彙表 V,而 。這裏將 o_i 稱爲 x_i 在上下文序列 x_{1:n} 中的 Backpack 表徵。

意義向量。對於每個 x ∈ V,Backpack 構建 k 個意義向量:

其中 。意義向量是一種多向量,類似於 word2vec 或 GloVe 等經典的非上下文詞表徵。

加權和。對於一個序列 x_{1:n},元素 x_i 的表徵 o_i 是詞在上下文中的預測意義向量的加權和:給定上下文化權重

Backpack 的上下文化權重則由整個序列 x_{1:n} 的一個(非線性)上下文函數定義:

其中 

Backpack 這個名稱靈感來自這一事實:backpack 是指揹包,就像是一個袋子(類比於詞袋 /bag-of-words),但是揹包更有秩序一些。類似於詞袋,Backpack 表徵也是非上下文意義的加權和;但 Backpack 更加有序,因爲這個加權和的權重取決於有序的序列。

Backpack 模型。Backpack 模型是一種概率模型,它將在某一輸出空間 Y 上的概率定義爲一個 Backpack 表徵 o_{1:n} 的對數 - 線性函數:

其中 是一種線性變換。因爲 Backpack 模型的表徵呈現對數 - 線性模式,所以意義向量對預測的貢獻也呈對數 - 線性模式。這讓我們可以檢查意義向量,具體做法是經由 E 將意義向量投射到詞彙表上,然後在任意上下文中觀察其究竟會如何對預測做出貢獻。

模型的參數化可使用常用的深度神經網絡,包括 LSTM 和 Transformer;這些都不是 Backpack,因爲它們的輸出表徵是整個序列的(相對而言)無約束函數。相對而言,Backpack 的表現力看起來是有限的:其表徵 o_i 是非上下文向量以標量加權的和。序列元素之間的上下文關係只能通過權重 α 來表示。儘管如此,研究者的實驗表明,一個表現能力強的上下文化權重網絡可以通過意義向量的加權和來表示複雜函數,比如新提出的 1.7 億參數的 Backpack 語言模型使用了一個 1.24 億參數的 Transformer 模型來計算 α,並實現了和 1.24 億參數 Transformer 語言模型一樣的損失。

研究者通過數學形式證明了連續詞袋與單層注意力都是 Backpack 的特例,但這裏我們不再過多論述了,詳情參閱原論文。

使用 Backpack 的語言建模

研究者使用 Backpack 來進行參數化,定義了一個神經自迴歸語言模型。對於序列的下一 token 的概率,他們使用了標準的 softmax 參數化,其中有一個將表徵映射成 logit 的權重矩陣

回想一下,Backpack 表徵 o_j 是通過意義向量 C (x) 和上下文化權重 α_j 定義的。下面首先會介紹等式 (1) 中預測意義向量 C 的參數化,然後是上下文化權重網絡 A 的參數化。當 o_j 是由 Backpack 參數化時,就可以稱該模型爲 Backpack 語言模型。

對意義參數化

對於意義函數 ,我們將每個 x ∈ V 都嵌入到 中,然後將這些嵌入通過一個前向網絡 

其中,嵌入 / 投射矩陣 E 與 (9) 式中的輸出矩陣緊密關聯。現在我們可以使用一個查找表來定義所有 k × |V| 意義向量,但隨着 k 增大,參數數量也會變得非常大。於是研究者在這裏採用的做法是將詞嵌入成,然後使用共享權重將它們放大到 。這也許可以解釋在不同詞類型上觀察到的相關意義作用。

**對上下文化權重參數化
**

研究者使用了一個標準 Transformer 加一層多頭關鍵詞查詢自注意力來對進行參數化,也就是讓一個嵌入的序列通過一個 Transformer:

這裏使用了適當的自迴歸掩碼和某種位置表徵,然後計算其中對於每個預測意義 ℓ=1,...,k 有並且矩陣

研究者把這 k 個意義看作是頭,對於每個頭,上下文化權重都爲對詞的注意力定義一個分佈。

訓練 Backpack 語言模型的實驗

這一節介紹了研究者爲了進行驗證而做的實驗,其中包含訓練 Backpack 和 Transformer 語言模型的超參數、數據和優化流程、評估和結果。這裏我們不多介紹了,但研究者重點指出:學習 k > 1 個意義向量對於實現優良的語言建模性能而言是必需的。

表 2:語言建模性能,所有模型都訓練了 10 萬步,token 批大小爲 50 萬,是在 OWT 上。對於 PPL 指標,越低越好;對於準確度指標,越高越好。注意這些模型的參數沒有可比性;每個 Backpack 的上下文化網絡中都有一個大小相當的 Transformer。

可以看出,對比每個 Backpack 語言模型以及與 Backpack 的上下文化網絡的規格相當的 Transformer 語言模型,Backpack 語言模型的表現大致相當。需要指出,Backpack 的參數更多,這主要來自意義向量。研究者發現,在訓練時,Backpack 語言模型的收斂時間長於 Transformer。奇怪的是,儘管 Small Backpack 和 Transformer 實現了幾乎一樣的 OWT 困惑度,但 Backpack 語言模型在 LAMBADA 和 Wikitext 上的表現卻顯著更好,同時在 BLiMP 上卻又更差。

意義向量中的湧現結構

下面將通過定性和定量實驗,來驗證意義向量在計算詞彙相似性和相關性方面的有效性。這些結果表明意義向量可以成爲實施干預的高層面接口。

意義的可視化

基於實驗經驗,經過訓練的 Backpack 模型會將特定的意義向量索引與不同的預測作用關聯起來。研究者爲了解釋這些作用,做法是選取詞 x 的意義 ℓ 並將這個意義投射到詞嵌入:。請注意,這正是(直到一個標量)意義有助於模型的任何預測的方式。研究者是通過報告該投射下分數最高的詞來解釋意義向量的作用。

下表 3 可視化地展示一些意義,比如意義 12 似乎爲幾乎所有單詞都編碼了廣泛的相關概念;意義 3 編碼了給定 x 的二元分佈的特定情況;意義 14 似乎爲動詞編碼了相關的賓語,也爲名詞編碼了相關的修飾詞依賴子項。

表 3:可視化地展示了在許多詞上的同一意義索引如何編碼細粒度的含義、相關性和預測使用情況的概念。

**詞彙關係測試
**

從下表 4 可以看到,意義 12(同義詞意義)在所有數據集上都表現良好,媲美或者優於 GPT-2-1.5B 和 GPT-J-6B 等嵌入,而 GPT-J-6B 在 RG-65 上則例外。意義 14 是動詞賓語意義,僅在動詞相似度(VerbSim3500)上表現好,而意義的最小相似性在名詞詞彙相似性上表現尤其出色 (SimLex999)。這說明新提出的方法足以比肩當前最優的方法,儘管它們的訓練任務非常不同,意義向量編碼了大量的詞彙信息。

表 4:詞彙相似性評估結果。所有的數值都是 Spearman 相關度;越高越好。

用於控制的意義向量

最後,研究者通過一些具體案例進行了概念驗證,即可以使用意義向量來控制語言模型的行爲。

生成限定主題的內容

下圖 2 中,通過 Backpack 中的意義干預來控制生成主題,對比了 Transformer 的 PPLM。

降低性別偏見

研究者發現,許多職業名詞(比如護士、CEO、教師)的意義向量 10 都帶有性別的刻板印象,並且這種刻板印象會通過代詞連貫地表達出來。通過調降意義 10(乘以小於 1 的標量),研究者發現可以降低 Backpack 在這些職業名詞上的性別偏見。

表 5:在有限設置中降低基於代詞的性別偏見。

圖 3:對於前半句「when the nurse walked into the room」(當那位護士走進房間),Backpack 語言模型通過將「護士」一詞的意義 10 從 0(完全移除)變成 1(原始情況),條件概率分佈受到的影響。

知識編輯

研究者還研究了新方法在知識編輯方面的應用。知識編輯是指編輯模型對於世界知識的預測。特別要指出,與專有名詞相關的許多詞都可以定位到該名詞的意義向量。在定性的概念驗證實驗中,研究者編輯了目標詞(比如 MacBook)的意義向量,移除了與另一個詞(比如 Apple)的相關性,然後用再一個詞(比如 HP)替代了這些相關性。可以想見,這種干預會導致 MacBook 與 HP 在預測結果中產生關聯。

表 6:來自 Backpack 的樣本,其中 Apple 被投射到了 MacBook 的意義嵌入之外,而 Apple 原來的位置被 HP 替代。第三個樣本類似,是美式橄欖球球隊和運動員相關的樣本。其中加粗的部分爲 prompt。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/jfyOiIcEmO5_Ix9xlXhLHw