国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

融合源端句法和語(yǔ)義角色信息的AMR解析

2019-09-05 12:33葛東來(lái)李軍輝朱慕華李壽山周?chē)?guó)棟
中文信息學(xué)報(bào) 2019年8期
關(guān)鍵詞:句法語(yǔ)義解析

葛東來(lái),李軍輝,朱慕華,李壽山,周?chē)?guó)棟

(1. 蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006)(2. 阿里巴巴集團(tuán),浙江 杭州 311121)

0 引言

語(yǔ)義解析是一種將自然語(yǔ)言句子映射到語(yǔ)義表示的過(guò)程[1-7]。近年來(lái),得益于大規(guī)模標(biāo)注數(shù)據(jù)的發(fā)布,抽象意義表示(Abstract Meaning Representation,AMR)解析越來(lái)越受到研究者的關(guān)注[1]。簡(jiǎn)而言之,AMR是一種語(yǔ)義形式,它將句子的意義表示為單根的有向無(wú)環(huán)圖,其中節(jié)點(diǎn)表示AMR概念,帶有向標(biāo)記的邊表示節(jié)點(diǎn)之間的語(yǔ)義關(guān)系。

最近很多相關(guān)工作將AMR圖線(xiàn)性序列化,進(jìn)而將AMR解析視為從源端句子到目標(biāo)端線(xiàn)性化的AMR圖的翻譯任務(wù),并采用目前神經(jīng)機(jī)器翻譯通用的seq2seq模型[8-11]。然而,大多數(shù)相關(guān)工作都將源句表示為單詞序列,沒(méi)有考慮那些對(duì)AMR圖的構(gòu)造非常有用的源端句法和語(yǔ)義角色信息。此外,最近關(guān)于seq2seq模型的相關(guān)研究,比如機(jī)器翻譯[12-13],表明即使是百萬(wàn)級(jí)的平行語(yǔ)料庫(kù),seq2seq模型仍然無(wú)法從中捕獲深層的句法信息,更不用說(shuō)規(guī)模相差甚遠(yuǎn)的AMR語(yǔ)料。因此,在缺乏語(yǔ)言知識(shí)的情況下,基于seq2seq模型的AMR解析很容易產(chǎn)生與輸入句子的句法和語(yǔ)義不一致的AMR結(jié)果。

例如,圖1(a)中seq2seq AMR給出了一個(gè)典型的基于seq2seq模型的AMR解析示例,該解析結(jié)果具有以下幾個(gè)問(wèn)題。首先,模型錯(cuò)誤地將片段“a separatist area of Georgia”識(shí)別為兩個(gè)平行的概念“country”和“area”。其次,它認(rèn)為這兩個(gè)概念都是概念“strike”的修飾語(yǔ),這與源端句子的句法結(jié)構(gòu)不一致。最后,在語(yǔ)義關(guān)系上,它錯(cuò)誤地將概念“strike”視為概念“escalate”的ARG1,即受事者。這與源端句子的語(yǔ)義角色信息不一致,因?yàn)椤癮irstrikes”擔(dān)當(dāng)謂詞“escalated”的ARG0角色,即施事者。此外,我們隨機(jī)選擇開(kāi)發(fā)集的100個(gè)句子,手工分析其AMR解析結(jié)果,發(fā)現(xiàn)高達(dá)76%句子的AMR解析結(jié)果中存在著與源端句子的句法或語(yǔ)義角色不一致的地方。

圖1 基于seq2seq模型的AMR解析器的輸出樣例和AMR圖的線(xiàn)性化

一般來(lái)說(shuō),源端句子的句法和語(yǔ)義角色信息對(duì)AMR解析是有幫助的,因?yàn)樵淳涞木浞ńY(jié)構(gòu)與AMR圖中概念之間的修飾與被修飾結(jié)構(gòu)是兼容的,而源句中謂詞與論元之間的修辭關(guān)系與AMR圖中概念的語(yǔ)義關(guān)系相對(duì)應(yīng)。從本質(zhì)上講,AMR圖中包含了源句的句法和語(yǔ)義角色信息。并且相關(guān)工作已經(jīng)表明,在非神經(jīng)AMR解析中利用源句的句法和語(yǔ)義角色信息有助于提高AMR解析性能[1,14]。針對(duì)基于seq2seq模型的神經(jīng)AMR解析,本文提出了一個(gè)直接而有效的融合句法和語(yǔ)義角色信息的AMR解析方法(1)本文使用語(yǔ)義角色標(biāo)注結(jié)果表示源端句子的語(yǔ)義角色信息。,甚至不需要對(duì)seq2seq模型本身進(jìn)行任何修改。在AMR標(biāo)準(zhǔn)英語(yǔ)數(shù)據(jù)集上的結(jié)果表明,即使對(duì)比本文基于目前在機(jī)器翻譯領(lǐng)域取得最優(yōu)性能的seq2seq基準(zhǔn)模型,融合源端句法和語(yǔ)義角色信息的AMR解析仍然可以顯著提高6.7%的F1值。此外,本文還進(jìn)一步從多個(gè)角度深入分析源端句法和語(yǔ)義角色信息如何對(duì)AMR解析產(chǎn)生積極影響。

1 相關(guān)工作

目前AMR的解析方法大致可以分為兩類(lèi): 非神經(jīng)網(wǎng)絡(luò)解析方法和神經(jīng)網(wǎng)絡(luò)解析方法。

1.1 非神經(jīng)網(wǎng)絡(luò)解析方法

在神經(jīng)網(wǎng)絡(luò)普及之前,AMR的解析方法主要分為兩類(lèi)。一類(lèi)是基于圖的方法,該方法首先進(jìn)行“概念識(shí)別”來(lái)識(shí)別所有概念,然后通過(guò)最大子圖連接(Maximum Spanning Connected Subgraph)算法進(jìn)行關(guān)系識(shí)別,從而得到完整AMR圖[15-16]。JAMR[15]是基于圖解析方法的主要代表。另一類(lèi)是基于語(yǔ)法的解析方法,它們使用依存語(yǔ)法、組合分類(lèi)語(yǔ)法(CCG)或翻譯語(yǔ)法來(lái)進(jìn)行AMR解析[17-20]。例如,CAMR就是先對(duì)被解析句子進(jìn)行依存解析[17],然后再對(duì)依存解析結(jié)果進(jìn)行shift-reduce轉(zhuǎn)換變成AMR圖。在最近的研究工作中,Guo等[21]和Peng等[22]使用基于轉(zhuǎn)換的模型進(jìn)行AMR解析。Groschwitz等[23]則先將句子轉(zhuǎn)換成AMR圖的組成結(jié)構(gòu),再將其轉(zhuǎn)換成AMR圖。上述一些研究也曾將句法和語(yǔ)義角色信息應(yīng)用到非神經(jīng)網(wǎng)絡(luò)解析方法中,并取得了一定的效果。本文的創(chuàng)新點(diǎn)則在于將句法和語(yǔ)義角色信息應(yīng)用到基于神經(jīng)網(wǎng)絡(luò)的解析方法中。

1.2 神經(jīng)網(wǎng)絡(luò)解析方法

隨著神經(jīng)網(wǎng)絡(luò)的興起,AMR解析也迎來(lái)了基于神經(jīng)網(wǎng)絡(luò)解析方法的熱潮。Barzdins等[8]基于seq2seq模型,將輸入的字符級(jí)句子序列輸出為字符級(jí)線(xiàn)性AMR序列。Peng[11]等則使用seq2seq模型來(lái)進(jìn)行基于字級(jí)別的AMR解析,并把關(guān)注點(diǎn)放在數(shù)據(jù)的稀疏性問(wèn)題上。Konstas等[10]使用外部資源Gigawords訓(xùn)練seq2seq模型來(lái)進(jìn)行AMR圖的解析和生成。Foland等[24]將多個(gè)不同功能的循環(huán)神經(jīng)網(wǎng)絡(luò)作為AMR解析模型的主要組件。Lyu等[25]則將對(duì)齊信息作為隱藏變量來(lái)得到AMR解析的聯(lián)合概率模型。但是,他們都忽略了對(duì)AMR解析性能提升有幫助的句法和語(yǔ)義信息。只有Noord等[9]探索了如何將詞性信息應(yīng)用于AMR的神經(jīng)網(wǎng)絡(luò)解析模型中。本文則使用他的預(yù)處理和后處理腳本,將句法和語(yǔ)義角色信息應(yīng)用到神經(jīng)網(wǎng)絡(luò)解析方法中。需要指出的是,seq2seq模型存在對(duì)AMR圖簡(jiǎn)化處理的傾向,訓(xùn)練和解碼都被簡(jiǎn)化的同時(shí),可能也損失了信息量。

2 基準(zhǔn)模型: 將AMR解析看作機(jī)器翻譯任務(wù)

本文使用目前性能最優(yōu)的seq2seq模型Transformer作為基準(zhǔn)模型,該模型最初被用于神經(jīng)機(jī)器翻譯和語(yǔ)法分析[26]。為了使該模型適用于AMR解析任務(wù),首先需要將AMR圖經(jīng)過(guò)線(xiàn)性化等預(yù)處理操作變?yōu)樾蛄校瑢MR解析看作是一個(gè)seq2seq任務(wù);得到預(yù)測(cè)的AMR序列后,通過(guò)后處理把AMR序列恢復(fù)為AMR圖。

2.1 序列到序列模型

本文使用Transformer[26]作為AMR解析的基準(zhǔn)seq2seq模型。與基于循環(huán)神經(jīng)網(wǎng)絡(luò)的seq2seq模型相比,Transformer使用多頭自注意力機(jī)制對(duì)序列進(jìn)行編碼。由于自注意力機(jī)制的計(jì)算可以并行進(jìn)行,所以相對(duì)于基于循環(huán)神經(jīng)網(wǎng)絡(luò)的seq2seq模型,該模型大大加快了訓(xùn)練速度。

