楊衛(wèi)哲,秦永彬,黃瑞章,王 凱,程華齡,唐瑞雪,程欣宇,陳艷平
(1.貴州大學(xué)省部共建公共大數(shù)據(jù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,貴陽(yáng)550025;2.貴州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,貴陽(yáng)550025;3.貴州省智能醫(yī)學(xué)影像分析與精準(zhǔn)診斷重點(diǎn)實(shí)驗(yàn)室,貴陽(yáng)550025;4.貴州省智能人機(jī)交互工程技術(shù)研究中心,貴陽(yáng)550025)
關(guān)系抽取(Relation extraction,RE)是自然語(yǔ)言處理(Natural language processing,NLP)領(lǐng)域中的一項(xiàng)基礎(chǔ)任務(wù),該任務(wù)旨在識(shí)別并抽取文本中已知實(shí)體之間的語(yǔ)義關(guān)系,在中英文等多種語(yǔ)言中已有廣泛研究。例如:對(duì)于句子實(shí)例“任正非是華為公司總裁”,關(guān)系抽取系統(tǒng)能自動(dòng)識(shí)別出實(shí)體“任正非”和“華為公司”之間的語(yǔ)義關(guān)系是“雇傭”。關(guān)系抽取的研究成果在信息抽?。?]、問(wèn)答系統(tǒng)[2?3]、智能問(wèn)答[4]和知識(shí)圖譜構(gòu)建[5]等任務(wù)中都有廣泛應(yīng)用,然而關(guān)系抽取任務(wù)的研究主要基于句子級(jí)別,實(shí)例文本中包含的文字?jǐn)?shù)量通常較少,用僅有的文本信息難以獲取足夠的特征來(lái)支撐抽取實(shí)體之間的語(yǔ)義關(guān)系,造成了嚴(yán)重的特征稀疏問(wèn)題。如何利用有限的文本信息獲取句子結(jié)構(gòu)特征以解決特征稀疏問(wèn)題,從而支撐關(guān)系抽取任務(wù)是本文研究的重點(diǎn)。
首先,從語(yǔ)言層面來(lái)看,中西方思維方式存在差異,語(yǔ)言產(chǎn)生的背景環(huán)境不同等特點(diǎn)使得中英文的語(yǔ)言結(jié)構(gòu)不盡相同。語(yǔ)言有分析型和綜合型之分,分析型語(yǔ)言語(yǔ)序固定,綜合型語(yǔ)言語(yǔ)序靈活。英語(yǔ)是綜合型語(yǔ)言,在語(yǔ)言結(jié)構(gòu)上較重視形式分析和邏輯推理,語(yǔ)法嚴(yán)格,從句形式較多,句子一般較長(zhǎng);中文屬于分析型語(yǔ)言,語(yǔ)序較為固定,沒(méi)有曲折變化,其詞語(yǔ)組合成句依靠語(yǔ)序和虛詞,短句較為常見(jiàn)[6]。英語(yǔ)等印歐語(yǔ)系語(yǔ)言的基本結(jié)構(gòu)單位是詞,漢語(yǔ)的基本結(jié)構(gòu)單位是字,所以在中文的處理中,文字組合的結(jié)構(gòu)要求更為嚴(yán)格,如何將字組合成符合文本語(yǔ)境和語(yǔ)義的詞非常關(guān)鍵。例如,對(duì)于句子實(shí)例“南京市長(zhǎng)江大橋位于南京市鼓樓區(qū)”,抽取實(shí)體關(guān)系時(shí)需要使關(guān)系抽取系統(tǒng)能夠?qū)ξ谋局袑?shí)體對(duì)進(jìn)行感知,得到完整且有效的實(shí)體表示,即組合成實(shí)體詞的文字應(yīng)盡量正確搭配,避免產(chǎn)生歧義和錯(cuò)義。然而,中文基本結(jié)構(gòu)單位的不同組合易使結(jié)果產(chǎn)生歧義和錯(cuò)義,因此對(duì)文字組合的結(jié)構(gòu)性有較高要求。如上句實(shí)例,基本結(jié)構(gòu)單位組合的實(shí)體結(jié)果可能如下:“南京市”、“南京市長(zhǎng)”,“江大橋”,“長(zhǎng)江大橋”……。關(guān)系抽取系統(tǒng)若無(wú)法正確地感知實(shí)例中實(shí)體對(duì)的位置及內(nèi)容,就會(huì)對(duì)關(guān)系抽取結(jié)果產(chǎn)生影響。根據(jù)人類知識(shí)庫(kù),句子實(shí)例中實(shí)體“南京市”與“長(zhǎng)江大橋”之間存在一種地點(diǎn)之間的包含關(guān)系。若“江大橋”的文字組合結(jié)果被關(guān)系抽取系統(tǒng)認(rèn)為其具有人名類實(shí)體的相關(guān)屬性信息,而“南京市鼓樓區(qū)”被關(guān)系抽取系統(tǒng)判定為具有地點(diǎn)類實(shí)體的相關(guān)屬性信息,則系統(tǒng)會(huì)抽取到兩實(shí)體之間存在一種“人名?地點(diǎn)”的關(guān)系??梢?jiàn),不同的句子結(jié)構(gòu)能夠使系統(tǒng)的識(shí)別結(jié)果發(fā)生變化。相反,將上述實(shí)例句用英文表達(dá)為“Nanjing Yangtze River Bridge is located in Gulou District,Nanjing”,由于其語(yǔ)法嚴(yán)格,關(guān)系抽取系統(tǒng)會(huì)根據(jù)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到的詞向量表示,將“Nanjing”、“Yangtze River Bridge”、“Gulou District”等基本結(jié)構(gòu)單位的組合識(shí)別為具有實(shí)體屬性信息的詞組,不易產(chǎn)生類似于中文中“南京市”、“南京市長(zhǎng)”這樣會(huì)造成實(shí)體關(guān)系識(shí)別產(chǎn)生差異的組合結(jié)果。上述對(duì)比可知基本結(jié)構(gòu)單位的不同組合使得文本實(shí)例有不同的句子結(jié)構(gòu),從而影響實(shí)體關(guān)系識(shí)別的結(jié)果。
此外,實(shí)體類型信息也會(huì)影響實(shí)體對(duì)關(guān)系的識(shí)別。相同的基本結(jié)構(gòu)單位組合得到的實(shí)體在不同語(yǔ)境下可能有著不同的實(shí)體類型,在關(guān)系識(shí)別的時(shí)候就能體現(xiàn)出實(shí)體類型對(duì)結(jié)果的影響。例如:實(shí)例1,“中華人民共和國(guó)的開(kāi)國(guó)大典在北京隆重舉行”;實(shí)例2,“北京當(dāng)局宣布中國(guó)政府會(huì)永遠(yuǎn)站在中國(guó)人民身邊”。二者都包含由基本結(jié)構(gòu)單位“北”和“京”組成的實(shí)體“北京”。但是實(shí)例1中的“北京”是一個(gè)帶有地點(diǎn)屬性類型的實(shí)體,實(shí)例2中的“北京”是一個(gè)帶有組織屬性類型的實(shí)體。顯然,如果沒(méi)有實(shí)體類型說(shuō)明,關(guān)系抽取系統(tǒng)會(huì)將由相同基本結(jié)構(gòu)單位組成但在不同語(yǔ)境下代表了不同含義的實(shí)體認(rèn)為是同一實(shí)體,這是不合適的。因此,實(shí)體類型屬性是實(shí)體信息中很重要的特征之一,能使神經(jīng)網(wǎng)絡(luò)有效獲取句子結(jié)構(gòu)特征。
最后,關(guān)系抽取中實(shí)體間的結(jié)構(gòu)特征也是影響抽取結(jié)果的因素之一,這里用實(shí)體間的相對(duì)位置關(guān)系來(lái)表示實(shí)體對(duì)結(jié)構(gòu)特征,即實(shí)體1相對(duì)于實(shí)體2是處于其之前還是之后的位置描述。例如:句子實(shí)例3“人類是能夠制造并使用工具的高級(jí)生物”,此句中存在實(shí)體對(duì)“人類”和“工具”。理想情況下,關(guān)系抽取系統(tǒng)應(yīng)能夠識(shí)別出實(shí)體“人類”與“工具”之間存在“制造”的關(guān)系。但相反,對(duì)于實(shí)體“工具”與“人類”之間卻不能存在“制造”類實(shí)體關(guān)系??芍?,實(shí)體的相對(duì)位置信息對(duì)于獲取以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征是有效的。
本文的主要貢獻(xiàn)是基于句子結(jié)構(gòu)特征和語(yǔ)義信息對(duì)實(shí)體關(guān)系抽取有重大影響的前提,提出了一種面向關(guān)系抽取的句子結(jié)構(gòu)特征獲取方法。通過(guò)使用實(shí)體類型、實(shí)體相對(duì)位置和實(shí)體邊界構(gòu)造標(biāo)記符及分隔符來(lái)標(biāo)記和分隔實(shí)體的方式突出文本結(jié)構(gòu),獲取句子的結(jié)構(gòu)特征,增強(qiáng)神經(jīng)網(wǎng)絡(luò)對(duì)實(shí)體關(guān)系學(xué)習(xí)的能力。利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent neural networks,RNN)的原理,結(jié)合At?tention機(jī)制[7],在基于變換器的雙向編碼器表征技術(shù)(Bidirectional encoder representations from transformers,BERT)預(yù)訓(xùn)練語(yǔ)言模型[8]以及卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,CNN)模型上都能使神經(jīng)網(wǎng)絡(luò)對(duì)實(shí)例文本的實(shí)體對(duì)有更深刻的語(yǔ)義認(rèn)識(shí),達(dá)到提高中文關(guān)系抽取性能的目的。實(shí)驗(yàn)數(shù)據(jù)顯示,實(shí)體類型及相對(duì)位置信息標(biāo)記的確能夠獲取以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征,取得更好的中文關(guān)系抽取性能,在ACE 2005中文關(guān)系抽取數(shù)據(jù)集上使得關(guān)系抽取性能F1提升9%~11%。
關(guān)系抽取的研究通常包括基于規(guī)則、有監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)等方法。早期的關(guān)系抽取研究方法主要基于語(yǔ)法規(guī)則,通過(guò)分析句子的語(yǔ)法結(jié)構(gòu),找出盡可能多的在指定語(yǔ)法規(guī)則中出現(xiàn)的實(shí)體對(duì),將其作為實(shí)體關(guān)系發(fā)生的依據(jù)。但是該方法需要人工制定較為嚴(yán)謹(jǐn)?shù)囊?guī)則,制定方法較為復(fù)雜,規(guī)則制定依賴較強(qiáng)的領(lǐng)域語(yǔ)言文學(xué)專業(yè)知識(shí)和語(yǔ)法知識(shí),領(lǐng)域性強(qiáng),普適性低。
在關(guān)系抽取中應(yīng)用的傳統(tǒng)機(jī)器學(xué)習(xí)方法依賴于人工選擇的大量特征,對(duì)研究者的領(lǐng)域知識(shí)有較高要求。而深度學(xué)習(xí)技術(shù)能夠通過(guò)大量的訓(xùn)練數(shù)據(jù)自動(dòng)獲取分類特征,因此成為關(guān)系抽取研究領(lǐng)域的重要技術(shù),其目的在于利用計(jì)算機(jī)建立模仿人腦分析學(xué)習(xí)機(jī)制的人工神經(jīng)網(wǎng)絡(luò)。構(gòu)建人工神經(jīng)網(wǎng)絡(luò)是深度學(xué)習(xí)研究中的重要部分,以其獨(dú)特的結(jié)構(gòu)組成和數(shù)據(jù)處理方式應(yīng)用于許多領(lǐng)域并取得了顯著成效。在中文自然語(yǔ)言處理中,Liu等[9]首次使用CNN模型在ACE 2005數(shù)據(jù)集[10]上研究關(guān)系抽取任務(wù),提出了用同義詞編碼方式表示具有相同語(yǔ)義的單詞,取得良好效果,但該模型沒(méi)有池化層,受噪聲影響比較明顯。此外,基于特征工程或核函數(shù)的傳統(tǒng)關(guān)系抽取方法也取得了很大進(jìn)步[11?12],但這類方法需要人工設(shè)計(jì)較為復(fù)雜且優(yōu)良的特征,可移植性差。除了在公共領(lǐng)域研究實(shí)體關(guān)系,以達(dá)到普遍支持下游任務(wù)的目的以外,在特定領(lǐng)域的實(shí)體關(guān)系抽取研究也十分有必要。文獻(xiàn)[13]研究了司法領(lǐng)域的數(shù)據(jù)融合與分析應(yīng)用,其中關(guān)系抽取的研究可在司法領(lǐng)域知識(shí)圖譜構(gòu)建中有效應(yīng)用。
在關(guān)系抽取任務(wù)中,實(shí)體對(duì)將句子分為5個(gè)部分,是一種獨(dú)特的句子結(jié)構(gòu)。在該任務(wù)的研究過(guò)程中,曾有許多研究者考慮過(guò)使用句子結(jié)構(gòu)特征。王長(zhǎng)有等[14]提出了一種基于句子結(jié)構(gòu)特征的領(lǐng)域術(shù)語(yǔ)上下位關(guān)系獲取方法,該方法通過(guò)分析句法結(jié)構(gòu),融合句子結(jié)構(gòu)特征進(jìn)行關(guān)系抽取。Chen等[15]提出了一種多通道深度神經(jīng)網(wǎng)絡(luò)的方法,利用句子結(jié)構(gòu)特征獲得同一詞語(yǔ)的不同表示。Socher等[16]提出了一種使用矩陣?遞歸神經(jīng)網(wǎng)絡(luò)模型(Matrix?vector recursive neural networks,MV?RNN)的方法來(lái)進(jìn)行關(guān)系抽取。該方法在關(guān)系抽取任務(wù)中考慮了句子的句法信息和語(yǔ)法結(jié)構(gòu)信息,但是未能將以實(shí)體對(duì)為中心的句子結(jié)構(gòu)信息表達(dá)利用起來(lái)。
在捕獲句子結(jié)構(gòu)特征的研究中,最簡(jiǎn)單的是Damashek[17]提出的n?gram特征提取方法。通常將n設(shè)置為1,2,或3,當(dāng)n變大時(shí),可能會(huì)捕捉到噪聲特征,導(dǎo)致關(guān)系抽取性能降低。n?gram特征可以與語(yǔ)義或語(yǔ)法特征(如:潛在主題、位置特征)結(jié)合來(lái)生成組合特征[18?19],使得特征分布改變,得到偏斜分布,有助于改善實(shí)驗(yàn)性能。劉娜娜等[20]基于中文短語(yǔ)成分結(jié)構(gòu)對(duì)關(guān)系抽取有重大影響的理論,提出使用短語(yǔ)成分分析模型MPARSER和關(guān)系抽取模型PCNNATT獲取短語(yǔ)結(jié)構(gòu)提高中文關(guān)系抽取的性能。
序列模型(隱馬爾科夫模形(Hidden markov model,HMM),條件隨機(jī)(Conditional random field,CRF),長(zhǎng)短期記憶網(wǎng)(Long short?term memory,LSTM)等)常用于建模詞語(yǔ)之間的依賴關(guān)系。給定一個(gè)句子,序列模型可以得到一個(gè)最大的標(biāo)簽序列以指定句中的語(yǔ)言單元,通過(guò)假定標(biāo)簽之間的高階相關(guān)性,達(dá)到有效捕捉句子結(jié)構(gòu)信息的目的。但是序列模型通常難以捕捉到具有長(zhǎng)期依賴關(guān)系的文本相關(guān)性,即兩個(gè)間隔很遠(yuǎn)的語(yǔ)言單元很難互相影響。有些自然語(yǔ)言處理任務(wù)需要得到的信息可能分散在整個(gè)較長(zhǎng)的文檔中,故很難用序列模型捕獲到全局信息,而且序列模型也不適用于某些嵌套型信息抽取任務(wù),如嵌套命名實(shí)體識(shí)別[21]。
解析樹(shù)和依賴樹(shù)是獲取更細(xì)粒度句子結(jié)構(gòu)的建模方法,從句法理論出發(fā),提供了一種自然語(yǔ)言研究方法?;诮馕鰳?shù)的方法廣泛應(yīng)用于句子級(jí)別的信息抽取任務(wù)[22?24],該方法存在的問(wèn)題主要是不正確的分塊或解析,數(shù)據(jù)的零碎嘈雜異構(gòu)等特點(diǎn)可能導(dǎo)致性能不佳。因此,相對(duì)于解析整個(gè)句子,在特定語(yǔ)言單元中解析局部依賴的上下文關(guān)系對(duì)關(guān)系抽取更為有效。在深度學(xué)習(xí)模型架構(gòu)中,字的位置向量特征和解析樹(shù)都可以獲得句子的結(jié)構(gòu)特征。關(guān)系抽取研究中常用的位置向量是根據(jù)實(shí)例文本中每個(gè)字與兩實(shí)體的相對(duì)距離產(chǎn)生的,將其坐標(biāo)轉(zhuǎn)換為分布式表示,最后將位置向量與字向量直接拼接送入神經(jīng)網(wǎng)絡(luò)。Zeng等[25]使用卷積神經(jīng)網(wǎng)絡(luò),首次提出了使用位置特征(Position features,PF)編碼當(dāng)前詞與目標(biāo)詞對(duì)的相對(duì)距離,同時(shí)說(shuō)明位置特征是比較有效的特征。
例如,在ACE 2005中文數(shù)據(jù)集中有這樣一個(gè)句子:“南韓總統(tǒng)金大中以及高層人士”,句中兩個(gè)實(shí)體分別是“南韓”,“金大中”,稱為目標(biāo)詞。在BERT中,每個(gè)字的位置向量是由該字在句中出現(xiàn)的位置下標(biāo)決定的,如例句中的“南韓總統(tǒng)”4個(gè)字所對(duì)應(yīng)的位置分別為“0”,“1”,“2”,“3”,以此類推。而關(guān)系抽取研究中,常用的位置特征獲取方法是根據(jù)當(dāng)前字與兩標(biāo)記實(shí)體的相對(duì)位置決定的。實(shí)例文本中除兩實(shí)體以外的所有字相對(duì)于兩個(gè)實(shí)體均存在兩個(gè)距離值,規(guī)定實(shí)體左邊取負(fù)值,在實(shí)體右邊取正值,將這兩個(gè)相對(duì)距離作為位置向量映射的自變量,位置向量是映射的因變量,即向量值。如例句中“南韓總統(tǒng)”所對(duì)應(yīng)的位置分別為“(0,-4)”、“(0,-3)”、“(1,-2)”、“(2,-1)”,以此類推隨后將其映射成一個(gè)低維度的向量d1和d2,然后從位置向量的查找表中將位置映射為向量表示,最終將兩者串聯(lián)得到最后的位置特征PF=[d1,d2]??赏ㄟ^(guò)文中實(shí)體詞與非實(shí)體詞之間的相對(duì)位置關(guān)系來(lái)獲取句子的結(jié)構(gòu)特征。
在使用位置向量獲取句子結(jié)構(gòu)特征的基礎(chǔ)上,許多研究者提出了更多神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。Sahami等[23]使用卷積神經(jīng)網(wǎng)絡(luò),直接拼接詞向量和位置向量。Santos等[26]首先從詞向量和位置向量中探究句子的表示形式,然后將每一個(gè)句子的表示與矩陣相乘去對(duì)每一個(gè)關(guān)系類別進(jìn)行預(yù)測(cè)評(píng)分。Zeng等[27]提出了一個(gè)分段獲取句子結(jié)構(gòu)信息的方法,利用句子中的兩個(gè)實(shí)體將句子分割,對(duì)每部分內(nèi)容進(jìn)行池化操作,獲取更多特征。另外,注意力機(jī)制方法也多應(yīng)用于位置向量獲取信息[28]。2018年,Devlin等[8]提出的BERT采用表義能力更強(qiáng)的雙向Transformer網(wǎng)絡(luò)結(jié)構(gòu)訓(xùn)練語(yǔ)言模型。
BERT預(yù)訓(xùn)練語(yǔ)言模型直接訓(xùn)練一個(gè)位置向量用于保留字的位置信息,每個(gè)位置隨機(jī)初始化一個(gè)向量,加入模型訓(xùn)練,然后得到一個(gè)包含位置信息的位置向量,最后BERT將位置向量和字向量直接拼接。本文在中文關(guān)系抽取的實(shí)驗(yàn)上引入了CNN神經(jīng)網(wǎng)絡(luò)模型和基于Transformer的BERT預(yù)訓(xùn)練語(yǔ)言模型,使用實(shí)體類型標(biāo)記的方法獲取句子的結(jié)構(gòu)特征。實(shí)驗(yàn)顯示本文方法有效提高了中文關(guān)系抽取的性能,在ACE 2005中文數(shù)據(jù)集上取得了0.898的F1值。
本文所采用的數(shù)據(jù)集是ACE 2005中文數(shù)據(jù)集[10],其數(shù)據(jù)以分層結(jié)構(gòu)存儲(chǔ)于文件中。對(duì)于分層結(jié)構(gòu)的數(shù)據(jù),最自然的表示方法是使用樹(shù)表示整篇文章,樹(shù)中的節(jié)點(diǎn)表示實(shí)體、關(guān)系等元素,故采用樹(shù)形結(jié)構(gòu)解析的方法從文件中獲取關(guān)系提及實(shí)例、實(shí)體內(nèi)容、實(shí)體類型和關(guān)系類型等信息。
首先從大量非結(jié)構(gòu)化文本中提取出帶有兩個(gè)或兩個(gè)以上實(shí)體的句子,然后將整篇存儲(chǔ)了句子實(shí)例文本、實(shí)體內(nèi)容和實(shí)體中心詞等諸多元素信息的文檔進(jìn)行樹(shù)形解析,提取出數(shù)據(jù)集中標(biāo)注了實(shí)體關(guān)系類型的句子作為正例使用。與整個(gè)文檔的交互(讀取和寫入文件)是在樹(shù)及元素節(jié)點(diǎn)級(jí)別上完成的,使用樹(shù)形結(jié)構(gòu)解析ACE 2005數(shù)據(jù)集中的文檔,從中提取出句子實(shí)例文本、實(shí)體內(nèi)容、實(shí)體類型和關(guān)系類型等信息。在取得整篇文章之后使用逗號(hào)、句號(hào)、冒號(hào)、分號(hào)、問(wèn)號(hào)5種標(biāo)點(diǎn)符號(hào)將其分割為句子,將包含了實(shí)體對(duì)且未在正例中出現(xiàn)的實(shí)例文本作為負(fù)例使用。
獲取到實(shí)例文本之后,將句子中多余的空格、換行等在實(shí)驗(yàn)中認(rèn)為無(wú)意義的字符予以割除。最后按照句中實(shí)體對(duì)出現(xiàn)的相對(duì)位置不同,將其分為“嵌套”和“獨(dú)立”兩種類型的相對(duì)位置關(guān)系?!扒短住标P(guān)系包括了“實(shí)體1出現(xiàn)在實(shí)體2內(nèi)部”“實(shí)體2出現(xiàn)在實(shí)體1內(nèi)部”兩種位置關(guān)系;“獨(dú)立”關(guān)系包括了“實(shí)體1出現(xiàn)在實(shí)體2之前”“實(shí)體2出現(xiàn)在實(shí)體1之前”兩種位置關(guān)系。最終從數(shù)據(jù)集中整理得到數(shù)據(jù)為形如“實(shí)體1實(shí)體2實(shí)體1類型實(shí)體2類型 實(shí)體提及句子 關(guān)系類型”的實(shí)例集合。據(jù)統(tǒng)計(jì),在ACE 2005中文數(shù)據(jù)集的關(guān)系抽取實(shí)例中,包含“嵌套”實(shí)體對(duì)的實(shí)例文本占總數(shù)據(jù)量的29.80%,這說(shuō)明了對(duì)能夠凸顯實(shí)體對(duì)的句子結(jié)構(gòu)信息抽取方法的研究很有意義。
關(guān)系抽取實(shí)例文本中包含的實(shí)體個(gè)數(shù)并不固定,舍棄文本中少于兩個(gè)實(shí)體的句子,當(dāng)句子中實(shí)體個(gè)數(shù)大于等于2時(shí),按照其實(shí)體的不同順序兩兩組合,該實(shí)體對(duì)間可能存在某種語(yǔ)義關(guān)系,或者不存在。在關(guān)系抽取模型中,可由實(shí)體存在的上下文語(yǔ)境,結(jié)合多種特征識(shí)別該實(shí)體對(duì)在當(dāng)前語(yǔ)境中蘊(yùn)含的實(shí)體關(guān)系類型??捎锰卣靼ㄎ恢?、詞性等。在關(guān)系抽取研究中,句子級(jí)別和文檔級(jí)別的研究是當(dāng)前較為主流的兩個(gè)分支,句子級(jí)別的關(guān)系抽取研究更加廣泛,但是句子實(shí)例中包含的詞量一般較少,可利用的原子特征不足,特征稀疏問(wèn)題十分嚴(yán)重。因此,怎樣利用神經(jīng)網(wǎng)絡(luò)獲取到句子中以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征是研究目的,借此可以解決句子級(jí)關(guān)系抽取中特征稀疏的問(wèn)題。關(guān)系抽取實(shí)例文本中包含兩個(gè)或兩個(gè)以上已識(shí)別出的實(shí)體,以其中要識(shí)別其關(guān)系類型的兩實(shí)體邊界為分隔,將文本句子分為“左、實(shí)體1、中、實(shí)體2、右”,共5個(gè)部分,用實(shí)體類型標(biāo)記符對(duì)兩實(shí)體的開(kāi)始和結(jié)束進(jìn)行標(biāo)記。
對(duì)于實(shí)體類型標(biāo)記及分隔方法,設(shè)置了如圖1(b~f)所示的5種不同的實(shí)體標(biāo)記構(gòu)成方法。實(shí)驗(yàn)中,除了使用實(shí)體類型標(biāo)記符標(biāo)記實(shí)體的開(kāi)始和結(jié)束邊界,用于獲取句子中以實(shí)體對(duì)為中心的結(jié)構(gòu)特征。還使用了實(shí)體對(duì)復(fù)用的方法,將實(shí)例文本中的實(shí)體對(duì)前置至句首處,并用字符“0”對(duì)復(fù)用實(shí)體對(duì)進(jìn)行分隔,加強(qiáng)實(shí)體語(yǔ)義信息的表達(dá)能力,使得神經(jīng)網(wǎng)絡(luò)模型獲取以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征。
(1)原對(duì)照文本。圖1(a)所示文本處理方法為原始文本輸入,不對(duì)句子做任何處理,保留句子中實(shí)體及除標(biāo)點(diǎn)符號(hào)以外的其他全部?jī)?nèi)容作為對(duì)照實(shí)驗(yàn)。
(2)實(shí)體對(duì)復(fù)用。圖1(b)所示的文本處理方法是將句子中的實(shí)體對(duì)前置至句首,起到實(shí)體對(duì)語(yǔ)義增強(qiáng)的作用。
(3)實(shí)體對(duì)標(biāo)記。圖1(c)所示的文本處理方法為將句子中被識(shí)別其關(guān)系的實(shí)體對(duì)分別使用由實(shí)體類型和實(shí)體相對(duì)位置構(gòu)成的實(shí)體標(biāo)記符作標(biāo)記處理。這種處理方法是本研究中獲取句子結(jié)構(gòu)特征的主要方法。
(4)實(shí)體對(duì)標(biāo)記與復(fù)用結(jié)合。圖1(d~f)所示的方法是將(2,3)中的實(shí)體對(duì)標(biāo)記與復(fù)用相結(jié)合的組合方法,同時(shí)利用實(shí)體對(duì)增強(qiáng)的語(yǔ)義信息和實(shí)體對(duì)標(biāo)記的方法獲取句子的結(jié)構(gòu)特征。
圖1 實(shí)體標(biāo)記及分隔方法Fig.1 Method of entity marking and separation
圖1中 的 符 號(hào)“L”“E1”“M”“E2”“R”“”“”分別代表的含義為,L:實(shí)例文本中實(shí)體1左邊部分的文本;E1:實(shí)體1;M:實(shí)例文本中實(shí)體1與實(shí)體2之間部分的文本;E2:實(shí)體2;R:實(shí)例文本中實(shí)體2右邊部分的文本;“”:實(shí)體1的結(jié)束標(biāo)記;“”的結(jié)束標(biāo)記。且圖1中不同顏色的方塊代表了不同的輸入與輸出,一一對(duì)應(yīng)。藍(lán)色方塊表示一般文本內(nèi)容的輸入與輸出,綠色方塊表示實(shí)體標(biāo)記符的輸入與輸出,白色方塊表示實(shí)體分隔符的輸入與輸出。
在實(shí)體標(biāo)記的處理過(guò)程中,當(dāng)實(shí)體1與實(shí)體2的相對(duì)位置關(guān)系為“嵌套”時(shí)為較為特殊的實(shí)體相對(duì)位置關(guān)系。首先將處于內(nèi)部的實(shí)體使用標(biāo)記符標(biāo)記,然后將外圍的實(shí)體進(jìn)行標(biāo)記,此時(shí)即內(nèi)部的實(shí)體標(biāo)簽已經(jīng)被外圍的實(shí)體標(biāo)簽包裹住。當(dāng)出現(xiàn)兩實(shí)體完全重合的情況,先后進(jìn)行實(shí)體1、2的標(biāo)記,以達(dá)到獲取句子結(jié)構(gòu)特征的目的。
以圖1(c)所示的實(shí)體對(duì)標(biāo)記方法為例:當(dāng)實(shí)例文本滿足一般格式,即句子中存在兩個(gè)實(shí)體,且實(shí)體1左邊的部分(L)存在,實(shí)體1與實(shí)體2之間的部分(M)不為空,實(shí)體2右邊的部分(R)也存在,則原始語(yǔ)句S可以表示為
式中:si+1,…,si+k和sj+1,…,sj+t分別表示實(shí)例文本中的兩個(gè)實(shí)體;s1,s2,…,si表示實(shí)例文本中實(shí)體1的左邊文本;si+k+1,…,sj表示實(shí)例文本中實(shí)體1與實(shí)體2之間的文本;sj+t+1,…,sn表示實(shí)例文本中實(shí)體2右邊文本。將句子S用本節(jié)中提出的實(shí)體類型標(biāo)記方法(圖1(c))處理為
式中:實(shí)體1的開(kāi)始和結(jié)束標(biāo)記分別用E_T1Begin和E_T1End表示,實(shí)體2的開(kāi)始和結(jié)束標(biāo)記分別用E_T2Begin和E_T2End表示,用于表示實(shí)體邊界。本實(shí)驗(yàn)中使用的實(shí)體邊界標(biāo)記符是由實(shí)體類型及實(shí)體相對(duì)位置復(fù)合而成,作為實(shí)例文本中要抽取其關(guān)系的實(shí)體對(duì),實(shí)體類型必會(huì)影響實(shí)體間語(yǔ)義關(guān)系,故使用實(shí)體類型對(duì)實(shí)例文本中的實(shí)體對(duì)進(jìn)行標(biāo)記。實(shí)例文本中兩個(gè)實(shí)體的位置順序會(huì)影響實(shí)例文本的結(jié)構(gòu)組成,故使用阿拉伯?dāng)?shù)字“1”和“2”對(duì)兩實(shí)體之間的相對(duì)位置關(guān)系進(jìn)行標(biāo)記說(shuō)明。定義其標(biāo)記規(guī)則為:以作為實(shí)體1的開(kāi)始和結(jié)束,以作為實(shí)體2的開(kāi)始和結(jié)束。實(shí)驗(yàn)所用數(shù)據(jù)集ACE 2005中包括了VEH、WEA、GPE、FAC、PER、LOC、ORG等7個(gè)類別的實(shí)體類型。
圖1(b~f)所示的5種實(shí)體標(biāo)記及分隔方式是相互并行的同級(jí)關(guān)系,是不同的句子結(jié)構(gòu)獲取方式,但結(jié)構(gòu)獲取方法的核心思想是相同的——利用實(shí)體類型及相對(duì)位置關(guān)系復(fù)合而成的實(shí)體標(biāo)記符在神經(jīng)網(wǎng)絡(luò)中獲取句子結(jié)構(gòu)特征。圖1(b,d~f)這種實(shí)體對(duì)復(fù)用的方法是為了避免當(dāng)句子中的“L”“M”或者“R”3部分中有為空的情況下,句子長(zhǎng)度可能會(huì)受到影響,當(dāng)句子長(zhǎng)度變短時(shí),句中的語(yǔ)義信息就會(huì)減少,造成特征損失,特征稀疏問(wèn)題更加嚴(yán)重,影響關(guān)系抽取性能,故而采用此方法增強(qiáng)實(shí)體語(yǔ)義,獲取以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征。以實(shí)體類型及實(shí)體相對(duì)位置關(guān)系復(fù)合作為實(shí)體標(biāo)記符,以“0”作為分隔符的方式為句中的實(shí)體對(duì)賦予無(wú)實(shí)際語(yǔ)義信息的邊界標(biāo)識(shí)符號(hào),能夠有效獲取句子中以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征,支持實(shí)體關(guān)系抽取任務(wù)。
本部分重點(diǎn)介紹實(shí)體標(biāo)簽標(biāo)記部分的研究。本文提出一種利用實(shí)體類型和實(shí)體相對(duì)位置等信息對(duì)關(guān)系抽取實(shí)例文本中的實(shí)體對(duì)進(jìn)行標(biāo)記和分隔、通過(guò)神經(jīng)網(wǎng)絡(luò)獲取句子中以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征的方法。本文認(rèn)為句子結(jié)構(gòu)特征能有效提高中文關(guān)系抽取任務(wù)的性能,故將這種獲取句子結(jié)構(gòu)特征的方法在CNN和BERT等神經(jīng)網(wǎng)絡(luò)模型上進(jìn)行了實(shí)驗(yàn)和驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,該方法可以有效提升中文關(guān)系抽取性能。
將實(shí)體標(biāo)記方法與神經(jīng)網(wǎng)絡(luò)模型結(jié)合抽取句子結(jié)構(gòu)特征,其過(guò)程如圖2所示。圖2描述了使用實(shí)體標(biāo)記實(shí)例文本進(jìn)行關(guān)系抽取研究的整個(gè)過(guò)程,將其分為“實(shí)例輸入”“實(shí)體標(biāo)簽標(biāo)記”“神經(jīng)網(wǎng)絡(luò)”“結(jié)果輸出”4個(gè)部分。
圖2 模型總圖Fig.2 Model overview
實(shí)例輸入:從數(shù)據(jù)集中獲取的帶有實(shí)體對(duì)的句子。
實(shí)體標(biāo)簽標(biāo)記:根據(jù)句子中實(shí)體的類型及位置關(guān)系進(jìn)行標(biāo)簽標(biāo)記。
神經(jīng)網(wǎng)絡(luò):將標(biāo)簽標(biāo)記的文本輸入神經(jīng)網(wǎng)絡(luò),獲取句子結(jié)構(gòu)特征,進(jìn)行關(guān)系抽取,在研究中分別使用了CNN和BERT兩種神經(jīng)網(wǎng)絡(luò)模型。
結(jié)果輸出:得到關(guān)系識(shí)別的最終結(jié)果。
CNN是一種包含卷積計(jì)算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),是深度學(xué)習(xí)代表算法之一,在自然語(yǔ)言處理和計(jì)算機(jī)視覺(jué)領(lǐng)域中均有廣泛應(yīng)用。CNN的結(jié)構(gòu)組成包括了輸入層、隱藏層和輸出層。通常隱藏層中又包括了卷積層、池化層和全連接層等3種常見(jiàn)的神經(jīng)網(wǎng)絡(luò)構(gòu)筑層,通過(guò)CNN可獲取文本抽象特征。
本文采用的CNN網(wǎng)絡(luò)模型結(jié)構(gòu)由輸入層、詞嵌入層、卷積層、池化層、全連接層及輸出層組成,模型結(jié)構(gòu)如圖3所示。其神經(jīng)網(wǎng)絡(luò)的各部分都各司其職,共同作用抽取抽象特征,用于關(guān)系抽取任務(wù)。該模型的重點(diǎn)和特別之處在于輸入層對(duì)關(guān)系實(shí)例文本進(jìn)行的處理,首先獲得實(shí)體類型,然后根據(jù)文本中實(shí)體對(duì)間的位置關(guān)系等信息確定該實(shí)體對(duì)的實(shí)體標(biāo)簽類型,最后對(duì)實(shí)例文本中的實(shí)體對(duì)進(jìn)行標(biāo)記,利用神經(jīng)網(wǎng)絡(luò)獲取句子結(jié)構(gòu)特征。
圖3 實(shí)體標(biāo)記的CNN模型結(jié)構(gòu)圖Fig.3 Architecture of entity-marked CNN model
在CNN的輸入層,使用式(1)中S代表包含實(shí)體對(duì)的實(shí)例文本,其中si(i∈(1,n))表示句子S中第i個(gè)字。通過(guò)第2章表述的實(shí)體標(biāo)記方法對(duì)實(shí)體對(duì)進(jìn)行標(biāo)記,將實(shí)例S標(biāo)記成為S_的形式,來(lái)獲取句子結(jié)構(gòu)特征。
字嵌入層中,通過(guò)字向量查找表We對(duì)實(shí)例文本S_中每一個(gè)字進(jìn)行向量映射,得到字表示。以x i∈RH作為si的字向量表示,H代表向量的維度,該網(wǎng)絡(luò)結(jié)構(gòu)中將H設(shè)為300。如果字典的大小為V,則We∈RH×V為向量映射層的參數(shù)矩陣。由于CNN需要固定輸入文本的長(zhǎng)度,故對(duì)長(zhǎng)于或短于固定長(zhǎng)度的實(shí)例文本分別進(jìn)行裁剪或擴(kuò)充。假設(shè)實(shí)例文本預(yù)定義長(zhǎng)度為L(zhǎng),將句子S_映射為向量序列,表示為X=[x1,x2,…,x L]。將該過(guò)程形式化表示為
在神經(jīng)網(wǎng)絡(luò)的卷積層對(duì)向量矩陣X進(jìn)行卷積操作,該模型在卷積層運(yùn)用了15個(gè)7×7的卷積核,通過(guò)這樣的方法獲得文本的抽象化特征,對(duì)該序列進(jìn)行的卷積操作形式化表示為
上述過(guò)程中W c∈RK×H是卷積運(yùn)算的濾波器,b是一個(gè)偏置值,f c是一個(gè)非線性函數(shù)(如:雙曲正切函數(shù))。c i的維度為H,當(dāng)對(duì)[x1,x2,…,x L]迭代卷積運(yùn)算時(shí),此步形式化表示為
CNN中卷積運(yùn)算能夠有效捕捉句子局部特征,它將一個(gè)K?gram向量矩陣[x i,x i+1,…,x L]映射到一個(gè)高階特征表示中,能夠?qū)W習(xí)到K?gram的語(yǔ)義或句法信息[w i,w i+1,…,w L]。為了獲取對(duì)關(guān)系抽取任務(wù)更有效的特征,在神經(jīng)網(wǎng)絡(luò)的池化層中,對(duì)每一個(gè)卷積結(jié)果c都實(shí)現(xiàn)最大池化操作,可將其形式化表示為
在池化層之后,利用全連接層進(jìn)行全局調(diào)節(jié),Softmax層輸出各類別上的概率值。該過(guò)程可形式化表示為
綜上,在給出標(biāo)記實(shí)例文本S_的前提下,利用傳統(tǒng)的CNN進(jìn)行關(guān)系抽取的整體過(guò)程可以表示為
BERT是在大規(guī)模語(yǔ)料庫(kù)上訓(xùn)練所得到的預(yù)訓(xùn)練語(yǔ)言模型。它會(huì)根據(jù)文本中字出現(xiàn)的位置不同,給每一個(gè)字賦予位置向量,根據(jù)其在句中出現(xiàn)的位置不同具有不同的語(yǔ)義信息結(jié)合字向量、文本向量和位置向量作為模型輸入[8,29]。
近年來(lái),研究人員使用深度神經(jīng)網(wǎng)絡(luò)在大量非特定領(lǐng)域的文本數(shù)據(jù)集上訓(xùn)練語(yǔ)言模型,得到在橫向任務(wù)上效果較好的預(yù)訓(xùn)練語(yǔ)言模型,然后在預(yù)訓(xùn)練語(yǔ)言模型的基礎(chǔ)上針對(duì)特定領(lǐng)域縱向訓(xùn)練。比較典型的語(yǔ)言模型是對(duì)于一個(gè)給定的文字字符串,從左到右計(jì)算下一個(gè)字出現(xiàn)的概率,如式(9)所示[30],S表示特定排列的字串[w1,w2,…,w m],其中w i(i∈(1,m))表示字串中的第i個(gè)字,由貝葉斯公式可得字串S出現(xiàn)的概率表示公式為
本文中的方法主要是通過(guò)實(shí)體類型及實(shí)體相對(duì)位置關(guān)系等信息作為實(shí)體的邊界標(biāo)記,用分隔符將實(shí)體對(duì)分隔處理,最后利用神經(jīng)網(wǎng)絡(luò)獲取句子的結(jié)構(gòu)信息。相對(duì)于不添加實(shí)體標(biāo)記符的文本實(shí)驗(yàn),該方法在CNN及BERT語(yǔ)言模型上均有較好的表現(xiàn),使得關(guān)系抽取性能得到大幅度提升。BERT模型結(jié)構(gòu)如圖4所示。
圖4 實(shí)體標(biāo)記的BERT模型結(jié)構(gòu)圖Fig.4 Architecture of entity-marked BERT model
本文選取ACE(Automatic Content Extraction)2005中文數(shù)據(jù)集[10]進(jìn)行關(guān)系抽取的測(cè)試和分析。該數(shù)據(jù)集是開(kāi)放信息抽取任務(wù)上的公共數(shù)據(jù)集,根據(jù)關(guān)系抽取任務(wù)的特點(diǎn)及需求,篩選掉不規(guī)范的文檔(句子級(jí)關(guān)系抽取任務(wù)基于實(shí)例文本中包含兩個(gè)或兩個(gè)以上實(shí)體的事實(shí),進(jìn)而使用關(guān)系抽取系統(tǒng)抽取兩個(gè)實(shí)體之間的語(yǔ)義關(guān)系,故舍棄數(shù)據(jù)集中實(shí)體個(gè)數(shù)小于2的句子,以及不包含關(guān)系實(shí)例的文檔。),實(shí)驗(yàn)1共用到628個(gè)文檔。該數(shù)據(jù)集共包含6個(gè)實(shí)體關(guān)系類別。由于實(shí)體對(duì)間的關(guān)系是有方向的,例如:實(shí)體對(duì)(A,B)在實(shí)例文本中存在“PART?WHOLE”關(guān)系,但是反過(guò)來(lái)實(shí)體對(duì)(B,A)在數(shù)據(jù)集中就不存在這樣的關(guān)系,故給予(B,A)實(shí)體對(duì)關(guān)系標(biāo)記為“Negative”。或者句中出現(xiàn)的實(shí)體之間不存在任何關(guān)系,同樣將這樣的實(shí)體文本標(biāo)記為“Negative”,稱為負(fù)例。
現(xiàn)有關(guān)系抽取任務(wù)的研究分為句子級(jí)別與文檔級(jí)別[31?32]兩大類,當(dāng)前的研究工作主要聚焦于句子級(jí)關(guān)系抽取,也就是根據(jù)句子呈現(xiàn)的短文本內(nèi)容識(shí)別實(shí)體關(guān)系。ACE 2005數(shù)據(jù)集中的實(shí)例文本是以句子的形式存儲(chǔ)于樹(shù)形結(jié)構(gòu)文本中的。在取得整篇文章之后按照逗號(hào)、句號(hào)、冒號(hào)、分號(hào)、問(wèn)號(hào)5種標(biāo)點(diǎn)符號(hào)將其分割為句子,將包含了實(shí)體對(duì)且未在正例中出現(xiàn)的實(shí)例文本作為負(fù)例,將其設(shè)定為負(fù)例實(shí)例文本。經(jīng)過(guò)篩選,最終得到的實(shí)驗(yàn)數(shù)據(jù)有107 384個(gè)包含兩個(gè)或兩個(gè)以上實(shí)體的例句,其中包括9 244條正例和98 140條負(fù)例。
實(shí)驗(yàn)中,將107 384條數(shù)據(jù)按照6∶2∶2的比例切分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。由于著重解決特征稀疏問(wèn)題,同時(shí)也要控制特征噪聲問(wèn)題,所以文本固定長(zhǎng)度的設(shè)定尤為重要。首先對(duì)實(shí)例文本長(zhǎng)度進(jìn)行分析,發(fā)現(xiàn)長(zhǎng)度在15~35的實(shí)例頻數(shù)在2 000以上,長(zhǎng)度在5~15、40~50以及100~200區(qū)間的實(shí)例頻數(shù)在1 000~2 000區(qū)間內(nèi),為了減少特征噪聲對(duì)模型預(yù)測(cè)的影響,同時(shí)降低因特征稀疏造成的性能下降等問(wèn)題,將句長(zhǎng)設(shè)置為180。實(shí)驗(yàn)證明這樣的參數(shù)設(shè)置對(duì)ACE 2005中文數(shù)據(jù)集上的關(guān)系抽取性能有好的影響。數(shù)據(jù)集中實(shí)例文本長(zhǎng)度分布如圖5所示。
采用NLP技術(shù)常用評(píng)測(cè)指標(biāo)準(zhǔn)確率(P),召回率(R),綜合評(píng)價(jià)指標(biāo)(F1)等對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析和判定。P和R是廣泛用于信息檢索和統(tǒng)計(jì)學(xué)分類領(lǐng)域的兩個(gè)度量值,用來(lái)評(píng)價(jià)結(jié)果的質(zhì)量。在關(guān)系抽取任務(wù)中,P是模型預(yù)測(cè)結(jié)果中預(yù)測(cè)正確的關(guān)系類別數(shù)與預(yù)測(cè)總數(shù)的比率,衡量預(yù)測(cè)系統(tǒng)的準(zhǔn)確性;R是指模型預(yù)測(cè)結(jié)果中每個(gè)類別的正確數(shù)與被預(yù)測(cè)數(shù)據(jù)中該類別出現(xiàn)的個(gè)數(shù)的比率,衡量檢索系統(tǒng)的查全率。綜合評(píng)價(jià)指標(biāo)F1=正確率P×召回率R×2/(正確率P+召回率R),F(xiàn)1是正確率和召回率的調(diào)和平均值,是綜合二者指標(biāo)的評(píng)估指標(biāo),用于綜合反映整體性能的指標(biāo)。
圖5 ACE 2005中文數(shù)據(jù)集句子長(zhǎng)度分布折線圖Fig.5 Lengths of sentences in ACE 2005 Chinese dataset
本文使用第2章中描述的句子結(jié)構(gòu)獲取方法進(jìn)行實(shí)驗(yàn)研究,利用語(yǔ)義表達(dá)能力較強(qiáng)的BERT預(yù)訓(xùn)練語(yǔ)言模型和能自動(dòng)獲取抽象特征的CNN模型分別在ACE 2005中文數(shù)據(jù)集進(jìn)行關(guān)系抽取,實(shí)驗(yàn)性能如表1所示。
表1 實(shí)驗(yàn)結(jié)果Table 1 Experimental results
對(duì)表1中實(shí)驗(yàn)數(shù)據(jù)加以詳細(xì)分析。
(1)第1組實(shí)驗(yàn)對(duì)照。該組實(shí)驗(yàn)不對(duì)實(shí)例文本中的實(shí)體對(duì)做特殊標(biāo)記或說(shuō)明,未凸顯句子結(jié)構(gòu)特征。
(2)第2組實(shí)驗(yàn),實(shí)體對(duì)復(fù)用。將實(shí)例文本中的實(shí)體對(duì)復(fù)制并前置至句首,使用“0”字符進(jìn)行實(shí)體分隔,通過(guò)實(shí)體語(yǔ)義增強(qiáng)的方式獲取句子結(jié)構(gòu)特征。在BERT中,表義能力較強(qiáng)的預(yù)訓(xùn)練字向量使得實(shí)例文本獲得更好的語(yǔ)義表示,性能有較大提升。CNN中采用隨機(jī)初始化的向量表示,其表義能力較弱,因此實(shí)體對(duì)復(fù)用方法在CNN上沒(méi)有取得性能的大幅度提升。但實(shí)體對(duì)復(fù)用能在神經(jīng)網(wǎng)絡(luò)下提升關(guān)系抽取的性能,此方法適用于在語(yǔ)義表示能力更強(qiáng)的文本表示的情況下來(lái)獲取句子結(jié)構(gòu)特征。
(3)第3組實(shí)驗(yàn),實(shí)體標(biāo)記。實(shí)體標(biāo)記方法是本文闡述的獲取句子結(jié)構(gòu)特征的核心方法,也是研究動(dòng)機(jī)。實(shí)體標(biāo)記符由實(shí)體類型,實(shí)體相對(duì)位置復(fù)合而成,并通過(guò)字符“<”和“/”結(jié)合區(qū)分實(shí)例文本中實(shí)體的開(kāi)始與結(jié)束。由引言對(duì)實(shí)體類型及實(shí)體相對(duì)位置關(guān)系的論述可知該類型的實(shí)體標(biāo)記方法在關(guān)系抽取中的重要性,能使神經(jīng)網(wǎng)絡(luò)獲取句子結(jié)構(gòu)特征,改善句子級(jí)別關(guān)系抽取任務(wù)中特征稀疏問(wèn)題帶來(lái)的不良影響。結(jié)果表1中的“2”“3”行分別對(duì)應(yīng)“實(shí)體對(duì)復(fù)用”和“實(shí)體對(duì)標(biāo)記”的模型性能。第3組實(shí)驗(yàn)相對(duì)于第2組實(shí)驗(yàn),BERT上有3%的提升,相對(duì)于第1組實(shí)驗(yàn)有近10%性能的提升,使得性能達(dá)到最高。在CNN中,由于實(shí)體對(duì)復(fù)用未能使神經(jīng)網(wǎng)絡(luò)獲取到較強(qiáng)的實(shí)體對(duì)語(yǔ)義表達(dá),性能提升不明顯,但實(shí)體對(duì)標(biāo)記方法卻能在CNN中同樣獲得10%的性能提升。因此可以看出,利用實(shí)體類型及實(shí)體相對(duì)位置說(shuō)明得到的實(shí)體對(duì)標(biāo)記在獲取句子結(jié)構(gòu)特征,提升句子級(jí)中文關(guān)系抽取任務(wù)的性能中占據(jù)主導(dǎo)地位。
(4)對(duì)于第4~6這3組實(shí)驗(yàn),由于實(shí)體標(biāo)記方法已經(jīng)最大限度地利用其結(jié)構(gòu)特征改善特征稀疏問(wèn)題,在解決特征稀疏帶來(lái)的不良影響方面已盡其所能,無(wú)法通過(guò)實(shí)體標(biāo)記及實(shí)體復(fù)用結(jié)合的方法使得關(guān)系識(shí)別性能得到更大幅度的提升,甚至?xí)驗(yàn)樘卣鬟^(guò)多且并非優(yōu)質(zhì)特征而帶來(lái)噪聲對(duì)性能產(chǎn)生少許不良影響,導(dǎo)致實(shí)驗(yàn)性能下降。實(shí)體對(duì)標(biāo)記方法已經(jīng)使得神經(jīng)網(wǎng)絡(luò)獲取到以實(shí)例文本中實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征,且該特征能夠顯著提升實(shí)驗(yàn)性能,使得此方法下的特征獲取達(dá)到瓶頸。因此,實(shí)體對(duì)標(biāo)記與實(shí)體對(duì)復(fù)用方法進(jìn)行結(jié)合以后,導(dǎo)致性能比單獨(dú)使用實(shí)體標(biāo)記方法的性能稍微差一點(diǎn)。
通過(guò)觀察表1中的實(shí)驗(yàn)結(jié)果,最明顯的比對(duì)來(lái)自于第1組(未使用任何標(biāo)記和分隔)和第3組(使用實(shí)體類型與實(shí)體相對(duì)位置信息標(biāo)記)。在神經(jīng)網(wǎng)絡(luò)上使用實(shí)體類型和實(shí)體相對(duì)位置復(fù)合標(biāo)記符對(duì)實(shí)例文本中的實(shí)體對(duì)作標(biāo)記,能夠使實(shí)驗(yàn)性能相對(duì)于未使用實(shí)體標(biāo)記的方法提高9%~11%。說(shuō)明在實(shí)體標(biāo)記中引入實(shí)體類型和實(shí)體相對(duì)位置等信息能使得神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到文本中以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征和句子語(yǔ)義特征,更好地表達(dá)文本特征,同時(shí)也驗(yàn)證了前文所述的基本結(jié)構(gòu)單位的組合、實(shí)體類型、實(shí)體間的結(jié)構(gòu)特征等信息的確能夠在句子級(jí)中文關(guān)系抽取中有效獲取句子結(jié)構(gòu)特征和語(yǔ)義特征,解決句子級(jí)中文關(guān)系抽取中的特征稀疏問(wèn)題。在該CNN模型下,使用的字向量由一定范圍內(nèi)隨機(jī)生成的查找表得到,語(yǔ)義表示能力相對(duì)較差,故而性能相對(duì)于BERT較低。本文的創(chuàng)新點(diǎn)是利用實(shí)體類型及實(shí)體相對(duì)位置信息標(biāo)記和分隔的方法,使用神經(jīng)網(wǎng)絡(luò)獲取句子的結(jié)構(gòu)特征,在ACE 2005數(shù)據(jù)集上取得更好的中文關(guān)系抽取性能。
在BERT模型和CNN模型中實(shí)驗(yàn)性能宏平均F1最高的均是第3組實(shí)驗(yàn),即單使用實(shí)體標(biāo)記方法,得到每個(gè)關(guān)系類別上的P、R、F1值分別如表2所示。
表2 各大類實(shí)驗(yàn)性能Table 2 Exper imental results on main relation types
為了進(jìn)一步驗(yàn)證該實(shí)體標(biāo)記方法的有效性,做了對(duì)比實(shí)驗(yàn),結(jié)果見(jiàn)表3。
表3 模型對(duì)比Table 3 Model compar ison
虞歡歡等[33]提出了一種基于樹(shù)核函數(shù)的方法獲取句子信息。利用實(shí)體語(yǔ)義信息,構(gòu)造合一句法和實(shí)體語(yǔ)義關(guān)系樹(shù)來(lái)有效捕獲結(jié)構(gòu)化信息和語(yǔ)義信息,從而提高關(guān)系抽取的性能,作者在ACE 2005中文數(shù)據(jù)集上F1達(dá)到了0.67。
語(yǔ)義信息在實(shí)體間語(yǔ)義關(guān)系抽取任務(wù)中具有重要作用。劉丹丹等[34]利用基于樹(shù)核函數(shù)的方法,以《同義詞詞典》為例子,探討了詞匯的語(yǔ)義信息對(duì)中文關(guān)系抽取的影響,證明了無(wú)論在實(shí)體類型是否已知的情況下,語(yǔ)義信息都能提高某些關(guān)系抽取的性能。文章作者在ACE 2005中文數(shù)據(jù)集上F1達(dá)到了0.668。
Nguyen等[35]利用多核卷積網(wǎng)絡(luò)來(lái)自動(dòng)提取句子的特征,使用了預(yù)訓(xùn)練的詞向量和位置向量作為卷積網(wǎng)絡(luò)的輸入。由于文中作者使用的數(shù)據(jù)集與本文使用的數(shù)據(jù)集不同,因此按照作者論文中的方法復(fù)現(xiàn)了他的方法,不過(guò)文中使用位置向量,我們未在復(fù)現(xiàn)的時(shí)候使用位置向量,除此之外,均使用文中說(shuō)明的方法構(gòu)建CNN網(wǎng)絡(luò)模型,并用在ACE 2005中文數(shù)據(jù)集中,得到F1為0.673。
Zhou等[36]依據(jù)LSTM網(wǎng)絡(luò)能夠從較長(zhǎng)文本中獲取上下文語(yǔ)義依賴信息的特點(diǎn),提出了一種基于注意力的雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Att?BiLSTM)來(lái)捕獲句子中最重要的語(yǔ)義信息。同樣,該文也使用了實(shí)體標(biāo)記方法,與本文不同的是,該文作者實(shí)驗(yàn)中使用的方法是利用“”等標(biāo)記符作為文本中實(shí)體對(duì)的位置指示器,從而對(duì)文本中的實(shí)體對(duì)進(jìn)行標(biāo)記。為了對(duì)比本文實(shí)驗(yàn)方法,我們同樣使用了Att?BiLSTM網(wǎng)絡(luò)模型在ACE 2005中文數(shù)據(jù)集上進(jìn)行關(guān)系抽取實(shí)驗(yàn),其實(shí)驗(yàn)性能F1可以達(dá)到0.841。LSTM神經(jīng)網(wǎng)絡(luò)善于記憶長(zhǎng)文本之間的語(yǔ)義依賴關(guān)系,而中文數(shù)據(jù)集中,單個(gè)字這樣的基本組成單位組合成詞,然后詞與詞的連接使得句子長(zhǎng)度較大,同時(shí)由于實(shí)體標(biāo)記方法可以使得神經(jīng)網(wǎng)絡(luò)獲取到句子的結(jié)構(gòu)特征等重要信息,故取得較好的實(shí)驗(yàn)結(jié)果。
Alt等[37]使用了Transformer框架,將其應(yīng)用在英文實(shí)體關(guān)系抽取任務(wù)上,使用SemEval2010?Task8數(shù)據(jù)集和TACRED數(shù)據(jù)集,并將其提出的模型框架取名為基于轉(zhuǎn)換器的關(guān)系抽取模型(Trans?former for relation extraction,TRE)。作者的主要方法就是使用了預(yù)訓(xùn)練深度語(yǔ)言模型,捕獲實(shí)體之間的語(yǔ)義關(guān)系。除此之外,該文中也使用了將實(shí)體對(duì)復(fù)用前置至句首的方法來(lái)處理輸入數(shù)據(jù),使用“[start]”和“[cls]”作為句子的開(kāi)始與結(jié)束邊界,使用“[sep1]”和“[sep2]”作為前置實(shí)體對(duì)的結(jié)束標(biāo)記,但文中并未做出與非處理數(shù)據(jù)的對(duì)比實(shí)驗(yàn)效果。該文中的實(shí)驗(yàn)有一個(gè)缺點(diǎn)是并未對(duì)實(shí)體嵌套以及實(shí)體位置重疊的情況進(jìn)行說(shuō)明和相應(yīng)處理。最終在兩個(gè)數(shù)據(jù)集上F1分別達(dá)到了0.674和0.871。使用該模型且未使用預(yù)訓(xùn)練中文詞向量的情況下在ACE 2005中文數(shù)據(jù)集上F1達(dá)到了0.562。
從表3可以看出,通過(guò)對(duì)文本中實(shí)體對(duì)添加由實(shí)體類型及實(shí)體相對(duì)位置關(guān)系復(fù)合而成的標(biāo)記符的方法,利用神經(jīng)網(wǎng)絡(luò)獲取句子的結(jié)構(gòu)信息效果顯著。表3中第2、第3行使用了基于樹(shù)核的方法,在使用了大量原子特征的情況下,F(xiàn)1取得0.67。
實(shí)驗(yàn)證明,本文提出的面向中文關(guān)系抽取的句子結(jié)構(gòu)獲取方法能顯著提高中文關(guān)系抽取性能。雖然使用BERT模型得到的結(jié)果已經(jīng)明顯高于其他方法,但是本文方法的關(guān)鍵之處在于使用實(shí)體標(biāo)記符使得神經(jīng)網(wǎng)絡(luò)獲取句子的結(jié)構(gòu)特征,可以使中文關(guān)系抽取的F1提高9%~11%。從利用CNN網(wǎng)絡(luò)模型在獲取到句子結(jié)構(gòu)特征與僅使用詞向量特征實(shí)驗(yàn)的對(duì)比中發(fā)現(xiàn),本文方法能顯著提高關(guān)系抽取的性能。在BERT模型中,利用Attention機(jī)制使得句中的所有文字都能學(xué)習(xí)到相對(duì)于兩實(shí)體的相關(guān)信息,能獲取到句中不同維度的依賴特征,從而提升關(guān)系抽取性能。
中文實(shí)體語(yǔ)義關(guān)系抽取中,由于句子長(zhǎng)度參差不齊,分析數(shù)據(jù)長(zhǎng)度并合理設(shè)置相關(guān)參數(shù)可達(dá)到少增加噪聲信息,少丟失有用信息的目的,進(jìn)而提高實(shí)驗(yàn)性能。實(shí)體類型、實(shí)體相對(duì)位置和實(shí)體標(biāo)記等在實(shí)體關(guān)系抽取任務(wù)中能有效獲取句子中以實(shí)體對(duì)為中心的結(jié)構(gòu)特征,提高關(guān)系抽取精度值。
實(shí)驗(yàn)證明,本文提出的面向中文關(guān)系抽取的句子結(jié)構(gòu)獲取方法,在僅使用BERT模型的情況下,在ACE 2005數(shù)據(jù)集上取得F1為0.803的抽取性能,再使用實(shí)體類型對(duì)句中的實(shí)體對(duì)進(jìn)行標(biāo)記和分隔,能夠使得性能提高到0.898。在CNN模型結(jié)構(gòu)中,同樣使用實(shí)體類型標(biāo)記和分隔,能夠使得性能提高10.5%。由于實(shí)體對(duì)是關(guān)系抽取任務(wù)要識(shí)別的中心對(duì)象,利用實(shí)體標(biāo)記可以獲得以實(shí)體對(duì)為中心的句子結(jié)構(gòu)特征,且該標(biāo)記方法中加入了可以獲得實(shí)體對(duì)語(yǔ)義信息的實(shí)體類型,故而能夠較好地獲得句子結(jié)構(gòu)信息和語(yǔ)義信息,進(jìn)而提升關(guān)系抽取的性能。
另一方面還發(fā)現(xiàn)句子的結(jié)構(gòu)信息對(duì)正確理解句子至關(guān)重要,在特征提取到一定程度的時(shí)候,關(guān)系抽取的性能達(dá)到瓶頸,很難得到大幅度提升,這是接下來(lái)的研究過(guò)程中要解決的關(guān)鍵問(wèn)題,進(jìn)一步提升關(guān)系抽取的性能。之后將著重研究如何利用神經(jīng)網(wǎng)絡(luò)來(lái)提取句子的結(jié)構(gòu)信息,并探究原子特征與結(jié)構(gòu)特征之間的融合方法,同時(shí)考慮實(shí)例文本中除了對(duì)實(shí)體對(duì)施加類型標(biāo)記符以外,是否能夠在實(shí)體以外文本上通過(guò)其他方法獲取更多特征信息,更有效地解決短文本帶來(lái)的特征稀疏問(wèn)題,達(dá)到更好更充分的特征結(jié)合與利用。并探究如何使用有效的預(yù)訓(xùn)練詞向量與CNN結(jié)合,更好地獲取句子結(jié)構(gòu)特征,以達(dá)到更好的抽取性能。