楊振鵬
(南京財經大學紅山學院,江蘇 南京 210003)
近年來,依存句法分析發展迅速,已經成為自然語言處理方面的熱點問題。國際上著名的自然語言處理會議CoNLL曾多次在會議的shared task中涉及依存句法分析問題。目前,針對依存句法分析的研究越來越多,技術也日趨成熟,依存句法分析器也得到了快速發展?;跐h語的依存句法分析起步較晚,2012年Che等人對漢語句法分析器進行了分析和研究,而此次研究是在斯坦福依存規則下開展的。雖然漢語依存句法分析起步較晚,但發展迅速,已經有多種依存句法分析器產生,而且大部分都適用于漢語依存分析的研究。目前,常用的、技術較為成熟的依存句法分析器主要有:斯坦福依存句法分析器、復旦大學依存句法分析器、哈工大依存句法分析器和最大生成樹依存句法分析器。
本文首先介紹了語料的預處理方法及結果的評測標準;然后對四類依存句法分析器進行了詳細介紹,重點對各分析器所采用的模型和算法進行了分析和對比;最后,總結了現有依存句法分析存在的問題,并對未來依存句法分析的發展進行了展望。
就目前而言,還沒有比較成熟的依存樹庫的存在,盡管2002年Rambow等人曾做過早期的努力。由于句法分析發展較早,句法分析技術更為成熟,而且英語一直是研究的主流,因此英語的句法分析樹庫已經存在,并且日趨成熟。目前,英語中最大的樹庫是賓州樹庫,樹庫在句法分析中也引入了依存分析器,從而實現了依存句法分析。漢語的研究起步晚,漢語句法分析中,應用最廣的是中文賓州樹庫(Chinese Treebank,CTB)。隨著漢語應用的推廣擴大,針對漢語的依存句法研究也成為研究的熱點問題。Cheng等人曾在2003年就開展了漢語依存分析的研究,分別在CKIP樹庫和CTB樹庫上進行了依存分析的實驗。實驗時,將普通的句法分析結構轉換為依存分析結構,并根據樹形結構中的依存關系進行依存分析,實驗取得了良好的效果。
目前,大部分的基于漢語的依存分析都采用了CTB,但CTB中的數據資源采用的是傳統的句法分析結構也就是短語結構,不能夠直接得到相應的依存分析結構。因此,對漢語進行依存分析之前,應先進行結構轉換,即將短語結構轉換為依存結構。結構轉換的思想最早應用于英語的依存句法分析之中,Richard等人提出了利用中心詞映射規則進行結構轉換,這種轉換方式被后續研究者所廣泛采用。黨政法和周強在2005年進行了漢語的依存研究,采用了中心詞映射規則實現了短語樹到依存樹的自動轉換。李正華、車萬翔、劉挺等人在2008年也做過漢語依存分析的轉換研究,提高了短語結構樹庫向依存結構樹庫轉換的正確率。
實驗采用的語料為CTB5.0,基于中心詞映射規則對語料進行規范化處理,然后利用Penn2Malt工具進行依存結構的轉換。轉換結果如下圖所示:

圖1 CTB短語結構

圖2轉換后的依存結構
性能評測是判斷一個分析器好壞的重要標準,目前句法分析中最常用的評測方法是PARSEVAL。該評測體系有兩個基本的評測指標:句法分析的精確率和召回率。具體表示如下:

對基于語料的依存句法分析系統,不再使用召回率,而是根據標記情況的不同,提出了兩種正確率:無標記依存精確率(unlabeledattachmentscore,UAS)和帶標記依存精確率(labeledattachmentscore,LAS)。具體表示如下:

目前,技術較成熟、應用較為廣泛的依存句法分析器有四個:斯坦福依存句法分析器(StanfordParser)、復旦大學依存句法分析器(CTBParser)、哈工大依存句法分析器(GParser)和最大生成樹依存句法分析器(MSTParser)。
斯坦福大學擁有知名度較高的自然語言處理小組,其研究具有前瞻性,而且技術成熟,斯坦福依存句法分析器就由其設計完成。分析器是基于概率上下文無關文法(Probabilistic Context Free Grammar,PCFG)模型設計的,加入了詞匯化依賴。此分析器不僅包含了短語結構的分析結果,也包含了依存結構的分析結果。網址為:http://nlp.stanford.edu/software/lex-parser.shtml。
PCFG是在上下文無關語法(Context-free grammer,CFG)基礎上演化而來的,在CFG基礎上增加了概率因素,對分析的規則設置一個概率值。PCFG常被用于語法解析問題,而語法解析通常采用樹形結構,即將一個句子用語法解析樹的形式顯示,PCFG就是求取概率最大的語法樹(也稱最優樹Tbest)。因此,基于PCFG的生成式句法分析模型成為當前應用最廣泛的分析模型,最優樹Tbest計算如式(1)所示:

