李松,舒世泰,郝曉紅,郝忠孝,2
(1.哈爾濱理工大學 計算機科學與技術學院,黑龍江 哈爾濱 150080;2.哈爾濱工業大學 計算機科學與技術學院,黑龍江 哈爾濱 150001)
知識圖譜(knowledge graph, KG)[1]是一種用圖模型來描述知識和建立世界萬物之間關系的技術方法,并且已經成為智能問答等多個人工智能領域的重要資源.KG通過三元組(頭實體、關系、尾實體)的形式以保存數據.傳統的知識表示方法都是以符號邏輯為基礎進行表示,易于刻畫離散、顯性的知識,具有較好的可解釋性.在表示過程中,有許多不能用符號來刻畫連續、隱形的知識會失去魯棒性,從而在下游任務中難以達到預期效果[2].為了解決此問題提出表示學習.該方法有效度量實體和關系的語義相關性,緩解KG中的稀疏性問題[3].已有的方法主要分為翻譯模型和卷積神經網絡(convolutional neural network, CNN)模型.Bordes等[4]提出TransE模型,該模型將關系向量視為實體向量之間的轉換,并實現向量的規范表示.繼TransE之后,研究人員提出各種其他翻譯模型,如TransH[5]、TransR[6]、TransD[7]、TransA[8]和TransG[9].這些模型對KG中的內部結構信息進行表示學習,但是語義可解釋性較差.基于CNN的模型增加了對復雜關系和參數規模的考慮,可以學習更多的嵌入表示.
在大型的知識庫中,如維基百科,對每個實體都有簡單的文本描述,這些額外的文本信息可以有效提高知識表示能力.Wang等[10]將實體和單詞/短語在同一向量空間中表示,使得預測結果更準確.DKRL模型[11]充分利用實體的描述信息,分別使用連續詞袋模型和卷積神經網絡模型對實體描述信息進行編碼.在Freebase中,層次類型包括屬性、類型和域,它們都是非常重要的外部信息.TKRL模型[12]充分利用知識庫中的層次類型信息增強實體的表示.以上3個模型只考慮實體描述信息和層次類型信息,忽略了關系的描述信息.
關系抽取是從純文本中提取未知關系事實并將關系加入到知識圖譜中,是自動構建大規模KG的關鍵.由于缺少標記的關系數據,遠程監控(distance supervision)通過假設包含相同實體的語句在關系數據庫的監督下,可以表示相同的關系,使用啟發式匹配來創建訓練數據[13].PCNN模型[14]對按實體位置劃分的卷積表示段使用分段最大池化.與CNN相比,PCNN能夠更有效地捕捉實體內部的結構信息.MIMLCNN模型[15]進一步將關系抽取 擴展到多標簽學習中,使用跨句子最大池化進行特征選擇.Han等[16]提出層次選擇性Attention,通過連接每層的Attention來表示捕捉關系層次的信息.Zhang等[17]將圖卷積神經網絡(graph convolutional network, GCN)應用于知識圖譜中的關系嵌入以及基于句子的關系抽取.
這些方法都取得較好的實驗效果,但是融合方法單一,仍存在3個問題:1) 這些方法只考慮單類外部信息,僅僅在單詞上對齊,沒有將三元組結構和文本信息相結合.2) 文本描述可能從各方面表示一個實體,在給定特定關系的情況下,并非文本描述中提供的所有信息都對實體起決定作用.3) 三元組的結構表示向量從現有的三元結構信息中學習得來,文本表示向量是從與文本語料庫中相關聯的信息中學習而來,需要保證這2種向量的維數一致,以提高知識表示的性能[18].
為了更好地表示實體和關系,提出融合文本描述和層次類型的知識表示學習方法(ETLKRL).主要做了以下工作.
1)提出一個融合文本描述和層次類型的知識表示學習模型ETLKRL,通過融合三元組自身結構信息、文本描述信息和層次類型信息,充分利用KG以外的信息,提高知識表示和知識推理的準確性和可解釋性,解決了外部信息利用不足等問題.
2)使用CNN引入文本描述信息,并從文本描述中提取可靠的特征信息;使用基于注意力機制卷積神經網絡,通過相關文本分配權重,從文本句子中提取有效信息,從而獲得區分度高、語義準確度更好的關系向量表示;使用加權層次類型編碼器來構造層次類型投影矩陣,并使用特定關系的類型約束來投影實體.
3)在WN18、WN18RR、FB15K、FB15K-237和YAGO3-10數據集上,進行鏈接預測和三元組分類實驗.結果表明,在鏈接預測和三元組分類2項實驗任務中,所提模型與基線模型相比更具有明顯優勢,能夠處理外部信息利用不足等問題,并有一定的可擴展性.
隨著研究的不斷深入,知識表示學習方法越來越多,主要分為3類:翻譯模型、語義匹配模型和融合附加信息模型.
TransE[4]是最具代表性的翻譯模型,將實體和關系嵌入到d維向量空間中,即h,r,t∈Rd,Rd為d維空間.同時遵循平移原則,即h+r≈t.得分函數為
式中:h、r和t分別為頭實體、關系和尾實體的向量;L1和L2為范數,分別為曼哈頓距離和歐氏距離.
TransE模型參數少,在1-1關系中表現較好,但是在處理1-N、N-1、N-N等復雜關系時存在缺陷.為了解決這一問題,TransH模型[5]引入超平面機制,將h和t投影到關系的特定超平面中,使得實體在不同關系的超平面中具有不同的表示.TransR模型[6]將實體和關系都表示為語義空間Rd中的向量,每一種關系同時又對應著一個特定的關系空間Rk.CTransR通過將不同的頭尾實體聚類成組,并為每個組學習不同的關系向量來擴展TransR,但是TransR模型運算量大且參數多.TransD模型[7]對每個實體或關系使用2個向量進行表示,一個向量表示語義,另一個用來構建映射矩陣,以向量的乘積代替矩陣,減少模型的參數規模.以上模型都限制平移要求,導致翻譯原則不靈活.TransM模型[19]在計算得分函數時,為每個三元組賦一個預計算的權重,該權重反映在該關系下的實體節點的度.TransF模型[20]只須保證h+r的方向與t的方向相同即判定三元組成立.TransA模型[8]為每個關系r引入一個對稱的非負矩 陣Mr,并使用自適應馬氏距離定義評分函數.
RESCAL模型[21]用向量表示實體,用矩陣表示關系,通過自定義的得分函數捕獲三元組的內部交互.DistMult模型[22]通過將Mr限制為對角矩陣來簡化RESCAL.ComplEx模型[23]通過引入復值嵌入來擴展DistMult,以便更好地對非對稱關系進行建模.上述三者都屬于語義匹配模型,通過匹配實體的潛在語義和向量空間中的關系來衡量三元組的準確性.
目前大多數研究只對三元組自身結構進行嵌入,將實體和關系表示到連續向量空間中,并定義評分函數衡量真實性.事實上,KG中還隱含著其它豐富的信息可以提高知識表示能力,將文本描述信息、圖拓撲結構、邏輯規則、關系路徑、視覺信息和時序信息等外部信息與KG相結合來提高知識表示的有效性.Zhang等[24]利用關系簇、關系和子關系的層次關系結構擴展現有的嵌入方法.GAKE模型[25]同時使用鄰居、邊、路徑3種上下文融入圖結構信息.Guo等[26]提出一種融合三元組事實和邏輯規則的聯合表示學習模型,視覺信息也可以提高知識表示能力.IKRL模型[27]將圖像編碼到實體空間,并遵循翻譯原則.夏光兵等[28]通過融合實體的文本描述信息、層次類型信息和圖的拓撲結構信息,充分利用三元組以外的多源異質信息來提高知識圖譜各類任務的效果.杜文倩等[29]同時學習三元組信息、實體描述以及實體類型信息來處理一對多、多對多等復雜關系.Wang等[30]首次將概念和實例進行聯合嵌入,基于鄰居信息和所屬概念為實例,設計預測函數,使實例的嵌入更具表現力.
翻譯模型是根據距離公式計算向量的組合,因此,實體關系向量本身的特征信息沒有得到很好的應用.融合附加信息模型具有較高的鏈接預測準確率,但是只針對實體進行信息融合,并沒有融合關系描述信息,語義可解釋性較差.在充分利用KG的結構信息基礎上,文本提出方法融合外部文本信息,以獲得實體和關系的向量表示,具有良好的語義解釋和較高的預測精度.
聯合表示學習模型是建立在三元組本身的結構向量之上.實體描述信息豐富了實體的語義,層次類型能夠區分在不同關系下實體的不同屬性,關系描述信息使得關系的語義更精確,充分利用結構信息和提取文本有效特征,從而更好地增強向量表示,具體的模型結構如圖1所示.ETLKRL模型的能量函數E由4個部分決定:

