劉 航,劉明童,張玉潔,徐金安,陳鈺楓
(北京交通大學(xué) 計算機(jī)與信息技術(shù)學(xué)院,北京 100044)
分詞、詞性標(biāo)注和依存句法分析三項任務(wù)是漢語自然語言處理的基礎(chǔ)技術(shù),其性能的提高對于機(jī)器翻譯等其他任務(wù)的實際應(yīng)用至關(guān)重要。將三項任務(wù)融合到一個模型中并行處理的一體化依存分析模型[1-4]解決了串行處理方式中各任務(wù)間的錯誤傳播問題;同時任務(wù)的中間結(jié)果可以相互利用,使得三項任務(wù)相互協(xié)調(diào)以提升性能。因此,如何充分利用中間結(jié)果作為特征成為一體化依存分析模型性能提升的關(guān)鍵問題。
基于特征工程的一體化依存分析模型[1-3],總結(jié)了大量有效的特征模板來獲取中間結(jié)果信息作為特征,在三項任務(wù)上取得了很好的性能?;谏窠?jīng)網(wǎng)絡(luò)的一體化依存分析模型[4],利用神經(jīng)網(wǎng)絡(luò)自動學(xué)習(xí)有效特征,僅結(jié)合少量特征模板就達(dá)到了接近特征工程模型的性能。但是,目前無論哪種模型在利用中間結(jié)果時都未能充分考慮已經(jīng)形成的依存子樹信息,而分析棧中保存的依存子樹作為中間結(jié)果的主要成分,對三項任務(wù)的后續(xù)分析有著重要的指導(dǎo)意義。
針對該問題,本文提出Stack-Tree LSTM依存子樹編碼方法獲取分析棧中所有依存子樹的完整信息。具體地,我們采用Tree LSTM對每棵依存子樹信息進(jìn)行編碼,并利用Stack LSTM將分析棧中的所有依存子樹的編碼結(jié)果累積到棧頂,作為特征參與隨后的動作轉(zhuǎn)移決策。利用該編碼機(jī)制,我們提出詞性特征的使用方法,在依存子樹編碼中融入詞性信息。以此為基礎(chǔ),搭建漢語一體化依存分析神經(jīng)網(wǎng)絡(luò)模型,并采用雙向LSTM獲取句子的N-gram特征和上下文信息。本文在CTB5數(shù)據(jù)上進(jìn)行評測并與已有模型進(jìn)行比較。評測結(jié)果顯示,本文模型在分詞、詞性標(biāo)注和依存句法分析任務(wù)上的F1值分別達(dá)到了97.78%、93.51%和79.66%,均優(yōu)于已有基于神經(jīng)網(wǎng)絡(luò)的一體化依存分析模型。
本文組織結(jié)構(gòu)如下:第1節(jié)介紹一體化依存分析模型以及依存子樹編碼的相關(guān)工作;第2節(jié)詳細(xì)描述本文提出的Stack-Tree LSTM依存子樹編碼方法;第3節(jié)詳細(xì)描述基于Stack-Tree LSTM依存子樹編碼的一體化依存分析神經(jīng)網(wǎng)絡(luò)模型;第4節(jié)介紹評測實驗與對比結(jié)果分析;第5節(jié)對本文工作進(jìn)行總結(jié)。
基于轉(zhuǎn)移的漢語一體化依存分析模型最早由Hatori[1]等提出,通過以漢字為處理單位將分詞任務(wù)設(shè)定為字的歸約操作,并在字的歸約操作時附加詞性信息,實現(xiàn)詞性標(biāo)注任務(wù),由此,實現(xiàn)三項任務(wù)的并行處理。在一體化依存分析模型中,三項任務(wù)各自形成的中間結(jié)果保存在分析棧中,包括完成分詞的詞語、詞性、依存子樹和未成詞的字串,這些信息構(gòu)成了三項任務(wù)相互制約協(xié)調(diào)的特征。如何利用這些特征幫助轉(zhuǎn)移動作決策成為之后研究的主要課題。Hatori[1]等利用分析棧頂?shù)娜齻€元素抽取特征,對于依存子樹只抽取根節(jié)點、最左、最右孩子等部分節(jié)點,而不考慮其他節(jié)點。Zhang[2]等在Hatori[1]等工作的基礎(chǔ)上,標(biāo)注詞內(nèi)漢字之間的依存關(guān)系用于字的歸約操作,增加詞內(nèi)的依存關(guān)系信息作為特征,在依存分析任務(wù)上取得了目前最好的結(jié)果。
Kurita[4]等首次將神經(jīng)網(wǎng)絡(luò)方法運用到一體化依存分析模型中,利用之前工作總結(jié)的特征模板抽取分析棧的信息,同樣利用棧頂三個元素,只抽取依存子樹根節(jié)點、最左、最右孩子節(jié)點等部分節(jié)點信息,通過分布式方法表示輸入到神經(jīng)網(wǎng)絡(luò)多層感知機(jī)進(jìn)行轉(zhuǎn)移動作決策,在分詞和詞性標(biāo)注任務(wù)上取得了目前最好的結(jié)果。同時Kurita[4]等采用雙向的長短時記憶神經(jīng)網(wǎng)絡(luò)(long short term memory,LSTM)對句子N-gram信息進(jìn)行編碼自動學(xué)習(xí)特征,該模型也僅利用了分析棧頂三個元素中漢字的N-gram信息,其性能接近特征工程的最好結(jié)果。
為了利用依存子樹所有節(jié)點的信息,Socher[5]等提出組合向量文法自上而下編碼整棵依存子樹。Tai[6]等提出Tree LSTM神經(jīng)網(wǎng)絡(luò)模型,根據(jù)節(jié)點的分支個數(shù)調(diào)整神經(jīng)單元中忘記門的數(shù)量,實現(xiàn)對依存子樹信息編碼。但是,這兩個模型僅適用獲得句子整體依存結(jié)構(gòu)的情況。之后,Bowman[7]等首次在句法分析過程中使用Tree LSTM編碼子樹,根據(jù)子樹的構(gòu)建特點將神經(jīng)單元忘記門的數(shù)量設(shè)置為2,使得Tree LSTM每次結(jié)合兩個節(jié)點;編碼結(jié)果保存在分析棧中,當(dāng)與其他子樹的根節(jié)點建立句法關(guān)系時,用于計算新的子樹編碼表示,以此得到子樹的完整信息,并在句法分析和句子理解的聯(lián)合任務(wù)上取得了較好的結(jié)果。但是Bowman[7]等的工作無法利用分析棧中同時存在的多棵子樹信息。為了解決該問題,我們受Dyer[8]等工作的啟發(fā),利用Stack LSTM可以獲取分析棧中所有元素信息的優(yōu)勢,提出了Stack-Tree LSTM依存子樹編碼方法,用于一體化依存分析。
已有的一體化依存分析神經(jīng)網(wǎng)絡(luò)模型忽略了詞性標(biāo)注的中間結(jié)果,而詞性作為特征對于分詞和依存分析有很大幫助。為了利用詞性信息,我們提出了一種詞性特征的利用方法,將詞性信息融入到詞向量中,參與轉(zhuǎn)移動作決策。
本文結(jié)合Stack LSTM和Tree LSTM的優(yōu)勢,提出Stack-Tree LSTM神經(jīng)網(wǎng)絡(luò)模型,獲取分析過程中形成得依存子樹信息。利用Stack LSTM[8]的結(jié)構(gòu)優(yōu)勢,將分析棧中所有元素信息匯總到棧頂;采用Tree LSTM獲取依存子樹的信息。主要思想是在一體化分析過程中,如果分析棧中某一元素是一棵依存子樹,則使用Tree LSTM編碼該子樹;如果某一元素是詞語或者未成詞字串,則使用LSTM單元編碼該詞語或者字串。其中Tree LSTM神經(jīng)單元按照依存關(guān)系對頭節(jié)點和依存節(jié)點進(jìn)行處理,獲的依存子樹的編碼結(jié)果;而Stack LSTM結(jié)構(gòu)可以將多棵依存子樹的信息匯總到棧頂,從而增強(qiáng)模型對依存子樹信息的獲取能力。除此之外,本文使用的Tree LSTM神經(jīng)單元與LSTM神經(jīng)單元具有相似的門結(jié)構(gòu),通過門結(jié)構(gòu)的控制作用避免了以往依存子樹編碼方案中的梯度消失問題[8]。
基于轉(zhuǎn)移的分詞、詞性標(biāo)注和依存句法分析的一體化依存分析模型可視為一系列轉(zhuǎn)移動作的決策問題。轉(zhuǎn)移模型由分析棧S={…,S1,S0}和待處理隊列Q={Q0,Q1,…}構(gòu)成,分別記錄包含依存子樹的中間結(jié)果和待分析的字序列。初始狀態(tài)下S為空,Q為句子的所有字符;每次執(zhí)行一個轉(zhuǎn)移動作,并從當(dāng)前狀態(tài)更新至下一個狀態(tài);終止?fàn)顟B(tài)下S為一棵完整的依存樹,其中包含了分詞和詞性標(biāo)注結(jié)果,Q為空。本文采用以下4種轉(zhuǎn)移動作[1]:
(1) SH(k)(移進(jìn)):將Q中的首元素作為詞的開始字符移進(jìn)S,并賦予詞性k作為該字符所在詞的詞性;
(2) AP(拼接):將Q中的首元素拼接到S的頂部元素中,該動作執(zhí)行的前提條件為前一步動作是SH(k)或者AP;
(3) RL(左歸約):S頂部的兩個元素S0和S1出棧,構(gòu)建依存關(guān)系S1←S0,將根節(jié)點S0入棧,S1、S0是依存子樹或者詞;
(4) RR(右歸約):S頂部的兩個元素S0和S1出棧,構(gòu)建依存關(guān)系S1→S0,將根節(jié)點S1入棧,S1、S0是依存子樹或者詞。
其中,SH(k)動作和AP動作完成分詞和詞性標(biāo)注任務(wù),通過SH(k)確定每個詞的開始邊界及詞性;RR動作和RL動作完成依存分析任務(wù),構(gòu)建一棵完整的依存樹。
采用上述轉(zhuǎn)移動作,我們提出的Stack-Tree LSTM依存子樹編碼方法的結(jié)構(gòu)如圖1所示。圖1(a)顯示了某一時刻分析棧S和待處理隊列Q的狀態(tài),分析棧S中包含三個元素,其中詞w1和w4以LSTM神經(jīng)單元編碼、子樹w2→w3以Tree LSTM神經(jīng)單元編碼;從棧底到棧頂,神經(jīng)單元之間進(jìn)行信息的傳輸,棧頂元素神經(jīng)單元的輸出向量融合了棧中所有元素的信息,包括詞、未成詞的字串、及依存子樹的信息,本文稱棧頂輸出向量為STL向量。隨后依次執(zhí)行SH、AP和RR之后的模型狀態(tài)如圖1(b)、圖1(c)、圖1(d)所示。
圖1(b)顯示執(zhí)行SH(k)時的狀態(tài),待分析隊列首元素ci被移入分析棧頂。因為ci是詞的開始字符,所以采用LSTM神經(jīng)單元對字符ci的字向量和當(dāng)前的STL向量進(jìn)行編碼得到新的STL向量。
圖1(c)顯示執(zhí)行AP時的狀態(tài),移入棧中的ci+1與棧頂ci構(gòu)成字串cici+1。因為還未成詞,所以需要將棧頂元素的所有字符作為字串處理。LSTM對未成詞cici+1的字串向量和當(dāng)前的STL向量進(jìn)行編碼得到新的STL向量。
圖1(d)顯示執(zhí)行歸約動作時的狀態(tài),下面詳細(xì)介紹用Tree LSTM神經(jīng)單元對形成的依存子樹進(jìn)行編碼以及用Stack-Tree LSTM對棧中所有元素信息編碼的原理。執(zhí)行RR時,首先棧頂?shù)淖执甤ici+1出棧,成詞為w5;隨后w4出棧,構(gòu)建依存關(guān)系w4→w5,得到新的依存子樹。Tree LSTM神經(jīng)單元對依存子樹的頭節(jié)點w4和依存節(jié)點w5的向量以及當(dāng)前的STL向量進(jìn)行編碼,得到新的STL向量,其中包含了新形成的依存子樹的信息。最后,以w4為根節(jié)點的依存子樹作為新的元素被移入分析棧頂。本文采用的Tree LSTM神經(jīng)單元在時刻t的計算方法如式(1)~式(3)所示。
圖1 Stack-Tree LSTM依存樹編碼方法示意圖
其中,it是神經(jīng)單元的輸入門,fhead,fdep分別是頭結(jié)點和依存結(jié)點對應(yīng)的忘記門,ot是輸出門,ct是狀態(tài)值,ht是隱藏層輸出;W是神經(jīng)單元中的參數(shù)矩陣,b是偏置項;σ是sigmoid激活函數(shù),*是點積運算。
在一體化依存分析過程中,句子的依存關(guān)系隨著轉(zhuǎn)移動作的預(yù)測、操作,逐步形成;分析棧中保存了多棵依存子樹。本文提出的Stack-Tree LSTM依存子樹編碼方法在執(zhí)行歸約動作時,對形成的新依存子樹進(jìn)行編碼,并將分析棧中其余的依存子樹信息輸入到當(dāng)前神經(jīng)單元中,得到了當(dāng)前時刻下包含所有依存子樹信息的STL向量。已有的Tree LSTM依存樹編碼方法是在單棵依存子樹上進(jìn)行編碼,無法將多棵依存樹信息融合在一起,因此無法充分利用分析棧中的中間結(jié)果信息參與后續(xù)的轉(zhuǎn)移動作決策,而本文的方法針對這一個問題給出了有效的解決方案。
利用本文提出的Stack-Tree LSTM依存子樹編碼方法構(gòu)建漢語一體化分析神經(jīng)網(wǎng)絡(luò)模型,如圖2所示,主要由Stack-Tree LSTM依存子樹編碼層、N-gram特征層和多層感知機(jī)決策層三部分組成。本節(jié)主要介紹后面兩個組成部分。
圖2 一體化依存分析神經(jīng)網(wǎng)絡(luò)模型
(4)
本文采用字向量加和求平均的方式獲得字串向量,保留了字串中所有字符的信息,更具體、準(zhǔn)確地表示字串的語義。這種計算方法改進(jìn)了已有研究中集外詞的處理方式,在一定程度上避免了僅僅采用一個特殊標(biāo)記,如oov或unk,代替集外詞所造成的信息損失。
在依存子樹編碼層,我們首先按照上述字串向量的計算方法得到依存子樹中節(jié)點的詞向量wg,然后將該詞的詞性標(biāo)注信息wpos加入其向量中,具體計算方式如式(5)所示。
w=max {0,Wword[wg;wpos]+bword}
(5)
其中,Wword是參數(shù)矩陣,bword是偏置項。
對雙向LSTMs編碼后的四種N-gram特征,我們按照式(6)融合四種特征得到每個字符的N-gram特征向量vi,然后用式(7)獲取一體化分析模型在當(dāng)前分析狀態(tài)下的N-gram特征層狀態(tài)表示,由分析棧頂三個元素和待處理隊列首元素所對應(yīng)的N-gram特征向量組成。
其中,i是字符在句中的位置下標(biāo)(1≤i≤n);s2、s1、s0分別表示分析棧頂三個元素所對應(yīng)的下標(biāo)(詞、字串開始字符的下標(biāo)或者子樹根節(jié)點開始字符的下標(biāo)),b0表示待處理隊列中首字符的下標(biāo);°是拼接運算符。在獲取N-gram特征層狀態(tài)信息時,為了簡化模型的運算量,本文在式(7)的計算中只采用了4個特征[4,9]。
本節(jié)利用前面介紹的依存子樹編碼層和N-gram特征層的狀態(tài)表示,搭建基于多層感知機(jī)的轉(zhuǎn)移動作決策模型,如圖2所示。前兩個relu隱藏層對N-gram特征層的狀態(tài)表示進(jìn)行信息的加工再抽取,獲得更深層次的N-gram特征表示和更有效的全局信息。最后一個relu隱藏層融合前兩個relu隱藏層的輸出向量h與依存子樹編碼層的狀態(tài)表示STL向量,得到當(dāng)前狀態(tài)下模型整體信息表示h1,其計算方法如式(8)所示。
h1=max {0,W1(h°STL)+b1}
(8)
其中,Wi是最后一個relu隱藏層的參數(shù)矩陣,bi是偏置項。
最后設(shè)置softmax層將多層感知機(jī)輸出向量h1映射到轉(zhuǎn)移動作概率空間,得到轉(zhuǎn)移動作的預(yù)測概率分布,如式(9)所示,其中Wp是權(quán)重矩陣。
pi=softmax(Wph1)
(9)
本文采用貪心算法確定轉(zhuǎn)移動作,從當(dāng)前狀態(tài)下有效的轉(zhuǎn)移動作中選出概率最大的動作,然后對待處理隊列和分析棧執(zhí)行相應(yīng)的操作,更新模型狀態(tài)。
從訓(xùn)練數(shù)據(jù)的標(biāo)注樹中抽取其對應(yīng)的轉(zhuǎn)移動作序列,用于一體化依存分析神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練。本文采用交叉熵?fù)p失函數(shù)作為訓(xùn)練目標(biāo),并使用l2正則化緩解過擬合現(xiàn)象,目標(biāo)函數(shù)如式(10)所示。
(10)
其中,A是訓(xùn)練數(shù)據(jù)的轉(zhuǎn)移動作序列;θ是模型所有參數(shù)的集合;‖θ‖2是l2范數(shù)的正則化項,用來減少參數(shù)空間;λ用來控制正則化的強(qiáng)度。本文還使用dropout[10]隨機(jī)刪除網(wǎng)絡(luò)中的某些神經(jīng)單元來緩解過擬合現(xiàn)象,并采用Adam[11]算法和誤差反向傳播方式學(xué)習(xí)模型參數(shù)。Stack-Tree LSTM、N-gram特征層的雙向LSTM和多層感知機(jī)在目標(biāo)函數(shù)約束下同步更新。
我們采用多種依存樹編碼方式設(shè)計對比實驗,驗證本文所提方法的有效性,并與已有的一體化依存分析模型進(jìn)行比較。
本文使用實驗數(shù)據(jù)為賓州漢語樹庫CTB5,并按照已有工作[1-4]的數(shù)據(jù)劃分方案,其中訓(xùn)練集為1~270篇、400~931篇和1 001~1 151篇;開發(fā)集為301~325篇;測試集為271~300篇。實驗數(shù)據(jù)集詳細(xì)信息如表1所示。
我們使用斯坦福分詞工具[12]對gigaword生語料進(jìn)行分詞,然后利用Word2 vec[13]預(yù)訓(xùn)練字向量和詞向量。分詞、詞性標(biāo)注和依存句法分析的評測指標(biāo)均采用準(zhǔn)確率、召回率、綜合性能指標(biāo)F1值。其中詞性標(biāo)注和依存分析的評測均是在分詞正確的基礎(chǔ)上進(jìn)行的。若分詞錯誤,則相應(yīng)的詞性標(biāo)注和依存分析結(jié)果也被視為錯誤。在依存句法分析的評測時,具有依存關(guān)系的兩個詞語均被正確分詞且依存弧的方向正確才被視為正確的依存關(guān)系;遵循慣例,與標(biāo)點符號有關(guān)的依存關(guān)系不予考慮。
表1 數(shù)據(jù)集統(tǒng)計信息
我們使用訓(xùn)練集、開發(fā)集及預(yù)訓(xùn)練得到的字向量和詞向量進(jìn)行初步實驗,獲取超參數(shù)。對于預(yù)訓(xùn)練中未獲得的字向量和詞向量進(jìn)行隨機(jī)初始化。模型訓(xùn)練終止條件為三項任務(wù)在開發(fā)集上的F值趨于穩(wěn)定。最終獲得的各項超參數(shù)如下:字向量和詞向量維度均設(shè)置為200,雙向LSTM和Stack-Tree LSTM隱藏單元個數(shù)均為200,詞性向量維度為32。多層感知機(jī)隱藏層節(jié)點數(shù)為400,模型初始學(xué)習(xí)率為0.001,dropout值為0.2。
對于本文提出的依存子樹編碼方法和詞性使用方法,我們在下面分別分析它們在模型性能改進(jìn)上的貢獻(xiàn)。
4.3.1 依存子樹編碼方式
我們使用上面參數(shù)訓(xùn)練本文提出的一體化依存分析神經(jīng)網(wǎng)絡(luò)模型,由Stack-Tree LSTM依存子樹編碼層、N-gram特征層和多層感知機(jī)決策層組成,命名為Ours。同時,為了與其他編碼方式比較,我們對模型中的依存子樹編碼層進(jìn)行替換,分別用Stack LSTM[8]、遞歸卷積神經(jīng)網(wǎng)絡(luò)RCNN[14]和雙向LSTM[15]替換并訓(xùn)練得到三個模型,分別命名為Stack LSTM、RCNN和BiLSTM。四個模型在測試集上的評測結(jié)果如表2所示。
實驗結(jié)果顯示,在詞性標(biāo)注任務(wù)和依存分析任務(wù)上,本文所提模型(Ours)的性能優(yōu)于Stack LSTM、RCNN和BiLSTM三個模型,表明Stack-Tree LSTM依存子樹編碼方法在依存子樹信息獲取方面具有較強(qiáng)的能力。同時,在分詞任務(wù)上,本文所提模型的性能略低于RCNN模型,主要原因是RCNN模型在對依存子樹編碼時還使用了依存距離特征,而目前我們的模型還未利用該特征,今后我們將研究融合該特征的模型。
表2 不同依存子樹編碼方法對模型性能的影響(%)
4.3.2 詞性特征的影響
為了驗證詞性特征對每個任務(wù)的影響,我們在Ours模型中刪除詞性特征,重新訓(xùn)練模型,命名為-POS。具體的,在依存子樹編碼層,字串成詞時,其詞性向量不加入詞向量。在測試集上的評測結(jié)果如表3所示。表3結(jié)果顯示,-POS模型在分詞和依存分析任務(wù)上的F1值均低于使用詞性特征的模型,說明詞性特征的使用對模型性能的提升有幫助,特別在依存分析任務(wù)上F1值提升了0.2個百分點。
4.3.3 與已有工作對比
為了與已有的漢語一體化依存分析模型進(jìn)行對比,我們在表3中還列出了已有代表性工作的評測結(jié)果。其中Hatori12、Zhang14和Guo14是基于特征工程的一體化依存分析模型;Kurita17(4 feat)和Kurita17(8 feat)是基于神經(jīng)網(wǎng)絡(luò)的一體化依存分析模型;Kurita17是基于特征工程與神經(jīng)網(wǎng)絡(luò)融合的一體化依存分析模型。
首先進(jìn)行神經(jīng)網(wǎng)絡(luò)模型之間的比較。與 Kurita17(4 feat)相比,Kurita17(8 feat)使用了依存子樹部分孩子節(jié)點的特征信息,在詞性標(biāo)注和依存分析任務(wù)上取得了更好的F1值,但在分詞任務(wù)上的F1值低于前者。本文模型Ours在三項任務(wù)上的性能均優(yōu)于Kurita17(4 feat)和Kurita17(8 feat),與兩個模型的最好結(jié)果相比,在分詞、詞性標(biāo)注和依存分析三項任務(wù)上分別提升了0.06%、0.14%和0.28%。考慮到這兩個模型未使用詞性特征,我們將本文模型Ours去除詞性特征的模型-POS與之比較,-POS模型在三項任務(wù)上的性能仍優(yōu)于這兩個模型。這些對比結(jié)果顯示,本文模型在基于神經(jīng)網(wǎng)絡(luò)的模型中取得了最好的結(jié)果,表明本文提出的Stack-Tree LSTM依存子樹編碼方法可以有效獲取分析棧中各依存子樹的整體信息,而且這些信息對于一體化依存分析的動作決策發(fā)揮了有效的指導(dǎo)作用,幫助模型提高性能。
表3 漢語一體化依存分析模型的對比結(jié)果
注:*代表使用了大量特征模板。
然后與基于特征工程的模型比較。在基于特征工程的模型中,Hatori12在分詞和詞性標(biāo)注任務(wù)上的F1值最高,Zhang14在依存分析任務(wù)上F1值最高而且是目前所有模型中最高水平。與這些結(jié)果對比,本文模型在分詞任務(wù)上的F1值高于Hatori12,但是在詞性標(biāo)注上的F1值略低于Hatori12,在依存分析上的F1值略低于Zhang14,說明我們的神經(jīng)網(wǎng)絡(luò)模型在僅利用很少特征的情況下已經(jīng)非常接近基于特征工程的模型,表明本文所提出的依存子樹編碼方法的有效性。同時,表明基于特征工程的模型在特征選取與使用上達(dá)到了相當(dāng)成熟的水平。
最后與特征工程和神經(jīng)網(wǎng)絡(luò)融合的模型比較。Kurita17使用了特征工程中得到的特征模板共50個,并采用分布式方法表示。該模型在分詞和詞性標(biāo)注上的F1值達(dá)到了目前所有模型中最高水平,表明了兩種方法融合的有效性。與之相比,Kurita17(4 feat)和Kurita17(8 feat)分別只使用了4個和8個特征模板,但是由于使用雙向LSTM對句子進(jìn)行編碼,有效獲取句子的全局信息,所以即使使用少量特征模板也達(dá)到了接近特征工程的效果,表明神經(jīng)網(wǎng)絡(luò)模型具有自動學(xué)習(xí)所需特征的能力。本文模型同樣只使用了4個特征模板,在三項任務(wù)上的F1值超過了Kurita17(4 feat)和Kurita17(8 feat),更接近Kurita17模型,表明本文的Stack-Tree LSTM依存子樹編碼的有效性。
目前分詞、詞性標(biāo)注和依存分析任務(wù)上的最好結(jié)果分別為98.24%、94.49%和81.63%,其中分詞和詞性標(biāo)注由Kurita17特征工程和神經(jīng)網(wǎng)絡(luò)融合模型獲得,依存分析由Zhang14基于特征工程的模型獲得,這些模型均使用了大量特征模板。從以上評測結(jié)果的比較與分析中,我們發(fā)現(xiàn)基于神經(jīng)網(wǎng)絡(luò)的模型僅使用少量特征模板已經(jīng)取得了接近使用大量特征模板模型的性能,表明本文神經(jīng)網(wǎng)絡(luò)模型具有自動學(xué)習(xí)特征的能力,同時更全面地利用中間結(jié)果信息,學(xué)習(xí)到傳統(tǒng)特征工程未能覆蓋的有效特征;通過引入依存子樹編碼機(jī)制為一體化依存分析模型利用分析棧中從未被使用的中間結(jié)果提供了一條新的途徑。
本文提出了Stack-Tree LSTM依存子樹編碼方法,通過對分析棧中所有依存子樹的整體信息進(jìn)行編碼,為三個并行任務(wù)提供所有中間結(jié)果信息作為后續(xù)分析的特征。我們以此為基礎(chǔ)搭建一體化依存分析神經(jīng)網(wǎng)絡(luò)模型,并提出詞性特征的使用方法。CTB5上的對比評測實驗驗證了本文提出的依存子樹編碼方法和詞性特征使用方法的有效性。作為今后的工作,我們將考慮在一體化依存分析神經(jīng)網(wǎng)絡(luò)模型中融入經(jīng)典的特征模板知識,增加對比實驗。