中文分词技术就是将中文文字序列切分为单个词语。从20世纪80年代以来中文分词的研究就已经开始并且一直处于发展中。中文分词的主要困难表现在语言学和计算机科学两个方面[2]。语言学方面没有统一的分词标准因此就没有办法对众多的分词系统统一评价优劣;词语定义形式和词语的具体判定方法不定,不同的人对词语有不一样的划分标准,一些常用短语、俗语怎样来归类也是问题。这关系到是将它们作为正常的文本分割还是把它们当作词语来处理。如果将它们作为正常文本分割就很有可能会造成歧义;如果将它们当作词语处理,考虑到很多情况下对它们的变形使用,就是计算机能够记住所有的使用形式,也不可能将所有的使用形式罗列出来。计算机科学方面,自然语言模型难以构建,中文是一种复杂的语言,有时稍稍改动一个字就会使语义发生很大的变化,有时甚至能使语义截然相反。51314
自动分词算法基本可以分为基于词典和基于频度统计两类。其他具体应用算法是这两者不同程度上的结合。基于词典的分词方法又可分为正向最大匹配算法、逆向最大匹配算法和全切分法,所以基于词典的分词方法其实可以归为机械分词技术的范畴。也有文章将分词算法分为基于字符串匹配、基于理解、和基于统计三类[3]。基于字符串匹配的自动分词也可以归为基于词典的分词方法。它们都是将待分割的文本与一个充分大的词库作对比,能够在词库中找到的就当作词语处理。虽然基于字符串匹配的分词系统分词速度快,但其算法受词库局限,对生词无法辨识且无法消除歧义。基于理解的自动分词较为复杂,它是根据语义来进行分割的,可消除语句歧义,但算法复杂难以实现。基于统计的分词系统需要有一个相当大的日常用语的统计,根据统计结果来判断常用词,在分词过程中更倾向于将常用词分割出来,是一种不需词库基于训练的分词方法。这种分词系统可以辨识生词,有较强的灵活性,但效率与准确性不高。
分词的速度和算法的易实现性是对分词系统的基本要求。分词系统的评价有很多种,论文网李丹宁[4]等人提出的评价标准主要有指定词查找、最长词查找、全部词查找和词的字符串查找,他们同样重视词的增加、删除和编辑。但是这种标准只注重分词效果的评价而忽视了对分词速度的要求,因而是不全面的。大部分的分词系统的分词效果和分词速度、算法复杂度是有矛盾的。一般要实现好的分词效果算法就会更加复杂,同时分词的速度也会相应减慢。现在,对分词技术的研究更多人倾向于研究在不影响分词效果的前提下怎样提高分词速度并减少分词算法的复杂度。基于词典的自动分词系统主要包括词典和算法两部分,因此对分词系统的评价应对词典和算法都有要求。丰富标准的词典能够在一定程度上降低算法的复杂度,而算法的模糊原则也可减轻对词典的要求。一般来说,词典结构不能过于复杂,内存空间不能占用太多,数据要方便预取到缓存中,方便更新和维护。词典一般包括词典正文、词条属性、首字散列表和索引。算法要易于实现,在保证空间利用效率的同时分词速度不能太慢。
中文分词技术应用广泛,基本上所有使用中文的网页、浏览器都会用到。每个网站开发自己的语言处理系统既不实际也不经济。这就使得对一个统一准确的分词系统的需求更加迫切。目前许多科研院校像清华、北大、中科院等都有研究,但是商业公司方面几乎只有海量科技在真正专业的研究中文分词技术。海量科技的中文分词技术目前被业界评论认为是国内最好的,在检测中其分词准确度大于99%。中搜就是使用的海量科技的分词技术。而我们所熟知的百度用的是自己公司的分词技术。