圖1 ETLKRL模型整體框架Fig.1 Overall framework of ETLKRL model
ES為三元組自身結構的能量函數:
式中:hS、rS和tS分別為頭實體、關系和尾實體的自身結構.
ED為基于文本描述的能量函數,為了使得ES和ED相兼容,ED定義為:ED=EDD+EDS+ESD.
式中:hD和tD分別為頭實體和尾實體基于文本描述.
ER為文本關系的能量函數:
式中:hS和tS分別為頭實體和尾實體的自身結構,rR為關系向量.
EL為層次類型的能量函數:
式中:hL和tL為通過層次類型投影構建的頭實體和尾實體的層次類型.
現有的大型知識庫如維基百科都包含大量的文本描述信息,利用文本信息輔助增強三元組的語義成為表示學習的關鍵步驟.如圖2所示,在Freebase中,文本描述信息包含對實體和關系的簡潔描述,并非每個句子都包含被描述的實體和關系.本研究利用CNN實現相關文本描述的嵌入向量表示,根據句子中實體引用的差異對文本實體向量和文本關系向量進行分類.

圖2 在Freebase中文本描述的示例Fig.2 Example of text description in Freebase
2.2.1 實體描述信息表示 實體描述信息包含豐富的實體語義,可以作為KG的額外信息增強表示學習效果.如圖2所示,文本描述信息中隱含著對三元組實體的描述,充分利用這些文本描述信息成為聯合表示學習的關鍵.根據Zhao等[31]提出的方法,利用實體描述作為補充,并獲得基于文本描述的實體表示,即hD和tD.當獲得實體所在的句子時,表示的集合為Es= (s1,s2, ···,sn),假設窗口大小為k,將滑動窗口設置為1即可獲得si,si=si+k-1=(w1,w2, ···,wi,wi+1, ···,wi+k-1).由于每 個文本長短不同,需要在短文本末尾進行補零使得文本對齊, 對于每個文本句子,具體的卷積操作如下.
1) 假設經過預處理過濾掉停用詞后的文本長度為n,每個單詞的嵌入維度為k,則該文本可以表示為n×k維矩陣作為卷積操作的輸入.
2) 將滑動窗口設為1,過濾器有l個通道,卷積核寬度為單詞向量的維度,每個卷積核設置為m×k.
3) 每次卷積運算后都會得到一個n-m+1維的輸出向量,通過最大池化操作優化向量的特征信息.
4) 最后通過維度矩陣轉換得到k維文本向量.
經過卷積運算后,得到與實體關聯的文本表示向量為
式中:Wc為卷積層的卷積核,bi為殘差,tanh為激活函數.
使用最大池化策略優化語義并提高穩定性.將卷積運算后的輸出向量劃分為m大小的非重疊窗口,然后在每個連續特征窗口中選擇最大值作為窗口的輸出向量:
最終與實體相關聯的文本信息的向量為
2.2.2 關系描述信息表示 在知識庫中,一對實體的文本描述信息可能不同,每個句子對實體對之間關系的重要性也不同.為了解決這一問題,提出基于注意力機制的卷積神經網絡,作用于包含一對實體的文本描述,以獲得關系的向量表示.
注意力機制用于對指定實體的不同共現句執行語義特征組合,必須根據每個文本與關系r之間的關聯程度,將與不同的權重信息進行組合.一個句子s由若干單詞構成,單詞之間的相對位置決定該句的語義.對于一個句子s= [w1,w2,···,wm],句子s中的每個單詞向量wi是由基于詞匯表的單詞向量x和位置向量p組成,p= [d1,d2],d1和d2分別為頭實體和尾實體的方向和距離.因此,單詞向量表示為wi= [xi,pi],將含有m句共現實體的一組文本表示為S,S= {s1,s2, ···,sm}.利用卷積神經網絡將每個句子編碼為關系向量Yi,通過隱藏層進行轉換得到最終的關系向量Ei:
式中:Ws為卷積核,bs為殘差,Mk為轉換矩陣.
每個句子對實體對之間關系貢獻不同,根據句子所表示的實體向量和關系向量,計算每個句子的權重βi:
在表示過程中,假設三元組遵循h+r≈t,則th的結果可以近似表示實體對之間可能的關系,每個句子和實體對之間的關系權重用向量內積形式表示,最終關系定義為
層次類型信息是外部信息的重要組成部分,對于知識表示學習具有重要意義.如圖3所示,在Freebase中,同一個實體在不同場景下代表不同含義;實體的類型層次化,不同粒度的實體含義分布在不同層次的子類型上,且大多數實體具有復雜多樣化的層次類型結構,一個實體可能呈現出多種層次類型,每種層次類型包含多個子層.根據Xie等[11]提出的方法,以層次類型結構l為例,其有m層,其中l(i)為l的第i個子類型,每個子類型l(i)只有一個父子類型l(i+1),最精確的子類型是第一層,最通用的子類型是最后一層.即l=(l(1),l(2), ···,l(m)).

