編譯:ronghuaiyang
導讀
EMNLP 2019中一些和BERT相關的很不錯的論文。
自然語言處理的經驗方法會議(EMNLP)於 2019 年 11 月 3 日至 11 月 7 日在香港舉行。有很多有趣的論文,但我想強調一下 BERT 的論文。
揭露 BERT 的黑暗秘密
http://arxiv.org/abs/1908.08593
在這篇論文中,來自馬薩諸塞大學洛厄爾分校的研究人員研究了 BERT 的 layer 和 head 的自我注意機制。用到的數據集是 GLUE 任務的子集:MRPC、STS-B、SST-2、QQP、RTE、QNLI、MNLI。
實驗:
- BERT 中特定關係的 head
- fine-tuning 之後自注意力模式的改變
- 語言特徵的注意力機制
- Token-to-token 的注意力機制
- 關閉 head 的自注意力機制
用於神經網絡訓練的典型的自注意類型。每個圖像上的兩個軸表示輸入樣本的BERT tokens,顏色表示絕對注意力權重(深色表示更大的權重)。前三種類型最可能與預訓練的語言模型相關,而後兩種類型可能編碼語義和語法信息。
有趣的發現:
BERT 模型明顯參數化過度。在不同的 head 中有限的注意力模式是有重複的。因此,禁用某些 head 並不會導致準確率下降,而是會提高性能。
很有趣。這就是為什麼 distilling BERT 是有意義的。
可視化和理解 BERT 的有效性
http://arxiv.org/abs/1908.05620
這是另一篇關於用微軟研究院的很酷的可視化工具來理解 BERT 的性能的論文。
在四個數據集上從頭開始訓練的訓練損失曲面(頂部)和對BERT進行finetune的訓練損失曲面(底部)。與隨機初始化相比,預訓練可以得到更泛化的優化,並簡化了優化過程。
上圖清晰地展示了本文的主要思想:
- finetune BERT 的訓練損失沿優化方向呈單調遞減趨勢,有利於優化,加速訓練收斂
- finetune 過程對過擬合更加魯棒
- 預訓練模型可以獲得更平更寬的優化值
所以,不要從頭開始訓練 BERT 完成你的任務。finetune 更好。
用耐心的知識蒸餾來對 BERT 模型進行壓縮
http://arxiv.org/abs/1908.09355
微軟還有一篇關於知識蒸餾的論文。提出了一種通過耐心的知識蒸餾將大 BERT 模型壓縮成淺 BERT 模型的新方法。該方法聲稱是第一個使用蒸餾的方法,不僅用於輸出分佈,而且用於“教師”的隱藏狀態。此外,“student”只嘗試模仿[CLS] token 的表示形式。與其它蒸餾方法相比,BERT-PKD 比 DistilBERT 好,但比 TinyBERT 差。
Sentence-BERT:使用 Siamese BERT-Networks 來得到句子嵌入
http://arxiv.org/abs/1908.10084
Code: https://github.com/UKPLab/sentence-transformers
問題如下:BERT 的嵌入是否適合語義相似度搜索?本文證明了 BERT 可以開箱即用的將句子映射到一個向量空間,而這個向量空間不太適合用於餘弦相似度等常見的相似度度量。其性能比一般的 GloVe 嵌入差。為了克服這一缺點,提出了 Sentence-BERT (SBERT)。SBERT 在 siamese 或 triplet 網絡架構中對 BERT 進行了 finetune。
具有分類目標函數的SBERT架構,例如用於對SNLI數據集進行finetune。兩個BERT網絡都有各自的權值(siamese網絡結構)。
Beto, Bentz, Becas: BERT 驚人的跨語言有效性
http://arxiv.org/abs/1904.09077
本文探討了多語言 BERT 作為一種零距離語言遷移模型的跨語言潛能。
長話短說:BERT 有效地學習了良好的多語言表示,在各種任務中具有很強的跨語言零樣本的遷移性能。
英文原文:https://towardsdatascience.com/bert-at-emnlp-2019-46db6c2e59b2
閱讀更多 AI公園 的文章