几种开源分词工具的比較

几种开源分词工具的比較

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

  搜集了一些资料,与同学一起进行了简单的測试,总结例如以下。

分词工  具

      特点

  

支持语言

    原理

词典及扩展性

StandardAnalyzer

中文、英文(unicode)

中文:单字符切分

英文:依据空格切分

ChineseAnalyzer

中文,不支持中文和英文及数字混合的文本分词 

按字分词,与StandardAnalyzer对中文的分词没有大的差别

CJKAnalyzer

中文,英文,不支持中文和英文及数字混合的文本分词 

採用的双字切分,也就是对一段文字按每两个字来进行切分 

IKAnalyzer

英文字母、数字、中文词汇等分词处理,兼容韩文、日文字符

正向迭代最细粒度切分算法(词典+文法分析)

收录27万中文词汇,

支持用户词典扩展定义、支持自己定义停止词

paoding

中文

支持不限制个数的用户自己定义词库

MMAnalyzer

支持英文、数字、中文(简体)混合分词

正向最大匹配算法

支持动态扩展

MMSeg4j 

中文,包含一些字符的处理 英文、俄文、希腊、数字(包含①㈠⒈)的分出一连串的。眼下版本号没有处理小数字问题 

用 Chih-Hao Tsai 的 MMSeg 算法。MMSeg 算法有两种分词方法:Simple和Complex,都是基于正向最大匹配。在complex基础上实现了最多分词(max-word)   

强制使用 UTF-8)

使用sougou词库,也可自己定义覆盖

imdict

中文、英文、数字

隐马尔科夫模型

仅coredict核心字典、bigramdict词典,不含人名、地名词典。不支持自己定义词典

分词工具

 

特点

速度

文档完整性

大小

Lucene版本号

备注

StandardAnalyzer

ChineseAnalyzer

Lucene contrib中附带的分析器

CJKAnalyzer

Lucene contrib中附带的二元分词

IKAnalyzer

3.2.8

83 万字/秒(1600KB/S)

具体

2.62MB

Lucene2.9、

Lucene3.0

支持细粒度和最大词长两种切分模式

paoding

100万字/秒

差点儿无

1.3MB

Lucene3.0

MMAnalyzer

第一次分词须要1-2秒(读取词典),之后速度基本与Lucene自带分词持平 

原始站点已经找不到下载,不提供维护和支持

内存消耗30M+

lucene 1.9到2.4之间 

MMSeg4j 

complex 1200kb/s左右, simple 1900kb/s左右 

MMSeg 算法是英文的,但原理比較简单。实现也比較清晰。

内存开销了50M左右 

mmseg4j 1.8.3 仅仅支持 lucene 2.9/3.0 接口 。mmseg4j 1.8.5 支持 lucene 3.1。

imdict

259517字/秒

较全

词典大小7.26MB

Lucene2.9直接收录

分词效果演示:

消歧义效果:

分词工具

    效果

张三买了张三角桌

南京市长江大桥

StandardAnalyzer

张|三|买|了|张|三|角|桌

南|京|市|长|江|大|桥

ChineseAnalyzer

张|三|买|了|张|三|角|桌

南|京|市|长|江|大|桥

CJKAnalyzer

张三|三买|买了|了张|张三|三角|角桌

南京|京市|市长|长江|江大|大桥

IK

Analyzer

最大词长

张三|买了|张三|三角|桌

南京市|市长|长江大桥

最细粒度

张三|三|买了|张三|三角|三|角|桌

南京市|南京|市长|长江大桥|长江|大桥

paoding

张三|买了|张三|三角|  桌  

南|南京|南京市|长|市长|长江|大 |大桥  

MMAnalyzer

张三|买了|张三角|桌

南京市|长江大桥

MMSeg4j 

SimpleSeg

张三|买了|张三|角|桌

南京市|长江大桥

ComplexSeg

张三|买了|张三|角|桌

南京市|长江大桥

imdict

张|三|买|了|张|三|三角|桌

南京市|长江|大桥

数字、英文混合分词效果:

分词工具

        效果

我的QQ号是******

StandardAnalyzer

我|的|qq|号|是|******

ChineseAnalyzer

我|的|qq|号|是

CJKAnalyzer

我的|qq|号|是|******

IKAnalyzer

IK

我|的|qq|号|是|******

MIK

我|的|qq|号|是|******

MMAnalyzer

我的|qq|号|是|******

MMSeg4j 

SimpleSeg

我的|qq|号|是|******

ComplexSeg

我的|qq|号|是|******

paoding

我的|qq|号|****** 

Imdict

我|的|qq|号|******

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117911.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql做pisa_群晖nas修改MariaDB配置文件

    mysql做pisa_群晖nas修改MariaDB配置文件家里的Nas使用率越来越高,平均每周手工重启一次,系统运行还算稳定。最近安装了WebStation,MariaDB等套件,用来作为家里的开发测试环境,使用下来还不错。理论上解析个动态域名到nas就能实现对外提供web服务了。100M电信光纤,上行2M,做个个人网站访问速度凑合着应该还是能用的。在导入数据时,因数据库包比较庞大(>100M),需要修改max_allowed_packet字段。…

    2022年5月4日
  • 诺基亚6260读MMC卡测试

    诺基亚6260读MMC卡测试 关键字:诺基亚6260 RS-MMC卡MMC卡NOKIA6260用的是RS-MMC卡,这一点对我来说很不爽。因为本人手头有两张MMC卡,一张32M,一张128的,买了诺基亚6260之后就派不上用场了,而RS-MMC卡的价格实在是太贵了,买了不划算。    http://www.9499.net闲来没事我就想试能不能将这MMC卡用到6260上。其实也很简单,关机,打开卡仓,取出RS-M

    2022年5月22日
  • 【SpringBoot】33、SpringBoot+LayUI后台管理系统开发脚手架[通俗易懂]

    【SpringBoot】33、SpringBoot+LayUI后台管理系统开发脚手架[通俗易懂]本期给大家推荐我自己写一个开源项目:springboot-mini,本着减少大量重复开发工作的原则,使得在项目中能够实现快速开发1、前言本项目本着避免重复造轮子的原则,建立一套快速开发JavaWEB项目(springboot-mini),能满足大部分后台管理系统基础开发功能,使得开发人员直接可从业务模块开始,减少大量的重复开发工作。前端框架使用layui-mini(https://gitee.com/zhongshaofa/layuimini)2、项目地址https://gitee.com/asu

    2022年5月30日
  • 安装SQLServer2008失败「建议收藏」

    安装SQLServer2008失败「建议收藏」由于操作系统不同(64位与32位)和可能安装的环境不一样再或者在安装SQL2008的时候已经安装SQLServer相关其他版本,因此可能会遇到问题。  问题1:安装sqlserver2008R2,安装过程中提示错误:此计算机上安装了MicrosoftVisualStudio2008的早期版本。请在安装SQLServer2008前将Microsoft…

    2022年9月4日
  • java输入Scanner基本用法[通俗易懂]

    java输入Scanner基本用法[通俗易懂]1.基本介绍java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入,每个next获取输入对应的字符。Scannersc=newScanner(System.in);当我们通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext与hasNextLine判断是否还有输入的数据:next()–>hasNext() nextLine()–…

    2022年7月7日
  • phpstrom2021激活码【注册码】

    phpstrom2021激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号