圖3 層次類型示例Fig.3 Example of hierarchy types
在知識圖譜中,一個實體可能有多種層次類型,首先提出一種通用的層次類型編碼器,將層次類型信息編碼到表示學習中.對于任意一個實體,其投影矩陣為所有類型矩陣的加權和:
式中:Me為實體e的投影矩陣,n為實體e的類型數量,αi為權重因子,li是實體e的第i個類型,Mli為li的投影矩陣.
在不同的語義環境下,實體具有不同的含義,而知識圖譜中關系的類型信息決定實體在不同關系中可能屬于的類型,所以式(14)不再適用于特定環境.因此,對上述通用類型編碼器做出改進,對于一個三元組,以頭實體為例,投影矩陣為
式中:Lr,h為由關系特定類型信息給出的關系r中頭實體的類型集.
尾實體的投影矩陣與頭實體的投影矩陣類似.最終得到頭實體和尾實體的層次類型表示:
ETLKRL模型將三元組的結構信息、文本描述信息和層次類型信息相結合,以更好地對三元組的實體和關系進行表示.訓練時采用基于邊際的優化方法作為訓練目標,損失函數定義為
式中:u、v、o分別為頭實體、關系和尾實體.γ為衡量正例三元組和負例三元組的間隔參數,E(u,v,o) 為模型的整體能量函數,T為正例三元組構成的集合,T'為從T中經過替換頭尾實體得到的負樣本,定義如下:
根據式(17)可知,對于正確的三元組,L分數越低,代表性能越好.當模型優化時,采用隨機梯度下降法(SGD)來最小化損失函數.在訓練開始時,實體和關系的文本描述參數集和子類型投影矩陣隨機初始化,三元組自身的實體和關系使用TransE模型通過預先訓練的嵌入進行初始化.
使用WN18、WN18RR、FB15K、FB15K-237和YAGO3-10數據集,具體的數據數量如表1所示,其中,N為數量.WN18[7]按照術語的語義進行分組,反映實體間的內部屬性.FB15K[4]包含豐富的上下文信息,具有多種數據類型.對于YAGO3-10[32]數據集進行預處理,保留超過10個與實體相關聯的關系的三元組.WN18RR[33]與WN18相比,消除反向關系,提供更真實的表示方法為基準.FB15K-237[31]數據集通過刪除反向關系從原始Freebase數據集FB15K中提取.與WN18RR和YAGO3-10相比,FB15K-237數據集更具有復雜的關系類型和更少的實體.

