當前位置:
首頁 > 科技 > CCKS 2018 | 最佳論文:南京大學提出DSKG,將多層RNN用於知識圖譜補全

CCKS 2018 | 最佳論文:南京大學提出DSKG,將多層RNN用於知識圖譜補全


選自CCKS 2018


作者:Lingbing Guo、Qingheng Zhang、Weiyi Ge、Wei Hu、Yuzhong Qu

機器之心編譯


參與:Panda、劉曉坤




2018 年 8 月 14-17 日,主題為「知識計算與語言理解」的 2018 全國知識圖譜與語義計算大會(CCKS 2018)在天津成功舉辦。該會議是由中國中文信息學會語言與知識計算專委會定期舉辦的全國年度學術會議,並致力於成為國內知識圖譜、語義技術、鏈接數據等領域的核心會議。本屆會議的最佳英文論文來自南京大學計算機軟體新技術國家重點實驗室和信息系統工程重點實驗室,提出了一種用於知識圖譜補全的深度序列模型 DSKG。機器之心對該論文進行了摘要介紹,感謝最佳論文作者胡偉教授對本文的確認。




論文:DSKG:一種用於知識圖譜補全的深度序列模型(DSKG: A Deep Sequential Model for Knowledge Graph Completion)









  • 論文下載:https://pan.baidu.com/s/1dItQ-H6bbVq5yhQ7RGJgpQ



  • 項目地址:https://github.com/nju-websoft/DSKG




摘要

:知識圖譜(KG)補全的目標是填補知識圖譜中缺失的事實,其中每個事實都可表示成一個形式為 (主體, 關係, 客體) 的三元組。當前的知識圖譜補全模型都只能通過三元組中的兩個元素(比如主體和關係)來預測剩餘第三個元素。我們在這篇論文中提出了一種新模型,其中使用了專門針對知識圖譜的多層循環神經網路(RNN)來將知識圖譜中的三元組建模成序列。我們在兩個基準數據集和一個更為困難的數據集上進行了傳統的實體預測任務實驗,結果表明我們的方法在許多評測指標上都優於多個之前最佳的知識圖譜補全模型。此外,因為我們的模型具有序列特性,所以只需給定單個實體,就能預測整個三元組。我們的實驗表明我們的模型在這種三元組預測新任務上表現也較好。




1 引言




Freebase [2] 和 WordNet [12] 等知識圖譜(KG)通常會使用三元組來記錄數以十億計的真實世界事實,這些三元組可寫成 (主體, 關係, 客體) 的形式(可簡寫為 (s,r,o)),其中 s 和 o 表示實體,r 表示 s 和 o 之間的關係。因為當前的知識圖譜還遠沒有包含所有知識,所以還需要知識圖譜補全任務。之前的模型關注的重點是被稱為實體預測(也即鏈接預測)[3] 的一般任務,其要求基於給定的 (s,r,?) 或 (?,r,o) 來預測對應的 o 或 s,從而補全知識圖譜中的三元組。圖 1a 展示了一個實體預測的抽象模型。輸入 s 和 r 首先被投射到某些向量或矩陣上,然後再組合這些向量或矩陣,得到一個連續表徵 v_o,進而預測得到 o。




圖 1:用於實體預測的不同模型。白圈和黑圈分別表示輸入向量和輸出向量。c 表示一個 RNN 單元,h 表示一個隱藏狀態。DSKG 使用 c1、c2 來處理實體 s,使用 c3、c4 來處理關係 r。它們是不同的 RNN 單元。




儘管之前的模型已在實體預測上有良好的表現,但它們仍然可能不足以補全知識圖譜。讓我們假設一個模型可以基於給定的關係 r 而有效地補全一個實體 s。如果我們不提供任何關係,那麼這個模型就無法填補 s,因為它無法選擇用於完善這個實體的關係。實際上,知識圖譜的底層數據模型並不允許任何不完整的元組 (s,r) 存在。




