论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA
論文筆記整理:吳畏,東南大學碩士研究生。
來源: ACL 2020
論文地址: https://www.aclweb.org/anthology/2020.acl-main.412.pdf
開源代碼: https://github.com/malllabiisc/EmbedKGQA
動機
在多跳KGQA中,系統需要對KG的多個邊緣執行推理以推斷出正確的答案。 KG通常不完整,這給KGQA系統帶來了額外的挑戰,尤其是在多跳KGQA的情況下。最近的方法已使用外部文本語料庫來處理KG稀疏性。而本文期望通過利用KG embedding的鏈接預測屬性,不依賴外部數據解決KG不完整問題。
貢獻
1.提出了EmbedKGQA,一種用于多跳KGQA任務的新方法。EmbedKGQA是第一個將KG嵌入用于此任務的方法。EmbedKGQA在執行稀疏KG上的多跳KGQA方面特別有效。
2. EmbedKGQA放寬了從預先指定的本地鄰居選擇答案的要求,這是先前方法中不受歡迎的一個約束。
3.通過在多個現實世界數據集上進行的廣泛實驗,證明了EmbedKGQA取得了STOA的效果。
方法
本工作首先學習KG的表示。然后給定一個問題,學習問題的Embedding, 最后,它將這些embedding結合起來以預測答案。
在以下各節中,我們介紹EmbedKGQA模型,它包含3個模塊:
1) KG Embedding模塊: 為KG中的所有實體創建Embedding
2) 問題Embedding模塊: 得到問題的Embedding
3) 答案選擇模塊: 減少候選答案實體的集合并選擇最終的答案
1. KG Embedding模塊
為所以的實體和關系訓練ComplEx Embedding,根據QA訓練集中KG實體的覆蓋范圍,此處學習的實體Embedding將保持frozen狀態或可以在后續步驟中進行fine-tune。
2. 問題Embedding模塊
該模塊使用RoBERTa將自然語言問題q嵌入到768維向量。
給定一個問題q,主題實體h∈E和答案實體A?E的集合,它以以下方式學習問題嵌入:
? 公式1
其中φ是ComplEx 的scoring function,是先前學習的實體Embedding。
對于每個問題,將使用所有候選答案實體計算分數φ(.)。通過最小化分數sigmoid與目標標簽之間的二進制交叉熵loss來學習模型,其中正確答案標簽為1,否則為0。
當實體總數很大時,將進行標簽平滑。
3. 答案選擇模塊
如公式2所示:
?????? 公式2
在推斷階段,本模型針對所有可能的答案上進行(head,question)對的評分。對于相對較小的KG(例如MetaQA),我們只需選擇得分最高的實體。如果KG很大,則修剪候選實體可以顯著改善EmbedKGQA的性能。
如何修剪候選實體的具體方法就是關系匹配。學習得分函數S(r,q),對給定問題q的每個關系r∈R進行排名,如公式3所示:
?????? ?????? ?????? 公式3
其中是問題和關系的embedding,在所有關系中,選擇得分大于0.5的那些關系。將其表示為集合。對于到目前為止我們已經獲得的每個候選實體,我們在頭實體h和之間的最短路徑中找到關系。將每個候選答案實體的關系得分定義為它們的交集大小(公式4)。
?????? ?????? ?????? 公式4
最終模型使用關系得分和ComplEx得分的線性組合來找到答案實體(公式5)。
?????? 公式5
實驗
本工作在兩個數據集上面進行了實驗,一個是電影領域中包含超過40萬個問題的大規模多跳KGQA數據集MetaQA, 另一個是基于Freebase的多條問答數據集WebQuestionsSP。
下面兩個表展示了本工作在這兩個數據集上的效果,完整的KG是測試QA模型最簡單的設置,因為創建數據集的方式是答案始終存在于KG中,并且路徑中沒有丟失的鏈接。但是,這不是一個現實的設置,因此QA模型應該也可以在不完整的KG上工作。因此,本工作通過隨機刪除KB中的三元組的一半來模擬不完整的KB,表中KG-50表示刪除了一半三元組后的KG。
1.MetaQA
如表1所示,EmbedKGQA在多跳情況下以及在缺失KG的情況下可以超過STOA。
表1 . MetaQA上多條問答的hits@1結果
2.WebQuestionsSP
WebQuestionsSP使用了更少的訓練樣本和更大的KG,這使得多跳KGQA要困難得多。如表2所示,在50%KG的情況下,WebQSP可以超過STOA,包括使用了額外的文本信息的PullNet。這可以歸因于這樣的事實,即通過KG Embedding隱式捕獲了相關且必要的信息。
表2. WebQuestionsSP上多條問答的hits@1結果
總結
本工作通過在KG Embedding的鏈接預測屬性來緩解KG不完整性問題,可以在KG缺失的情況下很好的完成多跳的問答而無需使用任何其他數據。它訓練KG實體embedding并使用它來學習問題embedding,并在評估過程中,對所有實體(head實體,問題)再次進行評分,并選擇得分最高的實體作為答案。最終在MetaQA和WebQuestionsSP數據集上獲得了優秀的表現,特別是的在KG缺失的時候可以非常好的回答問題。
?
?
OpenKG
開放知識圖譜(簡稱 OpenKG)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的论文浅尝 - ACL2020 | 利用知识库嵌入改进多跳 KGQA的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java远程通讯技术及原理分析
- 下一篇: 论文浅尝 - KDD2020 | 真实世