本發(fā)明屬于人工智能,涉及一種基于深度遷移強(qiáng)化學(xué)習(xí)的知識(shí)推理方法。
背景技術(shù):
1、知識(shí)圖譜推理大體可分為基于嵌入,基于神經(jīng)網(wǎng)絡(luò)和基于路徑的方法,三類方法的前提都需要將實(shí)體和關(guān)系嵌入向量空間,深度強(qiáng)化學(xué)習(xí)與遷移學(xué)習(xí)在知識(shí)圖譜領(lǐng)域應(yīng)用,為解決智能體在推理前期大量選擇無(wú)效動(dòng)作的問(wèn)題提供了解決思路。常見的方法及應(yīng)用主要包括基于嵌入的知識(shí)圖譜推理方法、基于張量分解的知識(shí)推理模型、基于強(qiáng)化學(xué)習(xí)的知識(shí)圖譜推理模型、基于隨機(jī)游走的知識(shí)圖譜推理模型、基于強(qiáng)化學(xué)習(xí)的遷移學(xué)習(xí)應(yīng)用等。
2、(1)基于嵌入的知識(shí)圖譜推理方法
3、在基于嵌入的知識(shí)圖譜推理方法中,bordes等提出的transe模型(參考文獻(xiàn):bordes?et?al.,2013,nips)在該類模型中較為經(jīng)典,該類模型將實(shí)體和關(guān)系表示為同一低維空間的向量,實(shí)體間的關(guān)系解釋為低維空間中嵌入的平移距離,頭實(shí)體的嵌入向量在經(jīng)過(guò)關(guān)系的轉(zhuǎn)移后需要接近尾實(shí)體的嵌入向量。相比傳統(tǒng)的知識(shí)推理方法,transe建模簡(jiǎn)單高效,且很好地處理非對(duì)稱關(guān)系和一對(duì)一的語(yǔ)義關(guān)系,很快引起相關(guān)研究的熱潮。但該模型有一些不足有待優(yōu)化,很多transe的變體模型因此被提出。例如transd(參考文獻(xiàn):ji?etal.,2015,aaai)、transr(參考文獻(xiàn):lin?et?al.,2015,aaai)、transh(參考文獻(xiàn):wang?etal.,2014,aaai)等。這些模型在知識(shí)圖譜推理和補(bǔ)全任務(wù)中都展現(xiàn)了不錯(cuò)的效果,但是這類基于平移距離的模型大多是淺層的表示學(xué)習(xí)模型,還無(wú)法勝任知識(shí)圖譜多跳推理任務(wù)。
4、(2)基于張量分解的知識(shí)推理模型
5、基于張量分解的知識(shí)推理模型首先通過(guò)將知識(shí)圖譜建模為張量,然后通過(guò)張量分解來(lái)學(xué)習(xí)實(shí)體和關(guān)系的隱層表示,度量圖譜中三元組潛在語(yǔ)義的合理性。由nickel等最早提出,提出的rescal模型將每個(gè)實(shí)體與向量關(guān)聯(lián)來(lái)捕獲其潛在語(yǔ)義(參考文獻(xiàn):nickel?etal.,2011,icml)。yang等提出的dismult模型通過(guò)約束關(guān)系矩陣為對(duì)角矩陣,從而緩解參數(shù)量過(guò)大的問(wèn)題,學(xué)習(xí)效率因此大幅度提升(參考文獻(xiàn):yang?et?al.,2015,iclr)。trouillon等提出的complex模型進(jìn)一步擴(kuò)展distmult模型,通過(guò)引入復(fù)值嵌入來(lái)建模非對(duì)稱和反向關(guān)系(參考文獻(xiàn):trouillon?et?al.,2016,icml)。liu等提出的analogy模型則在rescal模型的基礎(chǔ)上,設(shè)定關(guān)系的線性映射是相互可交換的,從而更好地建模實(shí)體和關(guān)系的類比屬性(參考文獻(xiàn):liu?et?al.,2017,aaai)。相比基于平移距離的模型,基于張量分解的模型可以利用張量變換來(lái)表達(dá)知識(shí)圖譜的關(guān)系變換,對(duì)于其中的語(yǔ)義也能進(jìn)行合理的幾何表示,因此可解釋性較好。
6、(3)基于強(qiáng)化學(xué)習(xí)的知識(shí)圖譜推理模型
7、xiong等于2017年首次提出了一種用于知識(shí)圖譜推理的強(qiáng)化學(xué)習(xí)模型deeppath,使用強(qiáng)化學(xué)習(xí)方法來(lái)解決知識(shí)圖譜中的多跳推理問(wèn)題(參考文獻(xiàn):xiong?et?al.,2017,emnlp)。該模型利用強(qiáng)化學(xué)習(xí)的方法來(lái)評(píng)估采樣路徑,大大減少搜索空間。在路徑推理的過(guò)程中,強(qiáng)化學(xué)習(xí)環(huán)境被建模為馬爾可夫決策過(guò)程(mdp),知識(shí)推理中的多跳推理問(wèn)題從而被轉(zhuǎn)化為一個(gè)序列化決策問(wèn)題。在這個(gè)問(wèn)題中,每一條推理鏈可以表示為一系列決策的過(guò)程。強(qiáng)化學(xué)習(xí)智能體通過(guò)與環(huán)境的交互和反饋來(lái)學(xué)習(xí)如何找到獲得高獎(jiǎng)勵(lì)的路徑。它在路徑探索過(guò)程中不斷優(yōu)化策略,以實(shí)現(xiàn)對(duì)知識(shí)圖譜中的多跳決策問(wèn)題進(jìn)行建模和知識(shí)推理。通過(guò)這種方法,智能體自主地學(xué)習(xí)如何根據(jù)先前的決策和獲得的反饋來(lái)選擇下一步的行動(dòng),并根據(jù)反饋來(lái)更新策略,逐漸掌握如何在知識(shí)圖譜中進(jìn)行多跳推理。das等提出了一種深度強(qiáng)化學(xué)習(xí)方法minerva,該學(xué)習(xí)方法根據(jù)輸入查詢來(lái)引導(dǎo)智能體,尋找預(yù)測(cè)路徑,根據(jù)給定的頭部實(shí)體和查詢關(guān)系來(lái)獲得正確的答案實(shí)體(參考文獻(xiàn):das?et?al.,2018,iclr)。lei等提出了一種結(jié)合規(guī)則的知識(shí)圖譜多跳推理模型ruleguider,提升了推理的可解釋性(參考文獻(xiàn):lei?et?al.,2020,acl)。wang等提出的attnpath基于lstm和圖注意力在deeppath基礎(chǔ)上增加了記憶單元,并提出一種強(qiáng)制回退的推理機(jī)制提高智能體獲取獎(jiǎng)勵(lì)的能力和推理成功率(參考文獻(xiàn):wang?et?al.,2019,www)。
8、(4)基于隨機(jī)游走的知識(shí)圖譜推理模型
9、基于隨機(jī)游走的方法將路徑作為特征對(duì)推理結(jié)果進(jìn)行預(yù)測(cè),由于路徑的特征是可解釋的,人們更容易理解其含義。lao等提出的路徑排序算法(pra,pathrankingalgorithm)是其中較為經(jīng)典的基于隨機(jī)游走的知識(shí)推理方法(參考文獻(xiàn):lao?et?al.,2011,emnlp)。pra首先游走發(fā)現(xiàn)邊緣類型序列,通過(guò)邏輯回歸模型,將這些邊緣類型作為特征,來(lái)預(yù)測(cè)圖結(jié)構(gòu)中缺失的邊。為了能進(jìn)一步學(xué)習(xí)關(guān)系的語(yǔ)義,提高推理的性能,wang等提出了一種新的pra多任務(wù)學(xué)習(xí)框架,稱為耦合pra(cpra,coupling?pra)。cpra使用多任務(wù)機(jī)制執(zhí)行推理,由兩個(gè)模塊組成(關(guān)系聚類和關(guān)系耦合),前者用于自動(dòng)發(fā)現(xiàn)高度相關(guān)的關(guān)系,后者用于耦合這些關(guān)系進(jìn)行學(xué)習(xí)(參考文獻(xiàn):wang?et?al.,2016,aaai)?;陔S機(jī)游走的知識(shí)推理方法可以獲得預(yù)測(cè)結(jié)果具體的推理路徑,提升結(jié)果的可解釋性,但其中大多方法的路徑選擇過(guò)程是啟發(fā)式遍歷的,無(wú)目的隨機(jī)游走挖掘有價(jià)值的推理路徑效率較低,甚至?xí)脲e(cuò)誤的推理規(guī)則。同時(shí),在知識(shí)圖譜稀疏、低連通的情況下,對(duì)路徑特征的提取效率低且耗時(shí)。
10、(5)基于強(qiáng)化學(xué)習(xí)的遷移學(xué)習(xí)應(yīng)用
11、遷移學(xué)習(xí)是指將已有的知識(shí)或模型應(yīng)用于新的任務(wù)或環(huán)境中。通過(guò)遷移學(xué)習(xí),可以在不重新訓(xùn)練整個(gè)模型的情況下,將一部分模型的知識(shí)應(yīng)用于新的任務(wù)或環(huán)境中,并提高模型的性能。yaser等人于2018年將遷移學(xué)習(xí)用于文本摘要場(chǎng)景,提出一種基于自我批評(píng)策略梯度方法的強(qiáng)化學(xué)習(xí)框架,預(yù)訓(xùn)練后僅用幾個(gè)微調(diào)樣本就可達(dá)得最優(yōu)性能(參考文獻(xiàn):yaser?et?al.,2018,acl)。ammanabrolu等人于2019年將遷移學(xué)習(xí)用于基于知識(shí)圖譜的文本冒險(xiǎn)游戲,在多項(xiàng)計(jì)算機(jī)生成和人工創(chuàng)作的游戲中不僅能夠更快學(xué)習(xí)強(qiáng)化學(xué)習(xí)策略,而且也提升了智能體策略質(zhì)量(參考文獻(xiàn):ammanabrolu?et?al.,2019,aaai)。liu等人于2019年將遷移學(xué)習(xí)用于多智能體的強(qiáng)化學(xué)習(xí),提出一種基于新型mdp相似性概念的可擴(kuò)展的遷移學(xué)習(xí)方法,顯著加速多智能體強(qiáng)化學(xué)習(xí),同時(shí)具有更好的性能(參考文獻(xiàn):liu?et?al.,2019,icml)。
12、從以上研究工作中可以發(fā)現(xiàn),遷移學(xué)習(xí)適用于預(yù)任務(wù)樣本豐富但目標(biāo)任務(wù)樣本稀少的場(chǎng)景,在知識(shí)圖譜場(chǎng)景中,盡管智能體在目標(biāo)任務(wù)上難以獲取成功的樣本,但知識(shí)圖譜中每個(gè)三元組(h,r,t)中都包含兩個(gè)單步游走的成功樣本(h,r)和(t,r-1),源任務(wù)樣本豐富而容易獲取。因此,為有效解決智能體在推理前期大量選擇無(wú)效動(dòng)作的問(wèn)題,本發(fā)明將單步游走作為預(yù)任務(wù),將多步推理作為目標(biāo)任務(wù),提出一種基于深度遷移強(qiáng)化學(xué)習(xí)的知識(shí)推理方法dtrl-path。
技術(shù)實(shí)現(xiàn)思路
1、發(fā)明目的:本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)的不足,提供一種基于深度遷移強(qiáng)化學(xué)習(xí)的知識(shí)推理方法dtrl-path(deep?transfer?reinforcement?learningpath),讓智能體在預(yù)任務(wù)中單步搜索目標(biāo)進(jìn)行訓(xùn)練,再將該智能體遷移到目標(biāo)推理任務(wù)上進(jìn)行微調(diào),應(yīng)用于知識(shí)圖譜的路徑搜索,并基于路徑進(jìn)行事實(shí)預(yù)測(cè)和鏈接預(yù)測(cè),可有效提升智能體在推理前期的路徑搜索成功率,本發(fā)明包括以下步驟:
2、步驟1,強(qiáng)化學(xué)習(xí)環(huán)境建模,包括:構(gòu)建知識(shí)圖譜強(qiáng)化學(xué)習(xí)環(huán)境,基于狀態(tài)空間、動(dòng)作空間、訓(xùn)練獎(jiǎng)勵(lì)設(shè)置和策略神經(jīng)網(wǎng)絡(luò),完成強(qiáng)化學(xué)習(xí)環(huán)境建模;
3、步驟2,預(yù)任務(wù)訓(xùn)練,包括:驅(qū)動(dòng)強(qiáng)化學(xué)習(xí)智能體進(jìn)行有效性預(yù)訓(xùn)練,基于訓(xùn)練集(一般采用fb15k-237、nell-995)預(yù)處理、預(yù)任務(wù)的獎(jiǎng)勵(lì)函數(shù)和預(yù)訓(xùn)練算法,幫助智能體學(xué)會(huì)選擇有效的動(dòng)作,提高單步游走的成功率;
4、步驟3,目標(biāo)任務(wù)微調(diào)訓(xùn)練,包括:遷移智能體至推理任務(wù),基于推理任務(wù)、獎(jiǎng)勵(lì)函數(shù)、微調(diào)訓(xùn)練算法進(jìn)行目標(biāo)任務(wù)微調(diào)訓(xùn)練,智能體在預(yù)訓(xùn)練階段通過(guò)學(xué)習(xí)如何選擇有效動(dòng)作,經(jīng)過(guò)微調(diào)訓(xùn)練后,遷移到具體的推理任務(wù)上,在知識(shí)圖譜環(huán)境中,智能體將繼續(xù)學(xué)習(xí)如何完成推理任務(wù);
5、步驟4,構(gòu)建模型算法評(píng)價(jià)標(biāo)準(zhǔn),包括:構(gòu)建深度強(qiáng)化學(xué)習(xí)知識(shí)推理模型算法評(píng)價(jià)標(biāo)準(zhǔn),基于路徑搜索成功率(path?finding?success?rate,pfsr)、平均精度均值(meanaverage?precision,map),評(píng)估基于深度強(qiáng)化學(xué)習(xí)的知識(shí)推理性能;
6、步驟5,驗(yàn)證實(shí)驗(yàn)與結(jié)果分析,包括:構(gòu)建算法有效性驗(yàn)證實(shí)驗(yàn),基于數(shù)據(jù)集選取與分析、路徑搜索實(shí)驗(yàn)、事實(shí)預(yù)測(cè)實(shí)驗(yàn)、鏈接預(yù)測(cè)實(shí)驗(yàn)和遷移學(xué)習(xí)消融實(shí)驗(yàn),進(jìn)行實(shí)驗(yàn)數(shù)據(jù)采集與結(jié)果驗(yàn)證分析。
7、步驟1包括:
8、步驟1-1,通過(guò)狀態(tài)空間,實(shí)現(xiàn)對(duì)知識(shí)圖譜實(shí)體集合的語(yǔ)義進(jìn)行狀態(tài)空間表示;
9、所述狀態(tài)空間表示采用嵌入表示模型transe,在嵌入表示模型transe中,實(shí)體被表示為連續(xù)的嵌入向量:
10、st=trans(et)??(1)
11、其中et為當(dāng)前時(shí)間步t時(shí)智能體所在的具體實(shí)體,st為當(dāng)前實(shí)體的狀態(tài)表示向量,trans()是嵌入表示函數(shù);
12、步驟1-2,將知識(shí)圖譜中的關(guān)系集合r作為智能體的動(dòng)作空間,通過(guò)動(dòng)作空間實(shí)現(xiàn)智能體(指在強(qiáng)化學(xué)習(xí)環(huán)境中,執(zhí)行動(dòng)作并與環(huán)境進(jìn)行交互的主體)選擇動(dòng)作的過(guò)程是從當(dāng)前狀態(tài)到下一狀態(tài)的轉(zhuǎn)移;動(dòng)作空間定義為:
13、
14、其中表示關(guān)系r|r|的逆關(guān)系,a表示動(dòng)作空間,|r|表示關(guān)系集合r中關(guān)系的數(shù)量;
15、步驟1-3,所述訓(xùn)練獎(jiǎng)勵(lì)設(shè)置,設(shè)定在訓(xùn)練一個(gè)自動(dòng)駕駛汽車的模型,獎(jiǎng)勵(lì)設(shè)置可能如下:正獎(jiǎng)勵(lì)(安全駕駛到達(dá)目的地:+1000;遵守交通規(guī)則(如紅綠燈、限速等):每次+10;成功避開障礙物:每次+5)、負(fù)獎(jiǎng)勵(lì)(發(fā)生碰撞:-1000;超速行駛:每次-20;闖紅燈:每次-50)、中間獎(jiǎng)勵(lì)(每行駛一米且無(wú)違規(guī):+1),設(shè)定正負(fù)獎(jiǎng)勵(lì)要平衡,避免模型傾向于某一方面,并且獎(jiǎng)勵(lì)應(yīng)能即時(shí)反映行為的優(yōu)劣,幫助模型快速學(xué)習(xí),隨著訓(xùn)練進(jìn)行,獎(jiǎng)勵(lì)機(jī)制可以逐漸變得更為嚴(yán)格,以提高模型性能。
16、引入獎(jiǎng)勵(lì)機(jī)制,用于實(shí)現(xiàn)環(huán)境對(duì)智能體進(jìn)行任務(wù)完成或失敗的獎(jiǎng)勵(lì)評(píng)估,并根據(jù)獎(jiǎng)勵(lì)的正向或負(fù)向反饋來(lái)更新智能體的策略,以實(shí)現(xiàn)最大化獎(jiǎng)勵(lì);
17、步驟1-4,所述策略神經(jīng)網(wǎng)絡(luò),用于通過(guò)全連接網(wǎng)絡(luò)將輸入的et,映射為各項(xiàng)動(dòng)作的概率向量策略神經(jīng)網(wǎng)絡(luò);所述策略神經(jīng)網(wǎng)絡(luò)包括兩個(gè)隱藏層和一個(gè)輸出層,輸出層使用softmax函數(shù)進(jìn)行歸一化,對(duì)于st,策略神經(jīng)網(wǎng)絡(luò)會(huì)輸出相應(yīng)的概率分布:
18、d(st)=softmax(f(f(st×w1+b1)×w2+b2))?????????(3)
19、其中f為激活函數(shù),w1和w2分別為第一個(gè)隱藏層的權(quán)重和第二個(gè)隱藏層的權(quán)重,b1和b2分別為第一個(gè)隱藏層的偏置和第二個(gè)隱藏層的偏置;d(st)是一個(gè)|a|×1的矩陣,每一位表示選擇一個(gè)動(dòng)作的概率;
20、采用策略梯度下降算法更新策略神經(jīng)網(wǎng)絡(luò)的參數(shù):
21、
22、其中θ為需要更新的參數(shù),logπ(a=at|st;θ)為在狀態(tài)為st時(shí)策略神經(jīng)網(wǎng)絡(luò)選擇動(dòng)作為at的概率,γ為執(zhí)行這個(gè)動(dòng)作at獲得的獎(jiǎng)勵(lì),t為時(shí)間步,t為總時(shí)間步數(shù),表示j(θ)對(duì)參數(shù)θ的梯度(具體表示需要根據(jù)梯度信息更新策略神經(jīng)網(wǎng)絡(luò)的參數(shù)θ,以優(yōu)化策略網(wǎng)絡(luò),使得智能體在強(qiáng)化學(xué)習(xí)環(huán)境中獲得更高的累積獎(jiǎng)勵(lì))。
23、步驟2包括:
24、步驟2-1,訓(xùn)練集預(yù)處理:在知識(shí)圖譜狀態(tài)空間中,通過(guò)事實(shí)三元組集合v來(lái)獲取狀態(tài)和有效動(dòng)作的所有組合,將v中的每個(gè)三元組(eh,r,et)拆分為兩個(gè)狀態(tài)、動(dòng)作二元組(eh,r)和(et,r-1),其中,eh表示頭實(shí)體,r表示頭實(shí)體和尾實(shí)體間的關(guān)聯(lián),然后合并相同的二元組,從而得到預(yù)訓(xùn)練的有效動(dòng)作訓(xùn)練集tvalid,訓(xùn)練集tvalid用于訓(xùn)練模型,以預(yù)測(cè)給定狀態(tài)下的有效動(dòng)作,所述模型是用于知識(shí)圖譜推理的深度強(qiáng)化學(xué)習(xí)模型;步驟2-2,確定預(yù)任務(wù)的獎(jiǎng)勵(lì)函數(shù):
25、當(dāng)智能體在et下選擇了動(dòng)作at時(shí),如果二元組(et,at)包含在訓(xùn)練集tvalid中,則給予智能體以正向獎(jiǎng)勵(lì),幫助智能體學(xué)習(xí)選擇有效動(dòng)作;否則無(wú)獎(jiǎng)勵(lì),獎(jiǎng)勵(lì)y(et,at)定義為:
26、
27、步驟2-3,構(gòu)建預(yù)訓(xùn)練算法,離線訓(xùn)練智能體,輸入預(yù)訓(xùn)練訓(xùn)練集tvalid,輸出強(qiáng)化學(xué)習(xí)(reinforcement?learning,rl)智能體的策略神經(jīng)網(wǎng)絡(luò)參數(shù)。
28、步驟2-3包括如下步驟:
29、步驟2-3-1,對(duì)于訓(xùn)練集中每一個(gè)二元組(et,at),將st設(shè)置為第t個(gè)實(shí)體et的嵌入表示trans(et):
30、st←trans(et)
31、步驟2-3-2,更新策略神經(jīng)網(wǎng)絡(luò)參數(shù),使用對(duì)數(shù)概率和獎(jiǎng)勵(lì)來(lái)調(diào)整策略神經(jīng)網(wǎng)絡(luò)的參數(shù):
32、
33、其中θ為需要更新的參數(shù),logπ(a=at∣st;θ)為在狀態(tài)為st時(shí)策略神經(jīng)網(wǎng)絡(luò)選擇動(dòng)作為at的概率,γ為執(zhí)行這個(gè)動(dòng)作at獲得的獎(jiǎng)勵(lì),表示j(θ)對(duì)參數(shù)θ的梯度(具體表示需要根據(jù)梯度信息更新策略神經(jīng)網(wǎng)絡(luò)的參數(shù)θ,以優(yōu)化策略網(wǎng)絡(luò),使得智能體在強(qiáng)化學(xué)習(xí)環(huán)境中獲得更高的累積獎(jiǎng)勵(lì))。
34、總體來(lái)看,本步驟主要描述了如何利用預(yù)處理訓(xùn)練集tvalid來(lái)更新強(qiáng)化學(xué)習(xí)智能體的策略神經(jīng)網(wǎng)絡(luò)參數(shù)。每個(gè)訓(xùn)練樣本(et,at)被用來(lái)計(jì)算st和相應(yīng)的對(duì)數(shù)概率及獎(jiǎng)勵(lì),并據(jù)此更新策略神經(jīng)網(wǎng)絡(luò)的參數(shù)。
35、步驟3中所述的目標(biāo)任務(wù)微調(diào)訓(xùn)練,具體包括:
36、步驟3-1,所述推理任務(wù)的目標(biāo)是查找連接兩個(gè)實(shí)體之間的路徑:給定一個(gè)事實(shí),包括起始節(jié)點(diǎn)estart、推理任務(wù)節(jié)點(diǎn)rtask和目標(biāo)節(jié)點(diǎn)etarget,智能體需要從起始節(jié)點(diǎn)開始搜索,找到除推理任務(wù)節(jié)點(diǎn)rtask以外的所有可達(dá)目標(biāo)節(jié)點(diǎn)的路徑,通過(guò)優(yōu)化推理任務(wù)的目標(biāo),提高智能體在推理任務(wù)中的表現(xiàn)能力;
37、步驟3-2,基于全局準(zhǔn)確性維度,在rl模型中構(gòu)建基于路徑結(jié)束的獎(jiǎng)勵(lì)函數(shù)rglobal:
38、
39、當(dāng)環(huán)境發(fā)現(xiàn)智能體選擇的關(guān)系不存在時(shí),會(huì)拋棄當(dāng)前選擇再選一次動(dòng)作,直到選擇次數(shù)達(dá)到預(yù)定步數(shù)上限;當(dāng)選擇次數(shù)達(dá)到預(yù)定步數(shù)上限時(shí),設(shè)置rglobal=0.05;
40、當(dāng)智能體成功到達(dá)目標(biāo)節(jié)點(diǎn)或選擇次數(shù)達(dá)到預(yù)定步數(shù)上限時(shí),基于蒙特卡洛方法維度,構(gòu)建基于智能體成功到達(dá)目標(biāo)節(jié)點(diǎn)或達(dá)到預(yù)定步數(shù)上限時(shí)的獎(jiǎng)勵(lì)函數(shù)γ,對(duì)在路徑p上的每個(gè)狀態(tài)、關(guān)系二元組(et,at)給予獎(jiǎng)勵(lì):
41、
42、其中l(wèi)ength(p)為路徑的長(zhǎng)度;
43、基于路徑多樣性維度,構(gòu)建基于智能體找到具有相似語(yǔ)法和語(yǔ)義路徑的獎(jiǎng)勵(lì)函數(shù)rdiversity:
44、
45、其中,f是已有路徑的集合,p是新找到的路徑實(shí)例,pt是已有的路徑實(shí)例;cos(p,pt)表示新找到的路徑實(shí)例p和已有的路徑實(shí)例pt的余弦相似度;
46、步驟3-3,構(gòu)建微調(diào)訓(xùn)練算法,將智能體遷移至目標(biāo)任務(wù),輸入目標(biāo)任務(wù)訓(xùn)練集trainset,輸出強(qiáng)化學(xué)習(xí)智能體的策略神經(jīng)網(wǎng)絡(luò)參數(shù)。
47、步驟3-3包括:
48、步驟3-3-1,對(duì)rl策略神經(jīng)網(wǎng)絡(luò)進(jìn)行超載預(yù)訓(xùn)練;
49、步驟3-3-1,對(duì)于目標(biāo)任務(wù)訓(xùn)練集trainset中的每個(gè)三元組(estart,ttask,etarget),其中,estart是起始實(shí)體,ttask是推理任務(wù)的關(guān)系(起始實(shí)體和目標(biāo)實(shí)體之間的關(guān)系),etarget是目標(biāo)實(shí)體,具體執(zhí)行如下步驟:
50、步驟3-3-1-1,將當(dāng)前實(shí)體狀態(tài)st初始化為trans(et);
51、步驟3-3-1-2,初始化步驟計(jì)數(shù)steps=0,將任務(wù)是否成功的標(biāo)記success標(biāo)記為假;
52、步驟3-3-1-3,當(dāng)計(jì)數(shù)steps小于預(yù)定的最大步驟數(shù)maxsteps并且未成功時(shí),進(jìn)行以下循環(huán):
53、步驟3-3-1-3-1,計(jì)算動(dòng)作概率向量d(st)=softmax(f(f(st×w1+b1)×w2+b2));
54、步驟3-3-1-3-2,根據(jù)向量d(st)隨機(jī)選擇一個(gè)動(dòng)作at,如果選擇無(wú)效動(dòng)作則終止;
55、步驟3-3-1-3-3,記錄狀態(tài)和動(dòng)作對(duì)(et,at)到集合t中;
56、步驟3-3-1-3-4,執(zhí)行動(dòng)作at跳轉(zhuǎn)到下一個(gè)實(shí)體enext;
57、步驟3-3-1-3-5,如果enext==etarget,則標(biāo)記success為真并結(jié)束循環(huán);
58、步驟3-3-1-3-6,更新當(dāng)前實(shí)體狀態(tài)st為trans(et);
59、步驟3-3-1-4,計(jì)算集合t中每個(gè)(et,at)的獎(jiǎng)勵(lì);
60、步驟3-3-1-5,更新策略神經(jīng)網(wǎng)絡(luò)參數(shù):
61、
62、步驟4中所述的模型算法評(píng)價(jià)標(biāo)準(zhǔn)構(gòu)建,具體包括:
63、步驟4-1,路徑搜索成功率pfsr為:
64、
65、其中,succnum為每個(gè)輪次epoch中成功搜索到路徑的樣本個(gè)數(shù),batchsize為批處理大??;路徑搜索成功率pfsr反映了智能體探索和識(shí)別有效路徑的能力;
66、步驟4-2,所述平均精度均值map(表示所有查詢的平均精度的均值,用來(lái)評(píng)估模型在給定查詢條件下的預(yù)測(cè)結(jié)果的準(zhǔn)確度)用于評(píng)價(jià)事實(shí)預(yù)測(cè)fp(fact?prediction,fp)和鏈接預(yù)測(cè)lp(link?prediction,lp)的效果,衡量模型在事實(shí)預(yù)測(cè)和鏈接預(yù)測(cè)任務(wù)中的準(zhǔn)確性。具體地,map表示對(duì)所有查詢的平均精度取平均值,計(jì)算公式如下:
67、
68、其中,|q|是查詢的總數(shù),這表示在評(píng)估過(guò)程中總共有多少個(gè)查詢;ap(q)是第q個(gè)查詢的平均精度,這是對(duì)于每個(gè)查詢q計(jì)算的平均精度值。
69、步驟5包括:
70、步驟5-1,數(shù)據(jù)集選取與分析:選擇并分析(指的是使用特定的方法對(duì)數(shù)據(jù)集進(jìn)行詳細(xì)的處理和評(píng)價(jià),這些分析方法通常包括數(shù)據(jù)預(yù)處理、特征提取、統(tǒng)計(jì)分析等,以便為后續(xù)的實(shí)驗(yàn)和模型訓(xùn)練提供支持)了兩個(gè)知識(shí)推理領(lǐng)域通用的基準(zhǔn)數(shù)據(jù)集fb15k-237和nell-995;
71、步驟5-2,所述路徑搜索實(shí)驗(yàn)用于評(píng)估dtrlpath模型在路徑搜索方面的性能;
72、步驟5-3,所述事實(shí)預(yù)測(cè)實(shí)驗(yàn)是指,通過(guò)打分來(lái)判斷給定的三元組(eh,r,e)的真實(shí)性,具體包括:
73、步驟5-3-1,以eh為起始節(jié)點(diǎn),將狀態(tài)向量輸入策略神經(jīng)網(wǎng)絡(luò);
74、步驟5-3-2,策略神經(jīng)網(wǎng)絡(luò)將當(dāng)前狀態(tài)的向量映射為選擇每個(gè)動(dòng)作的概率,并據(jù)此選擇一個(gè)動(dòng)作;
75、步驟5-3-3,智能體在知識(shí)圖譜環(huán)境中執(zhí)行動(dòng)作,移到下一結(jié)點(diǎn);
76、步驟5-3-4,如果此時(shí)走過(guò)的動(dòng)作鏈組成了已挖掘的一條路徑,判斷當(dāng)前結(jié)點(diǎn)是否為etarget,如果是則分?jǐn)?shù)+1并終止,否則分?jǐn)?shù)-1并終止;
77、步驟5-3-5,重復(fù)步驟5-3-2~步驟5-3-4,如果達(dá)到最大步數(shù)則終止并記分?jǐn)?shù)為0;
78、步驟5-4,所述鏈接預(yù)測(cè)實(shí)驗(yàn)用于對(duì)缺失的實(shí)體進(jìn)行預(yù)測(cè):在訓(xùn)練集上預(yù)訓(xùn)練一個(gè)基于transe嵌入的神經(jīng)網(wǎng)絡(luò)分類模型,并使用神經(jīng)網(wǎng)絡(luò)分類模型計(jì)算測(cè)試集頭實(shí)體和關(guān)系對(duì)的候選尾實(shí)體的相似度得分,根據(jù)得分對(duì)候選尾實(shí)體進(jìn)行排序,以預(yù)測(cè)最有可能的缺失實(shí)體;
79、步驟5-5,所述遷移學(xué)習(xí)消融實(shí)驗(yàn)包括:
80、步驟5-5-1,刪除預(yù)任務(wù):將強(qiáng)化學(xué)習(xí)智能體直接在目標(biāo)任務(wù)上訓(xùn)練,得到onlytarget模型,訓(xùn)練完成后在路徑搜索任務(wù)和單步游走任務(wù)上測(cè)試onlytarget模型;
81、步驟5-5-2,刪除目標(biāo)任務(wù)的微調(diào)訓(xùn)練:將目標(biāo)任務(wù)上的rglobal、γ、rdiversity進(jìn)行刪除,在完成預(yù)任務(wù)上的預(yù)訓(xùn)練后得到onlypre模型,直接將onlypre模型用于路徑搜索任務(wù)和單步游走任務(wù);
82、步驟5-5-3,將onlytarget模型、onlypre模型和原模型dtrlpath在數(shù)據(jù)集的推理任務(wù)上進(jìn)行路徑搜索和事實(shí)預(yù)測(cè)的對(duì)比實(shí)驗(yàn)。
83、步驟5-2包括:
84、步驟5-2-1,初始化:
85、訓(xùn)練集準(zhǔn)備:從數(shù)據(jù)集中抽取包含目標(biāo)任務(wù)的所有三元組,組成訓(xùn)練集trainset,設(shè)定最大步數(shù)maxsteps;
86、模型初始化:初始化強(qiáng)化學(xué)習(xí)智能體的策略網(wǎng)絡(luò)參數(shù),對(duì)策略網(wǎng)絡(luò)進(jìn)行超載預(yù)訓(xùn)練,提高初始性能;
87、步驟5-2-2,路徑搜索:
88、遍歷訓(xùn)練集:對(duì)于trainset中的每個(gè)三元組(estart,ttask,etarget),進(jìn)行操作;
89、狀態(tài)初始化:將當(dāng)前實(shí)體狀態(tài)st初始化為trans(estart),初始化步驟計(jì)數(shù)steps=0,標(biāo)記success為假;
90、執(zhí)行路徑搜索:在最大步數(shù)maxsteps內(nèi)進(jìn)行循環(huán),直到成功找到路徑或達(dá)到最大步數(shù);
91、獎(jiǎng)勵(lì)計(jì)算和策略更新:計(jì)算集合t中每個(gè)(et,at)的獎(jiǎng)勵(lì),并更新策略網(wǎng)絡(luò)參數(shù);
92、步驟5-2-3,實(shí)驗(yàn)結(jié)果評(píng)價(jià)。
93、計(jì)算每個(gè)epoch中成功搜索到路徑的樣本個(gè)數(shù)successnum,計(jì)算路徑搜索成功率pfsr;
94、實(shí)驗(yàn)記錄和分析:記錄每個(gè)epoch的pfsr值,繪制pfsr隨訓(xùn)練輪次變化的曲線,分析不同模型在不同數(shù)據(jù)集上的路徑搜索成功率,比較dtrlpath與其他方法的性能。
95、步驟5-5-1中,完成路徑搜索任務(wù)的具體方法同步驟5-2;
96、完成單步游走任務(wù)(單步游走任務(wù)是評(píng)估智能體在知識(shí)圖譜中從一個(gè)節(jié)點(diǎn)出發(fā)執(zhí)行一步動(dòng)作的有效性。在預(yù)訓(xùn)練階段,智能體學(xué)習(xí)選擇有效的單步動(dòng)作,提高單步游走的成功率。)的具體方法包括:
97、初始化:從訓(xùn)練集trainset中提取包含目標(biāo)任務(wù)的三元組(estart,ttask,etarget),再初始化強(qiáng)化學(xué)習(xí)智能體的狀態(tài)為頭實(shí)體estart的嵌入表示;
98、單步動(dòng)作選擇:使用策略網(wǎng)絡(luò)計(jì)算動(dòng)作概率向量d(st),根據(jù)動(dòng)作概率向量選擇一個(gè)動(dòng)作at并執(zhí)行該動(dòng)作at再檢查選擇的動(dòng)作是否有效,即是否將智能體成功移動(dòng)到一個(gè)新的實(shí)體;
99、評(píng)估:記錄單步動(dòng)作的成功率,評(píng)價(jià)智能體在單步游走任務(wù)中的表現(xiàn)。
100、本發(fā)明還提供了一種基于深度遷移強(qiáng)化學(xué)習(xí)的新藥用途的預(yù)測(cè)方法,基于所述一種基于深度遷移強(qiáng)化學(xué)習(xí)的知識(shí)推理方法實(shí)現(xiàn),包括:設(shè)定需要在一個(gè)包含藥物、疾病、基因和癥狀實(shí)體的知識(shí)圖譜中,推理出新藥物與其潛在治療疾病之間的關(guān)系;
101、數(shù)據(jù)集構(gòu)建:使用包含藥物、疾病、基因和癥狀實(shí)體的知識(shí)圖譜數(shù)據(jù)集,新藥物作為一個(gè)實(shí)體,潛在治療疾病作為目標(biāo)疾病實(shí)體;
102、強(qiáng)化學(xué)習(xí)環(huán)境建模:構(gòu)建知識(shí)圖譜強(qiáng)化學(xué)習(xí)環(huán)境,定義狀態(tài)空間、動(dòng)作空間、訓(xùn)練獎(jiǎng)勵(lì)設(shè)置和策略神經(jīng)網(wǎng)絡(luò);狀態(tài)空間表示為知識(shí)圖譜中的所有實(shí)體,動(dòng)作空間為實(shí)體間的關(guān)系及其逆關(guān)系;
103、預(yù)任務(wù)訓(xùn)練:
104、訓(xùn)練集預(yù)處理:從知識(shí)圖譜中提取藥物與基因、基因與疾病關(guān)系,生成有效動(dòng)作訓(xùn)練集;
105、預(yù)任務(wù)獎(jiǎng)勵(lì)函數(shù):定義智能體在訓(xùn)練集中選擇有效動(dòng)作的獎(jiǎng)勵(lì);
106、預(yù)訓(xùn)練算法:離線訓(xùn)練智能體,使其在單步搜索中學(xué)會(huì)選擇有效動(dòng)作,提高初步路徑搜索的成功率;
107、目標(biāo)任務(wù)微調(diào)訓(xùn)練:
108、推理任務(wù)設(shè)定:智能體需要在知識(shí)圖譜中從新藥物開始,通過(guò)基因、癥狀,找到到達(dá)目標(biāo)疾病實(shí)體的路徑;
109、獎(jiǎng)勵(lì)函數(shù):設(shè)定基于路徑結(jié)束的全局準(zhǔn)確性獎(jiǎng)勵(lì)函數(shù)、基于路徑多樣性的獎(jiǎng)勵(lì)函數(shù);
110、微調(diào)訓(xùn)練算法:遷移智能體到目標(biāo)任務(wù)中,進(jìn)行多步路徑探索和策略優(yōu)化;
111、實(shí)驗(yàn)與結(jié)果分析:
112、路徑搜索實(shí)驗(yàn):評(píng)估智能體在知識(shí)圖譜中找到從新藥物到目標(biāo)疾病實(shí)體的路徑成功率;
113、事實(shí)預(yù)測(cè)實(shí)驗(yàn):在測(cè)試集中,通過(guò)路徑打分驗(yàn)證智能體預(yù)測(cè)新藥物與疾病關(guān)系的準(zhǔn)確性;
114、鏈接預(yù)測(cè)實(shí)驗(yàn):預(yù)測(cè)知識(shí)圖譜中缺失的實(shí)體,給定新藥物和基因關(guān)系,預(yù)測(cè)潛在的相關(guān)疾病。
115、有益效果:
116、(1)本發(fā)明通過(guò)深度遷移強(qiáng)化學(xué)習(xí)的方法,有效解決了在知識(shí)圖譜推理前期強(qiáng)化學(xué)習(xí)智能體由于選擇無(wú)效動(dòng)作而導(dǎo)致路徑挖掘成功率大幅下降的問(wèn)題,顯著提高了智能體在復(fù)雜知識(shí)圖譜環(huán)境中的路徑搜索成功率,為高效的知識(shí)圖譜推理提供了強(qiáng)有力的技術(shù)支撐。
117、(2)本發(fā)明的dtrl-path方法不僅優(yōu)化了智能體的單步?jīng)Q策能力,還通過(guò)目標(biāo)任務(wù)微調(diào)訓(xùn)練顯著提升了多步推理能力,使得智能體能夠在知識(shí)圖譜中執(zhí)行更復(fù)雜的推理任務(wù),進(jìn)一步提升了事實(shí)預(yù)測(cè)和鏈接預(yù)測(cè)的準(zhǔn)確性,為解決實(shí)際應(yīng)用中的知識(shí)圖譜推理問(wèn)題提供了有效的技術(shù)途徑。
118、(3)通過(guò)引入預(yù)任務(wù)訓(xùn)練和目標(biāo)任務(wù)微調(diào)訓(xùn)練,本發(fā)明的方法能夠在保持模型靈活性的同時(shí),有效利用遷移學(xué)習(xí)優(yōu)化模型性能,縮短了模型訓(xùn)練時(shí)間,提高了模型的泛化能力,使其能夠適應(yīng)不同規(guī)模和結(jié)構(gòu)的知識(shí)圖譜。
119、(4)本發(fā)明提出的模型算法評(píng)價(jià)標(biāo)準(zhǔn)構(gòu)建和驗(yàn)證實(shí)驗(yàn)設(shè)計(jì),為評(píng)估基于深度強(qiáng)化學(xué)習(xí)的知識(shí)推理性能提供了科學(xué)、系統(tǒng)的方法論,使研究人員能夠準(zhǔn)確地量化模型性能,指導(dǎo)后續(xù)的模型優(yōu)化和算法改進(jìn)。
120、(5)基于fb15k-237和nell-995數(shù)據(jù)集的驗(yàn)證實(shí)驗(yàn)表明,本發(fā)明在主要推理任務(wù)中的表現(xiàn)優(yōu)于同類方法,證實(shí)了本方法在提升智能體在知識(shí)圖譜路徑搜索、事實(shí)預(yù)測(cè)和鏈接預(yù)測(cè)等方面的能力,對(duì)推動(dòng)知識(shí)圖譜推理技術(shù)的發(fā)展具有重要的理論和實(shí)踐意義。