2.3 注意力機制(Attention Mechanism)
3.1.1 文字蘊含關係識別
國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
第三章 研究方法
3.1 自然語言推理(Natural Language Inference)
在我們的方法中,我們選用了自然語言推理任務,自然語言推理任務是要判斷 兩段敘述是蘊含關係、相斥關係或是不相關。同時自然語言推理是自然語言理 解的一個子任務,如果希望模型能夠給出正確的解釋,模型勢必得對文本有相 當程度的理解,自然語言理解的目標就是讓模型能夠理解人類所使用的自然語 言。
自然語言推理也能夠和其他任務連結,如摘要任務,摘要和原本文章的關 係就是蘊含關係;在問答任務中,答案和問題的關係也是蘊含關係,在資訊檢 索情境下,我們所下的查詢指令(query)和 document 也是蘊含關係,即自然 語言推理任務的研究成果,對其他任務也有助益。
3.1.1 文字蘊含關係識別
在建立可解釋之模型時,我們使用PASCAL Recognizing Textual Entailment Challenge (RTE-5) at TAC 2009 資料集作為訓練。RTE-5 為進行自然語言推理 任務之資料集,其特點為擁有較長的前提 P,訓練資料亦較少,因此在判斷兩 者蘊含關係時若能有好的效能,則可以假設模型學習到了複雜的語義現象及背 景關係。我們將建立兩個模型,一為基於單一任務的模型,一為基於多任務學 習的模型,並將其作為產生解釋的模型,分析兩者關注不同資訊所導致的效能 差異,並依此模型產生後設可解釋性實驗之資料。
‧
筆測試資料,模型需要辨識兩個文本的關係為 entailment、contradiction 或 neutral,為三元分類任務。(優化這邊的內容,說明加入兩個任務來提供更多P: The purchase of LexCorp by BMI for $2Bn promoted widerspread sell-offs by traders as they sought to minimize exposure.
H: BMI acquired another company.
前提的 lexcorp 跟 BMI,還有假設的 BMI 和 another company 為
arugument,接下來要利用這兩個 aruguments 來推論兩句的關係,過程會一步 一步進行拆解,紀錄對應的語義現象。
‧
parent-sibling,接著在前提的 purchase 是作為名詞用,語義現象紀錄 nominalization,接著 purchase 是 bmi 的被動行為,語義現象紀錄passivization,最後可以將前提簡化為 A purchase B,將假設簡化為 A acquire B,我們將這個語義現象紀錄為簡單的動詞改寫。
接下來是負面的語義現象範例:
P: The purchase of LexCorp by BMI for $2Bn promoted widerspread sell-offs by traders as they sought to minimize exposure.
H: BMI bought LexCorp for $3.4Bn.
和前例相同,先將 lexcorp 和 BMI 作為 argument,接著 P 中的 purchase 和假設中的 buy ,他們是同義詞關係,因此我們語義現象紀錄 lexical
relation,在交易金額的部分,兩個的金額無法正確配對,因此我們語義現象紀 錄 Numerical Quantity Mismatch,這是一個負面的語義現象,不過可能會思考 這是不是指稱不同的事件,但是在同一筆交易中,我們沒辦法把公司以兩個不 同的價錢賣掉,因此我們紀錄 exclusive argument,這同樣是一個負面的語義現 象。以上為概述 (Sammons et al., 2010) 之研究如何對 P 和 H 的組合進行語義 現象的標註。
然而並不是每一種語語義現象都有助於文本蘊含識別任務有幫助,對 39 種語義現象進行實驗後,發現對於文本蘊含識別任務有幫助的資訊主要為 Disconnected Relation、Exclusive Argument、Exclusive Relation、Missing Argument 及 Missing Relation,故我們取這五種語義現象做為我們次要任務的 目標,以此五個資訊做多標籤分類 (Huang et al., 2013)。另外在 (Sammons et al., 2010) 研究中的標註者有兩位,其所標註的資料不盡相同,所對於語義現
‧
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
𝑎 , = exp 𝑎 ,
∑ exp 𝑎 , (5) 最後再將權重和 value 做內積得到得到的結果相加得到 dot-product
attention,以下為計算公式:
𝑏 = 𝑎 , 𝑣 (6)
透過此算法,能夠使 𝐱 的資訊和 [𝑣 , … , 𝑣 ] 連結,並輸出 𝑏。在完整的 自注意力機制運算中,會將三個張量 query, key, value 以矩陣的方式存放為 𝐐、𝐊、𝐕。經由三個矩陣的運算,自注意力模型會輸出和對應輸入等長的序 列,這樣的運算方式能夠使其進行平行運算,加快訓練的速度,【圖 3-1】為 自注意力機制之概覽:
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖3-1 自注意力分數計算過程
Transformer 架構中主要使用多頭自注意力層。多頭自注意力層則基於自注 意力模型,一個多頭自注意力層有 h 個平行自注意力層,每一個自注意力層我 們稱之為一個頭。在進行注意力關注前,會先將 𝐐、𝐊、𝐕 連結符合其長度 𝑞、𝑘、𝑣 的全連結層做轉換,接著再送入自注意力層做 Scaled Dot-Product Attention,最後將其串接(concatenate)並做線性轉換。透過多頭自注意力層,
在建立序列中某個元素的表示向量時,個別元素同時會去關注同個序列中其他 元素的資訊,並將資訊合併後作為自身的表示向量。透過這樣的方法,能夠使 單一元素的表示向量,更符合其在整個語境中的語義。同時不同層的各個頭之 間捕捉到的語境也不盡相同,我們將使用其豐富的資訊來探索其可解釋性。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y 3.3 XLNet
XLNet 為 Google 於 2019 年所提出之自迴歸預訓練模型 (Yang et al., 2019),
類似於 BERT 之模型 BERT。BERT 為基於自編碼的預訓練模型,雙向編碼 的方式使其在建立文本情境有著很大的優勢,在捕捉上下文語境的表現優於自 迴歸模型,而自迴歸模型在生成類任務則優於自編碼模型,但是其單一的正向 或反向的分解順序使其不易捕捉上下文語境。BERT 使用的自編碼方式為去噪 自編碼器(Denoising Autoencoder),其利用在輸入隨機遮罩單詞並以 [MASK]
符號取代來訓練模型捕捉上下文情境,然而此種訓練方式一在下游生成任務由 前文至後文的實際應用情況不同,二是在下游任務時儘管做的是非生成任務,
[MASK] 符號僅在預訓練時使用,在微調階段不會使用,XLNet 作者認為這會 使預訓練與微調時資訊不對稱,因此 XLNet 的出發點為:是否能融合自迴歸 語言模型及去噪自編碼語言模型兩者的優點,即讓自迴歸語言模型能夠擁有雙 向語言模型之特性,同時又避免去噪自編碼語言模型必須使用 [MASK] 遮罩所 帶來的副作用,使上下游資訊保持一致。
3.3.1 自迴歸與自編碼模型
在一般自迴歸模型中,給定一個文字序列 𝐱 = [𝓍 , … , 𝓍 ],自迴歸模型在預訓 練時會最大化以下似然函數做正向迴歸分解,以下為計算公式:
max log 𝑝 (𝐱) = log 𝑝 (𝑥 | 𝐱 ) = log exp ℎ (𝐱 : ) e(𝓍 )
∑ exp ℎ (𝐱 : ) 𝑒(𝓍 ) ﹐
(7)
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
其中 ℎ (𝐱 : ) 為遞歸神經網路模型或 Transformer 模型所產生之語境表 示,𝑒(𝑥) 為 x 的嵌入(embedding),如要計算 𝑥 ,ℎ 則為 ℎ (𝐱 : )。
在 BERT 的去噪自編碼中,給定一個文字序列 𝐱,BERT 先隨機把一定 比例的元素以 [MASK] 遮蔽建立 𝐱。假設被遮蔽的元素為 𝐱,其訓練目標為在 𝐱 重建 𝐱 ,以下為計算公式:
max log 𝑝 ( 𝐱 | 𝐱 ) ≈ 𝑚 log 𝑝 (𝑥 | 𝐱) = 𝑚 log exp 𝐻 (𝐱) 𝑒(𝑥 )
∑ exp 𝐻 (𝐱 ) 𝑒(𝑥 ) ﹐ (8) 其中 𝑚 若為 1 則表示 𝑥 為遮罩狀態,𝐻 為 Transformer 將文字序列 𝐱 轉化為隱藏向量(hidden vectors)序列。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y 3.3.2 Permutation Language Modeling
圖3-2 PLM 分解機制
XLNet 所提出的 Permutation Language Modeling, PLM 希望能夠使用自回歸的 方式來預測單詞,同時避免使用 [MASK] 標註來達到雙向自迴歸模型建立上下 文與境的效果。
在一個長度為 𝑇 的序列 𝐱,𝐱 中的元素排列方式有 𝑇! 種,每一種排列方 式都提供了一個自迴歸分解的順序。在假定模型中的參數無論在哪個分解順序 下都是共享的,則模型可以在做自迴歸時看到雙邊的資訊。假設 𝒵 代表一段
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
長度 𝑇 所能置換(permutate)之索引的集合 [1, 2, … , 𝑇],其中 𝓏 為第 𝑡 個 元素, Z 為前 𝑡 − 1 個做置換的元素,其目標函數為:
max 𝔼𝐳~𝓩𝑻 log 𝑝 𝑥 𝐱𝐳 ) · (9)
3.3.3 雙流自注意力
在【圖 3-2】 中看到,每次序列 𝐱 輸入的順序都是相同的,僅透過分解順序 做置換來使其能夠看到雙邊的資訊。如在做自迴歸時,倘若要預測 𝑥 ,則模型 需要根據 𝑥 , 𝑥 的資訊來預測 𝑥 ,透過分解順序 [𝑥 , 𝑥 , 𝑥 , 𝑥 ],則
[𝑥 , 𝑥 , 𝑥 ] 在自迴歸計算中變成了前文,但在整個序列順序中,其又代表著後 文的資訊,如此便能在自迴歸模型中捕捉上下文語境。
為了避免前 𝑡 個元素的表示無法關注到預測目標的位置,例如要預測目標 𝑥 ,有兩種排列方式 [𝑥 , 𝑥 , 𝑥 , 𝑥 ] 和 [𝑥 , 𝑥 , 𝑥 , 𝑥 ],此兩種模式的 ℎ 都是相同的,但是一個是預測 𝑥 ,一個是 ,所以作者希望模型能夠知道預 測目標的真正位置,因此另外設置一個 𝑔 (𝐱𝒛 , 𝓏 ) 來達成這個目標,以下為 計算公式:
𝑝 𝑋𝓏 = 𝑥 | 𝐱𝓏 = exp 𝑒(𝑥) 𝑔 𝐱𝒛 ﹐𝓏
∑ exp (𝑒(𝑥 ) 𝑔 (𝐱𝐳 ﹐𝓏 ) ﹐ (10) 在預測 𝓍𝓏 時,𝑔 (𝐱𝒛 , 𝓏 ) 只能使用位置 𝓏 而不能使用其內容 𝓍𝓏 ,而 在預測 𝓍𝓏,當 j > t 時,𝑔 (𝐱𝒛 , 𝓏 ) 又要夠將 𝓍𝓏 的資訊編碼來提供語境資 訊,為了滿足這兩個需求,作者設置了兩種表示:
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
內容表示: ℎ 𝐱𝒛 ,以 ℎ𝓏 表示,和一般 Transformer 模型的隱藏表示 相同,其將語境及 𝓍𝓏 進行編碼,其同時使用了 𝓏 和 𝓍𝓏 ,關係圖和計算公 式如下:
𝑔𝓏( ) ← Attention Q = 𝑔𝓏( ), KV = h𝐳( ); 𝜃 ﹐ (11)
查詢表示: 𝑔 (𝐱𝒛 , 𝓏 ),以 𝑔𝓏 表示,只用來存取 𝐱𝐳 的資訊和位置 𝓏 ,而不會存取內容 𝓍𝓏,其關係圖和計算公式如下:
ℎ𝓏( ) ← Attention Q = ℎ𝓏( ), KV = h𝐳( ); 𝜃 ﹐ (12) 圖3-3 內容表示注意力分數計算過程
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
其中 𝐐, 𝐊, 𝐕 為自注意力機制的運算,和標準 Transformer 模型所使用的 計算方式相同,【圖 3-5】為雙流自注意力計算過程。
BERT 其中一個弱點為不擅長捕捉偏長句子的語境,為了補足這個缺點,
XNLet 借鑑了 Transformer-XL 的 relative positional encoding scheme 和 圖3-4 查詢表示注意力分數計算過程
圖3-5 雙流自注意力運算過程
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
segment recurrence mechanism。將一個長句切為兩個區塊,並各自做置換,再將 兩者串接做運算,因此相較於 BERT,XLNet 更能夠處理長的輸入序列。
3.4 多任務學習(Multi-task Learning)
訓練模型時我們一般以一個特定的評估指標來觀察模型在特定任務上的表現如 何,當評估指標變得單一,同時意味模型學習的標準會非常一致。當任務所需 的知識量和或是關係較不複雜時,單一衡量標準能夠讓模型專心在處理當前的 工作,進而達到不錯的表現。但是當資料的背景知識非常龐雜時,過於單一的 衡量標準可能不利於模型學習充分的知識。在我們的方法中,運用了多任務學 習,使不同任務學習不同的知識,讓模型能夠更廣泛地從相關任務納入做預測 所需要的知識,使其擁有更好的表現。
我們以 hard parameter sharing 的方法來建構多任務學習架構,每一個任務 會有一個共享層,共享層我們設定為 XLNet 模型,在共享層後再依各自的任 務來以線性分類器做判斷,其架構如【圖 3-6】所示:
‧
Hard parameter sharing 方法能夠減少過擬合的可能性 (Baxter, 1997),XLNet 模 型有著非常巨量的參數,訓練目標過於專一容易有過擬合的情況發生,利用多
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
Premise: euro mps have voted overwhelmingly to cut the cost of texting and using the internet on mobiles abroad. the cap for a "roaming" text will fall to 11 euro
cents 10p; 14 us cents, from about 29 cents on average today. the euwide caps,
excluding vat, will take effect in july. they cover text messages and data roamingPremise: euro mps have voted overwhelmingly to cut the cost of texting and using the internet on mobiles abroad. the cap for a "roaming" text will fall to 11 euro