宋浩楠,趙 剛,王興芬
北京信息科技大學(xué) 信息管理學(xué)院,北京 100192
隨著知識(shí)圖譜相關(guān)技術(shù)的快速發(fā)展,各種大規(guī)模的知識(shí)圖譜被構(gòu)建出來(lái)并廣泛服務(wù)于各個(gè)領(lǐng)域。例如Freebase[1]、DBpedia[2]、NELL[3]等知識(shí)圖譜都為研究和應(yīng)用提供了巨大數(shù)據(jù)支撐。但是,無(wú)論是自動(dòng)化構(gòu)建或人工構(gòu)建的通用知識(shí)圖譜,還是自動(dòng)化構(gòu)建或人工構(gòu)建的領(lǐng)域知識(shí)圖譜,絕大多數(shù)都存在一定程度的不完備問(wèn)題[4],知識(shí)圖譜中存在大量的實(shí)體和關(guān)系缺失。知識(shí)圖譜補(bǔ)全技術(shù)便是為了應(yīng)對(duì)實(shí)體和關(guān)系缺失而出現(xiàn),該技術(shù)的最主要方法就是知識(shí)推理[5]。
近年來(lái),基于知識(shí)表示學(xué)習(xí)推理和基于關(guān)系路徑推理等研究方法,已成為知識(shí)推理研究的熱點(diǎn)。知識(shí)表示學(xué)習(xí)方法(TransE[6]、TransH[7]等)因其具有較好的效率和性能,所以被廣泛應(yīng)用于知識(shí)推理相關(guān)任務(wù)中,該類(lèi)模型將知識(shí)圖譜中的實(shí)體和關(guān)系映射到低維向量空間,并在此空間中進(jìn)行計(jì)算完成推理;關(guān)系路徑推理方法作為一種適用于大規(guī)模知識(shí)圖譜的推理方法引起關(guān)注和研究,其主要思想是:在知識(shí)圖譜中充分挖掘和利用實(shí)體間多步關(guān)系,組成路徑信息從而完成知識(shí)推理。而知識(shí)表示學(xué)習(xí)和關(guān)系路徑相融合的方法因其同時(shí)具備以上兩種優(yōu)勢(shì),因此得到廣泛的研究和利用。
盡管如此,現(xiàn)階段知識(shí)圖譜補(bǔ)全研究中仍存在可解釋性差、大規(guī)模知識(shí)推理效率和準(zhǔn)確率較低的問(wèn)題,特別是推理的可解釋性[8]逐漸受到領(lǐng)域研究者的關(guān)注。針對(duì)這類(lèi)問(wèn)題,本文提出了一種將知識(shí)表示和深度強(qiáng)化學(xué)習(xí)(Reinforcement Learning,RL)相結(jié)合的方法RLPTransE。將知識(shí)圖譜中的所有的三元組信息通過(guò)知識(shí)表示方法映射成低維向量空間中的稠密向量,充分保留其語(yǔ)義信息,同時(shí)引入強(qiáng)化學(xué)習(xí)方法,將知識(shí)圖譜中知識(shí)推理問(wèn)題轉(zhuǎn)化為馬爾可夫序列決策問(wèn)題,通過(guò)知識(shí)表示和強(qiáng)化學(xué)習(xí)相融合的方法充分挖掘知識(shí)圖譜中的有效推理規(guī)則,并且對(duì)智能體選擇的路徑質(zhì)量進(jìn)行了控制,從而高效完成大規(guī)模知識(shí)圖譜的補(bǔ)全任務(wù),該融合方法也為知識(shí)推理的混合推理研究提供了新的思路。
與其他方法相比,本文方法在大規(guī)模數(shù)據(jù)集上的表現(xiàn)均優(yōu)于知識(shí)表示學(xué)習(xí)推理和關(guān)系路徑推理等方法。
本文的主要貢獻(xiàn):
(1)提出了一種融合知識(shí)表示和深度強(qiáng)化學(xué)習(xí)的知識(shí)推理方法RLPTransE,將知識(shí)推理問(wèn)題轉(zhuǎn)化為序列決策問(wèn)題,增強(qiáng)了推理的可解釋性。
(2)提出了一種單步擇優(yōu)策略網(wǎng)絡(luò)和多步推理策略網(wǎng)絡(luò)的雙網(wǎng)絡(luò)結(jié)構(gòu)。其目的是準(zhǔn)確并高效地挖掘高質(zhì)量推理規(guī)則。
(3)該融合推理方法充分發(fā)揮了兩者的優(yōu)勢(shì),在公開(kāi)標(biāo)準(zhǔn)數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)結(jié)果顯示,本方法取得了較好的性能,為知識(shí)推理的混合推理研究提供了新的思路。
知識(shí)圖譜的中知識(shí)缺失問(wèn)題普遍存在,而知識(shí)推理是解決知識(shí)圖譜補(bǔ)全任務(wù)的重要方法。大規(guī)模知識(shí)圖譜中知識(shí)推理方法大致分為三類(lèi):基于知識(shí)表示學(xué)習(xí)的方法、基于關(guān)系路徑的方法和基于知識(shí)表示學(xué)習(xí)和關(guān)系路徑融合的方法。本章將按照此類(lèi)別對(duì)國(guó)內(nèi)外知識(shí)推理方法研究進(jìn)行介紹。
自詞嵌入表示模型提出后,許多自然語(yǔ)言任務(wù)都證明了其重要作用。受此啟發(fā),對(duì)知識(shí)三元組的表示學(xué)習(xí)也取得了許多突破性成果。Border等人[6]提出了TransE,將知識(shí)庫(kù)中實(shí)體之間的關(guān)系當(dāng)作實(shí)體間的某種平移,實(shí)現(xiàn)了對(duì)多元關(guān)系數(shù)據(jù)高效建模的知識(shí)補(bǔ)全,但該模型在處理一對(duì)多等復(fù)雜關(guān)系表示問(wèn)題存在不足。針對(duì)這個(gè)問(wèn)題,后續(xù)研究提出了許多衍生版本。Wang等人[7]提出TransH,引入超平面法向量,實(shí)現(xiàn)了不同實(shí)體在不同關(guān)系下?lián)碛胁煌谋硎荆M知識(shí)仍處于相同的語(yǔ)義空間,限制了自身的表達(dá)能力;Lin等人[9]提出了TransR,為每一種關(guān)系定義單獨(dú)的語(yǔ)義空間,并使用不相同的映射矩陣實(shí)現(xiàn)從實(shí)體空間到不同關(guān)系空間的映射;Ji 等人[10]提出TransD,不僅考慮關(guān)系的多樣性,而且考慮實(shí)體的多樣性,提出了不同實(shí)體具有不同的映射矩陣,減少模型參數(shù)的同時(shí)使模型更加靈活。Ebisu等人[11]提出TorusE,將TransE的思想應(yīng)用在李群(Lie group)理論的環(huán)面空間中。Sun 等人[12]提出RotatE,實(shí)現(xiàn)知識(shí)表示學(xué)習(xí)從實(shí)數(shù)空間到復(fù)數(shù)空間的擴(kuò)展。將關(guān)系看作是從頭實(shí)體到尾實(shí)體的旋轉(zhuǎn)。Zhang 等人[13]引入超復(fù)數(shù)的概念,提出了QuatE,與RotatE類(lèi)似,該模型將關(guān)系看作超復(fù)數(shù)平面內(nèi)頭實(shí)體到尾實(shí)體的旋轉(zhuǎn)。相比于其他先進(jìn)方法,上述方法存在以下問(wèn)題:(1)將知識(shí)推理轉(zhuǎn)化為單一的向量計(jì)算,帶來(lái)了可解釋性差的問(wèn)題;(2)未能充分利用關(guān)系路徑等重要信息,推理能力受限,推理準(zhǔn)確率尚有較大提升空間。
該類(lèi)方法主要是基于知識(shí)庫(kù)中圖的結(jié)構(gòu)特性進(jìn)行研究推理[14]。Lao 等人[15]提出了路徑排序算法(Path Ranking Algorithm,PRA),將知識(shí)庫(kù)中連接實(shí)體的不同的關(guān)系路徑作為特征,通過(guò)在知識(shí)庫(kù)中統(tǒng)計(jì)路徑來(lái)構(gòu)建分類(lèi)的特征向量,建立針對(duì)關(guān)系的分類(lèi)器來(lái)預(yù)測(cè)兩個(gè)實(shí)體之間的關(guān)系。Lao等人[16]基于PRA算法,通過(guò)調(diào)整和組合圖中不同隨機(jī)游走相關(guān)權(quán)重來(lái)學(xué)習(xí)推斷關(guān)系,提升路徑推理質(zhì)量的同時(shí)使其更適用于大規(guī)模知識(shí)圖譜推理。Gardner 等人[17]提出的子圖特征提取模型,將圖中的節(jié)點(diǎn)對(duì)生成特征矩陣,通過(guò)修改PRA 路徑搜索的過(guò)程,提取路徑之外更豐富的特征,提高推理的效率。Gardner 等人[18]通過(guò)結(jié)合文本內(nèi)容對(duì)PRA 算法進(jìn)行修改,引入了向量空間相似性,緩解了PRA中的特征稀疏性問(wèn)題。Das等人[19]使用RNN模型,通過(guò)遞歸方式組合知識(shí)圖譜中多跳路徑的分布式語(yǔ)義從而構(gòu)成關(guān)系路徑,并且在推理過(guò)程中引入了注意力機(jī)制。Chen 等人[20]設(shè)計(jì)了概率圖模型下的推理問(wèn)題,在知識(shí)推理中引入變分推理框架,將路徑搜索和路徑推理緊密結(jié)合從而進(jìn)行聯(lián)合推理,大幅提升了推理效果。相比于其他先進(jìn)方法,上述方法存在如下問(wèn)題:(1)由于存在數(shù)據(jù)稀疏問(wèn)題,知識(shí)圖譜中的信息未被充分利用;(2)未考慮路徑的可靠性[5]計(jì)算問(wèn)題,難以適用于大規(guī)模知識(shí)圖譜。
上面的兩類(lèi)模型僅考慮了圖譜中實(shí)體間的直接關(guān)系或者只考慮了實(shí)體間簡(jiǎn)單的路徑關(guān)系,但事實(shí)上,知識(shí)圖譜中實(shí)體之間的關(guān)系路徑隱含著豐富的語(yǔ)義信息,研究知識(shí)表示和關(guān)系路徑的融合方法具有重要意義。Lin等人[21]設(shè)計(jì)了PTransE,使用語(yǔ)義連接算法表示路徑關(guān)系,同時(shí)引入路徑約束資源分配算法來(lái)衡量關(guān)系路徑的可靠性,將實(shí)體和關(guān)系映射到低維空間中表示計(jì)算,從而顯著提高推理能力。陳海旭等人[22]提出了PSTransE,該模型對(duì)PTransE進(jìn)行了改進(jìn),用關(guān)系和路徑的向量相似度來(lái)表示路徑推理關(guān)系的概率,通過(guò)互補(bǔ)方法計(jì)算推理概率,在綜合考慮相關(guān)路徑信息的同時(shí),更注重關(guān)鍵路徑對(duì)推理所起的決定性作用。文獻(xiàn)[23-24]都是在PTransE的基礎(chǔ)上的改進(jìn)模型,它們的基本結(jié)構(gòu)一致,僅在知識(shí)的表示方式上存在不同。
近年來(lái),機(jī)器學(xué)習(xí)的可解釋性越來(lái)越得到大家的關(guān)注,強(qiáng)化學(xué)習(xí)在可解釋性和性能等方面的優(yōu)勢(shì),使得強(qiáng)化學(xué)習(xí)應(yīng)用于知識(shí)推理領(lǐng)域成為研究熱點(diǎn)。Xiong 等人[25]設(shè)計(jì)了DeepPath,將知識(shí)庫(kù)中知識(shí)推理過(guò)程轉(zhuǎn)化為馬爾可夫序列決策過(guò)程(Marcov Decision Process,MDP),以實(shí)體集合為狀態(tài)空間,關(guān)系集合為動(dòng)作空間,智能體通過(guò)選擇最優(yōu)動(dòng)作以拓展其路徑來(lái)實(shí)現(xiàn)知識(shí)庫(kù)中的推理。但由于DeepPath模型簡(jiǎn)單,并且需要提供大量已知路徑進(jìn)行預(yù)訓(xùn)練,訓(xùn)練過(guò)程復(fù)雜,因此其推理性能存在很大提升空間。Das等人[26]提出了MINERVA,將起始實(shí)體到目的實(shí)體之間的路徑選擇問(wèn)題轉(zhuǎn)化為序列決策問(wèn)題,通過(guò)建模以查詢(xún)問(wèn)題為條件引導(dǎo)模型在知識(shí)庫(kù)中找出預(yù)測(cè)路徑,解決了在已知一個(gè)實(shí)體和關(guān)系情況下的問(wèn)答問(wèn)題。Lin等人[27]提出了Multi-Hop,針對(duì)路徑擇優(yōu)和路徑多樣性探索的問(wèn)題分別提出了軟獎(jiǎng)勵(lì)機(jī)制和隨機(jī)Action-Drop方法。Li等人[28]提出了DIVINE,一種基于生成式對(duì)抗模仿學(xué)習(xí)的框架,并通過(guò)模仿從知識(shí)庫(kù)中自動(dòng)采樣來(lái)自適應(yīng)地學(xué)習(xí)推理策略和獎(jiǎng)勵(lì)函數(shù)。Wang等人[29]提出了AttnPath,將LSTM和圖注意力機(jī)制作為記憶組件,并提出一種新的避免智能體停滯不前的強(qiáng)化學(xué)習(xí)機(jī)制來(lái)提高推理成功率。相比于其他先進(jìn)方法,上述方法側(cè)重于提高推理準(zhǔn)確率,但由于引入許多新技術(shù),模型的復(fù)雜度更高,推理效率較低。
上述推理方法,各有其優(yōu)點(diǎn)和不足。因此本文考慮結(jié)合這兩類(lèi)方法的優(yōu)勢(shì)來(lái)提高模型推理的可解釋性、準(zhǔn)確性和推理效率,于是本文提出了一種融合知識(shí)表示和深度強(qiáng)化學(xué)習(xí)的推理方法RLPTransE。如圖1 所示,使用知識(shí)表示學(xué)習(xí)方法,將知識(shí)圖譜映射到含有三元組語(yǔ)義信息的向量空間中,然后在該空間中建立深度強(qiáng)化學(xué)習(xí)的環(huán)境。通過(guò)基于有監(jiān)督的單步擇優(yōu)策略網(wǎng)絡(luò)的訓(xùn)練,降低RL智能體單步錯(cuò)誤動(dòng)作的選擇率,再通過(guò)基于獎(jiǎng)勵(lì)函數(shù)的多步推理策略網(wǎng)絡(luò)的訓(xùn)練,提升RL 智能體搜索正確路徑的成功率。最終,實(shí)現(xiàn)RL 智能體在與知識(shí)圖譜環(huán)境交互過(guò)程中,成功挖掘推理規(guī)則進(jìn)而完成推理任務(wù)。
圖1 融合知識(shí)表示和深度強(qiáng)化學(xué)習(xí)的知識(shí)推理模型框架圖Fig.1 Overall framework of integrating knowledge representation and deep reinforcement learning model for knowledge reasoning
為了解決大規(guī)模知識(shí)推理面臨的復(fù)雜數(shù)據(jù)高效利用的問(wèn)題,在詞嵌入表示模型的啟發(fā)下,研究人員基于分布式思想提出知識(shí)表示學(xué)習(xí)(Knowledge Representation Learning,KRL)的方法[6],將實(shí)體和關(guān)系的語(yǔ)義信息映射到低維向量空間,使得語(yǔ)義相近對(duì)象的向量表示距離也相近。
在TransE模型中,知識(shí)庫(kù)中的關(guān)系當(dāng)作實(shí)體間的某種平移。對(duì)于知識(shí)庫(kù)中三元組,用lh、lr和lt依次表示頭向量、關(guān)系向量和尾向量。該模型的核心思想如公式所示:
使用基于邊界的方法,定義了如下優(yōu)化目標(biāo)函數(shù):
其中,S是正樣本三元組集合;S′是負(fù)樣本三元組集合,該集合是通過(guò)隨機(jī)替換正樣本三元組的頭實(shí)體或者尾實(shí)體得到;[x]+表示max(0,x);γ表示一個(gè)邊界參數(shù),是一個(gè)需要設(shè)置為大于零的超參。
當(dāng)前知識(shí)表示學(xué)習(xí)模型多樣。本文選用了TransE模型,因其參數(shù)數(shù)量較少,在大規(guī)模稀疏數(shù)據(jù)集上效果明顯,在與深度強(qiáng)化學(xué)習(xí)融合過(guò)程中,解決了知識(shí)稀疏性問(wèn)題,提高了模型整體效果,實(shí)驗(yàn)結(jié)果證明該模型對(duì)本文方法具有支撐作用。
本文將知識(shí)圖譜中推理問(wèn)題轉(zhuǎn)化為馬爾可夫序列決策問(wèn)題,RL 智能體的動(dòng)作選擇和狀態(tài)轉(zhuǎn)移都是在該框架中進(jìn)行的,故本部分將介紹對(duì)知識(shí)圖譜的強(qiáng)化學(xué)習(xí)建模過(guò)程。
該過(guò)程主要由四部分組成,下面將其進(jìn)行詳細(xì)介紹。
(1)狀態(tài)空間S
本模型的狀態(tài)空間S是由知識(shí)圖譜中的有效實(shí)體集合E組成的。針對(duì)本文的雙策略網(wǎng)絡(luò)結(jié)構(gòu),設(shè)計(jì)了兩種狀態(tài)。在單步擇優(yōu)策略網(wǎng)絡(luò)中,將每個(gè)實(shí)體作為RL智能體的具體狀態(tài)s;在多步推理策略網(wǎng)絡(luò)中,將當(dāng)前實(shí)體和目標(biāo)實(shí)體作為RL 智能體的具體狀態(tài)s,其中狀態(tài)s∈S。狀態(tài)的兩種表示如下:
其中,ec表示知識(shí)圖譜中的當(dāng)前實(shí)體,et表示知識(shí)圖譜中的目的實(shí)體,s1t、s2t是當(dāng)前實(shí)體在狀態(tài)空間中的向量化表示。為了規(guī)范化表達(dá),如無(wú)特殊說(shuō)明,本文狀態(tài)均用s表示。
(2)動(dòng)作空間A
RL智能體在當(dāng)前狀態(tài)下,經(jīng)過(guò)動(dòng)作選擇后,基于環(huán)境的交互反饋實(shí)現(xiàn)狀態(tài)轉(zhuǎn)移。本模型的動(dòng)作空間A是由智能體可能選擇的動(dòng)作集合As組成的,它是由狀態(tài)s的當(dāng)前位置實(shí)體在知識(shí)圖譜G 中所有可能的輸出邊組成的,動(dòng)作集合表示如下:
其中,ec、en分別表示當(dāng)前位置實(shí)體和下一個(gè)可能的位置實(shí)體,a表示采取的動(dòng)作,S表示狀態(tài)空間,R表示關(guān)系集合,E表示實(shí)體集合。
特別地,關(guān)系集合R由知識(shí)圖譜中已存在的關(guān)系r和新添加關(guān)系r-1兩部分組成,r-1是關(guān)系r的逆關(guān)系。大量實(shí)驗(yàn)研究表明,將r-1關(guān)系添加到動(dòng)作空間中,不僅可以使智能體自動(dòng)撤銷(xiāo)錯(cuò)誤的決策,而且還可能發(fā)現(xiàn)一些隱含的推理信息。
(3)狀態(tài)轉(zhuǎn)移P
RL智能體通過(guò)選擇當(dāng)前狀態(tài)下的最優(yōu)動(dòng)作實(shí)現(xiàn)狀態(tài)轉(zhuǎn)移,具體而言,智能體以知識(shí)圖譜中的某個(gè)實(shí)體為當(dāng)前位置,選擇一個(gè)與當(dāng)前實(shí)體相連的某個(gè)具體關(guān)系作為下一步執(zhí)行的動(dòng)作,然后執(zhí)行該動(dòng)作,實(shí)現(xiàn)智能體狀態(tài)轉(zhuǎn)移。狀態(tài)轉(zhuǎn)移P表示如下:
(4)獎(jiǎng)勵(lì)函數(shù)γ
RL 智能體完成一次完整的任務(wù)過(guò)程后,環(huán)境都會(huì)給予智能體一定的獎(jiǎng)勵(lì),包括正向獎(jiǎng)勵(lì)和負(fù)向獎(jiǎng)勵(lì),智能體根據(jù)這些反饋的獎(jiǎng)勵(lì)值來(lái)更新自己的策略,以實(shí)現(xiàn)最大化的獎(jiǎng)勵(lì)。本文采取了多樣化的獎(jiǎng)勵(lì)方式,下面將對(duì)獎(jiǎng)勵(lì)函數(shù)進(jìn)行詳細(xì)介紹。
全局獎(jiǎng)勵(lì)在同環(huán)境交互過(guò)程中,智能體會(huì)有大量的可選動(dòng)作,這就意味著智能體很有可能選擇錯(cuò)誤的動(dòng)作,從而導(dǎo)致無(wú)法到達(dá)目標(biāo)狀態(tài)。為了解決該問(wèn)題,強(qiáng)化學(xué)習(xí)方法添加了一個(gè)全局獎(jiǎng)勵(lì)函數(shù)。若智能體在與環(huán)境的交互過(guò)程中,從起始狀態(tài)ecur成功達(dá)到目標(biāo)狀態(tài)etar,則給予智能體一個(gè)正向獎(jiǎng)勵(lì),否則無(wú)獎(jiǎng)勵(lì)。其定義如下:
單步負(fù)向獎(jiǎng)勵(lì) 在同環(huán)境交互過(guò)程中,智能體可能選擇大量錯(cuò)誤動(dòng)作,為了降低智能體的錯(cuò)誤動(dòng)作選擇率,定義了單步負(fù)向獎(jiǎng)勵(lì)函數(shù),當(dāng)智能體選擇的動(dòng)作不能推理出目標(biāo)實(shí)體時(shí),給予負(fù)向獎(jiǎng)勵(lì)。
路徑長(zhǎng)度獎(jiǎng)勵(lì)對(duì)于知識(shí)圖譜中的推理任務(wù),大量的研究表明:短關(guān)系路徑p比長(zhǎng)關(guān)系路徑p更能提供有價(jià)值的推理關(guān)系。為了限制推理路徑的長(zhǎng)度,提高推理效率。本文定義了如下的路徑長(zhǎng)度獎(jiǎng)勵(lì)函數(shù):
路徑多樣性獎(jiǎng)勵(lì)為了使智能體推理出不同的關(guān)系路徑,本文定義了如下的路徑多樣性獎(jiǎng)勵(lì)函數(shù):
其中 |F|表示已發(fā)現(xiàn)的路徑的數(shù)量,p和pi表示關(guān)系路徑組成的表示向量。
單步擇優(yōu)策略網(wǎng)絡(luò)僅使用全局獎(jiǎng)勵(lì)進(jìn)行訓(xùn)練,多步推理策略網(wǎng)絡(luò)則綜合使用4種獎(jiǎng)勵(lì)函數(shù)進(jìn)行訓(xùn)練,訓(xùn)練過(guò)程中保證正向獎(jiǎng)勵(lì)總和大于負(fù)向獎(jiǎng)勵(lì)總和。
(5)策略神經(jīng)網(wǎng)絡(luò)
由于大規(guī)模知識(shí)圖譜的關(guān)系數(shù)量眾多,建模出來(lái)的強(qiáng)化學(xué)習(xí)方法的動(dòng)作空間規(guī)模龐大,因此本文直接選擇基于策略梯度的深度強(qiáng)化學(xué)習(xí)來(lái)完成該任務(wù)。本文使用三層全連接神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)策略函數(shù),其中在每個(gè)隱藏層之后添加非線(xiàn)性層(ReLU),并使用softmax函數(shù)對(duì)輸出層進(jìn)行歸一化處理。該策略網(wǎng)絡(luò)實(shí)現(xiàn)了將狀態(tài)向量s映射到所有選擇動(dòng)作的概率分布中,本方法采用REINFORCE[30]策略進(jìn)行參數(shù)優(yōu)化,如下面公式所示:
其中θ是策略網(wǎng)絡(luò)的參數(shù),π(a=rt|st;θ)是基于狀態(tài)st時(shí)策略網(wǎng)絡(luò)輸出動(dòng)作為rt的概率,γ是選擇該動(dòng)作獲得的獎(jiǎng)勵(lì)值。
本文方法中單步擇優(yōu)策略網(wǎng)絡(luò)和多步推理策略網(wǎng)絡(luò)使用了相同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。
訓(xùn)練過(guò)程由單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練和多步推理策略網(wǎng)絡(luò)訓(xùn)練兩部分組成。如圖1所示,首先使用有監(jiān)督策略學(xué)習(xí)方法對(duì)單步擇優(yōu)策略網(wǎng)絡(luò)進(jìn)行訓(xùn)練,提高RL智能體在推理過(guò)程中單步擇優(yōu)能力。將訓(xùn)練后的參數(shù)作為多步推理策略網(wǎng)絡(luò)的初始化參數(shù),基于獎(jiǎng)勵(lì)函數(shù)對(duì)多步推理策略網(wǎng)絡(luò)進(jìn)行再訓(xùn)練,提高智能體在推理任務(wù)中的多步路徑擇優(yōu)能力。
2.3.1 基于有監(jiān)督的單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練
本文首先對(duì)RL智能體進(jìn)行有監(jiān)督策略學(xué)習(xí)的單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練任務(wù),目的是讓智能體盡可能地在第一步就選擇正確動(dòng)作。單步擇優(yōu)策略網(wǎng)絡(luò)在知識(shí)圖譜推理任務(wù)中只需訓(xùn)練一次,極大提高了推理效率。
(1)訓(xùn)練集
知識(shí)圖譜中的三元組集合F={eh,r,et} 是RL 智能體知識(shí)推理的環(huán)境。首先,為三元組集合F中元素添加一個(gè)反向關(guān)系,生成一個(gè)新的三元組集合F′={(eh,r,et),(et,r′,eh)}。取出F′中三元組的前兩部分并將相同部分合并組成二元組訓(xùn)練集合Dtrain={(eh,r),(et,r′)}。
(2)訓(xùn)練流程及算法
RL 智能體依次將訓(xùn)練集合Dtrain中的實(shí)體作為的起始狀態(tài)ecur,并輸入到深度強(qiáng)化學(xué)習(xí)的策略網(wǎng)絡(luò)中,根據(jù)策略網(wǎng)絡(luò)的輸出結(jié)果,選擇一個(gè)關(guān)系r作為下一步的執(zhí)行動(dòng)作,此時(shí)判斷起始狀態(tài)ecur和單步動(dòng)作選擇的關(guān)系r組成的新二元組是否屬于Dtrain,若是,給予+1獎(jiǎng)勵(lì)并更新策略網(wǎng)絡(luò)。預(yù)訓(xùn)練算法如算法1所示。
算法1單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練算法
輸入:Dtrain
輸出:強(qiáng)化學(xué)習(xí)智能體的策略網(wǎng)絡(luò)參數(shù)
2.3.2 基于獎(jiǎng)勵(lì)函數(shù)的多步推理策略網(wǎng)絡(luò)訓(xùn)練
經(jīng)過(guò)單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練后,RL 智能體對(duì)單步動(dòng)作選擇具有很高的成功率,但它在知識(shí)圖譜環(huán)境交互過(guò)程中多步動(dòng)作選擇的成功率卻很低。而對(duì)于知識(shí)推理任務(wù)而言,實(shí)現(xiàn)多步推理才是任務(wù)目標(biāo)。本部分的主要目的是通過(guò)基于獎(jiǎng)勵(lì)函數(shù)的再訓(xùn)練,提高智能體在推理任務(wù)中的多步路徑選擇能力。
(1)訓(xùn)練集
為了提高本模型的整體性能,對(duì)于知識(shí)圖譜中的三元組集合F={eh,r,et},將r作為推理任務(wù)。針對(duì)特定的推理任務(wù)r′(r′∈r),將三元組集合F中含有關(guān)系r′的三元組分離出來(lái),組成推理任務(wù)三元組集合T={eh,r′,et},按照比例7∶3分為訓(xùn)練集Trainset和測(cè)試集Testset。
(2)訓(xùn)練流程及算法
與單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練任務(wù)不同,多步推理策略網(wǎng)絡(luò)訓(xùn)練的目的是使RL智能體高效的完成多步關(guān)系路徑推理任務(wù)。對(duì)于推理任務(wù)三元組集合T={eh,r′,et} 中的三元組(eh,r′,et),RL智能體從起始狀態(tài)eh出發(fā),通過(guò)與知識(shí)圖譜環(huán)境不斷地交互中發(fā)現(xiàn)有效路徑,尋找除了關(guān)系r′外到達(dá)目的狀態(tài)et的路徑。在與知識(shí)圖譜環(huán)境不斷地交互過(guò)程中,使用多種獎(jiǎng)勵(lì)函數(shù)對(duì)深度強(qiáng)化學(xué)習(xí)進(jìn)行多步推理策略網(wǎng)絡(luò)訓(xùn)練。訓(xùn)練的算法2如下所示。
算法2多步推理策略網(wǎng)絡(luò)訓(xùn)練算法
輸入:訓(xùn)練集Trainset
輸出:強(qiáng)化學(xué)習(xí)智能體的策略網(wǎng)絡(luò)參數(shù)
通過(guò)公開(kāi)數(shù)據(jù)驗(yàn)證方法有效性,并通過(guò)對(duì)比和消融實(shí)驗(yàn)來(lái)進(jìn)一步分析說(shuō)明。代碼使用Python 編寫(xiě),基于TensorFlow框架實(shí)現(xiàn)。運(yùn)行環(huán)境為Ubuntu 18.04.5操作系統(tǒng),Intel?Xeon Silver4210 2.20 GHz CPU和NVIDIA Tesla V100S GPU。
本文實(shí)驗(yàn)中,采用知識(shí)推理領(lǐng)域通用的兩個(gè)基準(zhǔn)數(shù)據(jù)集FB15K-237[31]和NELL-995[25]作為對(duì)比實(shí)驗(yàn)的實(shí)驗(yàn)數(shù)據(jù)集,兩者都是較大數(shù)據(jù)集的子集,其中FB15K-237中的三元組是從FB15K中去除了冗余關(guān)系后得到的數(shù)據(jù)集。NELL-995 是基于NELL 系統(tǒng)的第995 次迭代產(chǎn)生的數(shù)據(jù)集整理后的數(shù)據(jù)集。數(shù)據(jù)的統(tǒng)計(jì)信息如表1所示。
表1 數(shù)據(jù)集統(tǒng)計(jì)信息Table 1 Statistics of the datasets
本文方法知識(shí)表示模型TransE用Fast-TransX(https://github.com/thunlp/Fast-TransX)中的方法訓(xùn)練,嵌入維度設(shè)置為100維;策略網(wǎng)絡(luò)的隱藏層是由兩個(gè)全連接網(wǎng)絡(luò)和ReLU激活函數(shù)構(gòu)成,神經(jīng)元分別設(shè)置為512和1 024,輸出層節(jié)點(diǎn)數(shù)等于RL環(huán)境中所有關(guān)系數(shù)量:FB15K-237是474,NELL-995是400。單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練任務(wù)上batchsize設(shè)置為1 000,訓(xùn)練1 000個(gè)epochs。
對(duì)于知識(shí)推理任務(wù)的評(píng)價(jià)方式,通常是鏈接預(yù)測(cè)(Link Precdiction,LP)和事實(shí)預(yù)測(cè)(Fact Precdiction,F(xiàn)P)。鏈接預(yù)測(cè)是預(yù)測(cè)三元組中缺失的部分。事實(shí)預(yù)測(cè)是在判斷三元組的正確與否。數(shù)據(jù)集按7∶3的比例分為訓(xùn)練集和初始測(cè)試集,而測(cè)試集是由初始測(cè)試集和其生成的負(fù)樣本組合而成,正負(fù)樣本比例約為1∶10,其中負(fù)樣本是由正樣本被替換尾實(shí)體生成。此次實(shí)驗(yàn)使用平均精度均值(Mean Average Precision,MAP),定義如下:
為了驗(yàn)證RLPTransE 方法的有效性,將本文方法RLPTransE與基于知識(shí)表示學(xué)習(xí)算法(TransE[6]、TransH[7]、TransR[9]、TransD[10)]、基于關(guān)系路徑算法(PRA[16]、DIVA[20)]和基于融合算法(DeepPath[25]、AttnPath[29]等)在兩個(gè)公開(kāi)數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表2和表3所示。
表2 鏈接預(yù)測(cè)結(jié)果Table 2 Link prediction results
表3 事實(shí)預(yù)測(cè)結(jié)果Table 3 Fact prediction results
3.3.1 鏈接預(yù)測(cè)
鏈接預(yù)測(cè)是指三元組在給定頭實(shí)體和關(guān)系二元組(eh,r)條件下預(yù)測(cè)三元組的尾實(shí)體et。本文采用DeepPath中測(cè)試方法,通過(guò)對(duì)候選尾實(shí)體打分來(lái)進(jìn)行排名。實(shí)驗(yàn)結(jié)果由表2所示。
由表2所示的實(shí)驗(yàn)結(jié)果可知,本文方法在FB15K-237數(shù)據(jù)集上取得了最優(yōu)的鏈接預(yù)測(cè)結(jié)果,性能比AttnPath高出0.031,而在NELL-995數(shù)據(jù)集上取得了優(yōu)于知識(shí)表示學(xué)習(xí)方法、關(guān)系路徑方法中PRA和融合方法中Deep-Path 的性能,但略遜色于MINERVA 等其他模型的性能。本文方法在規(guī)模較大的FB15K-237 數(shù)據(jù)集上性能提升更明顯,主要原因是:相比于關(guān)系稀疏的NELL-995數(shù)據(jù)集,F(xiàn)B15K-237數(shù)據(jù)集中實(shí)體之間平均路徑長(zhǎng)度較長(zhǎng),動(dòng)作選擇的錯(cuò)誤率更高,導(dǎo)致大量正確路徑難以被挖掘,模型性能降低。而本文的優(yōu)勢(shì)在于降低錯(cuò)誤動(dòng)作的選擇率,提高正確路徑的挖掘成功率,因此在FB15K-237數(shù)據(jù)集上效果提升更明顯。
3.3.2 事實(shí)預(yù)測(cè)
事實(shí)預(yù)測(cè)旨在判斷未知事實(shí)是否為真,對(duì)于給定的三元組(eh,r,et),模型通過(guò)判斷符合路徑的個(gè)數(shù)作為分?jǐn)?shù),從而判斷其正確與否。本文延用DeepPath中的評(píng)價(jià)方法,對(duì)測(cè)試集所有輸出采取全排名方式計(jì)算結(jié)果,由于PRA 未提供所有三元組全排名結(jié)果,因此這里不考慮PRA作為基線(xiàn)。表3顯示了所有方法的結(jié)果。
如表3所示,本文方法同樣在FB15K-237數(shù)據(jù)集上的事實(shí)預(yù)測(cè)結(jié)果達(dá)到了最優(yōu)性能,性能比AttnPath高出0.032,而在NELL-995 上取得優(yōu)于其他模型,但略遜色于AttnPath的結(jié)果。對(duì)于FB15K-237數(shù)據(jù)集,本文方法比知識(shí)表示學(xué)習(xí)方法中性能最好的TransH 高出0.038。對(duì)于NELL-995 數(shù)據(jù)集,本文方法比知識(shí)表示學(xué)習(xí)方法中性能最好的TransD高出0.176。相比于融合模型中的DeepPath及其衍生模型,本文方法性能均有較大提升。
為了進(jìn)一步分析單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練對(duì)本文模型推理效果的影響,本節(jié)對(duì)RLPTransE做了消融實(shí)驗(yàn)分析。將RL智能體直接從多步推理策略網(wǎng)絡(luò)開(kāi)始推理任務(wù),即在原方法的基礎(chǔ)上去掉單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練任務(wù),得到模型RLPTransE-part,使用和RLPTransE相同的訓(xùn)練集和測(cè)試集對(duì)該模型進(jìn)行訓(xùn)練和測(cè)試。消融實(shí)驗(yàn)的結(jié)果如表4所示。兩個(gè)模型的測(cè)試次數(shù)統(tǒng)一設(shè)為1。
表4 預(yù)訓(xùn)練消融實(shí)驗(yàn)結(jié)果Table 4 Pre-training ablation experimental results
如表4 所示,RLPTransE-part 模型在鏈接預(yù)測(cè)和事實(shí)預(yù)測(cè)的實(shí)驗(yàn)結(jié)果都不及RLPTransE模型,主要原因是缺乏單步擇優(yōu)策略網(wǎng)絡(luò)訓(xùn)練的方法,單步選擇有效路徑能力不足,路徑的搜索能力弱,直接影響多步推理效果。因此,實(shí)驗(yàn)結(jié)果表明,引入單步擇優(yōu)策略網(wǎng)絡(luò)對(duì)推理任務(wù)的完成具有明顯的提升效果。
為了進(jìn)一步分析單步擇優(yōu)策略網(wǎng)絡(luò)在本方法中的重要性。本文對(duì)該網(wǎng)絡(luò)的單步擇優(yōu)能力作了對(duì)比實(shí)驗(yàn),使用不同訓(xùn)練集對(duì)單步擇優(yōu)策略網(wǎng)絡(luò)進(jìn)行訓(xùn)練,然后對(duì)網(wǎng)絡(luò)的單步選擇成功率進(jìn)行統(tǒng)計(jì)。定義如下三種模型:All-train,使用Dtrain的樣本集合{(eh,r),(et,r′)} 訓(xùn)練;Postrain,使用Dtrain中正向樣本集合{(eh,r)} 訓(xùn)練;No-train,不使用樣本集合訓(xùn)練,即使用初始化參數(shù)。不同epoch次數(shù)下的實(shí)驗(yàn)結(jié)果如表5所示。
表5 對(duì)比實(shí)驗(yàn)結(jié)果Table 5 Comparative experimental results
如表5所示,使用Dtrain訓(xùn)練的All-train在單步選擇成功率上的均值達(dá)到了94.07%,Pos-train 結(jié)果達(dá)到了78.65%,而No-train 的選擇成功率幾乎為0。該實(shí)驗(yàn)充分驗(yàn)證單步擇優(yōu)策略網(wǎng)絡(luò)對(duì)本方法具有重要支撐作用。
為了分析本文方法對(duì)知識(shí)推理可解釋性的增強(qiáng)作用,從RL 智能體在NELL-995 數(shù)據(jù)集上挖掘出的推理規(guī)則中選擇部分任務(wù)結(jié)果,如表6所示。
表6 RL智能體發(fā)現(xiàn)的推理規(guī)則Table 6 Inference formulas found by RL Agent
如表6 所示,對(duì)于任務(wù)關(guān)系“athleteplaysinleague”,對(duì)應(yīng)的推理規(guī)則為“playsforteam->teamplaysinleague”和“athletehomestadium->leaguestadiums_inv”,即運(yùn)動(dòng)員效力的球隊(duì)所屬的聯(lián)賽就是運(yùn)動(dòng)員效力的聯(lián)賽和運(yùn)動(dòng)員主場(chǎng)所注冊(cè)的聯(lián)賽就是運(yùn)動(dòng)員效力的聯(lián)賽。其他任務(wù)的說(shuō)明類(lèi)似,不再逐一展開(kāi)分析。因此,分析結(jié)果表明,本文方法對(duì)于增強(qiáng)知識(shí)推理的可解釋性具有重要支撐。
本文提出了一種融合知識(shí)表示和深度強(qiáng)化學(xué)習(xí)方法RLPTransE。該模型通過(guò)知識(shí)表示方法,將知識(shí)圖譜映射到含有三元組語(yǔ)義信息的向量空間中,然后在該空間建立強(qiáng)化學(xué)習(xí)環(huán)境,將知識(shí)推理成功轉(zhuǎn)化為馬爾可夫序列決策過(guò)程。基于有監(jiān)督的單步擇優(yōu)策略網(wǎng)絡(luò)的訓(xùn)練和基于獎(jiǎng)勵(lì)函數(shù)的多步推理策略網(wǎng)絡(luò)的訓(xùn)練,使得RL 智能體在推理過(guò)程中挖掘出高質(zhì)量推理規(guī)則,從而完成大規(guī)模知識(shí)圖譜推理任務(wù)。在公開(kāi)數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)表明,本文方法提升了推理性能,特別是大規(guī)模知識(shí)圖譜推理任務(wù)。本文還通過(guò)消融實(shí)驗(yàn)對(duì)單步擇優(yōu)策略網(wǎng)絡(luò)對(duì)本文方法的影響做了進(jìn)一步分析。通過(guò)對(duì)挖掘出來(lái)的推理規(guī)則分析,驗(yàn)證了本文方法對(duì)知識(shí)推理可解釋性具有增強(qiáng)作用。