分词的目的是将测试文本按一定的根据一定的规则进行分词处理[2];便于提取文本的特征值,为文本提供特征值对比的词组。英文词组是以单词为单位,以空格为分隔,在分词上具有巨大的便利性,相对而言中文因为自身常以词语、短语、俗语等表现形式,因此中文分词具有很大的不确定性。我国经过多年的发展已经取得巨大的成就,出现了一系列具有较高的分词准确率和快速的分词系统。并且在1992年我国就制订了《信息处理用现代汉语分词规范》[9],旨在为中文信息处理提供一个国家标准化的使用标准。本文即采用张华平的NLPIR/ICTCLAS2014分词系统来建设分词模块。
目前主要的分词方法:
(1) 基于字符串匹配的分词方法,即机械分词。是目前较为深入的研究课题,算法成熟使用广泛。其核心是通过邮件文本与词典词汇的匹配,实现分词,关键在于使用词典的完备程度,
(2) 基于理解的分词方法,即人工智能方法,(分词精度高,算法复杂)
(3) 基于统计的分词方法(优势在于识别未登录词和专有名词,训练文本量大)
1.1.1 中文分词算法
最大匹配算法[9](Maximum Marching Method,简称 MM法)是苏联的学家提出的最早的自动文本分词算法,是典型的机械分词算法。基本过程是:首先建立特征词库,词库中包含了一种语言所能使用的可能的词语,这些词语已经可以表达一种含义。对于测试的文本,按照正向(正向最大匹配算法[2])或者是逆向(逆向最大匹配算法)[10, 11],取出一段字符串,也可以是整个文本,与词库中的此进行比较,如果相等,这这段字符串可以代表一种含义的词语;如果没有匹配的则减少字符串长度,再次匹配,直到所有的字符串匹配完成[6, 10]。
图 3‑2 分词流程
最大匹配算法逻辑简洁,在机械匹配中易于实现,是使用较为广泛的机械分词算法。然而它的局限性也是十分明显的:过度的依靠词语库,词语库的完备程度直接影响文本的分词的准确度,并且,如果词语库的词语条十分庞大,那么匹配的速度也会因此而大大增加,它分词效率也会成为突出的问题。中文分词因为中文的特点[9],单纯的匹配词语库,并不能有效地表达文本的含义,因此匹配算法在中文分词中问题更加突出,为此我国的相关专家对中文的提出更有效的中文自动分词系统,对于中文文本提出处理歧义字段方案,提高分词的准确率和处理外联部的速度[7, 9]。此后,也出现的一部分其他的方法,比如最短匹配算法,或者采用语言歧义校正和文本预处理方法,利用显示标记或者是词语关联来提前划分文本的字符串,减少字符串的匹配次数,建立专业类别的词语库等。
除了机械分词算法以外,近年来基于理解的人工智能分词算法[2]和基于统计语言模型( Statistical Language Models SLM)的分词方法也在不断的发展中,但是由于算法复杂,统计困难等原因,无法实现大规模的应用。