表1 各數據集的數據數量統計Tab.1 Data quantity statistics for each data sets
使用SGD對ETLKRL模型進行訓練,設定以下參數的取值范圍:batch_sizeB∈(20, 240, 1200,4800),學習率λ∈(0.0005, 0.0010, 0.0020),最大間隔γ∈(0.5, 1.0, 2.0, 4.0, 7.0),實體和關系的向量維度n∈(50, 80, 100),投影矩陣為n×n,單詞和句子嵌入維度為(50, 80, 100),加權層次編碼器的權重η∈(0.10, 0.15, 0.25, 0.30).
由于數據集中只存在正例三元組,沒有負例三元組,需要從數據集中生成負樣本.使用二項分布判斷一個三元組是否作為負例三元組.現有數據集具有數據不對稱的特點,頭實體和尾實體之間的關聯程度差異大,極大地影響復雜關系數據集上模型預測的準確性.為了減少數據集不對稱性對實驗準確性的影響,對于可能被填充為負例的實體,以概率q替換頭實體,以概率1-q替換尾實體.
3.3.1 實體預測 實體預測是指去除三元組的頭實體或尾實體,在缺失部位替換任意實體,通過評價指標評估預測的準確性.常用的評價指標為MeanRank和Hits@n.MeanRank為預測正確實體的平均排序得分,MeanRank值越小表示排名越靠前;Hits@n為正確實體排在前n名的概率,該值越大表示效果越好.將未經處理的實驗設置稱為“Raw”,剔除對實驗有干擾的負例三元組的實驗設置稱為“Filter”.記錄所提模型和基線模型在實體預測任務上的MeanRank和Hits@n,實驗結果如表2所示.