Transformer的編碼器由多個(gè)相同的層堆棧組成,每層有兩個(gè)子層,一個(gè)是多頭自注意力機(jī)制層,另一個(gè)是全連接前饋網(wǎng)絡(luò)層。解碼器部分也由多個(gè)相同的層堆棧組成。但是解碼器中每層比編碼器多了一個(gè)對(duì)編碼器堆的輸出進(jìn)行多頭自注意力機(jī)制計(jì)算的子層。機(jī)器翻譯和句法分析任務(wù)的實(shí)驗(yàn)結(jié)果表明,Transformer優(yōu)于基于循環(huán)神經(jīng)網(wǎng)絡(luò)的seq2seq模型。有關(guān)詳細(xì)內(nèi)容,可以參閱Vaswani等的論文[26]。

2.2 預(yù)處理: AMR圖到AMR序列轉(zhuǎn)換

本文使用Barzdins[8]和Noord[9]等實(shí)驗(yàn)中的預(yù)處理方法。該方法首先將通過(guò)刪除變量和wiki鏈接以獲得簡(jiǎn)化的AMR圖,即AMR樹(shù)。由于AMR圖中的變量?jī)H用于指示共同引用節(jié)點(diǎn),且本身不攜帶任何語(yǔ)義信息。因此,通過(guò)移除變量、刪除wiki鏈接和復(fù)制共同引用的節(jié)點(diǎn),可以將AMR圖轉(zhuǎn)換為AMR樹(shù);其次,將AMR樹(shù)中的換行符替換為空格,從而獲取AMR圖的線(xiàn)性序列。例如,圖1(b)給出了圖1(a) Gold AMR圖對(duì)應(yīng)的AMR樹(shù)以及AMR線(xiàn)性序列。

2.3 后處理: AMR序列恢復(fù)為AMR圖

seq2seq模型的AMR解析結(jié)果仍然是一個(gè)序列,并且該序列沒(méi)有變量、wiki鏈接和共同引用節(jié)點(diǎn),甚至還可能出現(xiàn)括號(hào)不匹配問(wèn)題,導(dǎo)致某些概念不完整。因此,在后處理過(guò)程中,把這樣的一個(gè)序列恢復(fù)為完整的AMR圖需要進(jìn)行相應(yīng)的后處理,主要步驟包括: 首先需要為每個(gè)概念分配唯一變量;修剪重復(fù)和冗余信息;添加wiki鏈接以及恢復(fù)共同引用節(jié)點(diǎn);同時(shí),修復(fù)不完整的概念。經(jīng)過(guò)這些處理后,模型的解析結(jié)果序列可以恢復(fù)成完整的AMR圖。

本文使用Noord[9]等實(shí)驗(yàn)中使用的預(yù)處理和后處理腳本(2)https://github.com/RikVN/AMR。需要注意的是,Konstas等[10]和Peng等[11]的研究中提出了其他的AMR圖序列化和恢復(fù)方法,本文提出的融合源端句法和語(yǔ)義角色信息的方法同樣也適用于他們的模型。

3 融合源端句法和語(yǔ)義信息

Seq2seq模型將句子視為單詞序列,但是卻忽略了句子的外部知識(shí),并且不能有效地捕獲單詞間的固有內(nèi)部結(jié)構(gòu)。為了使模型能學(xué)習(xí)到源端句子的外部知識(shí)和內(nèi)部結(jié)構(gòu),特別是句法和語(yǔ)義角色信息,本文把關(guān)注點(diǎn)放在了被解析句子的句法分析樹(shù)和語(yǔ)義角色標(biāo)注上,并以此提出了三種不同的解析模型,將句法結(jié)構(gòu)和語(yǔ)義角色信息融合到源端句子的建模中。本文以圖2給出的一個(gè)源端句子“It begins and ends with Romneycare”為例,詳細(xì)描述如何在對(duì)源端句子建模過(guò)程中融合其句法和語(yǔ)義角色信息。值得注意的是,雖然句法和語(yǔ)義角色信息都是以樹(shù)型結(jié)構(gòu)表示的,但相關(guān)研究表明,通過(guò)對(duì)樹(shù)型結(jié)構(gòu)線(xiàn)性化得到序列表示,該序列表示可以看作是原樹(shù)形結(jié)構(gòu)的近似表示[12,27-28]。

圖2 源端句子及其帶語(yǔ)義角色標(biāo)簽句法樹(shù)例子注: “+句法”表示融合句法標(biāo)簽的源端序列;“+語(yǔ)義角色”表示融合語(yǔ)義角色標(biāo)簽的源端序列;“+句法+語(yǔ)義角色”表示同時(shí)融合句法和語(yǔ)義角色標(biāo)簽的源端序列

3.1 融合源端句法信息

融合源端句法信息的基本思想是將源端句子的句法分析結(jié)果從其句法樹(shù)轉(zhuǎn)換為句法標(biāo)簽序列。雖然句法分析樹(shù)的線(xiàn)性化存在多種方法(例如,有些包括表示句法結(jié)束邊界的符號(hào),有些則不包括[12,27-28]),但都遵守先序遍歷的原則,初步實(shí)驗(yàn)結(jié)果表明,這些方法之間的性能差距非常小。因此,本文按照Li等[12]的方法,使用先序遍歷來(lái)獲得源端句法序列,該序列包括句法標(biāo)簽、詞性標(biāo)簽以及單詞。

如圖2所示,“+句法”顯示了樣例句子在融合源端句法信息后的序列。這個(gè)序列將直接作為seq2seq模型的輸入。

3.2 融合源端語(yǔ)義角色信息

語(yǔ)義角色標(biāo)注(Semantic Role Labeling,SRL)也稱(chēng)為淺層語(yǔ)義分析。該任務(wù)以句子的謂詞為中心,研究句子中各成分與謂詞之間的關(guān)系,并且用語(yǔ)義角色來(lái)描述它們之間的關(guān)系。常見(jiàn)的語(yǔ)義角色包括施事者、受事者、時(shí)間或地點(diǎn)等[29]。在同一個(gè)句子中,一個(gè)謂詞可能具有多個(gè)語(yǔ)義角色,這些語(yǔ)義角色通??梢杂成涞骄浞?shù)的節(jié)點(diǎn)上。一個(gè)句子可包含多個(gè)謂詞,在如圖2所示的句法樹(shù)中,節(jié)點(diǎn)PP(with Romneycare)擔(dān)當(dāng)了謂詞starts和ends的ARG2角色。除語(yǔ)義角色標(biāo)簽外,本文使用標(biāo)簽Pre表示謂詞。類(lèi)似地,語(yǔ)義角色標(biāo)簽的線(xiàn)性化方法也存在多種方式。為方便起見(jiàn),本文采用了與句法結(jié)構(gòu)的線(xiàn)性化方法一致的策略,即在每個(gè)片段的起始位置插入語(yǔ)義角色標(biāo)簽。例如,具有兩個(gè)ARG2語(yǔ)義角色標(biāo)簽的片段with Romneycare線(xiàn)性化為ARG2 ARG2 with Romneycare。

圖2中“+語(yǔ)義角色”顯示了例句融合源端語(yǔ)義角色信息之后的序列,其中Pre表示謂詞。同樣,新序列也將直接用作seq2seq模型的輸入。

3.3 融合源端句法和語(yǔ)義角色信息

為了獲得融合源端句法和語(yǔ)義角色信息的序列,本文對(duì)包含語(yǔ)義角色的句法樹(shù)使用先序遍歷以獲得線(xiàn)性化序列。如果句法節(jié)點(diǎn)帶有語(yǔ)義角色,則將語(yǔ)義角色標(biāo)簽放在句法標(biāo)簽之后。例如,圖2中的句法節(jié)點(diǎn)PP同時(shí)擔(dān)當(dāng)了兩個(gè)謂詞“begins”和“ends”的ARG2語(yǔ)義角色,因此該節(jié)點(diǎn)被線(xiàn)性化為PP ARG2 ARG2,其中PP為句法標(biāo)簽,而ARG2為語(yǔ)義角色標(biāo)簽。同時(shí),幾乎所有的動(dòng)詞都會(huì)被標(biāo)注為謂詞,因此在包含融合源端句法信息的情況下,表示謂詞的Pre標(biāo)簽與表示動(dòng)詞詞性的標(biāo)簽存在信息冗余,所以在同時(shí)融合源端句法和語(yǔ)義角色信息的線(xiàn)性化中省略了謂詞標(biāo)簽Pre。

圖2中的“+句法+語(yǔ)義角色”即為融合了源端句法和語(yǔ)義角色信息之后的序列。該序列也會(huì)用作seq2seq模型的輸入。

4 實(shí)驗(yàn)

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

本文實(shí)驗(yàn)使用的數(shù)據(jù)集是LDC2017T10。該數(shù)據(jù)集包含若干英文句子及其對(duì)應(yīng)的AMR圖。與相關(guān)研究的數(shù)據(jù)劃分一致,訓(xùn)練集、開(kāi)發(fā)集和測(cè)試集分別包含36 521個(gè)、1 368個(gè)句子及1 371個(gè)句子和AMR對(duì)。為了獲取源端句子的句法分析和語(yǔ)義角色標(biāo)注結(jié)果,本文使用開(kāi)源源代碼工具AllenNLP[30](3)https://allennlp.org/,該工具的句法分析模型是基于PennTree Bank訓(xùn)練的,語(yǔ)義角色標(biāo)注模型則是基于英文Ontonotes 5.0訓(xùn)練的。在進(jìn)行語(yǔ)義角色標(biāo)注時(shí),工具會(huì)識(shí)別除了輔助動(dòng)詞和系動(dòng)詞之外的所有謂詞的語(yǔ)義角色。融合了句法和語(yǔ)義角色信息之后,不可避免地會(huì)增加源端序列的長(zhǎng)度。如表1所示,融合源端不同信息后,源端輸入序列的平均長(zhǎng)度相對(duì)于基準(zhǔn)模型都明顯增加。本文使用SMATCH系統(tǒng)[31]來(lái)評(píng)估AMR解析模型的性能,該系統(tǒng)會(huì)將模型解析生成的AMR圖和正確AMR圖都轉(zhuǎn)換為三元組,然后進(jìn)行對(duì)比,算出P(精確度)、R(召回率)、F1值。本文實(shí)驗(yàn)所使用的代碼將在Github上開(kāi)源公布。

本文使用開(kāi)源代碼tensor2tensor(4)https://github.com/tensorflow/tensor2tensor作為T(mén)ransformer基準(zhǔn)模型。在參數(shù)設(shè)置上, 模型編碼器和解碼器的層數(shù)都設(shè)置為6,多頭自注意力機(jī)制(Multi-head attention)的頭數(shù)設(shè)置為8,隱藏層大小設(shè)置為512,批處理大小設(shè)置為4 096,最大句子長(zhǎng)度為512。同時(shí)模型優(yōu)化使用beta1=0.1的Adam[32]算法。解碼時(shí),額外長(zhǎng)度從默認(rèn)值50增加到150,該值表示模型解碼時(shí)允許生成的目標(biāo)AMR圖的最大長(zhǎng)度是源端序列長(zhǎng)度加150。其余參數(shù)則都使用該系統(tǒng)的默認(rèn)值。

表1 源端句子的平均長(zhǎng)度(注: 以詞為單位)

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

表2給出了融合源端句法和語(yǔ)義角色信息前、后AMR解析的性能對(duì)比,并且從實(shí)例、屬性(對(duì)概念的詳細(xì)描述)、關(guān)系及總體四個(gè)方面分別對(duì)模型性能進(jìn)行了評(píng)估。從表2中可以看出,融合源端句法和語(yǔ)義角色信息能夠顯著提高AMR解析的性能。在總體性能上,單獨(dú)融合源端句法信息和單獨(dú)融合源端語(yǔ)義角色信息分別提高5.3和3.2個(gè)F1值。此外,在源端已經(jīng)融合了句法信息的基礎(chǔ)上,再融合源端語(yǔ)義角色信息能夠進(jìn)一步提高1.4個(gè)F1值 (從68.0提升至69.4)。這一結(jié)果表明,句法信息和語(yǔ)義角色信息之間存在互補(bǔ)和重疊。也就是說(shuō),在融合了源端句法信息之后,再向源端融合語(yǔ)義角色信息所獲得的提高將有限。有趣的是,該現(xiàn)象與融合源端句法和語(yǔ)義角色信息的機(jī)器翻譯的實(shí)驗(yàn)結(jié)果一致[33-34]。

表2 融合源端句法和語(yǔ)義角色信息的實(shí)驗(yàn)結(jié)果和提升值

注: “時(shí)間”表示不同模型訓(xùn)練一輪所花費(fèi)的時(shí)間,以分鐘為單位。

4.2.1 參數(shù)和訓(xùn)練時(shí)間

融合源端句法和語(yǔ)義角色信息只是使源端序列變長(zhǎng),但不會(huì)引入新參數(shù)。然而,模型在融合句法和語(yǔ)義角色信息后,由于輸入序列變長(zhǎng),會(huì)略微增加訓(xùn)練時(shí)間。基于單GPU GeForce GTX 1080,如表2中“時(shí)間”列所示,基準(zhǔn)模型完成一輪訓(xùn)練需要4.9分鐘,而融合源端句法和語(yǔ)義角色信息的模型則分別花費(fèi)5.5分鐘和5.2分鐘,訓(xùn)練時(shí)間分別提升1.12倍和1.06倍。最后,同時(shí)融合源端句法和語(yǔ)義角色信息的模型每輪則會(huì)花費(fèi)6.0分鐘,較基準(zhǔn)模型僅提高1.22倍。

4.2.2 與其他系統(tǒng)比較