循環神經網路(RNN)是一種神經序列模型,已經在語言建模和機器翻譯 [7,16] 等許多自然語言處理(NLP)任務上取得了優良的表現。知識圖譜中的三元組可被近似地看作是一個長度為 3 的簡單句子。比如,三元組 (USA, contains, NewYorkCity) 可被變換成句子「USA contains New York City」。這啟發了我們使用 RNN 來建模知識圖譜。但是,我們依然面臨著以下難題:(1)三元組不是自然語言。它們是用一種固定的表達方式 (s,r,o) 建模的複雜結構。這樣短的序列可能不足以為預測提供足夠的上下文信息。與此同時,由於路徑數量巨大,構建有價值的長序列又具有很高的成本且難度很大。(2)在三元組中,關係和實體是以固定順序出現的兩種不同類型的元素。將它們視為同類型元素很可能是不合適的。



為了解決上述問題,我們提出了 DSKG(用於知識圖譜的深度序列模型),其使用了一種新結構的 RNN,並且使用了一種專門針對知識圖譜的採樣方法來進行訓練。為了闡釋我們的想法,我們設計了一個基本的 RNN 模型作為初始版本(如圖 1b 所示)。這個基本模型將輸入 s 和 r 視為同類型元素並循環式地處理它們。c 表示一個 RNN 單元,其以之前的隱藏狀態和當前元素為輸入,預測下一個隱藏狀態。實體層中的單元處理像是 s 的實體,而關係層中的單元處理像是 r 的關係。在這個模型中,僅有一個單元按順序處理所有輸入元素,所以 s 和 r 是被輸入同一個單元 c 來獲得它們各自的輸出。然後我們使用 h_s 來預測 s 和 h_r 的關係,進而預測 s→r 的客體。




由於這個基本 RNN 模型僅使用了一個 RNN 單元來處理所有輸入序列,所以可能無法很好地建模複雜結構。在 NLP 領域,研究者通常會堆疊多個 RNN 單元來改善結果。我們借用這一思想構建了一個多層 RNN 模型(參見圖 1c)。但因為實體和關係的特性非常不同,這個模型仍然不能準確建模知識圖譜中的三元組。




如圖 1d 所示,我們提出的 DSKG 分別使用了多層 RNN 來處理實體和關係。具體而言,DSKG 為實體層和關係層使用了不同的 RNN 單元,即圖中的 c1、c2、c3、c4 全都是各不相同的 RNN 單元。我們相信這種專門針對知識圖譜的架構可以在關係形式多樣且複雜的情況下表現得更好。因為 DSKG 將預測實體(或關係)看作是一個分類任務,所以我們還提出了一種定製的採樣方法,可根據當前訓練標籤的類型採樣負例標籤。此外,DSKG 還有能力預測一個實體的關係,這啟發了我們使用一種方法來通過關係預測改善實體預測的結果。舉個例子,在預測 (USA, contains, ?) 時,模型可以自動濾除人或電影這樣的實體,因為這些實體與關係 contains 無關。



我們在兩個基準數據集上執行了實體預測實驗,結果表明 DSKG 在許多評測指標上都優於多種之前最佳的模型。更進一步,我們在 FB15K-237 [14] 上對 DSKG 進行了評估,結果表明 DSKG 優於其它模型。此外,我們還設計了一種用於三元組預測的知識圖譜補全新實驗,可作為實體預測的補充。我們的研究表明:相比於通用的多層 RNN 模型,DSKG 能得到更優的結果。我們已在線公開我們的源代碼、數據集和實驗結果。




3 方法




在這一節,我們首先將描述 RNN 及多層 RNN。然後,我們會提出 DSKG,這是一種專為知識圖譜設計的多層 RNN 變體。為了有效地訓練 DSKG,我們還提出了一種基於類型的採樣方法。最後,我們會介紹一種使用關係預測增強實體預測的方法。



3.1 RNN 及多層 RNN




我們先來看僅有一個 RNN 單元的基本 RNN 模型。給定一個序列 (x_1,...,x_T) 作為輸入,基本 RNN 模型的處理方式如下:







其中 f(·) 是一個激活函數,W_h、W_x、b 是參數。h_t 是在時間步驟 t 輸出的隱藏狀態。




多層 RNN 已經在 NLP 領域的複雜分層架構建模上得到了出色的表現 [5]。通過堆疊多個 RNN 單元,每個元素的複雜特徵都可以被分層地處理(見圖 1c)。我可以將其寫成如下形式:







其中

是第 i 個 RNN 單元的參數。

