太强了!!!GNN + PLM→CIKM'22最佳论文
大家好,這里是NewBeeNLP。今天分享一篇 CIKM 2022 Best Paper ,文章和代碼鏈接如下。
論文標題:
Commonsense Knowledge Base Completion with Relational Graph Attention Network and Pre-trained Language Model
論文鏈接:
https://dl.acm.org/doi/10.1145/3511808.3557564
代碼鏈接:
https://github.com/DeqingYang/CKBC
研究背景
常識在各種語料庫中很少被明確表達,但對于機器理解自然語言非常有用。與傳統的知識庫(KG)不同,常識庫(CKG)中的節點通常由自由格式的文本表示,并且比傳統的 KG 規模更大,更稀疏。因此,這對傳統的知識庫補全(KBC)方法造成了挑戰。
最近,一些學者致力于開發常識庫補全(CKBC)模型,通過預測和推斷缺失的實體來提高 CKG 的覆蓋率。Malaviya 等人于 2020 年提出了一個 CKBC 模型,圖卷積網絡(GCN)和預訓練語言模型(PLM)的結合幫助他們的模型達到了最先進的性能。然而,該模型存在以下缺點:
1. 在 GCN 的信息傳播和聚合過程中,一個節點的所有鄰居節點都被同等看待。但事實上,CKG 中的所有鄰居節點應該被賦予不同的權重。此外,GCN 的表示學習忽略了不同邊的語義信息。
2. 為了實現從 PLM 到 CKG 的遷移學習,Malaviya 等人采用了一個掩碼任務來微調 BERT。然而,掩碼任務只是針對 PLM 預訓練的通用要求而提出的,并不十分適用于 CKBC。
為了解決這些問題,本文提出了一個新的 CKBC 模型。首先提出了一種關系圖注意力網絡的變體——RGAT,將邊信息和不同鄰居節點的權重編碼到三元組的結構表示中。其次利用序列分類任務而不是掩碼任務來微調 BERT,使得 BERT 中的外部知識能被更好地提煉為三元組的上下文表示,從而提高 CKBC 的性能。
網絡結構
如圖 1 所示,本文提出的 CKBC 模型框架主要由 Encoder 和 Decoder 組成。在 Encoder 中,我們提出了一個序列分類任務來對 BERT 進行微調,以此生成 CKG 中三元組各元素的上下文表示。接下來,使用本文提出的 RGAT 學習三元組的結構表示,然后與上下文表示相連接,在 Decoder 中用于預測給定三元組的得分。
2.1 Encoder模型
2.1.1 BERT微調模型
我們提出了序列分類任務來微調模型中的 BERT,因為它更適合于 CKBC 目標。給定一個三元組 ,我們將 與特殊標記 [CLS] 連接起來作為 BERT 的輸入,通過判斷輸入序列是否正確,BERT 可以充分融合三元組的語義信息,這個分類任務的概率分布表示為:
其中 是 [CLS] 的最終的隱藏層表示,而 是分類層的參數矩陣。然后我們使用交叉熵損失函數作為 BERT 的損失函數:
通過微調 BERT,我們從 BERT 的最后一個隱藏層獲得了三元組的上下文表示。
2.1.2 CKG致密化
為了更好地捕捉語義相近的實體之間的潛在關系,我們在將知識庫 G 輸入到后續的 RGAT 之前,首先將一些輔助邊添加到 G 中,但在 Decoder 中不會使用這些輔助邊。具體來說,兩個節點之間的語義相似性是根據它們從微調的 BERT 中獲得的上下文表示來計算的,如果這兩個節點的語義相似度大于閾值 τ,我們就在它們之間添加一條輔助邊。在本文,τ 被設定為 0.95,因此,122,618 條輔助邊被添加到 CKG 中。
2.1.3?RGAT模型
我們提出了基于圖注意網絡(GATs)的 RGAT,它考慮到了鄰居節點的權重和關系嵌入,以學習節點的結構表示。給定一個三元組 ,該三元組在第 h 層中的向量表示通過下面的線性變換得到:
其中 為第 h 層的線性變換矩陣,|| 為連接符。以節點 作為當前節點,其與第 h 層鄰居節點 的注意力可以計算為:
然后,RGAT 中節點 在第 h 層的結構表示為:
值得注意的是,在 RGAT 中進行結構表示的學習后,節點可能會失去其初始信息。為了解決這個問題,我們在 RGAT 的最后一層表示中添加了所有節點的初始嵌入:
為了學習 RGAT 中第 h 層中關系的結構表示,我們只使用如下所述的線性變換:
為了訓練 RGAT,我們使用了 hinge loss 作為損失函數:
2.2?Decoder模型
本論?使? ConvKB 作為 Decoder 解碼器,給定三元組 ,ConvKB 的評分函數可以描述為:
其中, 和 是共享的參數,獨立于 ; 表示卷積算子;concat 表示一個拼接操作符。為了訓練 ConvKB 模型,本文使用帶有 正則項的 soft-margin loss 作為目標函數:
實驗結果
本文在 CN-100K 數據集上進行了實驗,采用 MR、MRR 和 HIT@1/3/10 作為評價指標。并且我們選取 DistMult、ComplEx、ConvE、ConvTransE、ConvKB、IndectivE 以及 MalaviyaModel 作為 baseline 模型。為了做消融實驗,使用 -BERT 和 -RGAT 分別表示沒有上下文表示和沒有結構表示的模型變體,-SIM 表示沒有圖致密化的模型變體。具體結果如下表所示:
Ours 的模型性能優于 Ours-BERT 表明將 BERT 的外部知識納入到 CKBC 的上下文表示中是非常重要的。Ours 的模型優于 SOTA 基線 MalaviyaModel,不僅驗證了本文模型中使用的 RGAT 比 MalaviyaModel 中的 GCN 更有效,而且還證明了我們 BERT 微調中的序列分類任務比 MalaviyaModel 中的掩碼任務更好。
事實上,Ours-BERT-SIM 只是在 ConvKB 中加入了 RGAT,而 Ours-BERT-SIM 比 ConvKB 有明顯的性能改進,證明了加入 RGAT 的意義。同時我們的模型又優于 Ours-RGAT-SIM,表明由 RGAT 學習的結構表示可以補充上下文信息,從而產生更好的 CKBC 模型。
案例分析
本文分別替換了 <city, IsA, place> 中的頭實體和尾實體,然后獲得以下五個模型排名前十的預測結果。
可以看到 Ours-SIM 表現最好,因為有更多的正確實體被預測出來且排名較高。頭實體預測結果中有 9 個正確的實體,其中原始頭實體 city 和原始尾實體 place 均排在第一位。MalaviyaModel 也正確地預測了原始頭實體 city 和尾實體 place,并與 Ours-SIM 一樣排名第一,但它所預測的正確實體數比 Ours-SIM 少。InductivE 正確預測了原始頭實體和尾實體,但預測的正確實體較少,且排名低于上述兩個模型。Ours-RGAT-SIM 預測正確的實體數量雖然與 InductivE 相同,但未能預測到原始頭實體 city。Ours-BERT-SIM 在五個模型中預測結果最差,但它仍然預測了原始尾實體 place。
總結
本文提出了一個新的 CKBC 模型,它結合了 RGAT 和通過序列分類任務微調后的 BERT。融合 RGAT 學到的結構表示和 BERT 學到的上下文表示,本文模型中三元組的各元素表示得到了增強,從而提高了 CKBC 的性能。
一起交流
想和你一起學習進步!『NewBeeNLP』目前已經建立了多個不同方向交流群(機器學習 / 深度學習 / 自然語言處理 / 搜索推薦 / 圖網絡 / 面試交流 /?等),名額有限,趕緊添加下方微信加入一起討論交流吧!(注意一定o要備注信息才能通過)
總結
以上是生活随笔為你收集整理的太强了!!!GNN + PLM→CIKM'22最佳论文的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为鸿蒙harmonyos-面向全场,华
- 下一篇: ConvE,知识图谱嵌入(KGE)论文复