表3給出了本文模型與其他AMR解析模型的性能比較。需要注意的是,LDC2016E25和LDC2017T10是完全相同的數(shù)據(jù)集,并且采用完全一致的數(shù)據(jù)劃分。而LDC2015E86與前兩個(gè)數(shù)據(jù)集的開(kāi)發(fā)和測(cè)試集是一樣的,但是訓(xùn)練集大小只有它們的一半左右,由于該數(shù)據(jù)集僅對(duì)2015年AMR解析評(píng)估比賽的參與者開(kāi)放,所以本文無(wú)法使用該數(shù)據(jù)集。從表3的結(jié)果中可以看出,在數(shù)據(jù)集同樣是LDC2017T10的情況下,本文的“+句法+語(yǔ)義角色”的模型結(jié)果為69.4,優(yōu)于Noord等基于字符的seq2seq模型[9]結(jié)果64.0。由于本文未使用Noord等的100k偽語(yǔ)料來(lái)擴(kuò)充數(shù)據(jù)集,所以無(wú)法與其71.0的模型結(jié)果進(jìn)行比較。當(dāng)然,對(duì)于Foland等[24]、Guo等[21]和Lyu等[25]的非seq2seq模型也不進(jìn)行比較。

表3 與其他模型的比較

5 實(shí)驗(yàn)分析

本節(jié)將從多個(gè)角度探討為什么融合源端句法和語(yǔ)義角色信息可以提升AMR解析的性能。

5.1 subword技術(shù)對(duì)解析模型的影響

如前文所述,本文使用tensor2tensor源碼作為T(mén)ransformer基準(zhǔn)模型,該模型使用了一種subword技術(shù),它類(lèi)似于字節(jié)對(duì)編碼(byte pair encoding,BPE)技術(shù)[35-36],主要解決未登錄詞的翻譯問(wèn)題?;鶞?zhǔn)模型在源端和AMR序列目標(biāo)端分別使用了包含17 961和6 343個(gè)單詞的詞匯表。為了分析subword技術(shù)對(duì)模型性能的影響,本文重復(fù)表2中的各個(gè)實(shí)驗(yàn),但不使用subword技術(shù),本文分別從訓(xùn)練語(yǔ)料的源端和目標(biāo)端抽取詞頻最高的前3萬(wàn)個(gè)單詞作為其詞表,其中源端詞表覆蓋整個(gè)訓(xùn)練語(yǔ)料的99.4%,目標(biāo)端詞表覆蓋率為100%。所有不在詞表中的單詞被表示為“UNK”特殊標(biāo)記符號(hào)。

表4給出了是否使用subword技術(shù)的對(duì)比實(shí)驗(yàn)結(jié)果。從中可以得出結(jié)論,不論是基準(zhǔn)模型還是融合源端不同信息的模型,使用subword技術(shù)的AMR解析模型取得的性能都要明顯高于不使用subword技術(shù)的AMR解析模型,這一結(jié)果表明subword技術(shù)能夠有效地解決數(shù)據(jù)稀疏性問(wèn)題[11]。此外,從表4中也可以看出,不使用subword技術(shù)情況下各AMR解析模型性能趨勢(shì)與使用subword技術(shù)情況下的性能趨勢(shì)是相似的,融合源端句法信息比融合源端語(yǔ)義角色信息對(duì)模型性能的提升影響更大,并且句法信息與語(yǔ)義角色信息之間存在著互補(bǔ)與重疊。最后,表4中的結(jié)果也表明不論是否使用subword技術(shù),融合源端句法和語(yǔ)義角色信息都對(duì)基準(zhǔn)模型有較大的提升。這也證實(shí)了本文方法的有效性。

表4 是否使用subword技術(shù)的實(shí)驗(yàn)結(jié)果對(duì)比

5.2 融合源端不同類(lèi)型的句法信息

雖然融合源端句法信息的方法能顯著提升AMR解析的性能,但為了探究哪種類(lèi)型的句法信息對(duì)解析性能提升最為有效,本文進(jìn)一步將句法成分分為三種類(lèi)型,分別是詞性、語(yǔ)義角色和詞性、其他信息。

如圖2句法樹(shù)所示,以上三種類(lèi)型的句法結(jié)點(diǎn)分別是: (PRP,VBZ,CC,VBZ,IN,NNP)、(NP,VBZ,VBZ,PP)和(S,VP,NP)。為了分析它們對(duì)模型性能提升的影響程度,本文在線(xiàn)性化句法樹(shù)得到源端序列時(shí)分別僅包含以上三種不同類(lèi)型句法結(jié)點(diǎn)。例如,針對(duì)圖2中的句法樹(shù),融合“類(lèi)型2”的句法節(jié)點(diǎn)的線(xiàn)性化序列結(jié)果是(NP It VBZ begins and VBZ ends PP with Romneycare.)。該序列實(shí)際上是與融合源端語(yǔ)義角色信息得到的序列是類(lèi)似的,只不過(guò)這里使用句法標(biāo)簽代替語(yǔ)義角色標(biāo)簽。表5給出了融合以上三種不同類(lèi)型句法成分的AMR解析結(jié)果。實(shí)驗(yàn)結(jié)果表明,詞性信息貢獻(xiàn)最大,占了“+句法”模型性能提升的四分之三(即4.0/5.3=75%)。

表5 融合源端不同類(lèi)型句法信息的實(shí)驗(yàn)結(jié)果

