最早的中文分词方法是由北京航空航天大学的梁南元教授提出的一种基于“查字典”分词方法。该方法的思想事把整个中文句子,读一遍,然后把字典里有的词都单独标示出来,当遇到复合词的时候,(例如石家庄经济学院),就找到最长的词匹配,遇到不认识的字符串就分割成单个文字。这种分词方法效率并不高,但它的提出为中文分词技术奠定了基础。64236
在接下来的近30年的研究中,许多研究者实现了中文分词基于词典和基于概率统计的很多算法。现在中文分词的算法主要包括对于中文分词的研究主要有基于词典的分词方法,基于统计的分词方法,基于理解的分词方法等。其中基于词典的分词方法是当今的主流,可以说现在出现的分词系统,很多都是在基于词典的基础上再结合另外的一种或两种方法而成的。基于词典的分词方法又称机械分词方法,主要包括最大正向匹配,最大逆向匹配,最少切分法等。不仅对于算法的研究,目前国内已有许多分词系统相继开发完成。
下面对几个比较代表性的在当时产生了较大影响的中文分词算法做一下简单的介绍:
1)CDWS分词系统是我国第一个实用的自动分词系统,由北京航空航天大学计算机系于1983年设计实现,它采用的自动分词方法为最大匹配法,辅助以词尾字构词纠错技术。其分词速度为5-10字/秒,切分精度约为1/625[3]。
2)ABWS是山西大学计算机系研制的自动分词系统,系统使用“两次扫描联想-回溯”方法,运用了较多的词法、句法等知识。其切分正确率为98.6%(不包括非常用、未登录的专用名词),运行速度为48词/分钟。论文网
3)CASS是北京航空航天大学于1988年实现的分词系统。它使用正向增字最大匹配,运用知识库来处理歧义字段。其机械分词速度为200字/秒以上,知识库分词速度150字/秒(没有完全实现)。
4)清华大学SEG分词系统,此系统提供了带回溯的正向、反向、双向最大匹配法和全切分-评价切分算法,由用户来选择合适的切分算法。其特点则是带修剪的全切分-评价算法。经过封闭试验,在多遍切分之后,全切分-评价算法的精度可以达到99%左右。
5)清华大学SEGTAG系统,此系统着眼于将各种各类的信息进行综合,以便最大限度地利用这些信息提高切分精度。系统使用有向图来集成各种各样的信息。通过实验,该系统的切分精度基本上可达到99%左右,能够处理未登录词比较密集的文本,切分速度约为30字/秒。
6)复旦分词系统,此系统由四个模块构成。一、预处理模块,利用特殊的标记将输入的文本分割成较短的汉字串,这些标记包括标点符号、数字、字母等非汉字符,还包括文本中常见的一些字体、字号等排版信息。二、歧义识别模块,使用正向最小匹配和逆向最大匹配对文本进行双向扫描,如果两种扫描结果相同,则认为切分正确,否则就判别其为歧义字段,需要进行歧义处理;三、歧义字段处理模块,此模块使用构词规则和词频统计信息来进行排歧。最后,此系统还包括一个未登录词识别模块,实验过程中,对中文姓氏的自动辨别达到了70%的准确率。系统对文本中的地名和领域专有词汇也进行了一定的识别。
7)Microsoft Research 汉语句法分析器中的自动分词,微软研究院的自然语言研究所在从90年代初开始开发了一个通用型的多国语言处理平台NLP Win,据报道,NLP Win的语法分析部分使用的是一种双向的Chart Parsing,使用了语法规则并以概率模型作导向,并且将语法和分析器独立开。实验结果表明,系统可以正确处理85%的歧义切分字段,在Pentium 200 PC上的速度约600-900字/秒。