如何利用外部知識提高預訓練模型在閱讀理解任務中的性能

如何利用外部知識提高預訓練模型在閱讀理解任務中的性能

近年來,機器閱讀理解已經逐漸發展為自然語言理解方向的主流任務之一。最近,預訓練模型尤其是 BERT ,在各項閱讀理解任務中取得了不俗的表現。該篇文章沿用了預訓練模型 + 精調的思路,在經典的 BERT 模型的基礎上,通過引入知識圖譜中的語義信息來增強閱讀理解模型感知上下文和知識的能力。不同於 ERNIE( 百度 ) , ERNIE( 清華 ) ,以及 K-BERT( 騰訊 ) 等模型在預訓練階段就引入外部知識,該模型設計了 Knowledge Integration 模塊,用於在面向任務的精調階段引入知識。這裡的知識特指存在於 NELL 和 WordNet 中的概念及同義詞等信息。

本文核心思想在於強調對兩個數據源信息的整合 (Integration), 即通過預訓練模型 BERT 學習自然語言文本信息,通過預訓練的表示學習模型學習知識圖譜全局拓撲結構信息,整合的過程也是挑選知識的過程,模型學習的目標之一是學會如何挑選對當前任務有用的知識概念的能力。

如何利用外部知識提高預訓練模型在閱讀理解任務中的性能

如上 圖所示(來自數據集 ReCoRD),普通的BERT模型在沒有美國政權等相關背景知識及低頻詞彙的語義關係的前提下,很難僅通過段落的字面表達選取正確的答案,只有在我們補充了特朗普和美國政府的關係,以及 sanctions 與ban是近義詞之後才能讓模型明白問題的含義,從而作出正確的回答。

結構

KT-Bert 中引入知識的基本單元是單詞,即文本中的每一個詞彙都會去知識庫中尋找相關的概念和同義詞,並取出已經預訓練的 KB embedding 作為知識的候選集。KT-Bert 通過雙線性層對文本表示以及知識圖譜表示進行關聯,也就是利用 attention 機制計算每一條候選知識在當前任務中的貢獻程度。

如何利用外部知識提高預訓練模型在閱讀理解任務中的性能


總結

本文模型結構清晰,例證符合推斷,同時在標準數據集上的效果提升明顯。核心模塊 Knowledge Integration 雖然和[1]中的 KBLSTM 比較相似,但的確是一種引入知識的可行方案之一。在零樣本、少樣本問題,長尾問題,數據不均衡問題等設定下,如何引入知識,在模型的什麼位置引入外部知識,引入什麼樣的外部知識都是值得研究的內容,更進一步的,如何判斷是否需要引入知識,引入具體的哪幾條知識更有待於我們持續探索。

[1] Yang, B., Mitchell, T., 2017. Leveraging Knowledge Bases in LSTMs for Improving Machine Reading. Association for Computational Linguistics, pp. 1436–1446.


分享到:


相關文章: