• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      BSLRel: 基于二元序列標(biāo)注的級(jí)聯(lián)關(guān)系三元組抽取模型

      2021-07-23 06:56:40張龍輝尹淑娟任飛亮蘇劍林明瑞成白宇佳
      中文信息學(xué)報(bào) 2021年6期
      關(guān)鍵詞:三元組實(shí)體融合

      張龍輝,尹淑娟,任飛亮,蘇劍林,明瑞成,白宇佳

      (1. 東北大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 沈陽(yáng)110819;2. 深圳追一科技有限公司,廣東 深圳 518057)

      0 引言

      將非結(jié)構(gòu)化或半結(jié)構(gòu)化的自然語(yǔ)言文本轉(zhuǎn)化成結(jié)構(gòu)化內(nèi)容是信息抽取的目的。關(guān)系三元組抽取作為信息抽取的子任務(wù),其目的是從自然語(yǔ)言文本(常常以句子為輸入單位)中抽取兩個(gè)實(shí)體及實(shí)體之間的關(guān)系。該任務(wù)是構(gòu)建大規(guī)模知識(shí)圖譜的關(guān)鍵,被廣泛運(yùn)用在信息檢索、問答系統(tǒng)等相關(guān)任務(wù)中[1]。

      在關(guān)系三元組抽取任務(wù)中,關(guān)系事實(shí)大多以形如“(subject, predicate, object)”或“(head,relation,tail)”的三元組形式表示。其中,subject(或head)稱為頭實(shí)體,object(或tail)稱為尾實(shí)體,predicate(或relation)表示頭、尾實(shí)體之間的語(yǔ)義關(guān)系[2]。比如三元組“(孔乙己,作者,魯迅)”可表示“孔乙己”和“魯迅”之間存在“作者”關(guān)系這一事實(shí)。

      當(dāng)前關(guān)系三元組抽取研究方法主要分為兩類: 管道(pipeline)抽取方法和聯(lián)合抽取方法。早期的方法主要是管道抽取方法,即先對(duì)輸入句子中的實(shí)體進(jìn)行識(shí)別;之后,再為識(shí)別出的實(shí)體分配合適的關(guān)系類型。這類管道抽取方法存在以下兩點(diǎn)不足。

      (1)實(shí)體冗余: 由于先對(duì)抽取的所有實(shí)體進(jìn)行兩兩配對(duì),然后再進(jìn)行關(guān)系分類,大量錯(cuò)誤的候選實(shí)體對(duì)所帶來(lái)的冗余信息,會(huì)提升錯(cuò)誤率、增加計(jì)算復(fù)雜度。

      (2)任務(wù)間的交互缺失: 忽略了實(shí)體識(shí)別和關(guān)系抽取這兩個(gè)任務(wù)之間的內(nèi)在聯(lián)系和依賴關(guān)系,無(wú)法充分利用輸入信息。

      因此,研究者提出了聯(lián)合抽取的方法,即同時(shí)從輸入句子中抽取實(shí)體及實(shí)體間的對(duì)應(yīng)關(guān)系。這類方法可以充分利用實(shí)體識(shí)別以及關(guān)系抽取之間的交互信息,因而可以有效緩解管道方法的不足。然而,在關(guān)系三元組抽取任務(wù)中,同一句子中的多個(gè)三元組共享相同的頭實(shí)體、關(guān)系或尾實(shí)體的情況是大量存在的。如三元組“(孔乙己,作者,魯迅)”和三元組“(朝花夕拾,作者,魯迅)”就共享關(guān)系和尾實(shí)體。研究者將此類具有某些信息共享的三元組稱為重疊三元組。

      目前基于聯(lián)合抽取的方法并不能有效地處理重疊三元組抽取問題。因?yàn)橹丿B三元組的重疊情況多種多樣,頭尾實(shí)體或關(guān)系,任意一部分或兩部分之間都會(huì)有重疊,甚至一個(gè)實(shí)體可能同時(shí)是一個(gè)三元組的頭實(shí)體和另一個(gè)三元組的尾實(shí)體。而在聯(lián)合抽取模型中常常使用序列標(biāo)注的思路進(jìn)行實(shí)體識(shí)別,即對(duì)每個(gè)單詞賦予一個(gè)唯一的標(biāo)注,比如B/I/O標(biāo)注,用來(lái)區(qū)分該單詞是否是某一實(shí)體的開始、結(jié)尾或者不是實(shí)體。因?yàn)闊o(wú)法將一個(gè)單詞既標(biāo)注為一個(gè)頭實(shí)體同時(shí)又標(biāo)注為一個(gè)尾實(shí)體,所以此架構(gòu)很難處理重疊三元組的抽取問題。雖然管道抽取模型會(huì)遍歷所有抽取出來(lái)的實(shí)體對(duì)來(lái)解決重疊三元組的抽取問題,但會(huì)引入大量錯(cuò)誤的實(shí)體對(duì)而導(dǎo)致抽取性能大幅下降。

      此外,“2020語(yǔ)言與智能技術(shù)競(jìng)賽(2020 Language and Intelligence Challenge)”基于DuIE 2.0數(shù)據(jù)集[3],舉辦了難度更大的關(guān)系三元組抽取任務(wù)。第一,該競(jìng)賽任務(wù)將關(guān)系三元組的object部分進(jìn)行了復(fù)雜化擴(kuò)展: 首先,將某些關(guān)系對(duì)應(yīng)的object由一個(gè)實(shí)體組成(本文將object中只有一個(gè)實(shí)體的三元組稱為“單槽值三元組”)拓展到可以由多個(gè)實(shí)體組成,其中每個(gè)實(shí)體對(duì)應(yīng)一種槽位(本文將object中有多個(gè)實(shí)體的三元組稱為“多槽值三元組”)。然后,為每種關(guān)系類型都設(shè)置了schema,以達(dá)到對(duì)三元組中的頭、尾實(shí)體類別進(jìn)行約束的目的。表1顯示了該競(jìng)賽任務(wù)中不同類型關(guān)系三元組的樣例,其中“@value”類型的槽位一定會(huì)在三元組中出現(xiàn),而其他類型的槽位信息如果在句子中沒有體現(xiàn),則可以不出現(xiàn)在三元組中。

      表1 2020語(yǔ)言與智能技術(shù)競(jìng)賽三元組關(guān)系抽取任務(wù)樣例(選自競(jìng)賽提供的數(shù)據(jù)集DulE 2.0[3])

      從本質(zhì)上講,“2020語(yǔ)言與智能技術(shù)競(jìng)賽”中的單槽值三元組為沒有重疊問題的普通三元組,多槽值三元組為一類頭實(shí)體和關(guān)系重疊的重疊三元組。然而,由于schema約束的存在,在該競(jìng)賽任務(wù)中的多槽值三元組抽取和傳統(tǒng)的重疊三元組抽取并不完全相同。顯然,同重疊三元組一樣,多槽值三元組廣泛存在于真實(shí)文本中。對(duì)這些特殊類型的三元組進(jìn)行有效抽取是提升關(guān)系三元組抽取任務(wù)性能的關(guān)鍵。

      為有效地解決關(guān)系三元組抽取任務(wù)中的重疊三元組抽取問題和多槽值三元組抽取問題,本文提出了BSLRel模型(binary sequence labeling based cascading relation triple extraction model),一個(gè)基于神經(jīng)網(wǎng)絡(luò)的端到端的關(guān)系三元組抽取模型。該模型的主要特點(diǎn)是將關(guān)系三元組抽取任務(wù)轉(zhuǎn)化為二元序列標(biāo)注任務(wù),并通過(guò)級(jí)聯(lián)結(jié)構(gòu)解決重疊三元組和多槽值三元組的抽取問題。此外,本文還發(fā)現(xiàn)當(dāng)前基于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型在進(jìn)行信息融合時(shí)并不能體現(xiàn)待融合信息之間的方向性。而方向?qū)τ跍?zhǔn)確理解輸入信息的語(yǔ)義具有重要意義。為此,本文提出了一種名為conditional layer normalization (CLN)的多信息融合結(jié)構(gòu),并將其應(yīng)用在BSLRel模型中,實(shí)驗(yàn)證明,此方法可以取得比其他信息融合方法更好的實(shí)驗(yàn)結(jié)果。

      基于BSLRel模型,我們參加了“2020語(yǔ)言與智能技術(shù)競(jìng)賽”中的關(guān)系三元組抽取任務(wù),最終F1值為0.808 3、取得了總競(jìng)賽排名第五的成績(jī)。

      綜上,本論文工作主要貢獻(xiàn)為以下兩點(diǎn):

      (1) 提出BSLRel模型,將關(guān)系三元組抽取任務(wù)轉(zhuǎn)化為了二元序列標(biāo)注任務(wù),并采用級(jí)聯(lián)結(jié)構(gòu)為重疊三元組和多槽值三元組的抽取問題提出了一種解決方案。

      (2) 提出可以體現(xiàn)信息之間方向性的多信息融合結(jié)構(gòu)conditional layer normalization(CLN),并通過(guò)實(shí)驗(yàn)證明了此結(jié)構(gòu)的有效性。

      1 相關(guān)工作

      當(dāng)前關(guān)系三元組抽取方法按抽取過(guò)程可以分為管道抽取方法和聯(lián)合抽取方法。

      1.1 管道抽取方法

      管道抽取方法是指通過(guò)流水線方式進(jìn)行關(guān)系三元組抽取的一類方法。該類方法的主要特點(diǎn)是將關(guān)系三元組抽取任務(wù)轉(zhuǎn)化為命名實(shí)體識(shí)別與關(guān)系分類這兩個(gè)相對(duì)獨(dú)立的子任務(wù),并以流水線方式依次完成這兩個(gè)子任務(wù)得到最終的關(guān)系三元組結(jié)果。即針對(duì)給定輸入文本,該類方法首先識(shí)別文本中的命名實(shí)體;之后枚舉各種候選實(shí)體對(duì),并為每一個(gè)候選對(duì)進(jìn)行關(guān)系預(yù)測(cè);最后,根據(jù)預(yù)測(cè)結(jié)果得到輸入文本最終的關(guān)系三元組結(jié)果。

      早期的命名實(shí)體識(shí)別主要是采用基于規(guī)則的方法。規(guī)則通常由領(lǐng)域?qū)<液驼Z(yǔ)言學(xué)者耗費(fèi)大量時(shí)間和精力來(lái)制定,且只適用于簡(jiǎn)單場(chǎng)景,領(lǐng)域的遷移性較差。后來(lái)產(chǎn)生了基于機(jī)器學(xué)習(xí)的命名實(shí)體識(shí)別方法,主要有隱馬爾科夫模型、條件隨機(jī)場(chǎng)模型等,這些模型都將命名實(shí)體識(shí)別任務(wù)作為一種序列標(biāo)注任務(wù),即將每個(gè)字或者詞都標(biāo)記為一個(gè)標(biāo)簽類別。這類方法比基于規(guī)則的方法有了很大改進(jìn),大幅減少了人工成本。但這些方法都需要研究者們?nèi)斯ぬ崛∮行У恼Z(yǔ)法特征。基于神經(jīng)網(wǎng)絡(luò)的方法可大大降低模型對(duì)人工語(yǔ)法特征的依賴,因而一經(jīng)提出便引起了研究者們的極大注意,有力地促進(jìn)了命名實(shí)體識(shí)別任務(wù)的研究。Dong等人[4]提出基于BiLSTM利用CRF來(lái)進(jìn)行中文命名實(shí)體識(shí)別,捕獲時(shí)間序列的特性,提高識(shí)別準(zhǔn)確率。Ling等人[5]在BiLSTM中引入注意力機(jī)制以關(guān)注長(zhǎng)文本的局部特征。Yan等人[6]通過(guò)改進(jìn)的Transformer模型進(jìn)一步提升了命名實(shí)體識(shí)別的性能。

      對(duì)于關(guān)系分類研究,目前的方法按照使用的主要技術(shù)可以分為三類: 基于特征向量的方法、基于核函數(shù)的方法和基于神經(jīng)網(wǎng)絡(luò)的方法?;谔卣飨蛄康姆椒ㄍㄟ^(guò)從包含特定實(shí)體對(duì)的句子中提取語(yǔ)義特征,構(gòu)造特征向量,然后使用支持向量機(jī)[7]、最大熵[8]等模型進(jìn)行關(guān)系分類?;诤撕瘮?shù)的方法充分利用句子的特定組織形式[9],通過(guò)設(shè)計(jì)核函數(shù)計(jì)算句子之間的相似度,并根據(jù)相似度進(jìn)行分類?;谏窠?jīng)網(wǎng)絡(luò)的關(guān)系分類方法主要使用各種深度神經(jīng)網(wǎng)絡(luò)方法進(jìn)行關(guān)系分類。Zhou等人[10]提出Att-BiLSTM模型,使用雙向LSTM網(wǎng)絡(luò)來(lái)獲取句子中每個(gè)單詞的隱狀態(tài)輸出,使用注意力機(jī)制來(lái)抽取單詞級(jí)別特征,通過(guò)特定的向量來(lái)計(jì)算每個(gè)單詞對(duì)句子表示貢獻(xiàn)的權(quán)重,以得到句子的最終向量表示用以分類。Wu等人[11]在輸入文本中加入位置表示信息,利用預(yù)訓(xùn)練模型BERT取了得優(yōu)異性能。

      從關(guān)系三元組抽取過(guò)程來(lái)看,管道抽取方法會(huì)遍歷所有候選實(shí)體對(duì),因而理論上可以很好地處理重疊三元組的識(shí)別問題。但由于這類方法高度依賴命名實(shí)體識(shí)別的結(jié)果,容易造成誤差傳遞。另外,由于整個(gè)過(guò)程將命名實(shí)體識(shí)別和關(guān)系分類當(dāng)作兩個(gè)相對(duì)獨(dú)立的任務(wù),沒有充分利用二者之間的相關(guān)性,也進(jìn)一步降低了此類方法在關(guān)系三元組抽取任務(wù)上的性能。

      1.2 聯(lián)合抽取方法

      為了有效解決管道抽取方法中的誤差傳遞問題,研究者們提出了聯(lián)合抽取的方法。

      早期的聯(lián)合模型采用了基于人工特征的結(jié)構(gòu)化學(xué)習(xí)[12-14],很大程度上依賴于人工制作的各類特征。神經(jīng)網(wǎng)絡(luò)的發(fā)展緩解了人工制作特征的問題,但其中一些方法仍然依賴于NLP工具(如POS標(biāo)記器、依賴解析器)[15]。2016年Miwa和Bansal等人[16]提出了一種基于遞歸神經(jīng)網(wǎng)絡(luò)的模型,將雙向樹結(jié)構(gòu)的LSTM-RNNs疊加在雙向順序的LSTM-RNNs上,獲得了單詞序列和依賴樹子結(jié)構(gòu)信息,此模型在實(shí)體識(shí)別和關(guān)系提取任務(wù)上共享參數(shù),加強(qiáng)了兩個(gè)任務(wù)之間的相關(guān)性。該方法雖然將兩個(gè)任務(wù)整合到了同一個(gè)模型當(dāng)中,但依然是兩個(gè)分離的過(guò)程。

      通過(guò)序列標(biāo)注的方法來(lái)進(jìn)行關(guān)系三元組抽取是另一種受研究者們關(guān)注較多的聯(lián)合抽取方法。2017年Zheng等[17]根據(jù)關(guān)系種類對(duì)實(shí)體類型標(biāo)簽進(jìn)行了相應(yīng)的擴(kuò)展,并將關(guān)系三元組抽取問題轉(zhuǎn)化為完全的基于序列標(biāo)注的命名實(shí)體識(shí)別問題。以句子“中國(guó)的首都是北京”為例,“北京”在傳統(tǒng)的實(shí)體識(shí)別任務(wù)中對(duì)應(yīng)的兩個(gè)標(biāo)注分別是“B、I”,但在該模型中,對(duì)應(yīng)的標(biāo)注為“B—首都—尾實(shí)體、I—首都—尾實(shí)體”。2019年,Yuan等[18]首先生成每個(gè)關(guān)系下特定的句子表示,然后對(duì)每個(gè)句子表示進(jìn)行基于序列標(biāo)注的命名實(shí)體識(shí)別,抽取出該關(guān)系下的頭尾實(shí)體。

      上述兩種方法都不依賴于任何NLP工具,可以有效解決管道抽取方法中的誤差傳遞問題,但都無(wú)法應(yīng)對(duì)同種關(guān)系下存在多個(gè)三元組的情況。

      Liu等[19]提出了另外一種基于序列標(biāo)注的關(guān)系三元組抽取方法。首先采用基于序列標(biāo)注的實(shí)體識(shí)別模塊識(shí)別出所有的實(shí)體對(duì),再通過(guò)一個(gè)三維的關(guān)系分類模塊識(shí)別出任意實(shí)體對(duì)之間具有的關(guān)系。這種方法與管道抽取方法類似,都可以涵蓋任何一種三元組重疊情況,而且可以通過(guò)共享兩個(gè)模塊之間的編碼層使模型整體性能大大提升。但缺點(diǎn)是其使用的三維關(guān)系分類模塊過(guò)于龐大,使得模型收斂困難,需要較大的內(nèi)存空間。

      從當(dāng)前國(guó)內(nèi)外的最新研究成果來(lái)看,基于聯(lián)合抽取的方法,尤其是基于序列標(biāo)注的聯(lián)合抽取方法,已成為關(guān)系三元組抽取的主流方法,并在實(shí)際應(yīng)用中取得了當(dāng)前的最佳實(shí)驗(yàn)結(jié)果。

      2 模型介紹

      本文將提出的關(guān)系三元組抽取模型稱為BSLRel(binary sequence labeling based cascading relation triple extraction model),一個(gè)基于神經(jīng)網(wǎng)絡(luò)的端到端的關(guān)系三元組抽取模型。其主要思路是將關(guān)系三元組抽取任務(wù)轉(zhuǎn)化為二元序列標(biāo)注任務(wù),并通過(guò)級(jí)聯(lián)結(jié)構(gòu)解決重疊三元組和多槽值三元組的抽取問題。在模型中,首先在輸入句子中進(jìn)行三元組的頭實(shí)體識(shí)別,之后再對(duì)每個(gè)頭實(shí)體識(shí)別其對(duì)應(yīng)的關(guān)系以及尾實(shí)體。BSLRel模型將關(guān)系和object中的“@value”槽位進(jìn)行共同抽取,避免了過(guò)長(zhǎng)的級(jí)聯(lián)結(jié)構(gòu),因而,BSLRel模型不僅可以解決重疊三元組和多槽值三元組的抽取問題,還可以通過(guò)縮短級(jí)聯(lián)長(zhǎng)度的方式,緩解錯(cuò)誤累積問題。并且,由于模型在整個(gè)過(guò)程中將三元組抽取問題分解為兩個(gè)相對(duì)獨(dú)立的子問題,所以從整體模型層面來(lái)講,并不需要對(duì)重疊三元組抽取以及多槽值三元組抽取進(jìn)行特殊的處理,其流程與普通的單槽值三元組抽取完全一致。這大大降低了模型的復(fù)雜度,使得本文提出的模型具有良好的關(guān)系三元組抽取性能以及很好的系統(tǒng)魯棒性。

      本文提出的BSLRel模型的整體結(jié)構(gòu)如圖1所示,可以看出,該模型從功能上可以分為句子表示層、單槽值抽取層和多槽值抽取層三個(gè)模塊。接下來(lái)將對(duì)這些模塊分別進(jìn)行詳細(xì)介紹。

      2.1 句子表示層

      在句子表示層,本文使用預(yù)訓(xùn)練的BERT模型為輸入句子中的每個(gè)token生成一個(gè)向量表示。得到一個(gè)針對(duì)輸入句子所有token的向量序列,本文把這個(gè)向量序列記為H1。如圖1所示,H1將在隨后的多個(gè)處理模塊中被共享使用。

      2.2 單槽值抽取層

      單槽值抽取層的目的是抽取形式為“(subject, predicate,@value)”的單槽值三元組,抽取流程為先抽取所有的subject實(shí)體,再抽取每個(gè)subject對(duì)應(yīng)的predicate和object結(jié)構(gòu)體的@value槽位。

      (1)subject的抽取。如圖1所示,這一模塊首先對(duì)H1采用Layer Normalization(LN)方法進(jìn)行歸一化,并把歸一化的結(jié)果記為H2,這一過(guò)程如式(1)、式(2)所示。

      LN方法是神經(jīng)網(wǎng)絡(luò)架構(gòu)常用的數(shù)據(jù)歸一化方法之一,目的是把數(shù)據(jù)分布映射到一個(gè)確定的區(qū)間,加速收斂,緩解梯度爆炸或消失的問題,讀者可以參考BERT原始論文[20]獲得關(guān)于BERT和LN的更多內(nèi)容,在此不再贅述。

      圖1 BSLRel模型的整體架構(gòu)

      ce(p,q)=-[qlogp+(1-q)log(1-p)]

      (5)

      (6)

      在本模塊中,一個(gè)關(guān)鍵操作就是將前面處理層得到的信息進(jìn)行有效融合。傳統(tǒng)的多信息融合方法,如多信息相加、相乘等,常常忽略信息之間的方向性,但在關(guān)系三元組中,這種方向性卻是一個(gè)重要信息。以表1為例,在schema約束下,“(正大綜藝,主持人,王雪純)”是一組正確的三元組,而“(王雪純,主持人,正大綜藝)”是一組錯(cuò)誤的三元組,是如果將“正大綜藝”“主持人”“王雪純”這三個(gè)信息按照傳統(tǒng)的信息融合策略,直接相乘或相加,則會(huì)得到相同的融合結(jié)果。換句話說(shuō),正確的三元組和錯(cuò)誤的三元組在分別進(jìn)行信息融合之后,得到兩個(gè)相同的結(jié)果,這顯然是不合理的。因此,傳統(tǒng)的信息融合方式并不能體現(xiàn)信息之間的方向性,使用一個(gè)能體現(xiàn)關(guān)系三元組各個(gè)部分之間方向性的多信息融合結(jié)構(gòu)具有重要意義。

      受圖像處理中流行的多信息融合結(jié)構(gòu): conditional batch normalization(CBN)[21]啟發(fā),本文提出了一種新的信息融合方法: conditional layer normalization(CLN)。CLN和CBN的做法類似,都是將歸一化結(jié)構(gòu)中對(duì)應(yīng)的偏置和權(quán)重變成關(guān)于待融合條件的函數(shù)。CLN的具體計(jì)算如式(7)所示。

      (7)

      其中,y為輸入CLN結(jié)構(gòu)的特征信息,cβ和cγ分別為輸入的兩個(gè)待融合的條件信息。

      從式(7)可以看出,CLN通過(guò)兩個(gè)不同的可訓(xùn)練權(quán)重W1和W2,將條件信息cγ和cβ映射到不同的空間,以此體現(xiàn)記錄條件的方向信息。另外,本文的實(shí)驗(yàn)部分表明,兩個(gè)條件的傳入位置交換之后,模型效果會(huì)大打折扣,這也驗(yàn)證了CLN結(jié)構(gòu)對(duì)兩個(gè)條件的方向信息的敏感性。

      (8)

      (11)

      2.3 多槽值抽取層

      多槽值抽取層的作用是依據(jù)關(guān)系的schema約束,對(duì)在單槽值抽取層中預(yù)測(cè)的單槽值三元組的其他槽位進(jìn)行補(bǔ)充抽取。

      (12)

      對(duì)比式(8)和式(12)可知,與單槽值抽取層不同,多槽值抽取層中的CLN結(jié)構(gòu)的兩個(gè)條件輸入cγ和cβ是不同的,式(12)中,subject和@value的編碼分別作為cβ條件和cγ條件傳入CLN結(jié)構(gòu)。

      在這一層中,模型將根據(jù)二分類交叉熵計(jì)算槽位損失Loss_o,具體過(guò)程如式(15)所示。

      (15)

      2.4 訓(xùn)練過(guò)程

      BSLRel模型將關(guān)系三元組的抽取任務(wù)轉(zhuǎn)化為級(jí)聯(lián)的二元序列標(biāo)注任務(wù),因此本文將所有子任務(wù)的平均損失作為模型的整體損失Loss,計(jì)算過(guò)程如式(16)所示。

      Loss=(Loss_s+Loss_pv+Loss_o)/3

      (16)

      本文采用Adam算法進(jìn)行梯度下降訓(xùn)練。在訓(xùn)練階段,BSLRel模型采用Teacher Forcing策略進(jìn)行訓(xùn)練: ①在predicate和“@value”槽位的抽取結(jié)構(gòu)中(即式(8)中),傳入訓(xùn)練集中真實(shí)的subject實(shí)體sk1進(jìn)行條件融合; ②在多槽值抽取層(即式(12)中),傳入訓(xùn)練集中真實(shí)的subject實(shí)體sk1和“@value”槽位vk2進(jìn)行條件融合。而在預(yù)測(cè)階段,BSLRel模型只使用預(yù)測(cè)到的信息進(jìn)行更深層次的運(yùn)算。

      2.5 其他數(shù)據(jù)處理操作

      2.5.1 實(shí)體識(shí)別

      在BSLRel模型中,實(shí)體信息以兩個(gè)分別代表實(shí)體的開始位置和結(jié)束位置的二元標(biāo)注序列存儲(chǔ),因此從這兩個(gè)二元標(biāo)注序列中解碼出所有實(shí)體是不可缺少的步驟。

      當(dāng)句子中包含多個(gè)實(shí)體時(shí),模型首先根據(jù)預(yù)測(cè)出的二元標(biāo)注序列,選取出所有可能的實(shí)體的開始位置和結(jié)束位置。然后從前到后遍歷所有開始位置,選取距離每一個(gè)開始位置最近且在其后面的結(jié)束位置進(jìn)行配對(duì),如果沒有符合條件的結(jié)束位置,則不進(jìn)行配對(duì)。

      例如,在圖1中的樣例中,以“周”為開始位置,在“周”之后,且離“周”最近的結(jié)束位置為“杰”,因此可以匹配到實(shí)體“周杰”。

      2.5.2 數(shù)據(jù)預(yù)處理

      為了提高模型在不規(guī)范文本上的泛化能力,同時(shí)也為了豐富可訓(xùn)練樣本,在模型訓(xùn)練之前,本文通過(guò)3種數(shù)據(jù)預(yù)處理操作來(lái)破壞句子的規(guī)范性: ①利用結(jié)巴分詞工具隨機(jī)刪除或增加句中的若干詞語(yǔ); ②將多個(gè)短句合并成一個(gè)長(zhǎng)句,或者將長(zhǎng)句拆分成多個(gè)短句; ③將句中的關(guān)系三元組隨機(jī)替換為其他相同關(guān)系的頭尾實(shí)體。實(shí)驗(yàn)證明,這種破壞句子規(guī)范性的預(yù)處理操作可以有效提升模型性能。

      2.5.3 模型融合和答案后處理

      模型的融合是提升模型性能的有效方法。在本次比賽中,我們把句子表示層使用的預(yù)訓(xùn)練模型分別設(shè)置為NEZHA-large,RoBERTa-large和BERT,再使用投票法得出三元組的最終預(yù)測(cè)結(jié)果。

      此外,為了提升答案的召回率,我們將train數(shù)據(jù)集和dev數(shù)據(jù)集包含的所有三元組標(biāo)注構(gòu)建成一個(gè)三元組數(shù)據(jù)集,對(duì)模型生成的答案按照遠(yuǎn)程監(jiān)督的思想進(jìn)行補(bǔ)充。并利用規(guī)則對(duì)一些錯(cuò)誤的答案進(jìn)行糾正或刪除,以提升精確率。

      3 實(shí)驗(yàn)及討論

      3.1 數(shù)據(jù)集介紹

      本文采用2020語(yǔ)言與智能技術(shù)競(jìng)賽關(guān)系三元組抽取任務(wù)提供的DuIE 2.0數(shù)據(jù)集,對(duì)提出的方法進(jìn)行性能驗(yàn)證。該數(shù)據(jù)集是當(dāng)前規(guī)模最大的中文關(guān)系三元組抽取數(shù)據(jù)集,其中包含超過(guò)21萬(wàn)的中文句子及48個(gè)已定義好的schema約束。該數(shù)據(jù)集來(lái)源于微博、貼吧、百度知道等真實(shí)場(chǎng)景,因此包含了部分并不規(guī)范的口語(yǔ)化文本,對(duì)模型的泛化能力具有很高的要求。并且DuIE 2.0不僅包含大量的重疊三元組,還對(duì)關(guān)系三元組中的object實(shí)體進(jìn)行了多槽值擴(kuò)展(可參考前文表1中提供的樣例)。

      3.2 實(shí)驗(yàn)設(shè)置

      在本文方法中,一些基本的超參數(shù)設(shè)置如下。輸入的最大句子長(zhǎng)度設(shè)置為256,訓(xùn)練epoch設(shè)置為20,batch設(shè)置為20,判斷實(shí)體邊界的識(shí)別閾值θ設(shè)置為0.5。訓(xùn)練過(guò)程中采用Adam算法進(jìn)行優(yōu)化,初始學(xué)習(xí)率設(shè)置為2e-5,損失函數(shù)采用二分類的交叉熵。

      3.3 實(shí)驗(yàn)結(jié)果

      在本節(jié)中,首先對(duì)BSLRel模型的整體性能進(jìn)行評(píng)價(jià),然后評(píng)價(jià)模型對(duì)重疊三元組以及多槽值三元組的抽取能力,之后對(duì)2.5節(jié)中的各種數(shù)據(jù)處理操作和模型融合操作進(jìn)行消融實(shí)驗(yàn),評(píng)價(jià)各個(gè)部分對(duì)模型的貢獻(xiàn),最后對(duì)本文提出的CLN方法的有效性進(jìn)行驗(yàn)證。

      需要注意的是,在本次比賽中,官方排名以及得分都是根據(jù)DuIE 2.0數(shù)據(jù)集中的test集合,而該集合目前只發(fā)布了句子集合,并沒有發(fā)布正確的三元組標(biāo)注結(jié)果,只能將預(yù)測(cè)的結(jié)果提交到比賽網(wǎng)站進(jìn)行評(píng)測(cè),但是,目前評(píng)測(cè)系統(tǒng)已經(jīng)關(guān)閉。因此,本文的大部分實(shí)驗(yàn)均在DuIE 2.0的dev集合上進(jìn)行。

      本文將選用2020語(yǔ)言與智能技術(shù)競(jìng)賽官方提供的一個(gè)可對(duì)多槽值三元組進(jìn)行抽取的系統(tǒng)Info-Extractor 2.0作為基線系統(tǒng)。InfoExtractor 2.0設(shè)計(jì)了一種結(jié)構(gòu)化的標(biāo)記策略來(lái)直接調(diào)優(yōu)預(yù)訓(xùn)練語(yǔ)言模型ERNIE,通過(guò)這種策略可以一次性提取多個(gè)重疊的實(shí)體對(duì)。

      3.3.1 模型的整體表現(xiàn)

      本節(jié)分別對(duì)比了InfoExtractor 2.0、未經(jīng)2.4節(jié)介紹的數(shù)據(jù)處理操作的BSLRel模型和經(jīng)過(guò)2.4節(jié)介紹的數(shù)據(jù)處理操作的BSLRel模型這三個(gè)系統(tǒng)在dev集合和test集合上的性能,結(jié)果如表2所示。從中可以看出,與InfoExtractor 2.0相比,BSLRel模型在不經(jīng)任何數(shù)據(jù)處理和模型融合時(shí),在dev集合上取得了更好的結(jié)果。具體的,BSLRel模型在precision和recall這兩個(gè)指標(biāo)上相對(duì)于基線系統(tǒng)而言分別提升了2.57%、2.76%。

      在最終的線上結(jié)果中,本文模型經(jīng)過(guò)數(shù)據(jù)處理和模型融合之后,取得了precision值為84.23%、recall值為77.7%、最終F1值為80.83%的結(jié)果,在所有參賽隊(duì)伍中成績(jī)總排名列第5(以模型在test集合的F1分?jǐn)?shù)為最終排名依據(jù))。

      關(guān)于表2需要說(shuō)明兩點(diǎn): ①線上評(píng)測(cè)系統(tǒng)已經(jīng)關(guān)閉。因此,BSLRel單模型在test集合上的分?jǐn)?shù)沒有測(cè)試到。②將預(yù)測(cè)的test集合的三元組標(biāo)注情況提交到線上進(jìn)行評(píng)測(cè)時(shí),評(píng)測(cè)系統(tǒng)會(huì)使用一些方式保證評(píng)價(jià)的公平性,比如,構(gòu)建同名詞庫(kù)提高標(biāo)注對(duì)錯(cuò)判斷的容錯(cuò)率、對(duì)于特殊字符進(jìn)行特殊處理、人工校驗(yàn)等等。因此表2所示的模型在dev集合和test集合之間的分?jǐn)?shù)不具有可比較性。

      表2 BSLRel和InfoExtractor 2.0整體對(duì)比

      3.3.2 模型在三元組類型上的消融實(shí)驗(yàn)

      為了確定模型是否能對(duì)重疊三元組和多槽值三元組進(jìn)行有效抽取,本文從DuIE 2.0的dev集合中抽取出四類句子的集合,集合A: 既不包含重疊三元組,也不包含多槽值三元組。集合B: 僅包含重疊三元組。集合C: 僅包含多槽值三元組。集合D: 兩種類型的三元組都包含。我們對(duì)這四類句子集合使用BSLRel模型和InfoExtractor 2.0進(jìn)行測(cè)試,結(jié)果如表3所示。

      表3 BSLRel和InfoExtractor 2.0在不同句子集合上的評(píng)分

      可以看出,InfoExtractor 2.0在四個(gè)集合上的表現(xiàn)波動(dòng)明顯,F(xiàn)1最大相差4.08%。而BSLRel模型的分?jǐn)?shù)則差距不大,F(xiàn)1最大分差為0.57%。因此,相比于InfoExtractor 2.0,BSARel模型對(duì)于句子中包含的三元組類型更具有魯棒性。

      并且可以發(fā)現(xiàn),BSLRel模型在包含重疊三元組的集合B上的表現(xiàn)甚至要略好于沒有包含重疊三元組的集合A,這是因?yàn)锽SLRel模型從設(shè)計(jì)之初就以更好的抽取重疊三元組為重要目標(biāo)。綜上,可以證明BSLRel模型可以對(duì)重疊三元組和多槽值三元組進(jìn)行有效抽取。

      同時(shí)可以發(fā)現(xiàn),雖然BSLRel模型在4種句子集合上的表現(xiàn)差別不大,但是在涉及多槽值三元組抽取的C和D集合上的表現(xiàn)卻略差于另外兩個(gè)集合,我們認(rèn)為這主要是因?yàn)槎嗖壑档某槿〗Y(jié)構(gòu)處于整個(gè)級(jí)聯(lián)結(jié)構(gòu)的最后一層,因此容易受到誤差傳遞的影響。

      3.3.3 模型關(guān)于數(shù)據(jù)處理的消融實(shí)驗(yàn)

      本節(jié)將對(duì)BSLRel模型中CLN、數(shù)據(jù)增強(qiáng)、模型融合、答案后處理等四個(gè)模塊對(duì)三元組抽取性能的貢獻(xiàn)進(jìn)行相應(yīng)的評(píng)價(jià)。

      我們將BSLRel模型中利用CLN結(jié)構(gòu)進(jìn)行信息融合的方法改為將條件向量與句子向量進(jìn)行拼接實(shí)現(xiàn)融合的方法,并以后者作為baseline系統(tǒng)。之后,在此baseline系統(tǒng)之上依次進(jìn)行CLN方法替換、加入數(shù)據(jù)增強(qiáng)、加入模型融合、加入答案后處理等操作,最終的實(shí)驗(yàn)結(jié)果如表4所示。

      表4 四種策略在dev集合上的表現(xiàn)

      從表4可知,CLN結(jié)構(gòu)和模型融合為BSLRel模型帶來(lái)的性能漲幅最大,分別為1.24%和1.56%。

      3.3.4 模型關(guān)于CLN的消融實(shí)驗(yàn)

      本節(jié)在模型中對(duì)比了以下四種信息融合結(jié)構(gòu):

      ? 基于拼接的信息融合方法,即將subject和@value的實(shí)體表示拼接在句子表示后面,并將該方法記作Mod_con。

      ? 基于相加的信息融合方法,即將subject實(shí)體表示、@value的實(shí)體表示和句子表示三者相加,并將該方法記作Mod_add。

      ? 基于向量輸入的信息融合方法,即將subject和object的實(shí)體表示加和成為一個(gè)向量表示,然后作為單條件傳入CLN結(jié)構(gòu),并將該方法記作CLN_single。

      ? 條件輸入位置進(jìn)行交換的CLN方法,即將subject實(shí)體和@value實(shí)體在CLN結(jié)構(gòu)中的傳入位置進(jìn)行交換,并將此時(shí)的模型記作CLN_rev。

      相應(yīng)的實(shí)驗(yàn)結(jié)果如表5所示,從中可以得出以下結(jié)論。

      表5 不同條件融合方式在dev集合的表現(xiàn)

      (1) 基于CLN結(jié)構(gòu)的信息融合方法CLN_single、CLN_rev取得了明顯優(yōu)于傳統(tǒng)的信息融合方法Mod_add和Mod_con的效果。這證明了本文提出的CLN方法具有更好的信息融合能力。

      (2) Mod_add、CLN_single這兩種忽略信息方向性的多信息融合方法,得分低于Mod_con、CLN_rev這兩種可以體現(xiàn)信息方向性的方法。這證明了使用一個(gè)對(duì)信息方向性敏感的多信息融合結(jié)構(gòu)的重要性。

      (3) 比較CLN_rev和BSLRel的結(jié)果可知,將subject實(shí)體和@value實(shí)體在CLN結(jié)構(gòu)中的傳入位置進(jìn)行交換之后,模型的性能受到了一定的影響,也證明了CLN結(jié)構(gòu)對(duì)于輸入條件信息輸入位置的敏感性。

      3.4 BSLRel模型的進(jìn)一步討論

      首先,對(duì)BSLRel模型目前存在的不足進(jìn)行分析。

      (1) 為了分析BSLRel模型對(duì)于不同長(zhǎng)度句子的三元組抽取能力,本文將DuIE 2.0的dev集合中的句子按照長(zhǎng)度從短到長(zhǎng)分為5類,分別對(duì)這5類進(jìn)行預(yù)測(cè),并統(tǒng)計(jì)分?jǐn)?shù),結(jié)果如圖2所示,可以發(fā)現(xiàn)BSLRel模型在長(zhǎng)文本上的抽取效果相較于短文本明顯較差。我們認(rèn)為主要原因在于,BSLRel模型雖然可以通過(guò)級(jí)聯(lián)的二元序列標(biāo)注結(jié)構(gòu)對(duì)重疊三元組和多槽值三元組進(jìn)行有效抽取,但同時(shí)因?yàn)檫@種基于二元序列標(biāo)注的輸出形式,導(dǎo)致輸出矩陣過(guò)于稀疏,0/1標(biāo)注的類別嚴(yán)重不平衡,并且句子序列越長(zhǎng),這種類別不平衡的問題就越嚴(yán)重,因此就有了上述結(jié)果。

      圖2 BSLRel在不同句子長(zhǎng)度上的表現(xiàn)

      (2) 對(duì)BSLRel模型在三元組中subject、predicate、@value槽位和其他其余槽位的抽取能力進(jìn)行分析,結(jié)果如圖3所示。從中可以發(fā)現(xiàn),模型對(duì)subject的抽取能力相比于其他部分而言是最差的。我們認(rèn)為,這是因?yàn)槟P驮趯?duì)subject進(jìn)行抽取時(shí),相較于其他部分并沒有接收到更多的有效信息,即模型在不明確三元組的其他信息,只對(duì)subject單獨(dú)進(jìn)行抽取時(shí),效果往往不會(huì)很好。所以,不難得到進(jìn)一步的結(jié)論: 雖然BSLRel模型通過(guò)盡量縮短級(jí)聯(lián)結(jié)構(gòu)的方式,來(lái)避免誤差傳遞問題,但是由于模型對(duì)于subject的抽取部分處于整個(gè)級(jí)聯(lián)結(jié)構(gòu)的最底層,且效果最差,因此,BSLRel模型仍然會(huì)存在一定的誤差傳遞問題。

      圖3 BSLRel在不同抽取目標(biāo)上的表現(xiàn)

      然后,對(duì)本文中將重疊三元組和多槽值三元組進(jìn)行區(qū)分的原因做進(jìn)一步的解釋。

      直觀來(lái)看,只需要將關(guān)系和object的槽位類型進(jìn)行拼接,即可將多槽值三元組轉(zhuǎn)化為多個(gè)傳統(tǒng)的三元組。比如,表1中的單槽值三元組就可以轉(zhuǎn)化成“(正大綜藝,主持人_@value,王雪純)”這種傳統(tǒng)的三元組,多槽值三元組可以轉(zhuǎn)化成兩個(gè)共享頭實(shí)體的傳統(tǒng)三元組: “(王雪純,配音_@value,晴雯)”和“(王雪純,配音_inWork,紅樓夢(mèng))”。

      依據(jù)這個(gè)思路,本次比賽的一些參賽隊(duì)伍將“多槽值三元組”和“重疊三元組”這兩個(gè)概念進(jìn)行統(tǒng)一,使用“先抽取多個(gè)頭實(shí)體重疊的傳統(tǒng)三元組,再將這些重疊三元組還原成所需要的多槽值三元組”的模型來(lái)進(jìn)行多槽值三元組的抽取。但是這種模型的處理方式將會(huì)帶來(lái)以下問題:

      (1) 將關(guān)系和槽位類型進(jìn)行拼接的做法,忽略了@value槽位的必要性,會(huì)導(dǎo)致模型進(jìn)行錯(cuò)誤抽取。比如在表1所示的樣例中,上述系統(tǒng)將抽取出錯(cuò)誤的三元組“(王雪純,配音_inWork,漢江怪物)”。因?yàn)椤癅value”類型的槽位是object結(jié)構(gòu)體不可缺少的,并且文本中沒有出現(xiàn)該三元組對(duì)應(yīng)的“@value”類型的槽位,即并沒有提及“王雪純?cè)凇稘h江怪物》中為哪個(gè)角色配音”,因此這個(gè)看似正確的三元組不應(yīng)該被抽取出來(lái)。

      (2) 將關(guān)系和槽位類型進(jìn)行拼接的做法,將會(huì)使“@value”槽位無(wú)法和其余槽位進(jìn)行正確匹配。例如,對(duì)于表1中的句子,上述系統(tǒng)將會(huì)抽取出“(王雪純,配音_@value,晴雯)”、“(王雪純,配音_inWork,紅樓夢(mèng))”、“(王雪純,配音_@value,孫藝珍)”和“(王雪純,配音_inWork,外出)”這四個(gè)三元組,很明顯,上述系統(tǒng)并不能確認(rèn)兩個(gè)“@value”槽位的三元組和另外兩個(gè)“inWork”槽位之間的對(duì)應(yīng)關(guān)系。因此,即使上述模型可以正確地抽取出這四個(gè)傳統(tǒng)三元組,但仍將它們無(wú)法還原成表1所示的多槽值三元組。

      基于上述兩個(gè)問題的考慮,本文將多槽值三元組和重疊三元組這兩個(gè)概念進(jìn)行了區(qū)分。

      4 結(jié)語(yǔ)

      本文提出了BSLRel,一種級(jí)聯(lián)的關(guān)系三元組抽取模型,將關(guān)系三元組抽取任務(wù)轉(zhuǎn)化為了二元序列標(biāo)注任務(wù),并針對(duì)關(guān)系三元組的實(shí)體對(duì)之間的方向性,提出了一種有效的多信息融合方法CLN(conditional layer normalization)。

      實(shí)驗(yàn)結(jié)果顯示,BSLRel模型可以對(duì)重疊關(guān)系三元組和多槽值關(guān)系三元組進(jìn)行有效抽取。基于本文所提出的模型,我們最終在“2020語(yǔ)言與智能技術(shù)競(jìng)賽”舉辦的關(guān)系三元組抽取任務(wù)中取得了較好的比賽成績(jī)。

      在實(shí)驗(yàn)中,本文也發(fā)現(xiàn)基于二元序列標(biāo)注的BSLRel模型存在著類別不平衡問題和誤差傳遞問題,這將是我們進(jìn)一步改進(jìn)模型的方向。

      猜你喜歡
      三元組實(shí)體融合
      基于帶噪聲數(shù)據(jù)集的強(qiáng)魯棒性隱含三元組質(zhì)檢算法*
      村企黨建聯(lián)建融合共贏
      融合菜
      特征標(biāo)三元組的本原誘導(dǎo)子
      從創(chuàng)新出發(fā),與高考數(shù)列相遇、融合
      《融合》
      前海自貿(mào)區(qū):金融服務(wù)實(shí)體
      關(guān)于余撓三元組的periodic-模
      實(shí)體的可感部分與實(shí)體——兼論亞里士多德分析實(shí)體的兩種模式
      振興實(shí)體經(jīng)濟(jì)地方如何“釘釘子”
      汤阴县| 安丘市| 宝鸡市| 屏东县| 巨野县| 甘肃省| 张家口市| 大渡口区| 山东| 如皋市| 新密市| 邳州市| 宜兴市| 吉林省| 望奎县| 合川市| 鸡泽县| 吴旗县| 阿克苏市| 通化市| 囊谦县| 洞头县| 保靖县| 四子王旗| 黔西| 翼城县| 久治县| 左贡县| 沁水县| 伊宁市| 景德镇市| 资阳市| 宕昌县| 衢州市| 河曲县| 吴堡县| 长垣县| 景宁| 玛曲县| 胶州市| 霍邱县|