那 勇 李明全
(吉林广播电视大学 吉林省远程教育技术科技创新中心,吉林 长春 130022;吉林建筑科技学院,吉林 长春 130000)
中文自动分词(Chinese Word Segmentation)顾名思义就是将一段连续中文序列按照规则自动分成单独中文词序列的过程。不同于拉丁语系,英文中相邻单词之间均以空格作为分解符,基本上可以非常简单且准确的将英文分词提取处理,而中文只是在句、段之间利用标点符号或换行符进行划分,在词与词之间并没有特定形式的分隔符。因此,相对于英文,对中文序列进行自动分词处理要困难很多。
国外早在上世纪中后期就已经提出了比较成熟的自然语言处理(Neural Language Processing,NLP)和文本数据挖掘系统模型,而我国起步较晚,在上世纪末才开始构建中文的自然语言处理机制。中文分词是自然语言处理中不可或缺的重要部分,由于中文信息处理的使用越来越广泛,中文分词的研究工作逐渐受到国内外专家的关注,开始提出很多行之有效的中文分词系统模型,并在实践过程中不断得到改进和提高。
1984 年,北京航空航天大学梁南元教授设计实现了我国第一个自动中文分词系统,即CDWS 书面韩语自动分词系统。该系统自动分词的方法采用最大匹配法,同时采用词尾字构词纠错技术,切分精读约为0.16%,分词速度约为5-10字/秒。鉴于当时的技术水平,CDWS 分词系统基本可以满足词频统计和其他一些应用的实际需要。CDWS 分词系统是我国关于中文自动分词的首次尝试,启发了后来相继提出的其他中文分词技术,在我国中文分词技术发展的历史洪流中有着重要地位。
1991 年,北京航空航天大学又设计了CASS 韩语自动分词系统。该系统改进了CDWS 自动分词方法,采用一种变形的最大匹配法,即正向增字最大匹配法。CASS 系统通过可变长记录的键值文件建立结构方式为首字索引的分词词典,可以识别不同种类的多义切分字段,分词精确率得到提升,分词速度也达到了约200 字/秒。
山西大学研制了ABWS 自动分词系统,系统运用“两次扫描-回溯”分词方法,利用联想-回溯的特殊方式来解决分词过程中引起的组合切分歧义,准确率得到了大幅提高,达到了98.6%(不含非常用、未登录的专用名词),切分速度达到每分钟约48 个词。
清华大学研究了一种称为SEG 的分词系统,系统提供带回溯的正向、反向、双向最大匹配法和全切分-评价切分算法,用户可自主选择切分算法。对于中文分词中的某种特殊情况,即一些中文词序列永远不会被某种分词方法匹配出来的现象,系统在考虑到这种切分盲点的情况下,提出全切分概念,把中文词序列中的所有可能的分词结果找出来,再利用某种评价方法从所有可能的分词结果中找到最优词序列作为最终结果。该系统切分精度基本维持在99%左右,切分速度约30 字/秒。
国内外还有其他一些具有代表性的分词系统,如中科院计算所提出的ICTCIAS 分词系统,曾多次获得国内外中文分词大奖;哈尔滨工业大学提出的统计学分词系统;微软自然语言研究中心研发的通用多国语言处理平台NLPwin 中也加入了中文信息处理模块等。这些中文自动分词技术正稳步提升切分的准确率和切分速度,为人们获取精确的中文信息提供重要的技术保障。
由于中文信息处理技术在整个自然语言处理领域中起步较晚,远落后于英文等处理技术,目前成熟的英文信息处理技术不能完全套用在中文语言的信息处理上,主要原因是对中文信息处理之前必须要对整个中文词序列进行分词这个预处理过程。中文中能够独立使用的最小单位是词,而许多单个汉字即可组成一个词,但很多汉字组合在一起却是无法独立使用的。因此,在中文信息处理过程中,必须要对成段的中文词序列分割成语言语义学上的词。所以,中文分词在中文信息处理中处于关键地位,也是中文信息处理的基础,中文分词的准确度直接影响当下互联网及人工智能领域中主要应用的关键性能。对中文自动分词技术的研究具有非常重要的意义,可促进中文信息处理技术的快速发展。
作为人工智能的中级目标之一,自动翻译就是利用计算机将多种自然语言进行自由互译的过程,它也是计算语言学的重要分支,科学研究价值极高。在自动翻译过程中,涉及到中文信息,如果不重视中文以词为基本单位的特点,直接对整个词序列进行单个汉字的逐一翻译,显然结果会出现严重偏差。但是引进高精确度的中文分词技术后,结果会得到显著提升。
搜索引擎是利用计算机程序,对互联网中海量信息进行采集、组织处理后,提供给用户所需检索的信息的系统。搜索引擎包括全文搜索引擎、目录索引搜索引擎、元搜索引擎、集合式搜索引擎等,如常见的百度、谷歌等属于全文搜索引擎。中文自动分词的准确性对于各类搜索引擎提取用户所需信息是十分重要的,而搜索引擎要处理海量信息网页,对分词速度的要求一样提出了超高的标准。
语音合成技术也是人工智能领域重要的一部分,它是将计算机通过电子、机械等方法产生的自然语言语音或者外部输入的文字信息转换成人类可以听得懂且语句通顺的语音输出技术。简而言之,语音合成技术就是让计算机拥有人类的讲话能力。目前,语音合成技术领域已经取得了丰硕的成果,如懒人听书、智能播报、语音导航等。不难想象,语音合成技术的关键技术并不是让计算机能够发出声音,而是让计算机能够发出正常人类在词语之间的停顿,鉴于此,问题只有通过中文自动分词技术才能得以更好的解决。
LSTM(Long Short Term Memory)神经网络的主要特点是可以默认记住远距离的词序列信息而无需特别复杂的调试参数,它是专门为了解决长程依赖而设计的,同时最大程度避免了梯度膨胀或消失的问题。LSTM 内部结构复杂,其内部拥有少量记忆的LSTM 细胞单元替换了RNN 中普通的神经元,这些记忆单元成为LSTM 神经网络的关键部分,它通过一种称为门结构决定在某一时刻新增或删除信息到记忆单元中。这种门结构由一个逐点乘法和一个sigmoid 神经网络层组成,本质就是可选择让信息是否通过的方法。当sigmoid神经网络层输出为0 时,表示门已关闭,信息不可通过;当sigmoid 神经网络层输出为1 时,表示门已打开,信息可以通过。
条件随机场模型主要用于自然语言处理技术中的分词、文本标注和命名实体识别中,在机器学习领域,它属于序列标记的无向图判别模型。它运行的实质是将中文分词问题转化为中文分类问题,利用一定机制定义每个字在词中的信息,即每个字在词中的位置,来确定整个词序列的预测结果。
如上所述,LSTM 神经网络在嘈杂的文本中识别能力较强,但它不能将每个单词作为序列的一部分来进行预测,只是孤立的预测每个单词的标签。所以,在处理数据量大、逻辑关系强烈的标签时,效果不是很好。而CRF 模型则能够预测相邻的标签序列,因此我们在LSTM 神经网络层后加入一个CRF 推断层,构建一个LSTM 与CRF 相结合的模型。此模型中的LSMT 神经网络层可识别输入序列的特征模式,有效解决了关于输入序列的特征提取问题,同时CRF 推断层利用特定的状态转移矩阵参数,利用相邻标签的依赖关系预测当前的标签,实验表明,这种LSTM+CRF 相结合的模型效果更好。
本文实验是在一台配置Nvidia Tesla K80 的GPU 上进行的,采用2014 年《人民日报》语料作为实验数据集,把其中不足6 个字的句子去掉,在剩下的数据集中抽取5%作为测试语料,剩下95%作为训练语料。作为对比数据,本文的实验数据集还采用了自然语言处理与中文计算会议(NLPCC2015)提供的微博评测语料。
为了提高实验数据可信度,本文对有无CRF 层对模型分词性能的影响分别做了实验,并对分词结果进行对比。从下表的实验结果中可以看出,当LSTM 模型中加入CRF 层后,分词准确率有了明显提高。分析其原因是由于LSTM 神经网络输出的是每个字的可能标签分数,再利用特殊函数算出得分最高的标签作为输出标签。但在某些特殊情况,如在标签X 后有输出一个X 标签,对于这种导致分词标签分类错误的现象,在加入CRF 层后则大幅减少,根本原因在于CRF 层的特征函数对词序列进行观察学习,学习各种词之间的约束关系,正是有了这些约束关系,分词标签分类错误就很少出现,也就提高了模型的分词性能。
中文自动分词技术是自然语言处理的 基础模块,同时也是中文信息处理的关键环节,分词准确率的好坏直接影响中文信息处理结果。本文中利用的LSTM+CRF 相结合的模型处理中文自动分词的方法可行,效果也比较好。但仍有需要改进的地方,如可尝试在特征提取层面加入多任务模型,从而期望获得更高的分词性能。
CRF 层对模型分词结果的影响