表2 在WN18和FB15K數據集上不同模型實體預測的評估結果Tab.2 Evaluation results of different model entity predictions on WN18 and FB15K data sets
1)在WN18和FB15K這2個數據集上,ETLKRL模型的MeanRank和Hits@10均優于大多數基線模型.通過融合實體描述信息、文本關系和層次類型信息可以增強知識表示并提高鏈接預測性能,在構建知識表示時具有重要意義.
2)在WN18數據集上,ETLKRL模型的性能明顯優于TransE模型, MeanRank(Filter)值比最好的基線模型TransD降低了11.8%,Hits@10提升了6.5%.通過引入注意力機制更好地提取文本的有效特征,證明了ETLKRL模型比翻譯模型具有更高的知識表示能力,提高了預測精度.
3)在FB15K數據集上,ETLKRL的Hits@10實驗結果略低于ConvE模型[33],因為FB15K數據集的內部關系密集,結構相對復雜,ConvE模型擅長建模三重復雜結構信息.ETLKRL模型提取外部文本信息進行融合,從而略微降低結構表征學習的性能.
為了證明ETLKRL模型具有更好的表示能力,進一步預測模型在不同關系類型中的Hits@10值,根據TransE的實驗思路,將預測的目標實體劃分為更詳細的類型,如“1-1”、“1-N”、“N-1”和“N-N”,以更好地分析頭實體和尾實體之間不同關聯程度的實驗效果.對于FB15K數據集進行深入分析,發現FB15K中的1-1關系數有323個,1-N關系數有309個,N-1關系數有390個,N-N關系數有323個.實驗結果如表3所示.

表3 在FB15K數據集上各類關系的Hits@10值Tab.3 Hits@10 values of various relationships on FB15K data set %
1)所提的ETLKRL模型和基于翻譯的模型相比,整體上優于基線模型,充分證明了利用文本描述信息和層次類型信息可以作為結構化模型的補充.使用CNN對文本描述信息進行處理,增強了實體結構向量在現有KG中的表示.
2)在FB15K上,ETLKRL模型在預測頭實體和預測尾實體方面都取得了較好的結果.尤其在N-N上的結果最為突出,在預測頭實體和尾實體結果中,與最好的基線模型TransD(Bern)模型相比分別提高了12.6%和11.1%,表明同時融合層次類型信息和文本描述信息可以有效彌補外部信息不足的問題.
為了進一步證明ETLKRL模型能夠更好的完成預測任務,在YAGO3-10數據集上進行相關實驗.對比于WN18RR更復雜并且具有清晰語義層次的YAGO3-10數據集,該數據集包含來自維基百科的大量三元組.為了保證實驗的有效性,對數據集進行預處理,保留出度和入度在10~20的三元組,在MeanRank、Hits@10、Hits@3和Hits@1評價指標上預測模型的性能.實驗結果如表4所示, ETLKRL模型在Hits@3和Hits@1的性能指標上優于其他基線模型,表明融合文本信息后提高預測的精確度,適用于節點相關性高的復雜知識圖譜.在MeanRank和Hits@10評價指標上不如ConvE,分析有以下2點原因:1)ConvE模型直接對知識圖譜內部結構建模;2)YAGO3-10數據集的關系鏈接極其復雜,文本信息對數據集沒有顯著的語義補充效應.

