GLUE排行榜上全面超越BERT的模型近日公布了!
在通用語言理解評估(GLUE)基準中,自 BERT 打破所有 11 項 NLP 的記錄後,可應用於廣泛任務的 NLP 預訓練模型得到了大量關注。2018 年底,機器之心介紹了微軟提交的綜合性多任務 NLU 模型,它在 11 項 NLP 任務中有 9 項超越了 BERT,近日微軟公布論文介紹了這種名為 MT-DNN 的多任務模型。
當前 GLUE 排行榜(2019.02.12)
GLUE 榜單鏈接:https://gluebenchmark.com/leaderboard
學習文本(例如單詞和句子)的向量空間表示是許多自然語言理解(NLU)任務的基礎。目前有兩種流行的方法,分別是多任務學習和語言模型預訓練。
人類學習活動中經常用先前任務中學習到的知識來幫助學習新的任務,多任務學習(MTL)正是有這樣的優點。最近人們越來越關注將 MTL 應用到使用深度神經網路(DNN)的表示學習中,其原因是:首先,DNN 的監督學習需要大量特定任務的標記數據,但這些數據並不總是可用的,MTL 提供了一種有效的方法利用來自其他相關任務的監督數據;其次,使用 MTL 可以減輕對特定任務的過擬合,從而能夠使得學習到的表示在不同的任務中通用。
而另一方面,最近以 BERT 為代表的預訓練方法對模型性能的提升已經有目共睹。來自微軟的數位研究人員認為 MTL 和語言模型預訓練是互補的技術,因此可以結合起來改進文本表示的學習,從而提高各種 NLU 任務的性能。
他們將 2015 年做的一項多任務深度神經網路(MT-DNN)模型加以拓展,將 BERT 合併到模型的共享文本編碼層。
如圖所示,較低層(即文本編碼層)在所有任務中共享,而頂層是任務特定的,組合不同類型的 NLU 任務,如單句分類、成對文本分類、文本相似性和相關性排序。與 BERT 模型類似,MT-DNN 分兩個階段進行訓練:預訓練和微調。與 BERT 不同的是,MT-DNN 在微調階段使用 MTL,在其模型架構中具有多個任務特定層。
作者將其改進後的 MT-DNN 模型在通用語言理解模型(GLUE)基準測試中使用的 9 個 NLU 任務中,其中的 8 個獲得了最好的結果,將 GLUE 的基線分數推至 82.2%(超過 BERT 1.8%)。此外,作者還進一步將改進的模型應用於 SNLI 和 SciTail 任務中,在前一個任務中獲得了 91.1% 的準確率,在後者準確率則達到 94.1%,分別優於先前的最先進性能 1.0%和 5.8%,儘管使用的訓練數據只有 0.1% 和 1.0%。這些都足以說明 MT-DNN 結合預訓練後其泛化能力得到了大大的提升。
論文鏈接:https://arxiv.org/pdf/1901.11504.pdf
摘要:在此論文中,我們提出了在多種自然語言理解任務上學習表徵的多任務深度神經網路(MT-DNN)。MT-DNN 不僅能利用大量跨任務數據,同時還能利用正則化的優勢構建更一般的表徵,使得它能夠適用於新的任務和領域。通過結合預訓練的雙向 Transformer 語言模型(BERT, Devlin et al., 2018),MT-DNN 擴展了 Liu et al. (2015) 提出的模型。MT-DNN 在 10 個 NLU 任務上獲得了新的當前最優結果,包括 SNLI、SciTail 和另外 9 個 GLUE 基準任務中的 8 個,MT-DNN 將 GLUE 基準總體評分推升至 82.2%(1.8% 的絕對提升)。我們還表示使用 SNLI 和 SciTail 數據集,MT-DNN 學習到的表徵能允許實現更高效的領域自適應。即相比於預訓練的 BERT,預訓練 MT-DNN 需要的領域標註數據少得多。我們的預訓練模型和代碼很快都將公開發布。
3.MT-DNN 模型
MT-DNN 模型的架構如下圖 1 所示。下面幾層在所有的任務中共享,上面的幾層表示特定任務輸出。
單詞序列(可以是一句話或者打包在一起的句子對)作為輸入 X,先表示為一個嵌入向量序列,其中 l_1 中一個向量對應一個單詞。然後 Transformer 編碼器通過自注意機制捕捉每個單詞的語境信息,在 l_2 中生成語境嵌入序列。這就是我們的多任務目標函數訓練得到的共享語義表徵。
圖 1:表徵學習 MT-DNN 模型的架構。下面的網路層在所有任務中都共享,上面的兩層是針對特定任務。輸入 X(一句話或句子對)首先表徵為一個序列的嵌入向量,在 l_1 中每個詞對應一個向量。然後 Transformer 編碼器捕捉每個單詞的語境信息並在 l_2 中生成共享的語境嵌入向量。最後,針對每個任務,特定任務層生成特定任務的表徵,而後是分類、相似性打分、關聯排序等必需的操作。
3.1 訓練程序
MT-DNN 的訓練程序包含兩個階段:預訓練和多任務精調。預訓練階段遵循 BERT 模型的方式。辭彙編碼器和 Transformer 編碼器的參數使用兩個無監督預測任務學習:掩碼語言建模和下一句預測。
在多任務精調階段,我們使用基於 minibatch 的隨機梯度下降(SGD)來學習模型參數(也就是,所有共享層和任務特定層的參數),如下圖演算法 1 所示。
4. 實驗
我們在 GLUE、斯坦福自然語言推理(SNLI)和 SciTail 三個流行的自然語言理解基準上評估了 MT-DNN。我們對比了 MT-DNN 與現有的包括 BERT 在內的 SOTA 模型,在 GLUE 上證明了 MTL 進行模型精調的有效性,在 SNLI 和 SciTail 上證明了 MTL 的領域適應性。
表 1:三個基準總結:GLUE、SNLI 和 SciTail。
表 2:GLUE 測試集結果,通過 GLUE 評估伺服器進行評分。每個任務下的數值表示訓練樣本的數量。SOTA 結果做了加粗顯示。MT-DNN 使用 BERTLARGE 作為共享層。
※AI貓窩:一位工程師鏟屎官給流浪貓主子們的賀年禮
※跨語言版BERT:Facebook提出跨語言預訓練模型XLM
TAG:機器之心 |