是第 i 個 RNN 單元在時間步驟 t 的隱藏狀態。因此,每個輸入元素都會被每個單元按順序處理,這可以看作是將深度神經網路(DNN)和 RNN 的概念結合到一起。最後,我們可以使用最後一個單元的隱藏狀態作為時間步驟 t 的輸出 h_t。




3.2 我們提出的深度序列模型




將知識圖譜中的三元組看作是序列讓我們可以使用 RNN 建模這個知識圖譜。但是,這些長度為 3 的序列(即三元組)非常特別:每個三元組中的實體和關係都有非常不同特性而且總是互相交錯在一起。因此,我們認為分別為實體和關係 RNN 構建各自的多層 RNN 能幫助模型學習到更為複雜的結構。根據這一直覺想法,我們提出了一種針對知識圖譜的多層 RNN,其使用了不同的 RNN 單元來分別處理實體和關係。如圖 1d 所示,使用這一架構,整個網路實際上是非循環式的,但仍然還是序列式的。我們可以將該結構寫成如下形式:







其中 E 和 R 分別表示實體集和關係集。我們可根據 x_t 的類型選擇當前的多層 RNN,然後應用公式 (2) 進行計算。




// 受限於篇幅,有關基於類型的採樣方法和使用關係預測增強實體預測的方法在此略過。




4 實驗




4.2 實體預測






遵照 [3,14,4] 以及其它許多研究,我們使用了 4 個評測指標:(1)排名第一的結果是正確實體的百分比(Hits@1);(2)正確實體在排名前十的結果的百分比(Hits@10);(3)平均倒數排名(MRR);(4)平均排名(MR)。另外要說明,我們使用的是過濾後的排名 [3],也就是說我們僅在排名階段保留當前測試的實體。由於 DSKG 僅需單個實體就能預測關係,所以我們報告了所謂的「級聯」結果。即,給定一個測試元組 (s,r,o),DSKG 首先預測關係 (s,?) 來得到 r 的排名,然後再預測 (s,r,?) 中的實體,得到 o 的排名。最後,將這兩個排名相乘,得到用於比較的結果(即最差排名)。




表 1 給出了在 FB15K 和 WN18 上的實驗結果。因為這兩個數據集都包含很多逆向三元組,所以僅能學習逆向關係的 InverseModel 也得到了很好的結果。此外,我們可以看到 DSKG 在多數指標上都優於其它模型。尤其是 DSKG 在 Hits@1 指標上是最佳的,這表明 DSKG 能夠相當好地準確學習預測實體。即使我們以級聯方式評估 DSKG,也仍然得到了相當的結果。







表 1:在兩個基準數據集上的實體預測結果。? 表示我們自己使用原研究提供的源代碼執行的模型,因為原文獻沒有使用其中某些指標;- 表示結果未知,因為原文獻未報告且我們不能獲得/運行源代碼




表 2 給出了在 FB15K-237 上的實體預測結果。可以看到:(1)所有模型的表現都下降了。具體來看,InverseModel 完全無力處理這個數據集,這表明所有模型都再也不能通過使用逆向關係直接提升它們的表現了。(2)DSKG 在所有指標上都顯著優於其它模型。DSKG(級聯)還在某些指標上達到了之前最佳的表現,比如 Hits@10。





表 2:在 FB15K-237 上的實體預測結果





表 3:數據集的統計信息




4.3 三元組預測




DSKG 不僅能預測實體,而且還能預測整個三元組。為了評估 DSKG 在直接預測三元組上的表現,我們構建了一個具有較大窗口的波束搜索器。另外也還有一些能夠提升序列預測結果的複雜方法 [8]。具體而言,我們首先要求模型以所有實體為輸入來預測關係,然後選出前 10 萬個 (實體, 關係) 對來構建出 (s,r,?) 這樣的不完整三元組。然後,該模型以這些不完整三元組為輸入,預測它們的最後一個實體。最後,我們選擇前 100 萬個三元組作為輸出,並按降序方式對它們進行排序以便評估。




我們使用了精度來評測這些輸出的三元組。設

為輸出的最佳 n 個三元組的集合,

表示一個知識圖譜的所有正確三元組的集合(包括測試集、驗證集和訓練集),

表示預測得到三元組的集合(包括測試集和驗證集)。則與最佳 n 個輸出三元組相關的精度 p_n 的計算方式為:







其中,

分別表示