其中,代表聯合概率,其采用了規則概率乘積的求解方式,如式(2)所示:

PCFG雖然應用廣泛,但也容易造成數據稀疏的問題。為解決這一問題,分析器中還引入了馬爾科夫模型(MarkovModel,MM),利用MM模型對規則進行優化。對分析中的規則對應于MM過程,利用先生成根結點,然后生成左結點,最后生成右結點的順序進行優化。這種方式的處理很大程度地緩解了數據稀疏的問題。
斯坦福依存句法分析器為后續的科學研究提供了便利,Roger Levy和Christopher Manning曾在PCFG中引入最大似然估計因子,并在CTB上進行實驗,實驗取得了良好效果,F1值提高了1.9%,達到了82.6%。Pichuan Chang等人也利用斯坦福依存句法分析器進行了實驗,在處理漢語的語法關系特征時引入了重排序(reranking)的方法,使得F1值提高到82.9%。
復旦大學也是開展自然語言處理研究較早的高校,其建立了一支高水平的自然語言處理小組,依存句法分析器由其設計完成。分析器是基于條件隨機場模型(Conditional Random Field,CRF)設計的,不僅在句法分析中采用了CRF模型,而且在分詞以及詞性標注中均采用了CRF模型。用戶使用的靈活度更高,可以自行編輯相關詞條,擴展了分析器的適用性,可以對繁體中文作處理。網址為:http://code.google.com/p/ctbparser/。
CRF模型與PCFG模型相比優勢明顯,主要有兩方面的優勢:一是CRF模型對于特征的處理更加靈活,有效解決了特種處理中的標記偏置問題;二是CRF模型作為典型的判別式模型,將最大熵模型(MaxEnt)和隱馬爾可夫模型(Hidden Markov Model,HMM)進行了融合,取長補短,特征融合、處理能力強。CRF模型在進行句法分析時,也引入了概率模式,采用了歸一化的方式對概率進行了優化。模型最優樹采用了條件似然值進行估算,候選句法樹的概率估算形式如下:

采用指數形式來求解團勢函數:

訓練數據的log似然值為:

特征和模型之間期望的差值是似然值對的θi偏導數:

復旦大學依存句法分析器在樹形結構查詢中優勢明顯,采用了二維查找樹(2D Trie)來降低分析器的運行時間,與傳統查找方法相比,運行速度提高了4.3倍。
哈爾濱工業大學設立了語言技術平臺LTP(Language Technology Platform),主要開展自然語言處理領域的研究工作,哈工大依存句法分析器則是LTP平臺的一項研究成果。分析器采用了多種模型進行語料的分析和處理,采用CRF模型處理分詞模塊,采用支持向量機模型(Support Vector Machine,SVM)處理詞性標注模塊,采用最大熵模型來完成命名實體識別(Named Entity Recognition,NER)。哈工大設計的依存句法分析器(Graph-Based Parser,GParser)是基于圖模型實現的,采用最大熵模型實現了語義角色標注(Semantic Role Labeling,SRL)。網址為:http://ir.hit.edu.cn/ltp/。
McDonald將依存分析問題轉化為在有向圖中尋找最大生成樹(Maximum Spanning Tree,MST)的問題,這是首次提出基于圖的依存分析方法。其原理為:針對圖中可能輸出的每一種結果樹,都給定一個評分,然后利用動態規劃思想,找到評分最大的那棵樹。
基于圖的依存分析方法實際為求解弧的最大評分的過程:

其中,X代表句子輸入,Y代表候選依存樹,xi→xj代表詞i到詞j的依存弧,Φ(x)代表輸入X對應的可能依存樹的集合。
最大生成樹依存句法分析器也是基于圖模型實現的,分析器是由Ryan McDonald和Jason Baldrige設計完成,分析器采用最大邊緣的決策式訓練模型,是一種非投射性的判別式依存句法分析器。網址為:http://www.seas.upenn.edu/~strctlrn/MSTParser/MSTParser.html。
MSTParser是采用條件概率模型,為圖中每一條邊設置一個得分,這樣將尋找最優依存樹的過程轉化為求解得分最高生成樹的過程。得分的設置通過特征向量以及權重向量之間的點規則來實現,具體表示如下:

