一种基于字的多模型中文分词方法
2017-04-20张少阳王裴岩蔡东风
张少阳,王裴岩,蔡东风
(沈阳航空航天大学 人机智能研究中心,沈阳 110136)
一种基于字的多模型中文分词方法
张少阳,王裴岩,蔡东风
(沈阳航空航天大学 人机智能研究中心,沈阳 110136)
字标注的分词方法是当前中文分词领域中一种较为有效的分词方法。但由于中文汉字本身带有语义信息,不同的字在不同语境中其含义与作用不同,导致与上下文的相关性不同,每个字的构词规律存在差异。针对这一问题,提出了一种多模型的分词方法。该方法对每个字单独建立模型,能够有效区分每个特征对不同待切分字的影响,从而学习出每个字的特殊构词规律。由于向量化的特征表示能够有效地解决特征稀疏问题,采用特征向量化来表示输入特征。实验结果表明,该方法是一种有效的中文分词方法,很好地区分出了同类特征对于不同字的作用程度,充分体现了每个字的构词规律。
中文分词;字标注;多模型;特征向量化
中文以字为基本书写单位,而词是汉语中能够独立运用的最小语义单元[1]。不同于英语和其他西方语言,由于中文句子中词和词之间没有明显的分隔符,计算机无法判断词的确切边界,从而很难理解句子所描述的语义信息[2]。因此,中文分词成为中文自然语言处理最基本的一个步骤,是信息检索、主题词提取以及机器翻译等应用必须处理的关键环节[3],其分词性能的优劣对于中文信息处理尤为重要[2]。
目前,主流的中文分词方法是基于机器学习的方法[4-6]。该类方法将中文分词任务抽象为字的有指导的序列标记任务,将待分词的句子视为字序列,将每个字在构词时的位置作为标记,利用已标注的分词语料学习模型参数。隐马尔科夫模型和条件随机场(CRF,Conditional Random Field)等序列标注模型被广泛地用于分词任务[7-10]。近些年随着深度学习的兴起,循环神经网络(RNN,Recurrent Neural Networks)与长短期记忆网络(LSTM,Long-Short Term Memory)等适用于序列标注问题的深度学习方法也被用于分词任务[11-13]。无论是CRF还是深度学习方法,都是依据当前待标注字的上下文环境判断其标记。由于该类方法受制于上下文变化的影响,在上下文分布差异较大的情况下预测效果较差[14-15]。文献[16]通过实验证明5字宽的上下文窗口恰好大致表达了前后各一个词的上下文,即上下文窗口为5字宽具备了字和词的双重含义。
现有字标注分词方法基于训练语料学习单一模型参数,使训练过程中不同字产生相互影响。由于中文汉字本身带有语义信息,不同的字其含义与作用不同,与上下文的相关性不同,造成每个字的构词规律存在差异。现有模型所考虑的是上下文特征对于所有字的全局综合作用,也就是一般性的字构词规律,而忽略了同一特征对不同字的作用差异,即忽略了每个字构词规律的差异。
对于上述问题,本文提出了一种多模型的分词方法,对每个字单独建立模型,能够有效区分每个特征对不同待切分字的影响,从而学习出每个字的特殊构词规律。借鉴Jianqiang Ma等人[17]的思想,用特征embedding来表示输入特征,以解决特征稀疏的问题。
1 多模型的中文分词
1.1 模型结构
多模型中文分词方法同样将分词问题视为序列标注问题,将待分词的句子视为字序列,将每个字在构词时的位置作为标记。但与其他方法不同,针对每个字单独建立模型,每个模型间特征与模型参数相互独立。分词时,每个字采用自己的模型单独决策。为降低问题复杂性,每个模型采用相同的结构,如图1。其结构由3部分组成,分别为Look-up 表、Concatenation函数和Sigmoid函数。
图1 模型结构
Look-up表记录了特征的embedding,特征从训练语料中获得,借鉴Xinchi Chen等人[18]的思想,特征与Look-up表存在唯一的映射关系。特征t的embedding由d维较小的实数值向量表示,记为Embed(t)∈d。
Concatenation函数是将待切分字对应的特征embedding向量连结成一个单一的向量,作为模型的输入,为k×d的向量,即a∈k×d,其中k是选取的特征数,d为特征embedding的维度。
激活函数采用Sigmoid函数如式(1)所示,首先计算输入的a与特征权重w的点积,然后将计算结果作为Sigmoid函数的输入,根据输出结果判断待切分字的状态标记。
(1)
1.1.1 输入
输入是在当前字的上下文中从宽度为5的窗口里抽取出的特征,包括一元特征和二元特征,如表1。下标代表距离当前待切分字的相对位置,如C-1表示当前待考察字的前一个字。对于上例中的字“云”和“集”,对应的一元特征分别为“使”、“节”、“云”、“集”、“冰”和“节”、“云”、“集”、“冰”、“城”,对应的二元特征分别为“使节”、“节云”、“云集”、“集冰”与“节云”、“云集”、“集冰”、“冰城”。特征embedding的维度设定为50维,50维既可更好地表示特征又保证了模型的计算量,从而保证了模型的训练时间[2]。
表1 一元/二元特征表
1.1.2 输出
本文使用“S”和“C”2种状态标记来表示当前字的切分状态,其中“S”状态表示当前字处于分离状态,即作为一个新词的起始位置,而“C”状态表示当前字处于结合状态,即与前一个字结合组成一个词或词的一部分。以下面的句子为例,其正确标记序列如下。
理想的输出值应该是1和0,分别表示状态标记“S”和“C”。但实际输出值分布在区间[0,1]内,以值0.5为分界,若输出值大于0.5则标记为“S”,否则标记为“C”。
1.2 模型训练
首先在当前参数下判断被标注字的标记,再根据语料中其正确标记来更新模型参数。本文采用交叉熵作为损失函数如式(2)所示,其中yi表示正确状态标记,h(ai)为模型输出。
(2)
正则化是结构风险最小化策略的实现。为了防止过拟合导致模型的泛化能力差,在损失函数中增加L2正则化,如公式(3)所示。其中λ为正则项系数。
(3)
采用随机梯度下降法更新w和a,更新w时保证a不变,反之亦然。w梯度如式(4)所示,更新规则如式(5)所示,其中η为学习率。a梯度和更新规则与w的梯度公式和更新规则相似。
(4)
(5)
2 实验及结果分析
2.1 实验数据及预处理
本文使用的语料为SIGHAN Backoff2(2005)[19]提供的公开数据集,包含训练数据、测试数据、测试数据的正确答案、词典及评估脚本。本文选取其中2类被广泛使用的简体语料,分别为北京大学提供的PKU语料和微软亚洲研究院提供的MSR语料。表2为语料的详细信息。
表2 PKU和MSR语料的详细信息
由于训练语料包含全角字符,对于数字和英文字母相同的字符全角和半角所占字节不同,为此在训练之前将文本中的所有字符由全角转换成半角,统一训练数据。
2.2 评价方法
中文分词的评价标准通常采用5个评价指标,分别是准确率(P)、召回率(R)、F值(F)、未登录词召回率(ROOV)和词表词召回率(RIV)。准确率定义为算法得到的正确的词的个数与切分得到的所有词的个数之比。召回率定义为算法得到的正确的词的个数与测试答案中所有的词的个数之比。对分词进行评估时,需要综合考虑准确率和召回率,F值就是综合评价这2个指标的方法之一,定义如公式(6)。未登录词召回率能够反应模型的泛化能力。
(6)
2.3 实验结果
将所提出方法与4种方法进行了对比,分别为单模型方法、基于CRF的方法、Zheng[20]的方法和Pei[21]的方法。其中单模型方法与多模型方法的模型结构与特征相同,但所有字共用一个模型。基于CRF的方法采用了3种策略,分别为采用2标记和4标记的方法,并考虑标记二元转移特征(分别记为CRF2和CRF4),以及采用2标记的方法不考虑标记二元转移特征(记为CRF)。基于CRF的方法采用表1中的特征。
Zheng与Pei使用深度学习的分词方法。Zheng采用字的embedding作为神经网络的输入,通过判断字的位置标记实现中文分词,提出的神经网络由embedding层、一层非线性层和一层线性层组成。Pei在Zheng的基础上,引入标记的embedding和张量变换,提出了最大边界张量神经网络(MMTNN,Max-Margin Tensor Neural Network),能够对标记和上下文间复杂关系进行建模。实验结果列于表3和表4中。
表3 在PKU语料上的实验结果 %
表4 在MSR语料上的实验结果 %
通过比较单模型与多模型结果可见,多模型分词效果明显好于单模型的效果,在两个数据集上F值分别高于单模型方法1.1个百分点和4.3个百分点。多模型的RIV高于单模型,而ROOV低于单模型。在2个数据上,单模型方法都具有较高的ROOV。单模型方法学习出了字构词的一般性规律,由于训练时不同字之间的相互影响,产生了噪声,使得词典词识别效果较差。多模型方法充分区分了每个字,学习出了每个字的构词规律,其RIV明显高于单模型,但未登录词的识别差于单模型。可见,建模粒度是影响RIV与ROOV的关键因素。在最大粒度的单模型与最细粒度的多模型之间,合适的建模粒度的选择将在今后工作中被进一步研究。
表5展示了该方法与CRF方法的实验结果。对比发现,CRF采用4标记并加入标记转移特征取得了较好的结果。在PKU数据集上,多模型方法获得的召回率、未登录词召回率、词典词召回率和F值皆高于CRF4的方法,其中F值比CRF4方法高0.3个百分点。但在MSR数据集上,CRF4方法取得了更好的分词结果。因为针对MSR数据集,CRF4方法与多模型方法获得的词典词召回率相差不大,但未登录词召回率相差较大,CRF4方法取得了更好的未登录词召回率,使得CRF4方法的结果好于多模型方法。
表5 与CRF方法的对比 %
表6对比了前人[20-21]的实验结果。Zheng和Pei采用随机初始化字的embedding作为模型的输入,而(+Pre-trained)表示在一个大的无监督的数据集上训练字embedding。Zheng(+Pre-trained)和Pei(+Pre-trained)则是将(+Pre-trained)预先训练获得的字向量应用于Zheng和Pei中,作为输入的初始化。对比发现,增加预训练的方法比随机初始化字embedding的实验结果好。多模型与Zheng(+Pre-trained)相比,在PKU和MSR数据集上F值高0.6个百分点和1.6个百分点。与Pei(+Pre-trained)方法相比,在PKU数据集上F值小0.6个百分点,但在MSR数据集上高出0.6个百分点。多模型方法未采用预训练,可能由于PKU数据集相对小,训练时数据没有预训练方法充分,导致实验结果不如Pei(+Pre-trained)。但与Pei相比,PKU数据集上F值小0.1百分点,MSR数据集上F值高1.1百分点。可见,本文提出的方法具有较好的分词效果。
对分词结果进一步分析发现,多模型很好地区分出了同类特征对于不同字的作用,如:对于数字后的字的标注,“16周”、“第5届”、“6位”等情况下,后续字表量词的“周”、“届”、“位”等字标记为“S”,而“10时15分”、“2001年”等情况下后续表时间的字标记为“C”。多模型方法很好的区分了上述情况。以“次”为例,多模型方法比CRF4方法多14个(6.6%)正确标注实例。
表6 与前人方法的对比 %
3 结论及展望
本文提出了一种多模型结构的中文分词方法。与现有构造单一模型的方法不同,该方法针对每一个字单独建立模型,从而能够有效区分每个特征对不同待切分字的影响。在PKU与MSR语料上,效果好于使用相同特征的单一模型。与基于CRF和基于深度学习的方法相比,也具有较好的效果。
本文提出方法面向每个字建立一个模型,粒度较细,虽然有效地区分了每个特征对不同待切分字的影响,但势必带来了冗余。在今后工作中,将尝试稍大粒度的建模方法或使用后处理等方法,将可共享特征分布的字统一建模,从而减少时间和空间的消耗。此外,面向跨领域中文分词,只需对迁移能力较差的字重新训练模型即可,节省了具有相似构词规律的字的训练模型时间。同时,命名实体识别等任务也可以视为字序列标注任务,在此类任务上也可尝试本文的方法。
[1]国家技术监督局.(GB12200.190)6.汉语信息处理词汇01部分:基本术语[S].北京:中国标准出版社,1991.
[2]来斯惟,徐立恒,陈玉博,等.基于表示学习的中文分词算法探索[J].中文信息学报,2013,27(5):8-14.
[3]曹勇刚,曹羽中,金茂忠,等.面向信息检索的自适应中文分词系统[J].软件学报,2006,17(3):356-363.
[4]TSENG H,CHANG P,ANDREW G,et al.A conditional random field word segmenter for sighan bakeoff 2005[C]// The Second International Chinese Word Segmentation Bakeoff.Jeju Island,Korea,2005:168-171.
[5]ZHANG Y,CLARK S.Chinese segmentation with a word-based perceptron algorithm.[C]// ACL 2007,Proceedings of the Meeting of the Association for Computational Linguistics,June 23-30,2007,Prague,Czech Republic,2007.
[6]SUN X,ZHANG Y,MATSUZAKI T,et al.A discriminative latent variable Chinese segmenter with hybrid word/character information[C]// Human Language Technologies:the 2009 Conference of the North American Chapter of the Association for Computational Linguistics.Association for Computational Linguistics,Boulder,Colorado,2009:56-64.
[7]XUE N.Chinese word segmentation as character tagging[J].Computational Linguistics and Chinese Language Processing,2003,8(1):29-48.
[8]LAFFERTY J D,MCCALLUM A,PEREIRA F C N.Conditional random fields:probabilistic models for segmenting and labeling sequence data[C]// ICML′ 01 Proceedings of the Eighteenth International Conference on Machine Learning,San Francisco,CA,USA,2001:282-289.
[9]ZHANG R,KIKUI G,SUMITA E.Subword-based tagging by conditional random fields for Chinese word segmentation[C]// the Human Language Technology Conference of the NAACL,Companion Volume:Short Papers,Stroudsburg,PA,USA,2006:193-196.
[10]ZHAO H,LI M,LU B L,et al.Effective tag set selection in Chinese word segmentation via conditional random field modeling[C]// The 20th Pacific Asia Conference on Language,Information and Computation:Proceedings of the Conference,Wuhan,China,2006:87-94.
[11]HE J,LI G H.Research of Chinese word segmentation based on neural network and particle swarm optimization[C]// International Conference on Apperceiving Computing and Intelligence Analysis.IEEE,Chengdu,China,2010:56-59.
[12]CHEN X,QIU X,ZHU C,et al.Long Short-Term Memory Neural Networks for Chinese Word Segmentation[C]// Conference on Empirical Methods in Natural Language Processing,Lisbon,Portugal,2015:1197-1206.
[13]CAI D,ZHAO H.Neural word segmentation learning for Chinese[C]// Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics,Berlin,Germany,2016.
[14]韩冬煦,常宝宝.中文分词模型的领域适应性方法[J].计算机学报,2015,38(2):272-281.
[15]LIKUN Q,ZHANG Y.Word segmentation for Chinese novels[C]// Proceeding of 29th AAAI Conference on Artificial Intelligence,Austin,Texas,USA,2015:2440-2446.
[16]黄昌宁,赵海.中文分词十年回顾[J].中文信息学报,2007,21(3):8-19.
[17]MA J,HINRICHS E.Accurate linear-time Chinese word segmentation via embedding matching[C]// Meeting of the Association for Computational Linguistics and the International Joint Conference on Natural Language Processing,Beijing,China,2015.
[18]CHEN X,QIU X,ZHU C,et al.Gated recursive neural network for Chinese word segmentation[C]// Meeting of the Association for Computational Linguistics and the International Joint Conference on Natural Language Processing,Beijing,China,2015.
[19]THOMAS EMERSON.The second international Chinese word segmentation bakeoff[C]// Proceedings of the Fourth SIGHAN Workshop on Chinese Language Processing,Jeju Island,Korea,2005:133.
[20]ZHENG X,CHEN H,XU T.Deep learning for Chinese word segmentation and POS tagging[C]// Conference on Empirical Methods in Natural Language Processing,Seattle,USA,2013.
[21]PEI W,GE T,CHANG B.Max-margin tensor neural network for chinese word segmentation[C]// Meeting of the Association for Computational Linguistics.Baltimore,MD,USA,2014:293-303.
(责任编辑:刘划 英文审校:赵亮)
A character-based multi-model method for Chinese word segmentation
ZHANG Shao-yang,WANG Pei-yan,CAI Dong-feng
(Research Center for Human-computer Intelligence,Shenyang Aerospace University,Shenyang 110136,China)
Character-based tagging method is an effective method for Chinese word segmentation.However,each Chinese character presents its own semantic information while there are different meanings and functions in different contexts in different words.This leads to various correlations with context and results in the difference of word-formation rules for each word.To solve the problem,this paper proposed a multi-model method for Chinese word segmentation.The method which separately constructed model for each character,can effectively distinguish the effects of each feature for different characters,and learn the special word-formation rules of each word.To effectively solve the data sparse problem,we applied the feature embedding to represent the features.Experimental results show that this method is effective for Chinese word segmentation.It can distinguish the similar features′ effect on different characters,and fully reflect the word-formation rules of each word.
Chinese word segmentation;character-based tagging;multi-model;feature embedding
2016-11-30
国家科技支撑计划项目(项目编号:2015BAH20F01)
张少阳(1991-),男,辽宁鞍山人,硕士研究生,主要研究方向:人工智能及其应用,E-mail:zhangshyang@163.com;蔡东风(1958-),男,河北霸县人,教授,主要研究方向:人工智能,自然语言处理,E-mail:caidf@vip.163.com。
2095-1248(2017)01-0070-06
TP391.1
A
10.3969/j.issn.2095-1248.2017.01.011