‧ 國
立 政 治 大 學
‧
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 roaming services, such as checking emails while abroad. the current price cap of 46 euro cents per minute for an outgoing voice call will also fall to 43 cents in july.Hypothesis: a roaming text cost 46 euro cents.
P 和 H 為抵觸之關係。
3.5.2 模型可解釋性評估
在 Transformer 模型中,我們可以取得模型對於輸入序列所關注資訊的權重
(注意力分數),對於結果判斷愈有利的序列內容,會得到更多的模型關注,
因此透過分析每個字詞的權重,提供了能夠嘗試解釋模型決策的方法。
如 3.5.1 所示,我們會希望模型能夠關注到 P 中紅字的部分,即紅字部 分擁有較高的權重。我們將透過模型中字詞的注意力分數,和 3.5.1 方法所標 註的資訊做比較,評估其注意力分數和標註關鍵資訊兩者之間的重合度,在我 們的研究中,我們定義兩者的重合度愈高,代表模型的可解釋性愈高。
3.5.3 可解釋性之後設建模
於 3.6.1 所標註的重要區間,除了進行模型可解釋性程度的評估,我們進一步 將其作為訓練資料,訓練模型進行區間判斷(Span Detection)的任務,使模型 能夠判斷在 Premise 中,決定 P 和 H 兩者關係的區間為何,並利用 F1 分
‧
‧
一個 HIT (Human Intelligent Task),即每個標註者一次進行一個標 註 20 筆資料標註的 HIT,而我們限制每位標註者最多標註兩份不同‧
‧
entailment, neutral, contradiction 範例各一種,其中有 3 種方法在各自 範例中的解釋。在後續的判斷解釋來自於哪個方法的部分,則一共有 來自 3 個關係的 9 個題目。在選擇三個解釋方式的範例及問題時,皆有例子背後所設定的模式或 特性,以下為第一次投注前受測者所觀看的 entailment 例子:
Premise 1
When a mosquito drinks the blood an infected person the insect also
swallows the malaria parasite which then must incubate and multiply before migrating into the insect's saliva. The process can take weeks. And because mosquitoes are small-bodied and cold-blooded outside temperatures make a big difference in how long it takes before they can transmit the disease. If it happens too slowly the insects die before they can infect anyone. In general the malaria parasite does better at warmer temperatures which is why the disease occurs most often in tropical environments. But with mathematical models Thomas has found that even when conditions are warm highly fluctuating temperatures over the course of a day slow down the rate of parasite incubation and larval development in the mosquito.
Hypothesis: Warm weather facilitates the spreading of malaria.
Relation: entailment
‧
Robot A (3MTL@SD): In general the malaria parasite does better at warmer temperatures
Robot B (3MTL@AS): malaria parasite does better at warmer temperatures which is why the disease occurs most often in tropical environments. But with mathematical models Thomas has found that even when conditions are warm.
Robot C (Pretrained@AS): the disease occurs most often in tropical environments. But with mathematical models Thomas has found that even when conditions are warm highly fluctuating temperatures over the course of a day slow down the rate of parasite.
從上例我們可以看到 android A 所給予的解釋相當簡要,同時也提供
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖 3-7 機器人呈現解釋及信任度、理由之做答
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
在模型的區間判斷競賽中,三個模型一共需要回答 9 道題目,每一道 題目都會有一對 P 和 H,模型則需要回答其所預測能夠決定 P 和 H 關係之區間。在每一道題目,受測者僅能看到模型所做的回答,無 法看見答案來自於哪一個模型;並需要受測者依據競賽開始前,其所 觀看三個模型在範例作答所得知的模型特性,來標註他們認為答案分 別來自於哪個模型。當進行到第 3 題和第 6 題時,會詢問受測者是 否需要重新分配他們的籌碼,我們可以借此在事後分析受測者改變或 者沒有改變選擇的原因。當 9 題都結束並公布結果前,受測者有最後 一次重新分配籌碼的機會。
圖 3-8 受測者辨識區間來自於哪個機器人並建立認知
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
- 實施程序:在此部分的實驗,每一個完整的競賽過程為一個 HIT。在
- 實施程序:在此部分的實驗,每一個完整的競賽過程為一個 HIT。在