中文分词算法 之 基于词典的逆向最小匹配算法

标签: 中文分词 算法 词典 | 发表时间:2014-04-03 12:34 | 作者:yangshangchuan
出处:http://www.iteye.com

在之前的博文中介绍了 基于词典的逆向最大匹配算法,比如我们切分句子: 中华人民共和国万岁万岁万万岁,使用逆向最大匹配算法的切分结果为:[中华人民共和国, 万岁, 万岁, 万万岁],可以看到,切分出来的词是很长的,粒度很粗,如果我们想要切分出很细粒度的词,该怎么办呢?

 

本文介绍 逆向最小匹配算法,该算法和 逆向最大匹配算法相得益彰,一个强调细粒度,一个强调粗粒度。

 

使用 逆向最小匹配算法,必须 注意的一点是: 词典中不能有单字词,词的长度至少为2!我们看 逆向最小匹配算法逆向最大匹配算法的代码比较:

 

  

 

切分效果如下:

 

切分句子: 中华人民共和国万岁万岁万万岁
逆向最大匹配: [中华人民共和国, 万岁, 万岁, 万万岁]
逆向最小匹配: [中华, 人民, 共和国, 万岁, 万岁, 万, 万岁]
切分句子: 杨尚川是APDPlat应用级产品开发平台的作者
逆向最大匹配: [杨尚川, 是, APDPlat, 应用, 级, 产品开发, 平台, 的, 作者]
逆向最小匹配: [杨尚川, 是, APDPlat, 应用, 级, 产品, 开发, 平台, 的, 作者]
切分句子: 美国加州大学的科学家发现
逆向最大匹配: [美国加州大学, 的, 科学家, 发现]
逆向最小匹配: [美国, 加州, 大学, 的, 科, 学家, 发现]

 

代码托管于GITHUB

 

参考资料:

1、 中文分词十年回顾

2、 中文信息处理中的分词问题

3、 汉语自动分词词典机制的实验研究

4、 由字构词_中文分词新方法

5、 汉语自动分词研究评述

 

NUTCH/HADOOP视频教程

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [中文分词 算法 词典] 推荐:

中文分词算法 之 基于词典的逆向最大匹配算法

- - ITeye博客
在之前的博文中介绍了 基于词典的正向最大匹配算法,用了不到50行代码就实现了,然后分析了词典查找算法的时空复杂性,最后使用前缀树来实现词典查找算法并做了3次优化. 下面我们看看基于词典的逆向最大匹配算法的实现,如下代码所示:. //取指定的最大长度的文本去词典里面匹配. //如果长度为一且在词典中未找到匹配,则按长度为一切分.

中文分词算法 之 基于词典的逆向最小匹配算法

- - 编程语言 - ITeye博客
在之前的博文中介绍了 基于词典的逆向最大匹配算法,比如我们切分句子: 中华人民共和国万岁万岁万万岁,使用逆向最大匹配算法的切分结果为:[中华人民共和国, 万岁, 万岁, 万万岁],可以看到,切分出来的词是很长的,粒度很粗,如果我们想要切分出很细粒度的词,该怎么办呢. 本文介绍 逆向最小匹配算法,该算法和 逆向最大匹配算法相得益彰,一个强调细粒度,一个强调粗粒度.

漫话中文分词算法

- dumin - Matrix67: My Blog
    记得第一次了解中文分词算法是在 Google 黑板报 上看到的,当初看到那个算法时我彻底被震撼住了,想不到一个看似不可能完成的任务竟然有如此神奇巧妙的算法. 最近在詹卫东老师的《中文信息处理导论》课上再次学到中文分词算法,才知道这并不是中文分词算法研究的全部,前前后后还有很多故事可讲. 在没有建立统计语言模型时,人们还在语言学的角度对自动分词进行研究,期间诞生了很多有意思的理论.

中文分词算法代码大全

- - 鲁塔弗的博客
做中文搜索,关键词提取,文档分类都离不开中文分词,能用的代码包有如下. 单字切分 sphinx只要把min_word_len设置为1,并配置charset_table,默认就是单字切分,lucene用StandardAnalyzer. CJKAnalyzer lucene自带,两两分词,就是把 ABCD 分成 AB,BC,CD 3段.

中文分词算法概述

- - zzm
所谓全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就 根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式. 在中文文档中根据是否采用分词技术,索引项可以是字、词或词组,由此可分为基于字的全 文索引和基于词的全文索引.

在Hadoop上运行基于RMM中文分词算法的MapReduce程序

- - Xiaoxia[PG]
我知道这个文章标题很“学术”化,很俗,让人看起来是一篇很牛B或者很装逼的论文. 其实不然,只是一份普通的实验报告,同时本文也不对RMM中文分词算法进行研究. 这个实验报告是我做高性能计算课程的实验里提交的. 所以,下面的内容是从我的实验报告里摘录出来的,当作是我学习hadoop分享出来的一些个人经验.

Jcseg java中文分词器

- - 企业架构 - ITeye博客
Jcseg[dʒɛ'​ke'sɛ]完整版本(源码, 词库, 帮助文档, 词库管理工具, jar文件)下载:  http://sourceforge.net/projects/jcseg . jcseg是使用Java开发的一个开源中文分词器,使用流行的mmseg算法实现,并且提供了最高版本的lucene, solr, elasticsearch(New)的分词接口..

细说中文分词

- - 标点符
完整的中文自然语言处理过程一般包括以下五种中文处理核心技术:分词、词性标注、命名实体识别、依存句法分析、语义分析. 其中,分词是中文自然语言处理的基础, 搜素引擎、文本挖掘、机器翻译、关键词提取、 自动摘要生成等等技术都会用到中文分词,包括最近在学习的 聊天机器人、 文本相似性等. 可以说分词是自然语言大厦的地基,下面就让我们从它开始谈起.

再说中文分词技术

- - 标点符
众所周知,英文是以词为单位的,词和词之间是靠空格隔开,而中文是以字为单位,句子中所有的字连起来才能描述一个意思. 例如,英文句子I am a student,用中文则为:“我是一个学生”. 计算机可以很简单通过空格知道student是一个单词,但是不能很容易明白“学”、“生”两个字合起来才表示一个词.

ElasticSearch中文分词ik安装

- - ITeye博客
下载编译好的安装包,解压缩就可以直接使用. 自己编译的版本在安装插件时可能会出现一些问题. 上面这一步很简单,没有出现任何问题就通过了,然而在安装ik时走了很多弯路,为防止今后出现类似情况将此次安装过程中出现的问题记录下来. 从elasticsearch-rtf中下载的elasticsearch-analysis-ik-1.2.6.jar直接拷贝到.