潘亞寧,孟玉雪
(華北理工大學(xué)人工智能學(xué)院,唐山063210)
知識圖譜存儲的是實體和關(guān)系的結(jié)構(gòu)化信息,通常由三元組的集合構(gòu)成,每個三元組表示為(h,r,t)其中h、r、t分別表示頭實體、關(guān)系和尾實體[1]。搜索引擎、問答系統(tǒng)以及推薦系統(tǒng)等都非常依賴現(xiàn)有的知識圖譜(Knowledge Graph,KG),如Freebase、WordNet等,表示學(xué)習(xí)在這些應(yīng)用中起到了至關(guān)重要的作用。最近的嵌入技術(shù)方面的工作已經(jīng)大大提高了鏈接預(yù)測的準(zhǔn)確性,但是大多數(shù)方法僅依賴知識圖譜中的已知事實,它們的預(yù)測能力會受到數(shù)據(jù)庫中不完整信息的限制,一種簡單且有效的改進(jìn)途徑是從文本文檔中合并其他信息來增強(qiáng)其嵌入[2]。
互聯(lián)網(wǎng)上存在大量的文本數(shù)據(jù),但是這些數(shù)據(jù)大多都是非結(jié)構(gòu)化的,并且質(zhì)量參差不齊。當(dāng)前大多數(shù)表示學(xué)習(xí)方法只是簡單地利用了知識圖譜三元組數(shù)據(jù),而忽略了這些文本。雖然最近的一些模型用到了文本信息,但仍未實現(xiàn)對這些信息的有效利用。也有一些方法試圖將文本信息融合到知識圖譜。如關(guān)系抽取旨在通過識別關(guān)聯(lián)文本文檔中提到的新三元組來擴(kuò)展現(xiàn)有知識圖譜。但大多數(shù)關(guān)系抽取方法都需要進(jìn)行遠(yuǎn)程監(jiān)督,其中數(shù)據(jù)庫中每個現(xiàn)有的事實在文本中都用其提及來標(biāo)記?;趩l(fā)式規(guī)則的技術(shù)通常以這種方式自動對齊現(xiàn)有知識圖譜和文本[3]。但是這些方法的結(jié)果并不理想,因為句子中兩個實體的同時出現(xiàn)并不一定意味著該句子說明了它們之間的關(guān)系。
對于數(shù)據(jù)格式多樣化的自然語言,實體的描述文本中通常會包含的信息不僅僅是提到的三元組,還包括許多其他實體、關(guān)系的相關(guān)信息,例如實體的語義、屬性等,這些信息可以間接指示實體之間的語義相似性。因此,可以通過使用文本嵌入對象的表示來捕捉此類信息。
在Word2Vec模型[4]中,實體的向量表示定義為實體名稱中詞向量的均值,這種方法不僅可以用于實體的名稱還可以用于實體的描述,以實現(xiàn)實體嵌入之間共享類似的文本特征,如詞的屬性或關(guān)系。
結(jié)構(gòu)嵌入可以反映知識圖譜中實體和關(guān)系的結(jié)構(gòu)信息,這些文本數(shù)據(jù)使得訓(xùn)練過程可以學(xué)習(xí)實體的文本信息。首先獲取每個實體的關(guān)聯(lián)文本文檔,其中描述或定義了該實體。例如,歐洲的維基百科條目對實體的描述。這樣的數(shù)據(jù)還可以從百科全書、字典等多種渠道獲得。把從描述文本中的有意義的實詞提取出來作為實體描述,詞的向量化方法基于Word2Vec,將實體向量定義為實體名稱匯總詞向量的均值。這種方法的思想應(yīng)用于實體描述,可以增強(qiáng)實體嵌入共享如詞屬性或詞類別等文本特征。在語義上,存在某種關(guān)系的實體的嵌入會有更大的相似性。
模型的目標(biāo)在于最大化正確三元組的得分函數(shù),以此來更新和優(yōu)化參數(shù),最終得到實體和關(guān)系的嵌入表示。目標(biāo)函數(shù)定義為:
對于實體的描述信息,desc(ei)=wi,1,wi,2,…,令W表示單詞向量的矩陣nw×d矩陣,nw表示總的單詞數(shù),d是實體和關(guān)系的嵌入維度,令B表示ne×nw的矩陣,Bi表示實體的描述信息中每個單詞出現(xiàn)的次數(shù),實體ei的嵌入表示為:
如果直接用上式表示實體,一個問題是描述文本中的所有詞被同等對待,但是通常情況下,一些單詞更有助于實體在特定關(guān)系下的特征表達(dá)。如白宮、共和黨等詞比商人等其他單詞更能說明特朗普作為總統(tǒng)的屬性(特朗普,president_of,美國)。因此,實體“特朗普”在預(yù)測“president_of”關(guān)系時,白宮、共和黨等詞的權(quán)重應(yīng)該更大。當(dāng)表達(dá)不同關(guān)系時,一些詞相關(guān)性更大,需要根據(jù)關(guān)系為每個詞設(shè)置不同的權(quán)重。引入nr×nw的矩陣I,Ijk表示詞wk在預(yù)測關(guān)系rj時的重要性,ei表示為:
式中⊙表示逐個元素相乘。這樣詞向量到實體向量的總權(quán)重為詞在文本中出現(xiàn)的頻率和需要學(xué)習(xí)權(quán)重的組合。矩陣I中的參數(shù)數(shù)目nr×nw,即關(guān)系總數(shù)和單詞總數(shù)的乘積。但是,利用式(3)計算實體的表示,對于某些數(shù)據(jù)集來說,參數(shù)數(shù)量可能會非常龐大。針對這個問題,考慮通過從較小數(shù)量的參數(shù)計算出Iij而不是將每個參數(shù)定義為獨立參數(shù)來改進(jìn)。為此,引入一個nr×d矩陣P,并定義單詞wi在關(guān)系ri的權(quán)重如下:
這樣就得到了實體ei在表達(dá)關(guān)系rj時基于描述信息的表示形式:
式中的運(yùn)算是向量和矩陣乘法,蘊(yùn)含了單詞的加權(quán)平均的思想,與式(3)相比,需要訓(xùn)練的參數(shù)數(shù)量從nr×nw減少到了nr×d,實體文本信息嵌入的示意圖如圖1。
圖1 基于實體文本信息的嵌入示意圖
這個過程能自動學(xué)習(xí)單詞與不同關(guān)系的關(guān)聯(lián),而無需遠(yuǎn)程監(jiān)督。考慮到在同一關(guān)系下的實體將具有更大的相似性,因此將文本信息嵌入的評分函數(shù)定義為:
將文本信息部分的評分函數(shù),結(jié)合知識圖譜結(jié)構(gòu)信息的TransE模型的評分函數(shù),并增加一個權(quán)衡二者重要性的參數(shù),總的評分函數(shù)如式(7)。
式中α為權(quán)重參數(shù)。通過損失函數(shù)優(yōu)化模型參數(shù),與TransE模型類似,通過最大間隔的方法增強(qiáng)模型區(qū)別正確三元組和錯誤三元組的能力。為此,模型的損失函數(shù)定義為:
式中f(·)為評分函數(shù),γ為超間隔參數(shù),正確三元組和錯誤三元組損失函數(shù)的間隔大小。模型的訓(xùn)練參數(shù)θ=(E,R,I,P,α),其中E表示實體向量集,R表示關(guān)系向量集。采用負(fù)采樣的方法加快模型訓(xùn)練速度,優(yōu)化方法為AdaGrad,具體訓(xùn)練過程如下:
FB15k和WN18是表示學(xué)習(xí)最常用的兩個數(shù)據(jù)集,這兩個數(shù)據(jù)集以對稱、反對稱和逆關(guān)系為主。WN18是WordNet的一個子集,18表示數(shù)據(jù)集關(guān)系類型的數(shù)量,WN18中實體數(shù)量較多關(guān)系數(shù)較少。FB15k是Freebase的一個子集,有較多的關(guān)系類型,包含了1345種關(guān)系和1.5萬多個實體[5],如表1所示。
表1 實驗用的數(shù)據(jù)集
截取WN18數(shù)據(jù)集中的一部分如圖2予以說明。WN18數(shù)據(jù)集中的第3090條三元組(07849336,_hypernym,07555863)的實際意思是詞“yogurt”與詞“solid_food”之間存在“hypernym”的關(guān)系,也就是三元組(yogurt,hypernym,solid_food)表示了與“酸奶”具有“上位詞”關(guān)系的實體是“固體食品”。
圖2 WN18數(shù)據(jù)集示例
對于實體描述詞的向量化,使用對谷歌新聞數(shù)據(jù)集訓(xùn)練的Word2Vec向量。對于Freebase實體描述,使用與每個實體相關(guān)的維基百科頁面的summary部分,并且刪除其中的停用詞。在Freebase中,一些實體的維基百科頁面不可用,為此刪除了所有沒有描述的實體以及相關(guān)聯(lián)的所有三元組。WN18數(shù)據(jù)集中不僅包含了三元組,也提供了實體的解釋文本,可以作為實體的文本信息。
所有實驗均使用AdaGrad算法公式進(jìn)行優(yōu)化,采用(MR)Mean Rank和Hit@10指標(biāo)來評估每個模型的鏈接預(yù)測性能。計算正確的三元組得分,同樣地替換頭實體或者尾實體得到錯誤三元組的得分,然后計算正確三元組得分的排名。MR定義為所有正確三元組排名的平均值,Hit@10則表示為正確三元組得分排名在前10的比例。所有的實驗的訓(xùn)練次數(shù)均為200次,批次大小為1024,。根據(jù)驗證性能選擇學(xué)習(xí)率為0.01,權(quán)重α=0.85,嵌入維度d=100,間隔超參數(shù)γ=1.0。
鏈接預(yù)測:在給定三元組中兩項情況下,預(yù)測第三項。
評估方法:得分平均排名(Mean Rank,MR)、平均倒數(shù)排名(Mean Reciprocal Rank,MRR)、前10命中率(Hit@10)。
MR:對于測試集的三元組數(shù)據(jù)每一條三元組,用實體集所有實體替換頭實體或尾實體,其中原來正確三元組的評分在的排名即為MR。
MR:測試集三元組評分排名的倒數(shù)。
Hit@10:測試集三元組的評分排名在前10的比例。
替換正確三元組的頭或者尾作為錯誤三元組,與原正確三元組一起構(gòu)成測試集。這樣做會生成假陰性樣本,為此剔除測試集三元組中正確三元組的情況稱為“Filter”,未剔除的稱為“row”,最后得到的結(jié)果如表2所示。
表2 實體預(yù)測的評估結(jié)果
(1)與僅利用知識圖譜結(jié)構(gòu)信息的TransE模型相比,引入文本信息的模型在各個指標(biāo)上的結(jié)果都有一定程度的提升,在MR指標(biāo)的效果尤為明顯。由此可以肯定文本信息對知識圖譜結(jié)構(gòu)信息的補(bǔ)充作用,以及增強(qiáng)知識圖譜表示學(xué)習(xí)的效果。
(2)對比模型在FB15k和WN18數(shù)據(jù)集的表現(xiàn),在FB15k上的效果明顯更佳。在WN18數(shù)據(jù)集上評分不如TransE模型的三元組,其頭實體和尾實體的描述文本中平均有0.67個公共詞,而評分比TransE基礎(chǔ)模型好的三元組,頭尾實體描述文本中平局有0.89個公共詞。相比之下,F(xiàn)B15k中的三元組頭尾實體平均公共詞有20個,因此,更詳細(xì)的實體文本描述能使得模型性能更好。
針對知識圖譜精確結(jié)構(gòu)化數(shù)據(jù)在數(shù)量和范圍的限制,提出一種從非結(jié)構(gòu)化的實體描述文本中提取信息,以補(bǔ)充知識圖譜信息的方法。實體的描述文本被視為一系列實體關(guān)聯(lián)詞,通過這些關(guān)聯(lián)詞的加權(quán)和生成實體基于文本信息的向量表示。為了更好地利用實體的文本描述語義信息,根據(jù)關(guān)系的不同為描述單詞設(shè)置不同權(quán)重。將文本信息的表示與知識圖譜三元組結(jié)構(gòu)表示聯(lián)合訓(xùn)練。最終得到了實體和關(guān)系的基于三元組的結(jié)構(gòu)表示,文本信息能夠使實體在不同關(guān)系中產(chǎn)生不同的表達(dá)。實驗結(jié)果表明,有效利用實體描述文本的表示學(xué)習(xí)模型能夠在鏈接預(yù)測任務(wù)中有更好的效果。