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