中文自动分词学习小结

来源:互联网 发布:java音乐网站源码 编辑:程序博客网 时间:2024/06/05 21:01

自从本科毕业设计选择了中文分词这个题目我就与中分分词结下了不解之缘。到现在学习和研究中分分词有半年了,只能说知道点皮毛,在这里想对自己了解到的中文分词知识做个总结。一方面是对自己工作的阶段小结同时希望对刚开始学习和研究中文分词的朋友有一些帮助。

首先从我的本科毕业设计开始介绍,当时的题目是《中文自动分词系统研究与实现》。现有的分词方法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。我按照常规从最简单的基于字符串匹配的分词方法开始研究。这种方法又叫做机械分词方法,它是按照一定的策略将有待分析的汉字串与一个充分大的机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;按照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。

基于字符串匹配的分词方法可以说是一种简单而有效的分词方法,但近些年基于统计的方法越来越表现出优越的性能。从形式上看,词是稳定的字的组合,因此在上下文中,相邻的字同时出现的次数越多,就越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映成词的可信度。基于统计的分词方法所应用的主要统计量或统计模型有:互信息、N元文法模型、神经网络模型、隐Markov模型和最大熵模型等。这些统计模型主要是利用词与词的联合概率作为分词的信息。

提到中文分词,可能不得不提中科院的中文自动分词系统。不仅因为它是基于统计模型更重要的是它是一个开源程序代码的系统,无论对于初学者还是研究者都有重要的意义。本人就用了将近一个学期来学习和java实现中科院的中文分词系统,当然因为要上课和其他事情耽误所以实现用了很长时间。在我的学习和研究中,网上很多朋友的博客和google的论坛给了我很多帮助。

1.     http://blog.csdn.net/DanceFire/category/294373.aspx  DanceFire的专栏

2.     http://blog.csdn.net/eaglet/MyArticles.aspx  eaglet的专栏

3.     http://www.cnblogs.com/zhenyulu/category/85598.html   吕震宇的blog

4.     http://qxred.yculblog.com/post.1204714.html    风暴红QxRed

5.     http://groups.google.com/group/ictclas/topics?hl=zh-CN  ICTCLAS研究学习组

学习中科院的中文分词系统,有两篇论文也很重要。

  1. 刘群,张华平,俞鸿魁,程学旗.基于层叠隐马模型的汉语词法分析研究.pdf
  2. 基于N-最短路径方法的中文词语粗分模型.pdf

学习了一个学期的中文分词,觉得公开的高质量的语料库太少了,基本上都是人民日报语料库,好的训练集和测试集也很少,大多都要收费,可以说阻碍中文分词技术的发展(个人观点)。

过去的十年间,尤其是2003年国际中文分词评测活动Bakeoff开展以来,中文自动分词技术有了可喜的进步。其主要表现为:(1)通过“分词规范+词表+分词语料库”的方法,使中文词语在真实文本中得到了可计算的定义,这是实现计算机自动分词和可比评测的基础;(2)实践证明,基于手工规则的分词系统在评测中不敌基于统计学习的分词系统;(3)在Bakeoff数据上的评估结果表明,未登录词造成的分词精度失落至少比分词歧义大5倍以上;(4)实验证明,能够大幅度提高未登录词识别性能的字标注统计学习方法优于以往的基于词(或词典)的方法,并使自动分词系统的精度达到了新高。(详细介绍见中文分词十年回顾.pdf

 
原创粉丝点击