©原創作者 |瘋狂的Max
背景及動機
大部分中文預訓練模型都以單個字作為基礎單元,而忽略了中文是以詞語為最小語義單元的語言特性。
與英文不同,中文詞語並不會以空格隔開,因此預訓練模型在中文任務上都直接以單個字元來進行模型構建,但是事實上單個的中文字是帶有歧義的,比如“拍”在詞語“球拍”和“拍賣”中帶有的語義完全不同。
近來的研究也表明將分詞資訊融入預訓練模型中,可以讓預訓練模型更好的理解語義並在不同的中文下游任務提升表現。
而以此為動機,作者提出通過對預訓練模型中注意力機制的擴充來為預訓練模型注入分詞資訊,這也就意味著需要面臨兩個挑戰:
1)如何在預訓練模型中將分詞資訊無縫融入以字元為基礎的注意力模組中;
2)如何消除不同粒度的中文分詞工具帶來的誤差。
針對以上兩個挑戰,作者提出一種新的模型結構,即Multi-source Word Aligned Attention(MWA)。
一方面,語言心理學上提出閱讀者對每個詞中的每個字元會給予同等程度的關注,受此啟發,作者通過mixed pooling strategy[5]將同一詞語中的每個字元都賦予聚合後的統一的attention權重;另一方面,為減少不同分詞工具帶來的誤差,作者取用多個分詞結果,並通過融合的方式將各個分詞策略下的結果融合到一起。
正如下表Table 1所示,不同分詞工具會有不同粒度的分詞結果,通過融合的方式可以隱式地降低不同粒度分詞所導致的誤差。
作者提出的MWA模型,在包括情感分類,命名實體識別,語義匹配,自然語言推理和閱讀理解等各項中文的NLP任務上都明顯超越BERT[2],ERNIE[3]和BERT-wwm[4]模型。
02、模型方法
1.字元級別的pre-trained encoder
MWA模型的主要任務是為了在字元級別的representation中加入分詞知識,因此作者直接運用BERT及BERT的變體BERT-wwm和ERNIE的最後一層輸出來獲取字元級別的representation,直接作為MWA輸入的隱藏層。
MWA的模型結構與本身的預訓練模型結構的不同,可參照下圖:
2.Word-aligned attention
為了使預訓練模型獲取分詞知識,作者在預訓練模型頂層加入了一個word-aligned 層,通過注意力聚合模組實現。
具體來說,首先對於輸入的含有n個字元的句子
用中文分詞工具π將句子s分成m個詞,得到
其中
表示第i個詞語,這個詞語的長度是l,s是表示這個詞的第一個字元在整個句子中的索引。
句子的整個輸入進入到預訓練模型的最後一層之後得到隱層狀態矩陣H,這個H通過self-attention計算得到注意力矩陣(計算方式與BERT計算attention矩陣的方式一樣),其計算公式如下:
接下來根據分詞結果,將attention矩陣進行分片,得到:
然後將其中每一個詞的注意力向量
通過mixed pooling strategy進行重新計算,具體計算公式如下所示:
再通過以下公式進行克羅內克積計算,其中
計算出與最初的注意力矩陣同樣形狀的加入了分詞資訊的word-aligned attention矩陣。
這個word-aligned attention矩陣與上文提到的隱層狀態矩陣H進行通過隨機初始化的矩陣對映後再相乘,得到最終的輸出。如下圖公式(其中V=H):
除此之外,作者沿用多頭注意力機制的思想,計算得到K個不同的word-aligned attention矩陣,對應得到的隱層輸出也是k個,這樣的k個head得以獲取不同語義維度子空間的結合。
然後再將這k個輸出進行拼接再降維,得到最終輸出。
3.Multi-source Word-aligned Attention
對於上文提到的word-aligned attention,其效果好壞很大程度上依賴於分詞工具π的效果,而分詞工具的質量受限於其訓練資料的不規範或者其訓練是基於分詞領域範圍外的資料,因此為了規避分詞工具潛在的錯誤,作者直接通過簡單的融合方式,即將多種分詞工具得到word-aligned attention分別計算得到不同的最終隱層輸出,這些隱層輸出最終通過線性連線之後,再用tanh啟用函式得到最終的輸出結果,再連線到下游任務中。
具體計算如下圖公式所示(共有M個分詞工具):
03、下游實驗結果
如下圖實驗結果所示,加入MWA模型結構的三種預訓練模型在6箇中文NLP下游任務上效果都有明顯提升。
04、消融研究
為了證明模型的優化是由於加入了多種不同分詞工具的分詞知識,作者構造了在預訓練模型上只增加一層transformer層的模型,只加一層隨機分詞的transformer層的模型,以及只加入一種分詞工具的transformer層的模型,並將這些模型與本文提出的MWA模型在DRCD測試集上的結果進行對比,如下圖所示:
從上圖結果可以看出,增加一層transformer結構的模型效果也有所提升,這應該是與模型引數的增加有直接關係,但不同分詞工具的使用都有助於提升模型效果,而融合了多種分詞工具分詞結果知識的MWA模型提升效果最為明顯,由此可以證明作者提出的使用多種分詞工具並融合不同分詞策略的方式可以提升模型在下游任務的表現。
引數量分析
另外,作者為了證明MWA模型的優化效果並不僅僅是因為引數量的增加,作者仍然用DRCD的測試集進行了對比實驗。
分別構造了在BERT-wwm預訓練模型頂部增加1層、2層、3層transformer層的三種模型,與MWA模型進行對比,結果如下圖所示:
由以上結果可以看出,增加2層甚至3層的transformer層甚至會使模型效果變差,而加入了MWA的BERT-wwm效果更接近於目前NLP領域最佳表現的Robust-BERT-wwm-ext-large模型(24層結構,並用13.5倍資料量進行訓練,加長訓練時長3.1倍)的模型效果。
因此,可以融合多種分詞知識,並在字元級別表徵加入分詞資訊的模型結構確實是有助於提升模型效果的。
06、結論與研究思考
MWA模型是在預訓練模型進行fine-tuning時,增加一層transformer式的模型結構,通過詞語對齊重新計算attention的方式來注入分詞知識。
除此之外,模型還將多種來源的分詞進行融合,以此對衝掉不同分詞工具可能存在的分詞誤差。
而個人認為,在未來研究中,MWA這樣的模型改進思路可以擴充套件為,在預訓練模型中融入文字不同粒度的知識(如偏旁部首)、句法依存等其他語法類知識的模型改進思路中去。
參考文獻
[1] Y Li, Yu B , Xue M , et al. Enhancing Pre-trained Chinese Character Representation with Word-aligned Attention[J]. 2019.
[2] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2019. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pages 4171–4186, Minneapolis, Minnesota. Association for Computational Linguistics.
[3] Yu Sun, Shuohuan Wang, Yukun Li, Shikun Feng, Xuyi Chen, Han Zhang, Xin Tian, Danxiang Zhu, Hao Tian, and Hua Wu. 2019. Ernie: Enhanced representation through knowledge integration. arXiv preprint arXiv:1904.09223.
[4] Yiming Cui, Wanxiang Che, Ting Liu, Bing Qin, Ziqing Yang, Shijin Wang, and Guoping Hu. 2019. Pre-training with whole word masking for chinese bert. arXiv preprint arXiv:1906.08101.
[5] Dingjun Yu, Hanli Wang, Peiqiu Chen, and Zhihua Wei. 2014. Mixed pooling for convolutional neural networks. In International Conference on Rough Sets and Knowledge Technology, pages 364–375. Springer.