第10卷 第2期 2012年4月 信 息 与 电 子 工 程 INF0RMATION AND ELECTRONIC ENGINEERING VO1.10.NO.2 Apr.,2012 文章编号:1672.2892(2012)02—0184—04 基于条件随机场的中文分词算法改进 顾佼佼 ,杨志宏 ,姜文志h,胡文萱 (1.海军航空工程学院a.兵器科学与技术系;b_夕h训系,山东烟台264001 2.海军装备部驻武汉地区军事代表局,湖北武汉430064) 摘 要:在中文分词领域,基于字标注的方法得到广泛应用,通过字标注分词问题可转换为 序列标注问题,现在分词效果最好的是基于条件随机场(CRFs)的标注模型。作战命令的分词是进行 作战指令自动生成的基础,在将CRFs模型应用到作战命令分词时,时间和空间复杂度非常高。为 提高效率,对模型进行分析,根据特征选择算法选取特征子集,有效降低分词的时间与空间开销。 利用CRFs置信度对分词结果进行后处理,进一步提高分词精确度。实验结果表明,特征选择算法 及分词后处理方法可提高中文分词识别性能。 关键词:中文分词;条件随机场;特征选择;置信度 中图分类号:TN9l1.72;TP391.1 文献标识码:A Improvement on CRFs—based Chinese word segmentation algorithm GU Jiao—jiao ,YANG Zhi—hong ,JIANG Wen—zhi’ ,HU Wen-xuan (1a.Department of Ordnance Science and Technology;lb.Department of Foreign Training,Naval Aeronautical and Astronautical University Yantai Shandong 264001,China;2.Military Representatives Bureau of NED in Wuhan,Wuhan Hubei 430064,China) Abstraet:In Chinese word segmentation fields,the most widely used method iS character-based tagging,which reformulates segmentation task to a sequence tagging task.The Conditional Random Fields (CRFs)tagger is the best tagger which can achieve state-of-the—art performance.The segmentation of the command orders iS one of the basics of the auto—generation of command orders.Yet when using the mode1 for command orders segmentation,problems of bad time and space efficiency are encountered.The model is analyzed and feature subsets are selected by using the feature selection algorithm,which cut the overhead of time and space effectively and improve the efficiency of the mode1.Then a novel post—process using CRFs confidence is presented to further improve performance.By combining the feature selection method and the confidence-based post-process,great improvement is achieved and the experimental results are satisfactory. Key words:Chinese word segmentation;Conditional Random Fields;feature selection;confidence 如今随着信息化技术的迅猛发展,互联网上的信息量呈现指数爆炸的增长趋势,海量文本信息使得文本信息 的挖掘成为迫切需求。与西方语言不同,中文文本中并不存在词的分隔符,故中文分词【j 是中文信息处理的基 本步骤,是自然语言处理的经典问题。近些年来中文分词得到了长足的发展。主流方法有传统的基于规则的 J 方法和现在流行的基于统计的方法。传统方法如前向最大匹配和反向最大匹配等,基于统计的方法主要有支持向 量机(Support Vector Machine,SVM) J、隐马尔科夫模型(Hidden Markov Model,HMM)[61和条件随机场(Conditional Random Fields,CRFs) 等。基于统计的方法建立在统计推断基础上,可得到比传统方案更高的性能。随着分词 算法的不断改进,各分词方法的性能已经相差无几。目前达到最好分词效果的是基于CRFs的分词模型,但CRFs 的主要问题是其训练效率偏低,模型本身决定了其时间复杂度和空间复杂度非常高,尤其现在新的语料、词汇不 断涌现,预先训练好的模型不能适应开放性语料,模型需要及时更新,高速实时处理的分词系统成为迫切要求。 如何提高其训练效率,使之适应快速变化的环境是实现该模型的一大挑战。 收稿日期:2011-05.24;修回日期:2011-08.23 第2期 顾佼佼等:基于条件随机场的中文分词算法改进 185 1 基于条件随机场的算法改进 1.1条件随机场模型 CRFs是一种判别式模型,采用的是无向图分布,没有严格的性假设,可以任意选取特征,而且因为采 用全局归一化的方法,避免产生标记偏移问题,所以在中文分词上优于HMM和最大熵马尔科夫模型(Maximum Entropy Markov Model,MEMM)等模型,取得较好的效果 l,其中链式CRFs在中文分词任务中最常用。在给定 观察序列条件下,标记序列的条件概率为: r一 一 、 P( I )∞exPI (P, f。, )+∑1.tkg女(V,YI , )l (1) P∈E,k V∈ ,k / 式中:X表示需要标注的观察序列集;Y表示相应的标注序列集;在一阶链式结构的图G=(V,E)中,V代表图中 的节点集, 表示图中的边,最大团仅包含相邻的2个节点,即图G的边。对1个最大团中的无向边P=( .., ), (P,Y f , )为状态转移特征函数;gk(v, J ,X)为状态特征函数; 和 是由训练样本得到的特征权重;k为特征 函数编号;v为 中的节点。计算特征权重函数采用极大似然估计方法。CRFs指数模型为凸函数,可采用迭代 方法找到全局最优解。目前常用的是有限记忆BFGS(Limited memory Broyden,Fletcher,Goldfarb,Shanno,L.BFGS1 迭代方法。 1.2标注集 引入标注集可把分词问题转化成序列标注问题,对于1个句子中的每个字给出相应的标签,等效地就知道了 分词结果。LRMS体系是一种常见的标注方法,每个字依据其在词中出现的位置给予不同标签,句子中的每个位 置被标注为LRMS 4个不同的标签之一。L(1eft)代表词的左边界,R(right)代表词的右边界,M(middle)代表词的 中间部分,S(single)代表单字成词。经过标注,分词问题就转化为序列标注问题。例如: 位于/XX/海域/活动/的/潜艇/。 L R L R L R L R S L R S 标注LRMS 4个标签之一也等价于分类问题,可引入特征选择方法来评价特征,从而选取最有效特征来提升 效率。 1.3中文分词中模型使用的特征 中文分词常用特征分为unigram特征及bigram特征2类,用特征模 表1 PKU05上不同种类特征的分词结果 板表示,见表1第1列,其中UO0和UO1是特征序号,%x【0,0]指的是 6lel Results for different features on PKU05 feature template F1 value 当前字(unigram),%x【1,0]指下1个字(unigram),%x[_1,O]/%x[O,0]指的 UO0:%x[-2.01 0.662 是前1个字和当前字组成的二元组(bigram)。特征模板每1行代表一类 U01:%X卜1,01 0.743 U02:%x[O.01 0.842 特征。观察位置遍历整个句子时即可产生这句话的所有特征,这些特征 UO3:%x[1.01 0.760 UO4:%x[2.01 0 667 中所包含的信息量是不同的,像(“艇。”,s)对分词的贡献就较小,因为 uO5:%x卜2,O]/%x卜l,O】 0-8 l6 “UO6:%x[一1,o]/%x[O,0】 O.933 。”大多数情况下都是作为单字词s,无用特征会导致特征空间膨胀。 UO7:%x[O,Ol/%x[1,Ol 0.935 本文分别对各个模板所产生的特征进行分词试验,结果见表l。可 UO8:%x[1,0]/%x[2,0】 O 83 I U09:%x[一1,Ol/%x[1,0】0 851 以看出,unigram特征中最有效的是U02,也就是待分类的位置上的字 UIO:%x[O.1] 0 544 U02+UO6 0.95 1 本身,二元组特征中最有效的是U06和U07,是该位置向前1个字形成 al1 features 0.963 U01+U02+U03+U06+U07+U09 0.965 的二元组和向后1个字形成的二元组。UO2+U06组成的特征模板所能达 到的性能和全部特征模板所能达到的性能相差无几,但特征数量却差好几个数量级。可见不同的特征对分词的贡 献是不同的。只有少部分特征起到了重要作用,一部分特征甚至有不利影响,而且特征多会导致训练时间及空间 呈指数关系增长。 1.4特征选择算法 由此本文引入特征选择算法来优化特征区间,此处特征选择 ]是指选出分词能力强的特征组合。试验证明冗 余的特征会对效果产生干扰,此处根据标准选出缩减的特征子集使得分词任务达到和特征选择前近似甚至更好的 效果。通过选择算法删除无关或冗余的干扰特征,降低训练复杂性,简化的数据集会得到更精确的模型。常用的 特征选择算法包括分支定界法、聚类算法等。在文本分类领域【 1, 是比较常用的特征选择算法之一,在多 个数据集上有较好的分类效果。此处引用此算法,衡量特征单元t和类别c的程度,如果1个特征和某个类 1 86 信息与电子工程 第10卷 别非常相关,那么该特征在分词过程中的贡献比较大。 算法流程为:首先使用之前选定的特征模板产生特征全集,接着对全集中的每个特征,针对每个类别计算特 征选择算子,这样对于每个特征t可计算出其与任意一个类别的关系权重,根据Chim 算法要求,计算方式如下: ̄ fzff’c1: ! 二 . (2) ( +C)( +D)( + )(C’+D) 式中:A为该特征指向特定类别的次数; 为该特征指向其他类别的次数;C为特定类别中该特征没有出现的次 数;D为其他类别中不出现该特征的次数;N为以上4个变量的总和。针对每个特征单元可计算出其与所有类别 的关系度,选取其最大值代表该特征单元的重要程度: Chitn i(,)=m.axChi (,, ) (3) 式中:m为类别数。 在用PKU05数据集训练出1个模型后,本文计算了所有特征 的Chim ̄ ,并按照这个值进行排序,统计发现只有很少一部分特征 具有较大的 ,大部分的都很小。为了验证特征的有效性,选 表2 PKU05不同特征数量下的性能 Tlahle2 Performances with difierent features on PKU05 No.offeatures 500 000 1 000 000 2 000 000 3 000 000 4 000 000 5 504 732 F.1 0.933 O.95l 0.964 0 965 0.963 取具有较大ChimZ 的特征进行实验,全部特征都生成共有5 504 732 维,见表2。由此可知特征选择算法是有效的,只需使用3 000 000 维即可达到最高分词性能,只用了原有特征集合的一半,很大程 0 963 度上降低了算法的时间复杂度和空间复杂度。当维数再取高时性 能反而下降了,这说明增加的这些特征起到了干扰作用。使用特征选择算法可以在不损失分词性能的前提下提高 分词的效率。 1.5基于置信度的分词后处理 为进一步提高准确率¨ ,本文引入CRFs置信度(CRFs confidence)来对模型的分词结果进行后处理,对于 CRFs给出的每个切分,可以计算置信度I】 。置信度本质是1个边缘概率,指对1个特定位置的切分的可能性。 首先通过标准的前向一后向算法计算得到整个序列的似然度,再通过受限的前向一后向算法算出指定切分时整个 序列的似然度,二者比值即为该切分的置信度。 通过在PKU05上进行统计发现,CRFs置信度和切分错误率呈反相关,即低置信度区间中出现切分错误的可 能性更大。这样只需对置信度低于设定阈值的片段进行处理,即可对分词错误进行有效修正。 后处理流程为:首先用CRFs切分得到置信度,然后按照设定的阈值,筛选出低置信候选片段,根据片段长 度的不同将其分类处理: a)长度为2个字的低置信片段:这种类型的错误,一是可能将二字词错切为2个单字,二是可能将2个单 字合并成1个词。在训练集词表中搜索,若训练集中有该二字词,则将其合并为二字词;若没有该二字词则将其 标注为错划的二元组; b)长度为3个字的低置信片段:直接用词表重新切分处理,若结果与原切分结果不同,则进行修正,否则 保留原分词结果; c)长度为4个及4个字以上的低置信片段:只有在词表中有整个片段的成词时,才对之前的结果进行修复。 2 实验 实验采用Bakeoff2005的PKU 一 语料库,抽取70%作为训练集,30% 作为测试集,后处理词表为Bakeoff 2005中PKU训练集的词表。实验采 嚼一一 一二二二二二二二二二二二 Lk I 、 上 一 一西th。 f y 用CRF++工具包,标注集使用LMRS, !: 竺!of 竺竺H竺竺_j 特征选用Chinit 排序后的前一半,在 取低置信区间时设定CRFs置信度 阂值为70%,这个阈值是多次实验得 出的可获得最大分词性能的阈值。 {。kconⅢif mdence。H wi’1 th RC mF。s cpoerefofermaenncce c。H jI ouredfgeer ethnce el oawrea H 1【p………~1os【.pr0ce H r’……… d¨sc } Fig.1 Flow chart of the experiment 图1实验流程冈 1¨ {==- 1{1;1{U 第2期 顾佼佼等:基于条件随机场的中文分词算法改进 表3后处理算法与原算法性能比较 187 实验流程见图1。表3比较了经特征优化并后处理前后的 分词效率。实验证明后处理算法可以有效提高分词的正确 率,分词的召回率和准确率同时得到提升。 Tab1e3Performances without and with the post-process progre 3 结论 本文针对当前分词算法中存在的问题,分析各种特征,通过特征选择算法选取分词能力强的特征,构造有效 的特征子空间,有效降低分词的时间与空间开销。然后利用CRFs模型的置信度,对分词结果进行后处理,进一 步提高了分词精确度。实验证明该改进可以有效提高分词正确率,同时节省时间,分词性能得到综合提升。后期 将在作战命令分词中进行该算法的实际应用。 参考文献: 姜文志,蒋伟俊,范洪达.汉语分词技术在信息__[程中的应用Ⅲ.信息与电子T程,2007,5(5):385—387. 周文帅,冯速.汉语分词技术研究现状与应用展望川.山西师范大学学报(自然科学版),2006,20(1):25—29. 黄昌宁,赵海.中文分词十年回顾【JJ.中文信息学报,2007,21(3):8—19. 岳中原.词典与统计相结合的中文分词的研究[D].武汉:武汉理丁大学,2010:23—36. 崔和,龙玉峰.支持向量机学习算法的研究现状与展望『JJ.信息与电子_1二程,2008,6f5):328—332. 刘群.汉英机器翻译若干关键技术研究[M J.北京:清华大学出版社,2008. Charles Sutton,Andrew McCallum.An Introduction to Conditional Random Fields[R].Foundations and Trends in Machine Learning.20 1 O:1 8-26. 韩雪冬.基于CRFs的中文分词算法研究与实现[D1.北京:北京邮电大学,2010:14—24. 吕峰,高春林.支持向量机在皮肤症状图像识别中的应用研究『J].计算机仿真,2010,27(11):267—269,362. 巩知乐,张德贤,胡明明.一种改进的支持向量机的文本分类算法lJJ.计算机仿真,2009,26f7):164—167. 李丽双,黄德根,陈春荣,等.SVM与规则相结合的中文地名自动识别Ⅲ.中文信息学报,2006,20(5):51—57. John D Lafferty,Andrew McCallum,Fernando C N Pereira.Conditional random fields:probabilistic models for segmenting and labeling sequence data[C]//Proceedings of ICML一2001.San Francisco,CA,USA:Morgan Kaufmann Publishers Inc. 2001.282-289. 作者简介: 顾佼佼(1986一),男,山东省青岛市人,在 杨志宏(1980一),男,湖南省益阳市人,本科, 工程师,主要研究领域为导弹发射. 姜文志(1964一),男,山东省莱州市人,博士 读硕士研究生,主要研究领域为武器装备信息 化.email:vxgu86@hotmail.tom. 生导师,主要研究领域为计算机科学与技术及其 现代化. 胡文萱f1986一),女,山东省烟台市人,本科 主要研究领域为汉英翻译.