5.3 融合源端不同設(shè)置的語(yǔ)義角色信息

如上所述,融合源端語(yǔ)義角色信息能夠提高AMR解析性能。為了探究語(yǔ)義角色信息的詳細(xì)程度對(duì)解析性能的影響,本文設(shè)計(jì)了兩個(gè)額外的對(duì)比實(shí)驗(yàn)。

設(shè)置1將語(yǔ)義角色標(biāo)簽ARG1~ARG5統(tǒng)一為A-Core,ARGM-*統(tǒng)一為ARGM,Pre則作為所有謂詞的統(tǒng)一標(biāo)簽。

設(shè)置2把所有語(yǔ)義角色標(biāo)簽統(tǒng)一為X。表6給出了融合以上兩種不同設(shè)置的語(yǔ)義角色信息的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果表明,模糊語(yǔ)義角色標(biāo)簽會(huì)降低模型解析性能。而且,語(yǔ)義角色標(biāo)簽越模糊,解析性能提升越不明顯。這一結(jié)果也從側(cè)面表明AMR解析模型的性能會(huì)從更高精度的語(yǔ)義角色標(biāo)注系統(tǒng)中獲益更多。

表6 融合源端不同語(yǔ)義角色信息的實(shí)驗(yàn)結(jié)果

5.4 句子長(zhǎng)度的影響

為了探究句子長(zhǎng)度對(duì)AMR解析模型性能的影響,本文將開(kāi)發(fā)集按照長(zhǎng)度將句子分成6個(gè)組,并分別計(jì)算它們?cè)诓煌馕瞿P蜕系腇1值。圖3以折線(xiàn)圖的形式將實(shí)驗(yàn)結(jié)果表示出來(lái),從圖3中可以看出,在不同長(zhǎng)度區(qū)間上融合源端句法和語(yǔ)義角色信息的模型解析性能都明顯優(yōu)于基準(zhǔn)模型。同時(shí)還可以看到,隨著句子長(zhǎng)度的增加,解析模型的性能急劇下降。這種現(xiàn)象在神經(jīng)機(jī)器翻譯中同樣存在[12,14],因?yàn)榛鶞?zhǔn)模型使用的Transformer系統(tǒng)最初就是為神經(jīng)機(jī)器翻譯任務(wù)設(shè)計(jì)的。經(jīng)過(guò)分析本文認(rèn)為,長(zhǎng)句解析性能差主要由以下三個(gè)原因造成的: 首先,seq2seq模型在解析較長(zhǎng)的源端句子時(shí),往往較早預(yù)測(cè)出目標(biāo)端句子終止符,過(guò)早結(jié)束解析。這個(gè)問(wèn)題在神經(jīng)機(jī)器翻譯的研究中曾被廣泛討論過(guò)[12,14]。其次,目標(biāo)端AMR序列不僅包含概念結(jié)點(diǎn),還包含結(jié)點(diǎn)之間的關(guān)系,導(dǎo)致其比源端序列長(zhǎng)很多。以基準(zhǔn)模型的開(kāi)發(fā)集為例,源端序列和AMR端序列的平均長(zhǎng)度分別為21和88,這會(huì)加大模型的學(xué)習(xí)難度。最后,長(zhǎng)句的結(jié)構(gòu)往往很復(fù)雜,本文對(duì)源端的句法分析結(jié)果進(jìn)行分析比較,發(fā)現(xiàn)對(duì)于序列長(zhǎng)度小于10的句子,中心詞與其修飾詞之間的平均距離為1.9。但是,對(duì)于序列長(zhǎng)度超過(guò)50的句子,這個(gè)距離會(huì)增加到3.5,這會(huì)導(dǎo)致解析模型很難學(xué)到長(zhǎng)句子的內(nèi)部結(jié)構(gòu)信息,產(chǎn)生解析錯(cuò)誤。

圖3 不同解析模型在不同長(zhǎng)度句子上的性能

5.5 錯(cuò)誤分析

最后,對(duì)本文提出的不同解析模型進(jìn)行人工錯(cuò)誤分析。在對(duì)正確AMR圖和不同模型自動(dòng)解析出的AMR圖進(jìn)行比較后,將錯(cuò)誤分為以下三類(lèi)。

為簡(jiǎn)單起見(jiàn),這里不區(qū)分詞義標(biāo)記。例如,認(rèn)為“set-02”與“set-01”是一致的。

(1) 概念錯(cuò)誤: 指概念缺失、概念冗余或錯(cuò)誤的概念。

(2) 依存關(guān)系錯(cuò)誤: 當(dāng)正確AMR圖中不存在該(中心詞,修飾詞/屬性)概念對(duì)時(shí),此概念對(duì)屬于依存關(guān)系錯(cuò)誤(這里將不同但相似的概念視為同一概念,例如,“warfare”和“war”)。

