GLUE基準新突破:微軟多任務模型首次超越自然語言人類基準
微軟在 6 月 7 日在 GLUE 排行榜提交了一款新模型,該模型在 WNLI 上取得了 89.0% 的準確率,僅次於人類性能 95.9%。且之前大部分系統的性能在 65% 左右,該新模型將準確率一舉提升了 20 多個百分點。
通用語言理解評估基準(GLUE)是用於評估和分析多種已有自然語言理解任務的模型性能的工具,模型基於在所有任務的平均準確率進行評估。WNLI(Winograd 自然語言推理)數據集是是 GLUE 中的一個數據集,它是來自(Levesque et al., 2011)的小型自然語言推理數據集。
根據 GLUE 排行榜,大部分系統在 WNLI 上取得的準確率為 65% 左右,直到最近這一數字才有了突破性進展。6 月 5 號王瑋提交的 ALICE large ensemble (Alibaba DAMO NLP) 系統在 WNLI 上取得了 80.8% 的準確率,6 月 7 號微軟提交的
MT-DNN-ensemble 系統在 WNLI 上取得了 89.0% 的準確率,僅次於人類性能 95.9%。
當前 GLUE 排行榜(2019.06.10),微軟 MT-DNN-ensemble 系統在 WNLI 實現了 89.0% 的準確率,接近人類水平;在 GLUE 基準上的平均得分為 87.2,比人類得分高出 0.1。
此前,機器之心曾報道過微軟提出的新型 NLP 預訓練模型打破了 BERT 在 GLUE 基準 11 項任務中的性能記錄。當時微軟模型在 WNLI 上的準確率僅為 65.1%。短短半年過去,微軟 MT-DNN-ensemble 模型已將這一數字提升了將近 24%,實現了性能飛躍。
2018 年 12 月 23 日 GLUE 排行榜,目前的 MT-DNN(平均分 85.1)相比第一版(平均分 81.9)已經有了很大的提升。
模型細節
根據模型描述,微軟新模型 MT-DNN-ensemble 是一個用於聯合訓練所有任務的新型多任務框架,所有任務共享同樣的結構,除了每項任務的目標函數不同。
從模型的命名可以看出來,MT-DNN-ensemble 就是 MT-DNN 的多模型集成。雖然 GLUE 描述頁面寫的 MT-DNN-ensemble 的參數量為 3.5 億,與 MT-DNN 一樣,但可能實際參數量要遠遠大於它。
MT-DNN-ensemble 地址:https://github.com/namisan/mt-dnn
關於 MT-DNN
目前,我們尚不知道 MT-DNN-ensemble 模型如何在 WNLI 實現如此巨大的性能飛躍。但根據 GitHub 項目,該新模型同樣借鑒了論文《Multi-Task Deep Neural Networks for Natural Language Understanding》。
MT-DNN 模型的架構如下圖所示。下面幾層在所有的任務中共享,上面的幾層表示特定任務輸出。
單詞序列(可以是一句話或者打包在一起的句子對)作為輸入 X,先表示為一個嵌入向量序列,其中 l_1 中一個向量對應一個單詞。然後 Transformer 編碼器通過自注意機制捕捉每個單詞的語境信息,在 l_2 中生成語境嵌入序列。這就是我們的多任務目標函數訓練得到的共享語義表徵。
表徵學習 MT-DNN 模型的架構。下面的網路層在所有任務中都共享,上面的兩層是針對特定任務。輸入 X(一句話或句子對)首先表徵為一個序列的嵌入向量,在 l_1 中每個詞對應一個向量。然後 Transformer 編碼器捕捉每個單詞的語境信息並在 l_2 中生成共享的語境嵌入向量。最後,針對每個任務,特定任務層生成特定任務的表徵,而後是分類、相似性打分、關聯排序等必需的操作。
如圖所示,較低層(即文本編碼層)在所有任務中共享,而頂層是任務特定的,組合不同類型的 NLU 任務,如單句分類、成對文本分類、文本相似性和相關性排序。與 BERT 模型類似,MT-DNN 分兩個階段進行訓練:預訓練和微調。與 BERT 不同的是,MT-DNN 在微調階段使用 MTL,在其模型架構中具有多個任務特定層。
在多任務精調階段,我們使用基於 minibatch 的隨機梯度下降(SGD)來學習模型參數(也就是,所有共享層和任務特定層的參數),如下圖演算法 1 所示。
※GitHub趨勢榜第二名:解析、對比不同編程語言的Semantic庫
※像操縱機甲一樣控制機器人:MIT「鐵甲鋼拳」Hermes
TAG:機器之心 |