中正確的、預測的和錯誤的三元組數量。由此,我們可繪製 p_n 隨 n 變化的曲線。




我們在三個數據集上執行了實驗,並將 DSKG 與兩個通用模型 G2 和 G4 進行了比較。G2 是一個通用的 2 層 RNN 模型(見圖 1c)。G4 是一個通用的 4 層 RNN 模型,因為 DSKG 也使用了 4 個不同的 RNN 單元。它們也都應用了 DSKG 中所用的所有功能(採樣器、dropout 等)。





圖 2:在三個數據集上的三元組預測結果




從圖 2 上面一行可以看到,DSKG 在所有數據集上都顯著優於 G2 和 G4,尤其是在 FB15K-237 上。另外,G4 的表現也比 G2 差。這可能是因為更深度的網路和更多參數會讓實體和關係嵌入不適合訓練。圖 2 下面一行給出了 DSKG 的三元組預測的詳細比例。在 FB15K-237 上,DSKG 以 0.47 的精度(前 10 萬)正確預測了超過 2000 個三元組。在另外兩個更簡單的數據集上,DSKG 表現更好。在 FB15K 上以 0.87 的精度(前 40 萬)正確預測了 34155 個三元組,在 WN18 上以 0.91 的精度(前 17 萬)正確預測了 5037 個三元組。注意,DSKG 在 WN18 上的精度最後出現了陡然下降,這是因為 WN18 僅有 10000 個三元組供預測,而 DSKG 已經輸出了所有其所能預測的三元組。




5 分析




5.1 與其它模型的比較




為了分析 DSKG 各個部分的貢獻,我們開發了一系列僅包含部分功能的子模型:






  • NR:在訓練中沒有使用關係損失的 DSKG。構建這個模型的目的是評估最小化關係損失對實體預測的影響。



  • NS(非序列):我們使用了 4 個全連接層(ReLU 作為激活函數)來替換 DSKG 中的 RNN,並減少了關係層和實體層之間的連接。最後,我們添加了一個密集層來組合這兩個層的輸出。這個模型與 DSKG 仍有一些其它共有特性(比如 dropout 和採樣器)。構建該模型的目的是了解序列特性的影響。



  • NRE:沒有使用基於關係預測增強實體預測的 DSKG(3.4 節)。







圖 3:DSKG 以及其它模型在 FB15K-237 上的表現




圖 3 給出了這些模型以及 G2 和 G4 模型在 FB15K-237 的驗證集上的表現。我們可從結果中觀察到:






  • 序列特性是 DSKG 的關鍵點。對比 DSKG 和 NR 與 NS,我們可以發現:(1)儘管 NR 保有序列結構,但它的表現仍不及 DSKG,因為 NR 沒有學習預測關係;(2)NS 沒有使用序列結構,也沒有學習預測關係。因此,它是圖 3 中結果最差的。



  • 針對知識圖譜的多層 RNN 架構能顯著提升表現。在 FB15K-237 上,DSKG 在所有指標上都優於 G2 和 G4,即使 DSKG 沒有使用關係預測增強也一樣。注意,在第 4.3 節,我們已經表明 DSKG 在三元組預測上優於 G2 和 G4。因此,DSKG 中使用的架構建模知識圖譜的能力比通用型多層 RNN 模型更好。



  • 關係預測增強方法能進一步優化實體預測結果。DSKG 的表現總是優於 NRE,即使在 MR 指標上也是如此,因為 DSKG 能直接去除很多不正確的實體。




5.2 層數的影響





表 4:在 FB15K-237 上,不同層數的 DSKG 的實體預測結果;? 一行是第 4 節所使用的主要結果




5.3 嵌入大小的影響





表 5:在 FB15K-237 上,不同嵌入大小的 DSKG 的實體預測結果 


 




本文為機器之心編譯,

轉載請聯繫本公眾號獲得授權



?------------------------------------------------


加入機器之心(全職記者 / 實習生):hr@jiqizhixin.com


投稿或尋求報道:

content

@jiqizhixin.com


廣告 & 商務合作:bd@jiqizhixin.com

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

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


請您繼續閱讀更多來自 機器之心 的精彩文章:

南科大翁文康NSR論文:「量子霸權」的基礎概念和可行方案
DeepMind首次披露旗下AI專利申請情況,引發熱議

TAG:機器之心 |