當前位置:
首頁 > 新聞 > 谷歌更強 NLP 模型 XLNet 開源:20 項任務全面碾壓 BERT!

谷歌更強 NLP 模型 XLNet 開源:20 項任務全面碾壓 BERT!

雷鋒網 AI 科技評論按:去年 11 月份,谷歌研究團隊在 GitHub 上發布了萬眾期待的 BERT,它不僅在 11 項 NLP 測試中刷新了最高成績,甚至還表現出全面超越人類的驚人結果。但 BERT 帶來的震撼還未平息,今日又一個令眾多 NLPer 興奮的消息發布: CMU 與谷歌大腦提出的全新 XLNet 在 20 個任務上超過了 BERT 的表現,並在 18 個任務上取得了當前最佳效果!而更令人激動的是,目前 XLNet 已經開放了訓練代碼和大型預訓練模型。雷鋒網 AI 科技評論將其具體內容整理如下。

BERT 與 XLNet 的關係

與基於自回歸語言建模的預訓練處理方法相比,基於自編碼的預訓練處理方法(比如 BERT)具有良好的雙向上下文建模能力。然而,由於依賴於使用掩碼破壞輸入,BERT 忽略了掩碼位置之間的依賴關係,並出現了預訓練-微調( pretrain-finetune) 差異。

XLNet 則是基於 BERT 的優缺點,提出的一種泛化自回歸預訓練方法。它通過最大化因子分解順序所有排列的期望似然來實現雙向上下文的學習;通過自回歸公式克服了 BERT 的局限性,並將來自 Transformer-XL(最先進的自回歸模型) 的思想集成到預訓練中,在長文本表示的語言任務中表現出了優異的性能。

XLNet 誕生背景

首先,我們要理解兩個概念:自回歸 (AR) 語言建模和自編碼 (AE)。

無監督表示學習在自然語言處理領域非常成功。通常,這些方法首先在大規模無標記文本語料庫上對神經網路進行預訓練,然後對下游任務的模型或表示進行微調。在這一共同的高層次思想下,不同的無監督預訓練目標在相關文獻中得到了探索。其中,自回歸語言建模和自編碼是兩個最成功的預訓練目標。

AR 語言建模是利用自回歸模型估計文本語料庫的概率分布。具體來說,給定一個文本序列 x = (x1, … ,xT),AR 語言模型將這種可能性分解為前向乘積或後向乘積。一個參數模型 (如神經網路) 被訓練來對每個條件分布建模。由於 AR 語言模型僅被訓練為編碼單向上下文 (向前或向後),因此它在建模深層雙向上下文時並沒有產生效果。相反的是下游語言理解任務,通常需要雙向上下文信息。這導致了 AR 語言建模和有效的預訓練之間的差距。

相比之下,基於 AE 的預訓練不執行顯式密度估計,而是旨在從輸入重構原始數據。而一個著名的例子就是 BERT,它採用了最先進的預訓練方法。給定輸入 token 序列,用一個特殊符號 [MASK] 替換其中的特定部分,並且訓練模型從損壞的版本中恢復原 token。

由於密度估計不是目標的一部分,BERT 可以利用雙向上下文進行重建。直接的好處就是這消除了 AR 語言建模中的雙向信息差距,從而提高了性能。然而,BERT 在預訓練使用的 [MASK] 等人工符號實際數據中並不存在,導致了預訓練的網路差距。此外,由於預測的 token 在輸入中被重新掩蓋,BERT 無法像 AR 語言建模一樣使用乘積規則對聯合概率進行建模。

因此,針對現有語言預訓練目標的優缺點,CMU 與谷歌大腦提出了將 AR 和 AE 的優點充分結合的泛化自回歸預訓練模型 XLNet。

XLNet 詳解

首先,XLNet 不使用傳統 AR 模型中固定的前向或後向因式分解順序,而是最大化所有可能因式分解順序的期望對數似然。因為是對因式分解順序的排列操作,每個位置的上下文都可以由來自左右兩邊的 token 組成。在期望中,每個位置都要學會利用來自所有位置的上下文信息,即捕獲雙向上下文。

其次,作為一種泛化的 AR 語言模型,XLNet 不依賴於殘餘數據。因此,XLNet 不受 BERT 的預訓練-微調差異的影響。同時,自回歸目標也提供了一種自然的方法來使用乘積規則對預測 token 的聯合概率執行因式分解,消除了 BERT 中做出的獨立性假設。

除了一個新的預訓練目標,XLNet 還改進了預訓練的架構設計。

受 AR 語言建模最新進展的啟發,XLNet 將 Transformer-XL 的分段重複機制和相對編碼方案集成到預訓練中,在較長文本序列的任務中提高了性能。需要注意的是,將 Transformer(-XL) 架構簡單應用於基於排列的語言建模是不起作用的,因為分解順序是任意的且目標是模糊的。作為一種解決方案,研究者們提出重新參數化 Transformer(-XL) 網路,以消除歧義。

實驗結果

截至 2019 年 6 月 19 日,XLNet 在 20 個任務上超過了 BERT 的表現,並在 18 個任務上取得了當前最佳效果(state-of-the-art),包括機器問答、自然語言推斷、情感分析和文檔排序。

以下是 XLNet-Large 和 Bert-Large 的一些比較:

閱讀理解任務

文本分類任務

ClueWeb09-B 文檔排名任務

在最終的 20 項任務中,XLNet 的表現優於 BERT,並且在 18 項任務中取得了最先進的結果。

發布模型

截至目前,已提供以下模式:

XLNet-Large, Cased:24-layer, 1024-hidden, 16-heads,

每個.zip 文件包含三個項:

TensorFlow checkpoint(xlnet_model.ckpt),包含預先訓練的權重。

SentencePiece 模型 (spiece.model),用於 (de) 標記化。

一個配置文件 (xlnet_config.json),指定模型的超參數。

未來釋放計劃

後續開發者還計劃在不同的環境下繼續發布更多的訓練模型,包括:

基本模型——將在 2019 年 6 月底發布一個 XLNet-Base。

Uncased 模型——目前,Cased XLNet-Large 比 Uncased XLNet-Large 性能更好。開發者仍在觀察與研究,當得出結論時,他們將馬上發布 Uncased 模型。(預計時間不會太久)

在維基百科上進行微調的預訓練模型,這可用於維基百科文本的任務,如 SQuAD 和 HotpotQA。

其他超參數配置的預訓練模型,可以用於特定的下游任務。

與新技術關聯的預訓練模型。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

美國醫學信息學會:建議FDA微調AI醫療產品的監管標準
小米入局AI教育硬體:小愛同學終於當了「老師」

TAG:雷鋒網 |