(3) 關(guān)系錯(cuò)誤: 當(dāng)正確AMR圖中不存在該(中心詞,修飾詞/屬性,關(guān)系)的三元組時(shí),此三元組存在關(guān)系錯(cuò)誤。

如圖4樣例所示,雖然第一個(gè)例子的源端句子很短,但基準(zhǔn)模型的解析結(jié)果與正確AMR圖相比缺少了兩個(gè)關(guān)鍵概念(即“set-02”和“develop-01”),而且還多了一個(gè)冗余概念(即“normal”)。由于存在概念錯(cuò)誤,系統(tǒng)產(chǎn)生概念間的依存關(guān)系錯(cuò)誤和關(guān)系錯(cuò)誤,進(jìn)一步導(dǎo)致解析結(jié)果很差。第二個(gè)例子的基準(zhǔn)模型的解析結(jié)果中也存在概念錯(cuò)誤,多出了一個(gè)概念“cause”,從而產(chǎn)生許多與“cause”相關(guān)的依存關(guān)系錯(cuò)誤和關(guān)系錯(cuò)誤。此外,還將“signal”和“crash”兩個(gè)概念之間的關(guān)系錯(cuò)誤地解析為ARG1。然而,從圖4中也可以看出,融合源端句法和語(yǔ)義角色信息后,模型能在很大程度上避免以上這些錯(cuò)誤的產(chǎn)生。

圖4 AMR解析模型的輸出結(jié)果注: 為節(jié)約空間,這里只標(biāo)出了基準(zhǔn)系統(tǒng)輸出的錯(cuò)誤

本文從開(kāi)發(fā)集中隨機(jī)選出100個(gè)樣例以及與之相對(duì)應(yīng)的基準(zhǔn)模型和“+句法+語(yǔ)義角色”模型的解析結(jié)果,然后人工統(tǒng)計(jì)這三種錯(cuò)誤類(lèi)型的出現(xiàn)次數(shù)。表7給出了最后的統(tǒng)計(jì)結(jié)果,可以看到兩種模型解析結(jié)果中的主要錯(cuò)誤都是概念錯(cuò)誤和關(guān)系錯(cuò)誤,其次是依存關(guān)系錯(cuò)誤。同時(shí)還可以看到,在融合源端句法和語(yǔ)義角色信息后的模型解析結(jié)果中各類(lèi)錯(cuò)誤的數(shù)量明顯減少。這也再一次證實(shí),融合源端句法和語(yǔ)義角色信息會(huì)明顯提升AMR解析模型的性能。

表7 從開(kāi)發(fā)集中隨機(jī)挑選100個(gè)句子的錯(cuò)誤分析

6 結(jié)論

本文在基于seq2seq的AMR解析模型的基礎(chǔ)上提出了一種將句法和語(yǔ)義角色信息融入源端編碼的有效方法。實(shí)驗(yàn)結(jié)果表明,使用該方法能夠有效地對(duì)句法和語(yǔ)義角色信息編碼,并且相對(duì)于基準(zhǔn)模型提升了6.7個(gè)F1值。特別地,詞性信息的加入和subword技術(shù)的使用對(duì)AMR解析模型的性能有明顯提升作用。加入詞性信息相較于基準(zhǔn)模型會(huì)提升4.0個(gè)F1值,而使用subword技術(shù)的模型相對(duì)于不使用該技術(shù)的模型也會(huì)提升3.7~5.4個(gè)F1值。由于句法分析、語(yǔ)義角色標(biāo)注和AMR解析任務(wù)之間具有很高的相關(guān)性,未來(lái)工作中,將會(huì)探索句法分析、語(yǔ)義角色標(biāo)注和AMR解析任務(wù)之間的聯(lián)合學(xué)習(xí)。

猜你喜歡
句法語(yǔ)義解析
真實(shí)場(chǎng)景水下語(yǔ)義分割方法及數(shù)據(jù)集
三角函數(shù)解析式中ω的幾種求法
述謂結(jié)構(gòu)與英語(yǔ)句法配置
語(yǔ)言與語(yǔ)義
句法二題
詩(shī)詞聯(lián)句句法梳理
睡夢(mèng)解析儀
電競(jìng)初解析
批評(píng)話(huà)語(yǔ)分析中態(tài)度意向的鄰近化語(yǔ)義構(gòu)建
對(duì)稱(chēng)巧用解析妙解
巴林右旗| 永和县| 遵义县| 红安县| 常州市| 尼勒克县| 文山县| 左云县| 三亚市| 大理市| 阿荣旗| 荔波县| 呼图壁县| 漾濞| 肇州县| 兖州市| 鹤壁市| 长寿区| 武定县| 贵州省| 松滋市| 宣恩县| 横峰县| 锡林浩特市| 兰西县| 科尔| 丹江口市| 塔河县| 宣化县| 吉首市| 外汇| 南江县| 旌德县| 芒康县| 石家庄市| 凤山县| 安龙县| 江安县| 株洲县| 西平县| 太和县|