謝斌紅,王恩慧,張英俊
太原科技大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,太原 030024
隨著信息技術(shù)的蓬勃發(fā)展,網(wǎng)絡(luò)資源不斷涌現(xiàn),出現(xiàn)了海量半結(jié)構(gòu)化或者非結(jié)構(gòu)化形式的數(shù)據(jù),如何從這些復(fù)雜、多元分散和冗余異構(gòu)的數(shù)據(jù)中提取結(jié)構(gòu)化的、高質(zhì)量的信息成為學(xué)者們研究的熱點問題。在這種背景下,關(guān)系抽取作為信息抽取重要的子任務(wù)之一,吸引了眾多學(xué)者的關(guān)注。關(guān)系抽取的目的是從無結(jié)構(gòu)的文本中抽取出實體對之間的語義關(guān)系,它的解決有利于一些下游任務(wù)的完成,如知識圖譜的構(gòu)建、關(guān)系問答系統(tǒng)等,同時關(guān)系抽取的研究對文本摘要、機器翻譯等研究領(lǐng)域也有著重要意義,因此具有廣闊的應(yīng)用前景。
目前,最常用于實體關(guān)系抽取的方法是有監(jiān)督的關(guān)系抽取,并且由于深度學(xué)習技術(shù)的成功應(yīng)用,取得了較好的效果,但其代價是依靠人工標注數(shù)據(jù),耗時耗力。因此為了獲得大規(guī)模的標注語料,Mintz等人[1]提出了使用遠程監(jiān)督方法自動標注文本,它基于這樣的假設(shè)條件:假如兩個實體在知識庫(knowledge base,KB)中存在某種關(guān)系,則包含這兩個實體的句子都同樣表達這種關(guān)系。但真實情況下包含同一實體對的句子并不一定會表達相同的關(guān)系,因此錯誤標注就會引入噪聲問題。它的噪聲包括假陽性噪聲和假陰性噪聲,假陽性噪聲是指語料庫中某一實體對間的關(guān)系并非KB所標注的關(guān)系,如表1所示,假設(shè)(喬布斯,創(chuàng)立者,蘋果)三元組是KB中的一個關(guān)系事實,遠程監(jiān)督就會把所有包含實體“喬布斯”和“蘋果”的句子作為關(guān)系“創(chuàng)立者”的訓(xùn)練實例,但對于句子S1“喬布斯吃了一個蘋果”來說,它并沒有表達“創(chuàng)立者”的關(guān)系,遠程監(jiān)督方法依然會將它作為此關(guān)系類型的正例,這類噪聲問題即為假陽性噪聲。假陰性噪聲是指由于知識庫不足,將語料庫中原本表達了某種關(guān)系的句子標注為不存在關(guān)系(non-relation,NA),如表1的句子S3,“張三結(jié)婚后生了兩個孩子,定居在北京”中存在著(張三,居住于,北京)的關(guān)系事實,但實體對(張三,北京)在KB中并不存在關(guān)系,因此S3被錯誤地標記為NA,這類噪聲問題即為假陰性噪聲。
表1 遠程監(jiān)督關(guān)系抽取中錯誤標注的例子Table 1 Examples of incorrect annotations in distant supervision relation extraction
為了解決錯誤標注問題,Zeng等人[2]提出從噪聲數(shù)據(jù)中選擇正確的句子來進行關(guān)系抽取,但這樣無疑會丟失大量有用的句子;Lin等人[3]、Han等人[4]通過運用注意力機制對噪聲句子進行抑制來減輕錯誤標注對關(guān)系抽取模型性能的影響。雖然這些方法在一定程度上減少了噪聲數(shù)據(jù)的影響,但它們訓(xùn)練和測試過程都是在包級別上進行的,無法處理包中全部句子都是噪聲數(shù)據(jù)的情況。為了進一步提高模型性能,很多學(xué)者將復(fù)雜的機制運用到了遠程監(jiān)督關(guān)系抽取任務(wù)中,如Feng等人[5]、Yang等人[6]引入了強化學(xué)習,Qin等人[7]運用對抗學(xué)習更好地識別噪聲數(shù)據(jù),進一步實現(xiàn)了句子級別上的關(guān)系分類,從而將每個關(guān)系映射到相應(yīng)的句子,但它們只是簡單地運用強化學(xué)習的隨機策略,在選擇狀態(tài)和策略時會耗費時間。而且這些方法只聚焦于正例中的噪聲數(shù)據(jù),并未解決在NA集合中被錯誤標注的實例。
因此,現(xiàn)有方法還存在著兩種挑戰(zhàn)。(1)只關(guān)注假正例問題,而忽略了可能表達了某種關(guān)系的假負例,沒有有效利用語料庫資源,而且混淆了關(guān)系分類器識別相應(yīng)關(guān)系特征的能力。(2)基于強化學(xué)習的方法忽略了策略的探索和利用之間的平衡問題。使用隨機策略雖然可以幫助Agent遍歷各種狀態(tài),避免陷入局部最優(yōu)解,但是盲目嘗試會使Agent由于來回探索許多不必要的狀態(tài)和策略而浪費很多時間,降低了學(xué)習效率。
針對上述不足,本文提出采用帶有噪聲網(wǎng)絡(luò)的強化學(xué)習方法設(shè)計噪聲指示器,為噪聲數(shù)據(jù)分配正確的標簽,既可以減少噪聲數(shù)據(jù)的影響,又可以增加有用的訓(xùn)練數(shù)據(jù)。具體來說,首先在Qin等人[8]提出使用假正例指示器解決假正例問題的基礎(chǔ)上,設(shè)計了假負例指示器,它根據(jù)關(guān)系分類器的性能變化移除或保留噪聲句子,從而識別每種關(guān)系的假負例,并為其分配正確的標簽,不僅可以移除正例中的噪聲數(shù)據(jù),而且可以增多目標關(guān)系的訓(xùn)練樣本。此外,考慮了策略的探索與利用的平衡問題。通過在策略網(wǎng)絡(luò)的權(quán)重上增加噪聲,使噪聲指示器在策略執(zhí)行過程中既可以嘗試新的策略,發(fā)現(xiàn)能使獎勵最大化的行為,而且還可以利用已經(jīng)學(xué)到的策略,提高強化學(xué)習的效率,更好地利用標注數(shù)據(jù)。
許多學(xué)者致力于研究基于有監(jiān)督的實體關(guān)系抽取,如利用基于卷積神經(jīng)網(wǎng)絡(luò)[9-10]、遞歸神經(jīng)網(wǎng)絡(luò)[11-12]和長短期記憶網(wǎng)絡(luò)[13-14]的模型來進行句子特征的自動學(xué)習,實現(xiàn)了良好的關(guān)系抽取性能。但其缺點是需要依賴大量標注數(shù)據(jù),不僅耗費成本高,而且學(xué)習到的關(guān)系抽取模型跨領(lǐng)域泛化性低,無法遷移到其他領(lǐng)域。因此,為了解決上述問題,Mintz等人[1]提出一種知識庫與語料庫啟發(fā)式對齊的遠程監(jiān)督方法來進行大規(guī)模關(guān)系抽取,但由于它并非由人工直接標注,因此產(chǎn)生了錯誤標注的問題。
為了緩解錯誤標注帶來的噪聲問題,許多研究者將關(guān)系分類建模為一個多實例學(xué)習問題。Zeng等人[2]采用分段卷積神經(jīng)網(wǎng)絡(luò)(PCNN)與多實例學(xué)習(MIL)相結(jié)合的方法,選擇最可靠的句子作為訓(xùn)練數(shù)據(jù)。Lin等人[3]提出了基于注意力的方法,通過給噪聲數(shù)據(jù)分配較小的權(quán)重來抑制其對關(guān)系分類器的影響。Ji等人[15]還加入了實體描述信息來豐富句子的特征表示,使得對包中句子權(quán)重的分配更加準確。為了強化注意力機制,Han等人[4]引入關(guān)系之間的分層信息來識別有效的實例。Ye等人[16]同時考慮了包內(nèi)和包間的注意力,分別處理句子級和包級噪聲。Feng等人[5]和Zeng等人[17]運用強化學(xué)習方法顯式地識別并移除假正例,進一步提高了關(guān)系分類器的性能。
很多學(xué)者認為,只通過簡單地抑制或移除噪聲數(shù)據(jù)會丟失數(shù)據(jù)本身所包含的有用信息,可以通過為噪聲句子分配可靠的標簽進一步豐富訓(xùn)練數(shù)據(jù)。Wu等人[18]提出利用神經(jīng)噪聲轉(zhuǎn)換器來減輕噪聲數(shù)據(jù)影響的方法,并且引入條件最優(yōu)選擇器來對其進行正確的預(yù)測。Shang等人[19]引入無監(jiān)督聚類方法為噪聲數(shù)據(jù)選擇合適的關(guān)系標簽。而且Qin等人[8]利用強化學(xué)習方法設(shè)計了可以應(yīng)用到任何遠程監(jiān)督關(guān)系抽取模型上的假正例指示器,可移植性比較強。Chen等人[20]致力于采用強化學(xué)習方法進行標簽去噪,從遠程監(jiān)督方法標注的多個關(guān)系標簽中選取最可靠的一個,用新的關(guān)系標簽訓(xùn)練關(guān)系分類器,使其性能得以提高。
然而,這些方法旨在通過處理假正例問題或噪聲標簽問題提高關(guān)系分類器的效果,忽視了同樣表達了目標關(guān)系的假負例,而在Riedel等人[21]對數(shù)據(jù)集的介紹中統(tǒng)計,有將近80%的數(shù)據(jù)都被標注為NA,因此如果在訓(xùn)練時保持假負例的錯誤標簽,就會丟失大量有用的句子信息。另外這些方法并沒有考慮策略的探索度問題,當策略探索不充分時,使用采集到的樣本進行策略優(yōu)化時就會陷入局部最優(yōu);而當策略探索太強,使用收集到的樣本進行策略優(yōu)化時對于策略的改進并沒有幫助,反而降低了學(xué)習效率。
因此本文利用強化學(xué)習方法學(xué)習一個噪聲指示器來識別目標關(guān)系的假正例與假負例,充分利用遠程監(jiān)督自動標注過程中兩種噪聲數(shù)據(jù)所包含的信息,同時采用Deepmind[22]在2017年提出的噪聲網(wǎng)絡(luò),平衡策略的探索與利用問題,使噪聲指示器既可以嘗試新的策略,發(fā)現(xiàn)能使獎勵最大化的行為,而且還可以利用已經(jīng)學(xué)到的策略,進行更有效的學(xué)習。
本文提出的基于噪聲網(wǎng)絡(luò)的強化學(xué)習遠程監(jiān)督關(guān)系抽取模型由噪聲指示器和關(guān)系分類器兩部分組成。添加噪聲網(wǎng)絡(luò)的噪聲指示器根據(jù)策略網(wǎng)絡(luò)對當前給定的句子進行決策,識別當前句子標簽是否正確。關(guān)系分類器根據(jù)噪聲網(wǎng)絡(luò)的決策結(jié)果重分配噪聲數(shù)據(jù),利用重分配的數(shù)據(jù)訓(xùn)練網(wǎng)絡(luò)。同時,關(guān)系分類器反饋獎勵給噪聲指示器,優(yōu)化噪聲指示器的策略功能。圖1描述了模型動態(tài)重分配噪聲數(shù)據(jù)的過程,首先利用噪聲指示器識別遠程監(jiān)督數(shù)據(jù)集中的假正例(false positive instances,F(xiàn)P)與假負例(false negative instances,F(xiàn)N),同時為了提高強化學(xué)習模型的探索能力,在指示器的網(wǎng)絡(luò)空間中加入噪聲,對一個遠程監(jiān)督句子做出移除或保留的決策,根據(jù)決策結(jié)果將FP從正例集中移出到負例集中,將FN從負例集中移出到正例集中;在對整個噪聲數(shù)據(jù)集進行決策之后,再利用重新生成的數(shù)據(jù)集訓(xùn)練關(guān)系分類器,最后,利用關(guān)系分類器提供的獎勵指導(dǎo)噪聲指示器更新其策略網(wǎng)絡(luò)的參數(shù)。這兩部分在彼此動態(tài)交互中進行訓(xùn)練。
圖1 動態(tài)重分配噪聲數(shù)據(jù)過程Fig.1 Dynamic redistribution of noisy data
本文將錯誤標注數(shù)據(jù)的識別建模為強化學(xué)習問題,其中,Agent即為噪聲指示器,Environment由分類器和噪聲數(shù)據(jù)組成,通過二者動態(tài)交互獲得魯棒的噪聲指示器,使其能夠采取更準確的行為。另外,利用策略網(wǎng)絡(luò)π(a|s;θ)對噪聲指示器進行參數(shù)化,即在狀態(tài)s下給出行為a的概率分布,并且根據(jù)關(guān)系分類器反饋的獎勵更新參數(shù)θ。由于強化學(xué)習的獎勵有延遲特性,噪聲指示器只有在每種關(guān)系的數(shù)據(jù)都處理完成后才能得到獎勵,從而更新其參數(shù)。本文的假正例指示器與Qin等人[8]的結(jié)構(gòu)相同,下面重點介紹假負例指示器結(jié)構(gòu)。
首先對假負例指示器中狀態(tài)、行為與獎勵等基本組件進行定義。
狀態(tài)。在強化學(xué)習中,一個最主要的前提是Environment必須滿足馬爾可夫決策過程(MDP),即當前的狀態(tài)轉(zhuǎn)移概率僅與前一狀態(tài)和行為相關(guān),但遠程監(jiān)督自動標注的數(shù)據(jù)集中每個句子彼此獨立,因此,為了將其構(gòu)建為MDP,狀態(tài)s不僅需要包含當前句子信息,并且還要添加前一狀態(tài)下移除的句子信息。本文用當前輸入句子與早期狀態(tài)下被移除句子的特征相連接的實值向量來表示狀態(tài),它包括:(1)由分類器的非線性層得到當前要處理的句子的向量表示repj;(2)早期狀態(tài)下被移除句子的平均向量表示repmean。
行為。假負例指示器是用來對NA集合中的句子是否為目標關(guān)系的假負例做出決策,因此每類關(guān)系都需要構(gòu)建一個假負例指示器,并用行為aj∈{0,1}表示假負例指示器是否移除第j個句子。0表示當前句子未能表達目標關(guān)系,保留在NA集合中;1表示當前句子屬于目標關(guān)系,需要移除到目標關(guān)系的正例集合中。aj的值由假負例指示器的策略網(wǎng)絡(luò)π(a|s;θ)得到,其中θ是可以學(xué)習的參數(shù)。策略網(wǎng)絡(luò)的作用是判斷輸入句子是否具有目標關(guān)系的特征,從而采取移除或保留的決策,類似于二元關(guān)系分類問題。為了更好地捕捉文本的局部相關(guān)性,本文基于Kim[23]所提出的TextCNN網(wǎng)絡(luò),并采用多個大小不同的核對句子關(guān)鍵特征進行提取,如圖2所示,經(jīng)過TextCNN網(wǎng)絡(luò)的輸入層、卷積層、最大池化層和非線性層,最后進行二元決策分類。
圖2 噪聲指示器結(jié)構(gòu)Fig.2 Noisy indicator structure
獎勵。獎勵函數(shù)用來衡量噪聲數(shù)據(jù)重新分配的好壞。從NA數(shù)據(jù)集中隨機分配樣本數(shù)為該目標關(guān)系正例的2倍的負例樣本R={x1,x2,…,x|R|},對每個句子進行決策,以判斷是否應(yīng)該移除當前的句子。當假負例指示器把某個錯誤標注的句子移除到目標關(guān)系的正例樣本集合中時,關(guān)系分類器即可學(xué)到更多特征,從而實現(xiàn)更好的性能。本文假設(shè)當模型完成所有的決策,即到達最終狀態(tài)s|R|+1時會獲得一個最終的延遲獎勵:
其中,Rel表示當前處理的實體關(guān)系,表示在第i個epoch時分類器所計算的F1值表示在第i-1個epoch時分類器所計算的F1值,當F1值升高時分類器為假負例指示器反饋一個正獎勵,否則,給假負例指示器反饋一個負獎勵。α將F1值的差異轉(zhuǎn)化到一個合理的數(shù)值范圍內(nèi)。
其中,F(xiàn)1的計算公式為:
Precision與Recall的計算公式如下:
TP表示真正例。
噪聲網(wǎng)絡(luò)。由于強化學(xué)習中基于策略的方法具有隨機性,很容易因盲目嘗試各種行為而浪費時間,因此本文通過在策略網(wǎng)絡(luò)參數(shù)中加入噪聲,幫助策略網(wǎng)絡(luò)將正確表達目標關(guān)系的句子移除到正例集合中,從而提高強化學(xué)習的效率。
其中f(·)取f(x)=sgn(x)||x,將該噪聲添加到策略網(wǎng)絡(luò)的全連接層即可表示為:
因此網(wǎng)絡(luò)的目標函數(shù)定義為J(ξ)=E[J(θ)],即只計算集合ξ中參數(shù)的梯度,但是計算損失時,將θ當作參數(shù)參加運算。
訓(xùn)練基于策略的假負例指示器。
假負例指示器需要弱監(jiān)督信息判斷表達了目標關(guān)系的句子是否被錯誤標注為NA,因此利用關(guān)系分類器提供的獎勵來調(diào)整參數(shù)。由上述可知,只有當一個關(guān)系中的所有負例都處理完成才能得到獎勵,如果隨機初始化策略網(wǎng)絡(luò)的參數(shù),通過不斷地試錯來訓(xùn)練模型,會浪費大量時間,因此先利用原始數(shù)據(jù)及標簽預(yù)訓(xùn)練策略網(wǎng)絡(luò)和關(guān)系分類器,從而為假負例指示器的學(xué)習提供方向,節(jié)省訓(xùn)練模型時間。
如圖3所示,在訓(xùn)練過程中,對于第i個epoch,假負例指示器根據(jù)策略π(a|s;θ),從NA數(shù)據(jù)集Nori中將表達了目標關(guān)系的正例Hi移出,對應(yīng)的該關(guān)系的負例集變?yōu)镹i=Nori-Hi,正例集變?yōu)镻i=Pori+Hi,因此該關(guān)系的數(shù)據(jù)集總量并未改變,實現(xiàn)了噪聲數(shù)據(jù)的充分利用。然后將新得到的數(shù)據(jù)集劃分為用于訓(xùn)練關(guān)系分類器的訓(xùn)練集和用來計算當前分類器的F1值的驗證集如上所述,利用相鄰兩個epoch分類器所計算得到的F1值的差異作為獎勵。
圖3 假負例指示器訓(xùn)練過程Fig.3 Training process of false negative instances indicator
假負例指示器的目標是將概率分布取樣的行為期望回報最大化。而實際上,在相鄰兩個epoch中,由于強化學(xué)習的預(yù)訓(xùn)練策略,假負例指示器已經(jīng)擁有了一定的識別目標關(guān)系句子特征的能力,因此所過濾的句子并非完全不同的,則F1的差異主要體現(xiàn)在不同的移除部分。定義以下兩個集合:
其中,Zi-1表示移除的集合中第i-1個epoch不同于第i個epoch的部分,Zi則表示移除的集合中第i個epoch不同于第i-1個epoch的部分。因此,若第i-1個epoch所移除的句子質(zhì)量更好,假負例指示器則會得到負的獎勵,相反,若第i個epoch所移除的句子質(zhì)量更好,假負例指示器則會得到正的獎勵。因此其目標函數(shù)可定義為:
對于每一個關(guān)系Rel,根據(jù)當前策略為每個狀態(tài)依次取樣一個動作,然后得到一個采樣的軌跡{s1,a1,s2,a2,…,s|R|,a|R|,s|R|+1}以及對應(yīng)的最終的獎勵r(s|R|+1|Rel),且只有s|R|+1處獎勵非零,因此對于t=1,2,…,|R|,r=r(st|Rel)=r(s|R|+1|Rel)。
根據(jù)策略梯度理論和REINFORCE[24]算法,本文使用策略梯度算法計算梯度并更新假負例指示器中策略網(wǎng)絡(luò)的參數(shù):
本文使用關(guān)系分類器評價假負例指示器所采取的一系列行為的好壞,也是一個二元分類問題,因此同樣采用TextCNN架構(gòu)。
算法1噪聲指示器和關(guān)系分類器的強化學(xué)習算法
輸入層:對每一個輸入句子,將其表示為向量列表x={v1,v2,…,vm},每個表示向量由詞嵌入和位置嵌入兩部分組成,維度分別為dw與dp,其中詞嵌入由word2vec[25]訓(xùn)練獲得,位置嵌入通過計算該單詞距離頭實體與尾實體的相對距離得到。每個單詞的表示向量vk由該詞的詞嵌入及位置嵌入連接而得(vk∈Rd,d=dw+2×dp),然后將每個單詞的向量輸入到TextCNN中。
網(wǎng)絡(luò)模型:本文采用可以更好捕捉文本局部相關(guān)性的TextCNN架構(gòu)將輸入語句編碼為低維向量,并預(yù)測對應(yīng)的關(guān)系標簽,負標簽表示輸入語句不屬于此目標關(guān)系,對應(yīng)于保留操作;正標簽表示輸入語句表達了此目標關(guān)系,對應(yīng)于移除操作。
其中,x表示為輸入句子的向量,L∈Rds為經(jīng)過卷積、池化的一系列計算后的輸出,ds為特征映射的數(shù)量。卷積層利用窗口大小為l的核滑動輸入句子向量x,得到的隱藏嵌入進入最大池化層得到最終的輸出L。
關(guān)系預(yù)測的概率如下:
其中,全連接層的參數(shù)Wr∈Rnr×ds是每個關(guān)系的類別嵌入,br∈Rnr是一個偏置向量,nr為總的類別數(shù)量。
損失函數(shù):給定由假負例指示器重新分配的數(shù)據(jù)集,訓(xùn)練關(guān)系分類器的目標函數(shù)定義如下:
經(jīng)過上述強化學(xué)習過程后,假負例指示器具有了對假負例FN進行分類的能力。如果包含同一對實體的全部句子都被識別為假負例,這個實體對才被劃分到對應(yīng)關(guān)系的正例集中。
由于噪聲指示器與包含噪聲數(shù)據(jù)和關(guān)系分類器的環(huán)境動態(tài)交互,因此需要聯(lián)合訓(xùn)練這兩部分,而且在聯(lián)合訓(xùn)練之前,為了節(jié)省時間,對噪聲指示器中的策略網(wǎng)絡(luò)和關(guān)系分類器中TextCNN進行了預(yù)訓(xùn)練。噪聲指示器中的策略網(wǎng)絡(luò)使用策略梯度理論來優(yōu)化,關(guān)系分類器中目標函數(shù)利用梯度下降法進行最小化。
算法1詳細描述了噪聲指示器和關(guān)系分類器的強化學(xué)習過程,噪聲指示器識別訓(xùn)練集中的噪聲數(shù)據(jù)并進行重新分配,并對關(guān)系分類器進行訓(xùn)練;關(guān)系分類器對新生成的數(shù)據(jù)進行預(yù)測從而計算F1值,并且相鄰epoch的F1值的差異作為獎勵反饋給噪聲指示器。
本文采用廣泛用于遠程監(jiān)督關(guān)系抽取任務(wù)的Riedel[21]數(shù)據(jù)集,該數(shù)據(jù)集是通過將New York Times語料庫中的文本與Freebase知識庫中的實體對對齊得到的,New York Times語料庫中提及的實體由斯坦福命名實體識別器[26]識別。其中2005—2006年的文本用來進行訓(xùn)練,2007年的文本用來進行測試。訓(xùn)練數(shù)據(jù)集包括522 611個句子,281 270個實體對和18 252個關(guān)系事實。測試數(shù)據(jù)集包括172 448個句子,96 678個實體對和1 950個關(guān)系事實。共有53種關(guān)系,其中包括一個“NA”特殊標簽,用于表示實體對之間不存在關(guān)系。
本文采用留出法對模型進行了評價,將從測試語料庫中提取的關(guān)系事實和Freebase中的關(guān)系事實進行了對比,該方法在可以提供分類能力的近似測量的基礎(chǔ)上避免昂貴的人工評估。本文采用精度/召回率曲線來對模型的性能進行評估,除了精度/召回率曲線,還展示了特定召回率下的精度值,以便進行更直接的比較,并對模型的AUC值進行計算,以顯示不同模型的整體效果。AUC即Roc曲線與坐標軸形成的面積,表示隨機從正樣本集中抽取一個正樣本,負樣本集中抽取一個負樣本,正樣本的預(yù)測值大于負樣本的概率。其計算公式如下:
與之前的工作相同,本文直接使用Lin等人[3]給定的詞嵌入文件,只保留NYT中出現(xiàn)100次以上的詞。另外,對位置嵌入設(shè)置相同的尺寸,相對距離的最大長度為-30和+30(-和+表示實體的左右兩側(cè)),使用RMSprop優(yōu)化器對噪聲指示器的參數(shù)進行優(yōu)化,學(xué)習率為2E-5;使用Adam優(yōu)化器對關(guān)系分類器的參數(shù)進行優(yōu)化,學(xué)習率設(shè)為1E-3。具體超參數(shù)設(shè)置如表2所示。
表2 超參數(shù)設(shè)置Table 2 Hyperparameter settings
本文采用強化學(xué)習的方法解決上述PCNN+ONE/ATT只能處理假正例的問題,并且考慮了強化學(xué)習的探索與利用的平衡問題,利用添加了噪聲的指示器識別每一種關(guān)系的NA句子,將表達目標關(guān)系的句子重新分配到正例集合中,從而構(gòu)建一個新的數(shù)據(jù)集。雖然Riedel[25]數(shù)據(jù)集中包含52種關(guān)系,但由于強化學(xué)習的訓(xùn)練需要大規(guī)模數(shù)據(jù),因此只選擇了正例數(shù)大于1 000的10種關(guān)系進行訓(xùn)練。最后利用新構(gòu)建的數(shù)據(jù)集分別訓(xùn)練PCNN+ONE與PCNN+ATT模型,并且與使用原始數(shù)據(jù)集訓(xùn)練后的模型進行比較。Original表示利用原始遠程監(jiān)督數(shù)據(jù)集訓(xùn)練PCNN+ONE/ATT模型;+FP表示利用Qin等人[8]基于強化學(xué)習方法設(shè)計的假正例指示器,將假陽性樣本移到負樣本集后得到新的數(shù)據(jù)集,用其訓(xùn)練PCNN+ONE/ATT模型;+OURS表示利用本文方法對假陽性樣本及假陰性樣本進行重新分配,使用處理后的數(shù)據(jù)集訓(xùn)練PCNN+ONE/ATT模型。實驗結(jié)果如圖4、圖5所示,將這三種方法的精確率-召回率曲線進行對比可知,由本文方法重新分配后獲得的數(shù)據(jù)集更加合理,同樣的模型其性能可以得到明顯的提升,這說明充分利用噪聲數(shù)據(jù),以及添加噪聲網(wǎng)絡(luò)可以有效提高關(guān)系分類器的能力。
圖4 基于PCNN+ONE模型的PR曲線對比圖Fig.4 Comparison diagram of PR curve based on PCNN+ONE model
圖5 基于PCNN+ATT模型的PR曲線對比圖Fig.5 Comparison diagram of PR curve based on PCNN+ATT model
由于在召回率大于0.05時,模型的精確率-召回率曲線波動不明顯,為了更具體地解釋,將不同召回率(0.1/0.2/0.3/0.4)下的最高的精度及其平均值記錄在表3中。從結(jié)果中可以看出,相對比原始數(shù)據(jù)集以及僅處理假正例的數(shù)據(jù)集,本文方法提高了遠程監(jiān)督關(guān)系抽取的準確性。為了更加直觀地比較,計算了每條PR曲線的AUC值,如表4所示,它反映了這些曲線下的面積大小。這些比較結(jié)果也表明了本文方法的有效性。
表3 各種神經(jīng)網(wǎng)絡(luò)模型在不同召回率下的最大精度Table 3 Maximum precision of various neural network models at different recall 單位:%
表4 本文方法與以往研究的AUC值Table 4 AUC values of method in this paper and previous studies
本文對處理不同噪聲數(shù)據(jù)及添加噪聲網(wǎng)絡(luò)的有效性進行了實驗,結(jié)果如圖6、圖7所示,其中PCNN+ONE/ATT+ALL是將處理假正例與假負例的這兩種模型進行結(jié)合,可以充分利用對齊過程中產(chǎn)生的噪聲數(shù)據(jù)進行關(guān)系分類,相比于只處理假正例一種噪聲,其性能提升3%左右,因為重分配假負例,可以增多正確的訓(xùn)練樣本,從而更好地學(xué)習關(guān)系特征。PCNN+ONE/ATT+ALL+Noisy是在策略網(wǎng)絡(luò)權(quán)值中加入?yún)?shù)噪聲,與PCNN+ONE/ATT+ALL相比,模型的分類效果進一步提升,說明參數(shù)噪聲的添加確實增強了強化學(xué)習探索的能力,幫助噪聲指示器更準確地重新分配噪聲數(shù)據(jù),增多了正確表達實體-關(guān)系的句子。
圖6 不同設(shè)置下PCNN+ONE模型的PR曲線圖Fig.6 PR curve of PCNN+ONE model under different setting
圖7 不同設(shè)置下PCNN+ATT模型的PR曲線圖Fig.7 PR curve of PCNN+ATT model under different setting
為了驗證模型對于識別假負例數(shù)據(jù)的有效性,本文分別對模型識別出的每種關(guān)系的假負例數(shù)據(jù)進行統(tǒng)計,其結(jié)果如表5所示,表明本文所提出的模型可以用于糾正假負例標簽,而且本文對一些標記錯誤的數(shù)據(jù)進行了采樣,如表6所示,以S2為例,由于知識庫的不完整,因此認為實體對(kathleen,new_york_city)之間不存在關(guān)系,但其語句表達了二者之間存在/peo-ple/person/place_of_birth的關(guān)系,具有目標關(guān)系的特征。另外,S3雖然沒有表達任何關(guān)系,但因為在Freebase中存在關(guān)系事實(New Yorkcity,/people/deceased_person/place_of_death,William O’Dwyer),所以它被錯誤地標記為/people/deceased_person/place_of_death。從中可以看出,對于每種關(guān)系,本文的關(guān)系分類器對噪聲數(shù)據(jù)進行了準確的識別,表明本文的模型確實捕獲了噪聲數(shù)據(jù)的有效信息,并利用這些信息提高了遠程監(jiān)督關(guān)系抽取模型的能力。
表5 每種關(guān)系重新分配假負例數(shù)量統(tǒng)計Table 5 Statistics on number of false negative cases of reallocation for each relationship
表6 案例研究實例(前兩個句子為假陰性實例,后兩個句子為假陽性實例)Table 6 Case study examples
本文提出了一個帶有噪聲網(wǎng)絡(luò)的強化學(xué)習模型,將本文模型與識別假正例的模型相結(jié)合,可用于識別并重新分配遠程監(jiān)督關(guān)系分類中被錯誤標注的句子。通過利用基于策略的強化學(xué)習方法,最大化由關(guān)系分類器得到的獎勵從而訓(xùn)練噪聲指示器識別、分配噪聲數(shù)據(jù)的能力,其中在策略網(wǎng)絡(luò)權(quán)值中加入?yún)?shù)噪聲,增加強化學(xué)習的探索。這樣,本文的模型不僅減少了錯誤標簽帶來的負面影響,而且可以利用噪聲數(shù)據(jù)所包含的關(guān)系特征。實驗結(jié)果表明,本文的框架提高了各種深度學(xué)習模型在Freebase對齊NYT公共數(shù)據(jù)集上提取遠程監(jiān)督關(guān)系的性能。