表4 在YAGO3-10數據集上不同模型的鏈路預測結果Tab.4 Link prediction results of different models on YAGO3-10 data set
3.3.2 關系預測 關系預測是指給定缺失三元組(頭實體,?,尾實體)預測關系,為了證明模型的特定關系預測能力,在FB15K數據集上進行關系預測實驗,并記錄ETLKRL模型和基線模型的MeanRank和Hits@1實驗結果.如表5所示, ETLKRL模型的所有評價指標均優于其他基線模型.一方面,DKRL模型的思想是使用連續詞袋模型和卷積神經網絡模型處理文本描述信息,需要大量數據集才能更好地使模型收斂,降低關系預測的能力;另一方面,使用FB15K數據集,在測試集中存在與訓練集相反的關系,比TransE模型的預測結果稍有提高,從而證明了使用注意力機制的卷積神經網絡作用于包含一對實體的文本描述s,可以有效獲得關系的文本表示向量.充分利用知識圖譜的外部信息可以準確預測三元組中缺失的關系并提高關系預測的性能.

表5 在FB15K數據集上不同模型關系預測的評估結果Tab.5 Relationship prediction results of different models on FB15K data set
三元組分類的目的是判斷一個給定三元組是否正確,主要任務是對一個三元組進行“正確”或“錯誤”的二元分類.對于一個三元組,如果其得分小于給定的閾值σr,則預測正確,反之則錯誤.σr由驗證集獲得最大分類精度時的閾值所決定.在進行三元組分類實驗時,選用在WN18和FB15K數據集.三元組分類任務主要使用準確率(ACC)作為評價指標.ACC越高表示模型在三元組分類這一任務上的效果越好,準確率的計算公式為
式中:Tp為預測正確的正例三元組個數,Tn為預測正確的負例三元組個數,Npos和Nneg分別為訓練集中的正例三元組和負例三元組的個數.
結果如表6所示,從表中可以看出,ETLKRL模型在三元組分類任務上的結果均優于其他基線模型,在FB15K上的分類精度比DKRL模型高8.4%,比TKRL模型高8.5%,證明了同時融入文本描述信息和層次類型信息可以增強表示能力,彌補稀疏知識圖譜中信息不足問題;基于注意力機制的特征提取的方法能夠有效的獲取與實體相關的文本特征信息,并增強表示結果.

表6 在FB15K和WN18上不同模型的準確率結果Tab.6 Results of different model accuracy rates on FB15K and WN18 data sets %
為了直觀展示參數規模m和迭代次數n對模型的影響,在WN18RR和FB15K-237這2個數據集上進行對比實驗得到對應的平均倒數排名值(mean reciprocal rank ,MRR).結果如圖4所示,(a)和(b)為在WN18RR數據集上的結果,(c)和(d)為在FB15K-237數據集上的結果.與其他基線模型相比,在參數規模和迭代次數相同的情況下,ETLKRL模型的性能優于其他基線模型.對于WN18RR大多數類型的關系將2個不同層次的實體連接在一起,因此ETLKRL模型通過融合層次類型信息具備更優表示的能力,從而提高實體預測性能.

圖4 參數規模和迭代次數對模型的影響Fig.4 Influence of parameter size and iteration times on model
本研究提出一種融合文本描述信息和層次類型信息的聯合表示學習方法,使用CNN構建實體描述表示,使用加權CNN從文本信息中構建關系的表示,使用加權層次編碼器來構造層次類型的投影矩陣,將實體的所有層次類型投影矩陣與特定于關系的類型約束結合起來.在WN18、WN18RR、FB15K、FB15K-237和YAGO3-10數據集上,進行鏈接預測和三元組分類實驗.結果表明,所提方法在所有實驗任務上都優于其他基線模型,充分證明利用外部信息可以增強實體和關系向量的語義表示.
1)ETLKRL 模型是基于TransE模型,未來可以嘗試擴展到其他模型如TransR或TransD提高表示能力;
2)KG中還存在其他附加信息如關系路徑、圖像視覺信息和邏輯規則等,在后續研究中可以融合多源異質信息進一步優化ETLKRL模型.