摒棄人工標註,AutoAlign方法基於大模型讓知識圖譜對齊全自動化

本工作由來自清華大學、墨爾本大學、香港中文大學、中國科學院大學的 Rui Zhang, Yixin Su, Bayu Distiawan Trisedya, Xiaoyan Zhao, Min Yang, Hong Cheng, Jianzhong Qi 等學者團隊聯合完成。該團隊專注於大模型、知識圖譜、推薦搜索、自然語言處理、大數據等方向的研究。

知識圖譜作爲結構化知識的重要載體,廣泛應用於信息檢索、電商、決策推理等衆多領域。然而,由於不同機構或方法構建的知識圖譜存在表示方式、覆蓋範圍等方面的差異,如何有效地將不同的知識圖譜進行融合,以獲得更加全面、豐富的知識體系,成爲提高知識圖譜覆蓋度和準確率的重要問題,這就是知識圖譜對齊(Knowledge Graph Alignment)任務所要解決的核心挑戰。

傳統的知識圖譜對齊方法必須依賴人工標註來對齊一些實體(entity)和謂詞(predicate)等作爲種子實體對。這樣的方法昂貴、低效、而且對齊的效果不佳。來自清華大學、墨爾本大學、香港中文大學、中國科學院大學的學者聯合提出了一種基於大模型的全自動進行知識圖譜對齊的方法——AutoAlign。AutoAlign徹底不需要人工來標註對齊的種子實體或者謂詞對,而是完全通過算法對於實體語義和結構的理解來進行對齊,顯著提高了效率和準確性。

論文:AutoAlign: Fully Automatic and Effective Knowledge Graph Alignment enabled by Large Language Models,36 (6) TKDE 2024

論文鏈接:https://arxiv.org/abs/2307.11772

代碼鏈接:https://github.com/ruizhang-ai/AutoAlign

模型介紹

AutoAlign 主要由兩部分組成:

用於將謂詞(predicate)對齊的謂詞嵌入模塊(Predicate Embedding Module)。

用於將實體(entity)對齊的實體嵌入學習部分,包括兩個模塊:屬性嵌入模塊(Attribute Embedding Module)和結構嵌入模塊(Structure Embedding Module)。

總體流程如下圖所示:

謂詞嵌入模塊:謂詞嵌入模塊旨在對齊兩個知識圖譜中代表相同含義的謂詞。例如,將“is_in”和“located_in”進行對齊。爲了實現這一目標,研究團隊創建了一個謂詞鄰近圖(Predicate Proximity Graph),將兩個知識圖譜合併成一個圖,並將其中的實體替換爲其對應的類型(Entity Type)。這種方式基於以下假設:相同(或相似)的謂詞,其對應的實體類型也應相似(例如,“is_in”和“located_in”的目標實體類型大概率屬於location或city)。通過大語言模型對類型的語義理解,進一步對齊這些類型,提高了三元組學習的準確性。最終,通過圖編碼方法(如TransE)對謂詞鄰近圖的學習,使得相同(或相似)的謂詞具有相似的嵌入,從而實現謂詞的對齊。

具體實現上,研究團隊首先構建謂詞鄰近圖。謂詞鄰近圖是一種描述實體類型之間關係的圖。實體類型表示實體的廣泛類別,可以自動鏈接不同的實體。即使某些謂詞的表面形式不同(例如“lgd:is_in”和“dbp:located_in”),通過學習謂詞鄰近圖,可以有效識別它們的相似性。構建謂詞鄰近圖的步驟如下:

實體類型提取:研究團隊通過獲取每個實體在知識圖譜中的rdfs:type謂詞的值來提取實體類型。通常,每個實體有多個類型。例如,德國(Germany)實體在知識圖譜中可能有多個類型,如“thing”、“place”、“location”和“country”。在謂詞鄰近圖中,他們用一組實體類型替換每個三元組的頭實體和尾實體。

類型對齊:由於不同知識圖譜中的實體類型可能使用不同的表面形式(例如,“person”和“people”),研究團隊需要對齊這些類型。爲此,研究團隊利用最新的大語言模型(如ChatGPT和Claude)來自動對齊這些類型。例如,研究團隊可以使用Claude2來識別兩個知識圖譜中相似的類型對,然後將所有相似類型對齊爲統一的表示形式。爲此,研究團隊設計了一套自動化提示詞(prompt),能夠根據不同的知識圖譜進行自動化對齊詞的獲取。

爲了捕捉謂詞相似性,需要聚合多個實體類型。研究團隊提出了兩種聚合方法:加權和基於注意力的函數。在實驗中,他們發現基於注意力的函數效果更好。具體而言,他們計算每個實體類型的注意力權重,並通過加權求和的方式獲得最終的僞類型嵌入。接下來,研究團隊通過最小化目標函數來訓練謂詞嵌入,使得相似的謂詞具有相似的向量表示。

屬性嵌入模塊和結構嵌入模塊:屬性嵌入模塊和結構嵌入模塊都用於實體(entity)對齊。它們的思想和謂詞嵌入相似,即對於相同(或相似)的實體,其對應的三元組中的謂詞和另一個實體也應該具有相似性。因此,在謂詞對齊(通過謂詞嵌入模塊)和屬性對齊(通過 Attribute Character Embeding 方法)的情況下,我們可以通過TransE使相似的實體學習到相似的嵌入。具體來說:

屬性嵌入學習:屬性嵌入模塊通過編碼屬性值的字符序列來建立頭實體和屬性值之間的關係。研究團隊提出了三種組合函數來編碼屬性值:求和組合函數、基於LSTM的組合函數和基於N-gram的組合函數。通過這些函數,我們能夠捕捉屬性值之間的相似性,從而使得兩個知識圖譜中的實體屬性可以對齊。

結構嵌入學習:結構嵌入模塊基於TransE方法進行了改進,通過賦予不同鄰居不同的權重來學習實體的嵌入。已對齊的謂詞和隱含對齊的謂詞將獲得更高的權重,而未對齊的謂詞則被視爲噪聲。通過這種方式,結構嵌入模塊能夠更有效地從已對齊的三元組中學習。

聯合訓練:謂詞嵌入模塊、屬性嵌入模塊和結構嵌入模塊這三個模塊可以進行交替訓練,通過交替學習的方式互相影響,通過優化嵌入使其在各個結構的表示中達到整體最優。訓練完成後,研究團隊獲得了實體(entity)、謂詞(predicate)、屬性(attribute)和類型(type)的嵌入表示。最後,我們通過對比兩個知識圖譜中的實體相似性(如cosine similarity),找到相似性高的實體對(需要高於一個閾值)來進行實體對齊。

實驗結果

研究團隊在最新的基準數據集DWY-NB (Rui Zhang, 2022) 上進行了實驗,主要結果如下表所示。

AutoAlign在知識圖譜對齊性能方面有顯著提升,特別是在缺少人工標註種子的情況下,表現尤爲出色。在沒有人工標註的情況下,現有的模型幾乎無法進行有效對齊。然而,AutoAlign在這種條件下依然能夠取得優異的表現。在兩個數據集上,AutoAlign在沒有人工標註種子的情況下,相比於現有最佳基準模型(即使有人工標註)有顯著的提升。這些結果表明,AutoAlign不僅在對齊準確性上優於現有方法,而且在完全自動化的對齊任務中展現了強大的優勢。

參考文獻:

Rui Zhang, Bayu D. Trisedya, Miao Li, Yong Jiang, and Jianzhong Qi (2022). A Benchmark and Comprehensive Survey on Knowledge Graph Entity Alignment via Representation Learning. VLDB Journal, 31 (5), 1143–1168, 2022.