自然语言处理之分词

作者: 星空慕辰 | 来源:发表于2016-05-06 22:22 被阅读573次

一个良好的分词系统应由词典和统计两套系统组成。后者为前者构造可持续更新的词典,识别新词,同时对消岐部分进行匹配。在分词过程中,好的词典很重要,其次算法要跟着需求走,不同需求选择不同算法,比如有些要求速度快,与兴趣相关,此时算法是次要的,而有些需求注重的是精度。

中文分词难点:未登录词和切分歧义。

中文分词算法大概分为两类:基于字符串匹配,集扫描字符串,若发现字符串的子串和词相同,就算匹配。例如mmseg正向最大匹配策略等。这类算法速度快,时间复杂度是0(n),实现简单,但是对歧义和未登录词处理效果不太明显。基于统计及机器学习的分词方式。这类分词基于人工标注的词性和统计特征,对中文进行建模。对标注好的预料进行训练。在分词阶段,通过模型计算各种分词出现的概率,概率最大的分词即为最终结果。常见模型如CRF、HMM。这类算法能很好的解决歧义和未登录问题,效果比前一类好,但是需要大量人工标注数据,分词速度较慢。基于神经网络的分词方式。这是未来的趋势,目前比较看好的模型是RNN循环神经网络,可以解决标注量的问题,但是可能存在分词速度慢的问题,后续将确认下。

现有方法:基于词典的匹配:前向最大匹配,后向最大匹配;基于字的标注:最大熵模型,条件随机场模型,感知器模型;其他方法:与词性标注集合,与句法分析结合。

常见分词工具(以下来自知乎,具体介绍将会在后学章节展开):

1、mmseg。是我自己最喜欢的分词方法,简单、高效、实用、效果还不错。http://technology.chtsai.org/mmseg/

我给它起了个名字,叫做“3段回溯式方法”,即每次从一个完整的句子里,按照从左向右的顺序,识别出多种不同的3个词的组合;然后根据下面的4条消歧规则,确定最佳的备选词组合;选择备选词组合中的第1个词,作为1次迭代的分词结果;剩余的2个词继续进行下一轮的分词运算。采用这种办法的好处是,为传统的前向最大匹配算法加入了上下文信息,解决了其每次选词只考虑词本身,而忽视上下文相关词的问题。4条消歧规则包括,

1)备选词组合的长度之和最大。

2)备选词组合的平均词长最大;

3)备选词组合的词长变化最小;

4)备选词组合中,单字词的出现频率统计值最高。

2、CRF方法是目前公认的效果最好的分词算法。但,具体效果是否好,也依赖于你使用的训练模型。http://nlp.stanford.edu/software/segmenter.shtml

3、我认识一个做搜索解决方案的朋友,他们公司提供了CRF和mmseg的开源实现http://www.coreseek.cn/opensource/

4、其实还可以使用专业公司的解决方案,比如海量和中科院分词的收费版本,也花不了多少钱。集中精力找到你自己产品独特的价值所在。

5、最大熵模型

豆丁网自然语言处理及分词概况http://www.docin.com/p-1277719918.html讲的很有意思

刚开始系统的研究自然语言处理的内容,一定存在一些不足,望大家可以随时纠错交流。

相关文章

  • 中文分词工具及中文语料资源

    关键词: 中文分词;分词;自然语言处理;中文语料 最近要做中文自然语言处理相关任务,牵涉到使用中文分词工具和相关算...

  • <<数学之美>> part1

    摘要 : [自然语言处理] [基于规则] [基于统计] [统计语言模型] [马尔科夫] [分词] 自然语言处理--...

  • 自然语言处理基本流程与应用

    自然语言处理是人工智能皇冠上的明珠 自然语言处理的基本流程: 分词(Segment) 命名实体识别(NER) 词性...

  • python 结巴分词学习

    结巴分词(自然语言处理之中文分词器) jieba分词算法使用了基于前缀词典实现高效的词图扫描,生成句子中汉字所有可...

  • 1. jieba中文处理

    jieba中文处理 1. 中文分词 jieba是一个在中文自然语言处理中用的最多的工具包之一,它以分词起家,目前已...

  • 自然语言处理之_SentencePiece分词

    1、 说明  SentencePiece是一个google开源的自然语言处理工具包。网上是这么描述它的:数据...

  • 中文分词方法

    中文分词是中文自然语言处理的基础,现代语言分析处理算法基本是以词为单位进行计算的。 1、词典匹配 词典匹配是分词最...

  • 客服问答短文本分类实践

    本文的应用场景例子是针对短文本的。 1. 分词 分词是自然语言处理中最基础的功能,分词功能的好坏对于之后的词法分析...

  • 基于Trie 树实现简单的中文分词

    中文分词简介 中文分词是中文自然语言处理的基础,中文分词的正确率如何直接影响后续的词性标注(也有些词性标注算法不需...

  • 自然语言处理绪论

    1.词法分析歧义 自然语言处理中的歧义 分词歧义,作为自然语言处理的第一个步骤。 词性标注 语法分析歧义 语义分析...

网友评论

    本文标题:自然语言处理之分词

    本文链接:https://www.haomeiwen.com/subject/hcsjrttx.html