收稿日期:2014-05-09
基金項目:國家自然科學(xué)基金(60975077)。
作者簡介:趙芳芳(1990-),女,河南許昌人,碩士研究生,主要研究方向: 自然語言處理;
蔣志鵬(1985-),男,黑龍江七臺河人,博士研究生,主要研究方向: 自然語言處理;
關(guān)毅(1970-),男,黑龍江寧安人,博士,教授,博士生導(dǎo)師,主要研究方向: 用戶健康信息學(xué)、網(wǎng)絡(luò)挖掘、自然語言處理等。
摘要:中文分詞和詞性標(biāo)注任務(wù)作為中文自然語言處理的初始步驟,已經(jīng)得到廣泛的研究。由于中文句子缺乏詞邊界,所以中文詞性標(biāo)注往往采用管道模式完成:首先對句子進(jìn)行分詞,然后使用分詞階段的結(jié)果進(jìn)行詞性標(biāo)注。然而管道模式中,分詞階段的錯誤會傳遞到詞性標(biāo)注階段,從而降低詞性標(biāo)注效果。近些年來,中文詞性標(biāo)注方面的研究集中在聯(lián)合模型。聯(lián)合模型同時完成句子的分詞和詞性標(biāo)注任務(wù),不但可以改善錯誤傳遞的問題,并且可以通過使用詞性標(biāo)注信息提高分詞精度。聯(lián)合模型分為基于字模型、基于詞模型及混合模型。本文對聯(lián)合模型的分類、訓(xùn)練算法及訓(xùn)練過程中的問題進(jìn)行詳細(xì)的闡述和討論。
關(guān)鍵詞:中文分詞; 中文詞性標(biāo)注; 聯(lián)合模型
中圖分類號:TP391文獻(xiàn)標(biāo)識碼:A文章編號:2095-2163(2014)03-0077-04
The Review on the Joint Model of Chinese Word Segmentation
and Part-of-speech Tagging
ZHAO Fangfang, JIANG Zhipeng, GUAN Yi
(School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)
Abstract:Chinese word segmentation and part-of-speech (POS) tagging task as an initial step for Chinese natural language processing, has been widely studied. Due to the lack of Chinese sentences word boundary, the Chinese POS tagging task is often completed with the pipeline approach: firstly, perform Chinese word segmentation, and then use the results of the prior stage to tag the Chinese sentence. However, in the pipeline approach, word segmentation phase errors will be passed to the POS tagging stage, thereby reducing the accuracy of POS tagging. In recent years, the research on Chinese POS tagging focused on the joint model. The joint model perform both word segmentation and POS tagging in a combined single step simultaneously, through which the error propagation can be avoided and the accuracy of word segmentation can be improved by utilizing POS information. There are character-based methods, word-based methods, and hybrid methods. In this paper, the three kinds of joint model, the training algorithm and the problems through the processing will be introduced in detail.
Key words:Chinese Word Segmentation; Chinese Part-of-speech Tagging; Joint Model
0引言
由于中文詞與詞之間沒有自然界定,分詞即成為中文自然語言處理的必要步驟。已經(jīng)陸續(xù)研發(fā)了一些機器學(xué)習(xí)方法可用以解決分詞和詞性標(biāo)注任務(wù),譬如,隱馬爾可夫模型[1](Hidden Markov Mode,HMM)、最大熵模型[2](Maximum Entropy Model,ME)及條件隨機場[3](Conditional Random Fields,CRFs)。具體地,CRFs在這兩個任務(wù)中的表現(xiàn)堪稱最佳。此外,感知器算法[4](Perceptron Algorithm)也是一種廣泛使用的判別式方法,該方法在大量訓(xùn)練語料的情況下,與CRFs的表現(xiàn)相當(dāng),而且在訓(xùn)練時間上更要低于CRFs方法。
為了建立詞性標(biāo)注器,通常有兩種策略:
(1)管道模型。先分詞,再進(jìn)行詞性標(biāo)注;
(2)聯(lián)合模型。分詞和詞性標(biāo)注任務(wù)同時進(jìn)行。
近些年來,聯(lián)合模型方面的研究正大量涌現(xiàn)[5~14]。相應(yīng)的研究已經(jīng)表明,使用聯(lián)合模型可以有效地降低錯誤傳遞,并且有助于使用詞性標(biāo)注信息實現(xiàn)分詞,而為了提高分詞和詞性標(biāo)注任務(wù)的準(zhǔn)確率[5~6],其代價將會是更大的搜索空間,更長的訓(xùn)練及解碼時間。聯(lián)合模型分為三種,分別是:基于字的聯(lián)合模型、基于詞的聯(lián)合模型及混合模型。多類模型的研究實驗表明,基于字的模型表現(xiàn)要優(yōu)于基于詞的聯(lián)合模型[5]。目前,聯(lián)合模型在中文開發(fā)領(lǐng)域已經(jīng)取得了良好的精度,尤其是,PCTB語料中,分詞F值可達(dá)98.44%[14],詞性標(biāo)注F值可達(dá)94.17%[13]。
本文介紹了三種聯(lián)合模型:基于字模型、基于詞模型及混合模型,并且對聯(lián)合模型中常用的訓(xùn)練和解碼算法以及經(jīng)常遇到的問題進(jìn)行了總結(jié)。此后,介紹了不同于管道模型的評價方法,更進(jìn)一步地則比較了管道模型及聯(lián)合模型的表現(xiàn)。
1中文分詞和詞性標(biāo)注聯(lián)合模型
1.1聯(lián)合模型概述
根據(jù)噪聲信道模型的原理,可以將分詞和詞性標(biāo)注的聯(lián)合模型對應(yīng)的問題描述為:一個已經(jīng)被標(biāo)注了詞性的詞序列<W,T>=(<w1,t1>,<w2,t2>,…,<wn,tn>)(其中<wi,ti>(i=1,2,…,n),表示具有詞性ti的詞wi,下標(biāo)n代表詞串中詞的個數(shù)),即詞-詞性標(biāo)注對序列<W,T>,經(jīng)過有噪聲的信道,將詞邊界和詞性信息丟失,而在出口端輸出為字序列C=(c1,c2,…,c|C|)(其中,ci表示字串C中第i個字,|C|表示字串C的長度,并且∑ni=1wi=|C|),通過找到與C相關(guān)聯(lián)的<W,T>,經(jīng)比較得出具有最大概率的標(biāo)注結(jié)果R^,其計算過程如公式(1)所示,而分詞和詞性標(biāo)注聯(lián)合模型即如圖1所示。
R^=<W,T>=argmax<W,T>P(<W,T>|C)(1)圖1 分詞和詞性標(biāo)注聯(lián)合模型
Fig.1The Joint Model of word segmentation and part-of-speech tagging第3期趙芳芳,等:中文分詞和詞性標(biāo)注聯(lián)合模型綜述智能計算機與應(yīng)用第4卷 1.2聯(lián)合模型分類
聯(lián)合模型主要分為使用單一模型的聯(lián)合方法以及混合模型,其中的前者又可分為基于字的聯(lián)合模型和基于詞的聯(lián)合模型兩類。在聯(lián)合模型中通常會利用文獻(xiàn)[4]中提出的感知器模型,并將其作為訓(xùn)練及解碼算法,而在混合模型中則還會采用各種不同的方式,以此引入更多訓(xùn)練特征。
1.2.1使用單一模型的聯(lián)合方法
該方法包括兩種不同的處理方式,也就是基于字的方法與基于詞的方法,這兩者的區(qū)別主要在于標(biāo)注過程中對句子的基本處理單位不同,一者為字,另一者為詞。
具體來說,基于字的聯(lián)合模型指的是,對一個輸入字串,其基本處理單位為字,因此就需要對每個字都標(biāo)注位置標(biāo)簽及詞性標(biāo)簽,再通過解碼算法,運算得到最有可能的標(biāo)注序列。
基于詞的聯(lián)合模型指的是,對于一個輸入字串,其中的每個字,都要判斷該字所屬詞的邊界,確定得到一個完整的詞后,再標(biāo)注該詞的詞性標(biāo)簽。因此可知,這類模型中需要不停地判斷當(dāng)前字是否獨立成詞,或者在多字詞中的位置,這就決定了需要用到詞典信息。
在訓(xùn)練和解碼算法中,兩種模型實現(xiàn)過程的主要差異就在于訓(xùn)練模板以及進(jìn)行詞性標(biāo)注時是以字,還是以詞為單位[5]。兩者的訓(xùn)練和解碼算法一致。下面將集中介紹訓(xùn)練過程,而解碼和訓(xùn)練算法則是相同的。訓(xùn)練階段的流程圖如圖2所示。
訓(xùn)練階段中,訓(xùn)練模板的選擇對聯(lián)合模型的表現(xiàn)具有很大影響,本文列舉文獻(xiàn)[5]中的基于字模型和基于詞模型的部分關(guān)鍵特征模板,詳細(xì)介紹如表1和表2所示。
表1基于字模型的特征模板
Tab.1The feature templates ofthe
character-based model基于字模型的特征模板(a)Cn(n=-2,-1,0,1,2)(b)CnCn+1(n=-2,-1,0,1)(c)C-1C-2(d)W0C0(e)POS(C-1w0)(f)POS(C-2w0)POS(C-1w0)表2基于詞模型的特征模板
Tab.2The feature templates of
the word-based model基于詞模型的特征模板(a)Wn(n=-2,-1,0,1,2)(b)WnWn+1(n=-2,-1,0,1)(c)W-1W-2(d)POS(W1)(e)POS(W-2)POS(W-1)圖2訓(xùn)練階段流程圖
Fig.2The data flow of the training stage本文使用了感知器算法訓(xùn)練模型,作為線性模型,其可處理的是實數(shù)空間的變量。因此使用該模型進(jìn)行詞性標(biāo)注前,需要將特征離散為數(shù)值。與文獻(xiàn)[4]類似的是,本文中為d維向量,可形式化表示為:H×T→Rd(Rd表示d維實空間),向量的每一維分量i(其中,1≤i≤d)即為指示函數(shù),可將該維特征離散化為實數(shù)。
在此使用Φ來表示序列(C[1:n],t[1:n])對應(yīng)的d維向量,可將Φ稱為全局向量,為局部向量,兩者的關(guān)系如下:
Φd(C[1:n],t[1:n])=∑ni=1d(hi,ti)(2)
其中,Φd與d分別表示相應(yīng)函數(shù)的第d維分量。當(dāng)d為指示函數(shù)時,Φd即表示一個句子出現(xiàn)第d維特征的次數(shù)。
訓(xùn)練算法如圖3所示,算法輸入為n行訓(xùn)練語料及迭代次數(shù)N。輸出為參數(shù)向量α。
感知器算法輸入:訓(xùn)練樣本,總行數(shù)為n;迭代次數(shù)N
初始化:參數(shù)向量α=0
訓(xùn)練過程:
for t=1..N, i=1..n
●使用本文的Viterbi算法找到當(dāng)前參數(shù)下滿足下面條件的標(biāo)注序列
y[1:|Ci|]=argmaxy∈ΓCi∑dαdΦd
●如果y[1:|Ci|]≠ti[1:|Ci|]則更新參數(shù)向量的每一維
αd=αd+Φd_gold-Φd
輸出:參數(shù)向量α圖3聯(lián)合模型訓(xùn)練算法
Fig.3 The training algorithm for joint model
圖3中,ΓCi表示輸入字串Ci后所有可能的輸出結(jié)果,即y,y^,y*∈ΓCi。其中的y^與y*分別表示模型得到的最可能標(biāo)注結(jié)果與標(biāo)準(zhǔn)標(biāo)注結(jié)果。
1.2.2混合模型
混合模型中采用了多于一個的模型,也就是通過使用更多的特征來表示上下文信息。混合模型中常常將基于字的模型和基于詞的模型結(jié)合起來加以使用,并且還有可能會結(jié)合n-gram語言模型及最大熵等模型?;旌夏P偷囊粋€難點是如何將多個模型有效地結(jié)合在一起。
文獻(xiàn)[8]提出一種基于詞網(wǎng)格的重排方法,將基于字的聯(lián)合模型與基于詞的聯(lián)合模型串聯(lián)起來,具體方法為:首先在訓(xùn)練語料上訓(xùn)練基于字的聯(lián)合模型,接著,使用詞網(wǎng)格方法標(biāo)注訓(xùn)練語料,最后,訓(xùn)練基于詞的模型,但該模型僅考慮詞網(wǎng)格中的詞;文獻(xiàn)[12]又提出堆疊式學(xué)習(xí)方法(Stacked Learning Method),是將基于詞的聯(lián)合模型與基于詞的聯(lián)合模型并聯(lián)起來進(jìn)行處理。處理方法是,在同一個訓(xùn)練集上,使用相同的交叉驗證方法訓(xùn)練基于字的模型與基于詞的模型,同時對得到的結(jié)果賦予不同的權(quán)重。文獻(xiàn)[14]則結(jié)合使用了詞網(wǎng)格方法及堆疊式學(xué)習(xí)方法。
然而,使用的特征越多,訓(xùn)練和解碼所需要的時間越長。由于聯(lián)合模型是生成模型,因此在訓(xùn)練過程中將產(chǎn)生大量的無意義的詞,這就給模型的訓(xùn)練和解碼帶來了困難。針對這一問題,文獻(xiàn)[14]中提出了一種減少無意義詞的方法,實驗結(jié)果表明,減少的無意義詞已經(jīng)可以達(dá)到62.9%。文中更進(jìn)一步地提出了一種可靠的成詞標(biāo)準(zhǔn),將其表述為:(1) 添加通用詞典;(2) 使用維基百科中記錄的命名實體;(3) 添加大規(guī)模未標(biāo)注的源語料。
2實驗與分析
2.1評價方法
聯(lián)合模型與管道模型中的評價方法是各不相同的,下面介紹的是文獻(xiàn)[5-14]中的通用評價方法。該方法可做如下描述:
當(dāng)且僅當(dāng)該詞邊界同時出現(xiàn)在y^和y*中,表示分詞正確;當(dāng)且僅當(dāng)該詞邊界及該詞的詞性標(biāo)簽同時出現(xiàn)在y^和y*中,表示詞性標(biāo)注正確。
聯(lián)合模型中分詞和詞性標(biāo)注F1的定義如下:
F1=2∑C|y^∩y*|∑C|y^|+∑C|y*|(3)
其中,|y^∩y*|表示句子C中正確的詞邊界(評價分詞階段質(zhì)量)或正確的詞標(biāo)注的數(shù)量(評價詞性標(biāo)注階段質(zhì)量)。
2.2實驗結(jié)果及分析
本節(jié)列舉部分聯(lián)合模型及管道模型在相同PCTB語料上的實驗結(jié)果,具體如表3所示。其中,Baseline為管道模型,與文獻(xiàn)[9]中的Baseline相同。Baseline中使用的訓(xùn)練模板及訓(xùn)練算法與文獻(xiàn)[9]中的聯(lián)合模型(Zhang and Clark,2008)一致,通過對比這兩個模型即可得到聯(lián)合模型的精度高于管道模型的結(jié)論。
表3不同模型對比
Tab.3The comparison of different models詞性標(biāo)注器分詞(F1)詞性標(biāo)注(F1)(Zhang and Sun,2013)0.981 10.938 3(Zhang and Clark,2010)0.977 80.936 7(Jiang et al.,2008b)0.977 40.933 7(Zhang and Clark,2008)0.959 00.913 4Baseline0.952 00.903 33結(jié)束語
本文主要闡述了聯(lián)合模型的分類及訓(xùn)練過程,并且通過實驗結(jié)果展示了聯(lián)合模型與管道模型相比后而在分詞和詞性標(biāo)注精度上獲得的提升。然而,精度的提升卻需要空間和時間上的代價。聯(lián)合模型訓(xùn)練中所需的存儲空間及時間都比管道模型有較大增加,并且會隨著訓(xùn)練語料的增多更呈指數(shù)增長。解碼階段所需時間也比管道模型長。因此,當(dāng)需要完成分詞和詞性標(biāo)注任務(wù)時,就要考慮具體項目的空間和時間需求,并在此基礎(chǔ)上再選擇管道模型,或是選用聯(lián)合模型。
更多實驗結(jié)果顯示,基于字的模型比基于詞模型的表現(xiàn)要好,而混合模型又比基于字及基于詞的效果都更好。在多模型混合的方法上,文獻(xiàn)中也提供了不同的方法,目的是為了更好地結(jié)合多個特征。針對生成模型在學(xué)習(xí)過程中產(chǎn)生大量無意義詞的問題,文獻(xiàn)中也提供了適用的方法。
文中的聯(lián)合模型可以用來解決跨領(lǐng)域問題??珙I(lǐng)域問題中的模型精度是影響精度的一個重要因素,因此使用聯(lián)合模型即為提高跨領(lǐng)域標(biāo)注的精度提供了一個新的研究思路。
參考文獻(xiàn):
[1]RABINER L R. A tutorial on hidden markov models and selected applications in speech recognition[C]//Proceedings of IEEE, 1989: 257-286.
[2]RATNAPARKHI, ADWAIT. A maximum entropy part-of-speech tagger[C]//Proceedings of the Empirical Methods in Natural Language Processing Conference,1996.
[3]LAFFERTY J, MCCALLUM A, PEREIRA F. Conditional random fields: Probabilistic models for segmenting and labeling sequence data[C]//Proceedings of the 18th ICML, 2001: 282-289.
[4]COLLINS M. Discriminative training methods for hidden markov models: Theory and experiments with perceptron algorithms[C]// Proceedings of EMNLP,2002: 1-8.
[5]NG H T, LOW J K. Chinese part-of-speech tagging: one-at-a-time or all-at-once? Word-based or character-based[C]//Proceedings ofEMNLP, 2004.
[6]ZHANG Yue, CLARK S. Chinese segmentation with a Word-based perceptron algorithm [C]//Proceedings of ACL,2007, 8.
[7]JIANG Wenbin, HUANG Liang, LIU Qun,et al . A cascaded linear model for joint chinese word segmentation and part-of-speech tagging[C]//proceedings of the 46th Annual Meeting of the Association for Computational Linguistics,2008a.
[8]JIANG Wenbin, MI Haitao, LIU Qun. Word lattice reranking for chinese word segmentation and part-of-speech tagging[C]// proceedings of the 22nd International Conference on Computational Linguistics, 2008,1: 385-392.
[9]ZHANG Yue, CLARK S. Joint word segmentation and POS tagging using a single perceptron[C]//proceedings of the 45th Annual Meeting of the Association of Computational Linguistics, 2008: 840–847.
[10]KRUENGKRAI C, UCHIMOTO K, KAZAMA J, et al. An error-driven Word-character hybrid model for joint Chinese word segmentation and POS tagging[C]// Proceedings of ACL-IJCNLP, 2009:513-521.
[11]ZHANG Yue, CLARK S. A fast decoder for joint word segmentation and POS-Tagging using a single discriminative model[J].EMNLP-10, 2010.
[12]SUN Weiwei. A stacked sub-word model for joint Chinese word segmentation and part-of-speech tagging[C]//Processings of the 49th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies,2011: 1385-1394.
[13]WANG Yiou, KAZAMA J, TSURUOKA Y, et al. Improving Chinese word segmention and pos tagging with semi-supervised methods using large auto-analyzed data[C]//Proceedings of 5th International Joint Conference on Natural Language Processing,2011: 309-317.
[14]ZHANG Kaixu, SUN Maosong. Reduce meaningless Words for joint Chinese Word segmentation and part-of-speech tagging[J]. Computation and Language , arXiv:1305.5918, 2013.