其中,x為輸入的句子,y為輸出中的依存樹,s表示得分,(i,j)是依存關系中的結點對。f(i,j)是值為1或者0的二元特征向量,表示結點xi和xj之間的是否存在依存關系,1代表存在依存關系,0代表不存在依存關系。例如:“開”和“門”,則 f(i,j)=1,否則,f(i,j)=0。
最大生成樹算法已經被廣泛使用,成為研究的熱點問題。其中,經典的Chu-Liu-Edmonds算法成為最常用、最高效的最大生成樹算法。周惠巍、黃德根等人將最大生成樹算法與決策式解析算法相結合,采用優勢互補的原理進行中文依存句法分析研究。研究利用Nivre模型進行依存分析,并根據依存度對最大生成樹有向邊進行重新打分,再重復最大生成樹的求解過程,結果作為最后的依存樹。實驗采用十折交叉測試的方法,對CTB中的4500句中文進行分析,F1精確率達到了86.49%。
為了便于比較分析,本文采用CTB5.0作為語料,對四種依存句法分析器進行性能測試,表1列出了各種句法分析方法在CTB5.0上的句法分析性能。

表1依存句法分析器性能比較
最大生成樹依存分析器效果最好,復旦大學依存句法分析器效果次之,斯坦福依存句法分析器和哈爾濱工業大學依存句法分析器效果較差。最大生成樹作為經典的算法,研究較多,技術較為成熟;利用弧的評分來計算最后輸出結果的評分,準確率較高,但當搜索空間較大時,耗時較多。CTBParser利用CRF模型進行依存句法分析,對特征的融合能力比較強,可以結合多種特征方面的優勢,識別效果較好。StanfordParser所用的PCFG方法,易于長距離句子的分析,對于短距離句子的分析,則效果較差。哈工大依存句法分析器雖然也是采用最大生成樹算法,但是其分詞和詞性標注正確率較低。
近年來,依存句法分析發展迅速,依存句法分析技術也日趨成熟,現有的依存句法分析的研究仍存在一些問題亟待解決。
(1)結構轉換:句法結構和依存結構之間需要進行轉換。目前而言,轉換的準確率還不是很高,主要是因為句子的結構通常較為復雜,如動詞和動名詞結構、同位結構等,算法處理準確率不高,進而影響轉換的準確率。
(2)訓練算法的改進:目前的訓練算法比較單一,應考慮多種算法和模型進行多重訓練,以提高算法的準確率。
(3)完善語料庫信息:語料庫是依存句法分析的基礎條件,目前語料庫的信息相對比較陳舊,應擴充語料庫,增加一些新型結構的語料,同時針對新型結構語料進行對應的分析處理。
由于英語的依存句法分析研究較早,相關技術已經比較成熟,因此漢語研究中,許多研究都借鑒了英語的研究方法甚至是研究成果,雖然提高了漢語演技的速度,但也造成了一些適應性的問題。由于漢語和英語存在語法、語義等方面的問題,因此原樣的生搬硬套不會取得實質性的進展。雖然中文依存句法分析近幾年發展迅速,國內外學者也進行了很多研究和探索,但發展之路任重而道遠。對于目前漢語依存的發展,筆者有幾點看法:
(1)研究要結合漢語自身的特點。就目前而言,大部分的研究都是基于英語的,英語的研究也相對成熟。雖然漢語研究中借鑒了很多英語的研究方法,比如統計模型和解碼算法等,但漢語本身結構、句式較為復雜,應結合漢語的自身特點開展研究,例如漢語中特殊語法結構(倒裝句、疊詞等)的處理。
(2)提高分析算法的正確率和效率。算法的正確率是計算機各類問題研究中普遍存在的問題,而依存句法分析算法的性能也直接影響最終的結果。目前常用的算法(CRF、PCFG、MST等)雖然相對比較成熟,但仍有可以改進和提升的空間,應加以研究以提升其算法的性能。
(3)利用語法、語義等方面知識構建聯合模型來提高依存分析的正確率。最近幾年許多國內外學者開始嘗試使用聯合模型來進行依存分析。李正華等人建立漢語詞性標注和依存分析的聯合模型;在2012年,Jun Hatori等人又提出將詞義也加入到依存的分析當中,構建的詞義、詞性標注和依存分析的聯合模型。聯合模型開辟了一種新的思路,可以成為我們研究的一種方向。