开源中文分词工具介绍

这里介绍常用的开源中文分词工具,大部分是java实现。如果是java生产环境,建议使用ansj、word或HanNlp。

Bakeoff是一个国际中文处理比赛,有多个语料,所以每个语料都有排名。

最后一小节介绍分词工具的性能比较。

1     什么是中文分词

中文分词或中文切词(Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。

中文分词是针对汉字的处理。英文是有空格分隔每一个词,而中文没有空格分隔,因此需要预先切词。

例如:“我今天去学习”

中文:我今天去学习

切词后:我 今天 去 学习

英文:I'm going to study today

2  Ansj分词工具

项目网址:https://github.com/NLPchina/ansj_seg

使用文档:https://github.com/NLPchina/ansj_seg/wiki

在线体验:http://demo.nlpcn.org/demo.jsp

ansj是一个基于n-Gram+CRF+HMM的中文分词的java实现.

分词速度达到每秒钟大约200万字左右(mac air下测试),准确率能达到96%以上。

目前实现了.中文分词. 中文姓名识别 . 用户自定义词典,关键字提取,自动摘要,关键字标记等功能。

可以应用到自然语言处理等方面,适用于对分词效果要求高的各种项目。

下载jar

访问 http://maven.nlpcn.org/org/ansj/ ,最好下载最新版 ansj_seg/

同时下载nlp-lang.jar 需要和ansj_seg 配套。配套关系可以看jar包中的maven依赖,一般最新的ansj配最新的nlp-lang不会有错。

导入到eclipse ,开始你的程序吧

maven

        <dependency>

           <groupId>org.ansj</groupId>

           <artifactId>ansj_seg</artifactId>

           <version>5.1.1</version>

       </dependency>

   

3   Hanlp分词器

项目网址:https://github.com/hankcs/HanLP

使用文档:https://github.com/hankcs/HanLP/wiki

HanLP下载地址:https://github.com/hankcs/HanLP/releases

Solr、Lucene插件:https://github.com/hankcs/hanlp-solr-plugin

HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。

HanLP提供下列功能:

  • 中文分词
  • 最短路分词
  • N-最短路分词
  • CRF分词
  • 索引分词
  • 极速词典分词
  • 用户自定义词典
  • 词性标注
  • 命名实体识别
  • 中国人名识别
  • 音译人名识别
  • 日本人名识别
  • 地名识别
  • 实体机构名识别
  • 关键词提取
  • TextRank关键词提取
  • 自动摘要
  • TextRank自动摘要
  • 短语提取
  • 基于互信息和左右信息熵的短语提取
  • 拼音转换
  • 多音字
  • 声母
  • 韵母
  • 声调
  • 简繁转换
  • 繁体中文分词
  • 简繁分歧词(简体、繁体、臺灣正體、香港繁體)
  • 文本推荐
  • 语义推荐
  • 拼音推荐
  • 字词推荐
  • 依存句法分析
  • 基于神经网络的高性能依存句法分析器
  • MaxEnt依存句法分析
  • CRF依存句法分析
  • 语料库工具
  • 分词语料预处理
  • 词频词性词典制作
  • BiGram统计
  • 词共现统计
  • CoNLL语料预处理
  • CoNLL UA/LA/DA评测工具

在提供丰富功能的同时,HanLP内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布,使用非常方便,同时自带一些语料处理工具,帮助用户训练自己的模型。

Maven

为了方便用户,特提供内置了数据包的Portable版,只需在pom.xml加入:

    <groupId>com.hankcs</groupId>
    <version>portable-1.3.4</version>

4   word分词器

项目网址:https://github.com/ysc/word

word分词是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。

能准确识别英文、数字,以及日期、时间等数量词

能识别人名、地名、组织机构名等未登录词

能通过自定义配置文件来改变组件行为

能自定义用户词库、自动检测词库变化、支持大规模分布式环境

能灵活指定多种分词算法

能使用refine功能灵活控制分词结果

还能使用词频统计、词性标注、同义标注、反义标注、拼音标注等功能。

提供了10种分词算法,还提供了10种文本相似度算法,同时还无缝和Lucene、Solr、ElasticSearch、Luke集成。注意:word1.3需要JDK1.8

Maven

在pom.xml中指定dependency,可用版本有1.0、1.1、1.2、1.3、1.3.1:

<dependencies>

    <dependency>

        <groupId>org.apdplat</groupId>

        <artifactId>word</artifactId>

        <version>1.3</version>

    </dependency>

</dependencies>

5   IKAnalyzer

官网:http://code.google.com/p/ik-analyzer/

作者博客:http://linliangyi2007.iteye.com/

从2006年12月推出1.0版开始。

开源轻量级的中文分词工具包

语言和平台:

基于java 语言开发, 最初,它是以开源项目Luence 为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的 IKAnalyzer3.0 则发展为面向 Java 的公用分词组件,独立于 Lucene 项目,同时提供了对 Lucene 的默认优化实现。

算法:

采用了特有的“ 正向迭代最细粒度切分算法 “ 。采用了多子处理器分析模式,支持:英文字母( IP 地址、 Email 、 URL )、数字(日期,常用中文数量词,罗马数字,科学计数法),中文词汇(姓名、地名处理)等分词处理。优化的词典存储,更小的内存占用。支持用户词典扩展定义。针对 Lucene 全文检索优化的查询分析器 IKQueryParser ;采用歧义分析算法优化查询关键字的搜索排列组合,能极大的提高 Lucene 检索的命中率。

性能:

在系统环境:Core2 i7 3.4G双核,4G内存,window 7 64位, Sun JDK 1.6_29 64位 普通pc环境测试,IK2012具有160万字/秒(3000KB/S)的高速处理能力

6   盘古分词

官网:http://pangusegment.codeplex.com/

作者:eaglet

博客:http://www.cnblogs.com/eaglet/

项目描述

盘古分词是一个中英文分词组件。作者eaglet 曾经开发过KTDictSeg 中文分词组件,拥有大量用户。

作者基于之前分词组件的开发经验,结合最新的开发技术重新编写了盘古分词组件。

主要功能

中文分词功能

中文人名识别

自定义词典

其他功能

停用词过滤

设置分词权值

性能:

Core Duo 1.8 GHz  下单线程 分词速度为  390K  字符每秒, 2 线程分词速度为  690K  字符每秒。

算法:

盘古分词提供的字典包括17万个中文常用单词,但这个字典依然不够完整,如果要分词更准确,需要适当维护一下这个字典。中文人名的识别能力取决于  ChsSingleName.txt ,  ChsDoubleName1.txt ,  ChsDoubleName2.txt  这三个文件,它们分别表示单子人名,双字人名的首字和双字人名的尾字。

最后一次更新是2010年8月18(今天2017年10月6日)

7  Stanford 汉语分词工具

Stanford 汉语分词工具的成绩:2005年Bakeoff 2两个语料的测试第一。斯坦福自然语言小组直接使用CRF 的方法,特征窗口为5。

官网:http://nlp.stanford.edu/software/segmenter.shtml

最后更新于2017-06-09(今天2017-10-06)

一篇使用介绍:

《Stanford CoreNLP 进行中文分词》

点评:印象中Stanford 汉语分词工具需要2Gb的内存,不知道目前改进了没。at 2017-10-06

8   FudanNLP(复旦大学)

项目官网:https://github.com/FudanNLP/fnlp

使用文档:https://github.com/FudanNLP/fnlp/wiki

FudanNLP后来改名为FNLP

FNLP主要是为中文自然语言处理而开发的工具包,使用java实现,包含为实现这些任务的机器学习算法和数据集。本工具包及其包含数据集使用LGPL3.0许可证。

功能(Functions)

信息检索: 文本分类 新闻聚类

中文处理: 中文分词 词性标注 实体名识别 关键词抽取 依存句法分析 时间短语识别

结构化学习: 在线学习 层次分类 聚类

9  庖丁解牛分词

官网:http://code.google.com/p/paoding/

语言和平台:

Java,提供lucence  3.0  接口,仅支持 Java 语言。

性能:

在PIII 1G 内存个人机器上,1 秒 可准确分词  100 万 汉字。

算法:

采用基于 不限制个数 的词典文件对文章进行有效切分

主要功能:

使能够将对词汇分类定义。能够对未知的词汇进行合理解析

10哈工大语言云(LTP -cloud)

项目网址:https://www.ltp-cloud.com/

文档说明:https://www.ltp-cloud.com/intro/#cws_how

在线演示:https://www.ltp-cloud.com/demo/

哈工大语言云是通过HTTP请求对外提供服务,也就是说需要联网。

HIT的ITNLPLab, HIT Wei JIANG在Bakeoff 2005的open语料MSR上获得测评第一名。不确定LTP–cloud是否是在Wei JIANG的工作基础上进行的开发。

语言云曾获CoNLL 2009七国语言句法语义分析评测总成绩第一名,

语言云(语言技术平台云LTP-Cloud)是由哈工大社会计算与信息检索研究中心研发的云端自然语言处理服务平台。 后端依托于语言技术平台,语言云为用户提供了包括分词、词性标注、依存句法分析、命名实体识别、语义角色标注在内的丰富高效的自然语言处理服务。

作为基于云端的服务,语言云具有如下一些优势:

  • 免安装:用户只需要下载语言云客户端源代码,编译执行后即可获得分析结果,无需调用静态库或下载模型文件。
  • 省硬件:语言云客户端几乎可以运行于任何硬件配置的计算机上,用户不需要购买高性能的机器,即可快捷的获得分析结果。
  • 跨平台:语言云客户端几乎可以运行于任何操作系统之上,无论是Windows、Linux各个发行版或者Mac OS。
  • 跨编程语言:时至今日,语言云已经提供了包括C++,Java,C#,Python,Ruby在内的客户端,其他编程语言的客户端也在开发之中。

在运算资源有限,编程语言受限的情况下,语言云无疑是用户进行语言分析更好的选择。

11ICTCLAS : 汉语词法分析系统

官网:http://ictclas.nlpir.org/newsdownloads?DocId=354

12   (之前在中科院,现在独立出来)

ICTCLAS(Institute of Computing Technology, Chinese Lexical Analysis System)

Bakeoff 1上两项第一。

  这是最早的中文开源分词项目之一,ICTCLAS在国内973专家组组织的评测中活动获得了第一名,在第一届(2003)国际中文处理研究机构SigHan组织的评测中都获得了多项第一名。

性能:

分词速度单机996KB/s , API 不超过200KB ,各种词典数据压缩后不到 3M.

准确率:

分词精度98.45% ,

语言和平台:

ICTCLAS 全部采用C/C++ 编写,支持 Linux 、 FreeBSD 及 Windows 系列操作系统,支持 C/C++ 、 C# 、 Delphi 、 Java 等主流的开发语言。

Author:

中国科学院计算技术研究所

主要功能:

中文分词;词性标注;命名实体识别;新词识别;同时支持用户词典;支持繁体中文;支持GBK 、 UTF-8 、 UTF-7 、 UNICODE 等多种编码格式。

算法:

完美PDAT 大规模知识库管理技术( 200510130690.3 ),在高速度与高精度之间取得了重大突破,该技术可以管理百万级别的词典知识库,单机每秒可以查询 100 万词条,而内存消耗不到知识库大小的 1.5 倍。层叠隐马尔可夫模型( Hierarchical Hidden Markov Model ) ,该分词系统的主要是思想是先通过 CHMM( 层叠形马尔可夫模型 ) 进行分词 , 通过分层 , 既增加了分词的准确性 , 又保证了分词的效率 . 共分五层, 如下图所示。基本思路是进行原子切分 , 然后在此基础上进行N- 最短路径粗切分 , 找出前 N 个最符合的切分结果 , 生成二元分词表 , 然后生成分词结果 , 接着进行词性标注并完成主要分词步骤 .

13 CC-CEDICT:

主要功能:

提供一份以汉语拼音为中文辅助的汉英辞典,截至2009 年 2 月 8 日,已收录 82712 个单词。其词典可以用于中文分词使用,而且不存在版权问题。Chrome 中文版就是使用的这个词典进行中文分词的。

亿思拓(ESTinside) 中文分词组件

可以作为lucene的一个模块调用,作为二元分词方法的替代。该组件直接扩展org.apache.lucene.analysis.Tokenizer 和org.apache.lucene.analysis.Analyzer  类。

准确率 :

98%以上。

主要功能:

同时支持分词和词性标注, 提供参数调节分词准确性和切分速度。针对多线程使用优化,占用内存少。

语言和平台:

100%采用 java 实现的分词组件,无内存泄漏问题。可长期不间断运行。

算法:

采用多种分词方法结合,包括基于概率的n 元切分方法,隐马尔科夫模型,未登录词识别算法,歧义识别算法和基于规则的方法  等。采用多个大规模语料库训练概率词库。

14 imdict-chinese-analyzer

官网:http://code.google.com/p/imdict-chinese-analyzer/

是imdict 智能词典的智能中文分词模块。

算法 :

基于隐马尔科夫模型(Hidden Markov Model , HMM) ,是中国科学院计算技术研究所的 ictclas 中文分词程序的重新实现(基于 Java ) .

可以直接为lucene 搜索引擎提供简体中文分词支持

主要功能:

1, 完全 Unicode 支持

分词核心模块完全采用Unicode 编码,无须各种汉字编码的转换,极大的提升了分词的效率。

2. 提升搜索效率

根据imdict 智能词典的实践,在有智能中文分词的情况下,索引文件比没有中文分词的索引文件小 1/3

3. 提高搜索准确度

imdict-chinese-analyzer采用了 HHMM 分词模型,极大的提高了分词的准确率,在此基础上的搜索,比对汉字逐个切分要准确得多!

4. 更高效的数据结构

为了提高效率,针对常用中文检索的应用场景,imdict-chinese-analyzer 对一些不必要的功能进行了删减,例如词性标注、人名识别、时间识别等等。另外还修改了算法的数据结构,在内存占用量缩减到 1/3 的情况下把效率提升了数倍。

ictclas4j

imdict-chinese-analyzer

ICTCLAS 3.0

分词速度( 字节 / 秒 )

 13.86  

  483.64   

 678.15  

分词速度( 汉字 / 秒 )  

 7439  

  259517   

 363888  

测试环境为:酷睿E7200 双核,内存 2G , JDK 参数为: "-Xms512m -Xmx1024m "

由此对比可以看出, imdict-chinese-analyzer 的分词效率与 C ++实现的 ICTCLAS 3.0 的分词效率在同一个数量级,是 ictclas4j  的  36  倍!

ictclas4j中文分词系统是sinboy 在中科院张华平和刘群老师的研制的 FreeICTCLAS 的基础上完成的一个 java 开源分词项目,简化了原分词程序的复杂度,旨在为广大的中文分词爱好者一个更好的学习机会。

15 mmseg4j

项目网址:http://code.google.com/p/mmseg4j/

作者博客:

1、http://blog.chenlb.com/

2、http://chenlb.iteye.com/

算法:

1、mmseg4j 用 Chih-HaoTsai 的 MMSeg 算法(http://technology.chtsai.org/mmseg/ )实现的中文分词器,并实现 lucene 的 analyzer 和solr 的TokenizerFactory 以方便在Lucene和Solr中使用。

2、MMSeg 算法有两种分词方法:Simple和Complex,都是基于正向最大匹配。Complex 加了四个规则过虑。官方(指mmseg论文的作者)说:词语的正确识别率达到了 98.41%。mmseg4j 已经实现了这两种分词算法。

  • 1.5版的分词速度simple算法是 1100kb/s左右、complex算法是 700kb/s左右,(测试机:AMD athlon 64 2800+ 1G内存 xp)。
  • 1.6版在complex基础上实现了最多分词(max-word)。“很好听” -> "很好|好听"; “中华人民共和国” -> "中华|华人|共和|国"; “中国人民银行” -> "中国|人民|银行"。
  • 1.7-beta 版, 目前 complex 1200kb/s左右, simple 1900kb/s左右, 但内存开销了50M左右. 上几个版都是在10M左右.
  • 1.8 后,增加 CutLetterDigitFilter过虑器,切分“字母和数”混在一起的过虑器。比如:mb991ch 切为 "mb 991 ch"。

mmseg4j实现的功能详情请看:

  • http://mmseg4j.googlecode.com/svn/trunk/CHANGES.txt

3、在 com.chenlb.mmseg4j.example包里的类示例了三种分词效果。

16 Jcseg

官网:http://code.google.com/p/jcseg/

一、jcseg中文分词器

jcseg是使用Java开发的一个中文分词器,使用流行的mmseg算法实现。

1。目前最高版本:jcseg 1.9.0兼容最高版本lucene-4.x和最高版本solr-4.x

2。mmseg四种过滤算法,分词准确率达到了98.41%。

3。支持自定义词库。在lexicon文件夹下,可以随便添加/删除/更改词库和词库内容,并且对词库进行了分类。如何给jcseg添加词库/新词。

4。中英文同义词追加/同义词匹配 + 中文词条拼音追加.词库整合了《现代汉语词典》和cc-cedict辞典中的词条,并且依据cc-cedict词典为词条标上了拼音,依据《中华同义词词典》为词条标上了同义词(尚未完成)。更改jcseg.properties配置文档可以在分词的时候加入拼音和同义词到分词结果中。jcseg新版词库

5。中文数字和中文分数识别,例如:"一百五十个人都来了,四十分之一的人。"中的"一百五十"和"四十分之一"。并且jcseg会自动将其转换为阿拉伯数字加入到分词结果中。如:150, 1/40。

6。支持中英混合词和英中混合词的识别(维护词库可以识别任何一种组合)。例如:B超, x射线, 卡拉ok, 奇都ktv, 哆啦a梦。

7。更好的英文支持,电子邮件,网址,小数,分数,百分数,字母和标点组合词(例如C++, c#)的识别。(这个对购物网址来说很重要)。

8。支持阿拉伯数字/小数/中文数字基本单字单位的识别,例如2012年,1.75米,38.6℃,五折,并且jcseg会将其转换为“5折”加入分词结果中。

9。智能圆角半角, 英文大小写转换。

10。特殊字母识别:例如:Ⅰ,Ⅱ

11。特殊数字识别:例如:①,⑩

12。配对标点内容提取:例如:最好的Java书《java编程思想》,‘畅想杯黑客技术大赛’,被《,‘,“,『标点标记的内容。(1.6.8版开始支持)。

13。智能中文人名识别。中文人名识别正确率达94%以上。(可以维护lex-lname.lex,lex-dname-1.lex,lex-dname-2.lex来提高准确率),(引入规则和词性后会达到98%以上的识别正确率)。

14。自动中英文停止词过滤功能(需要在jcseg.properties中开启该选项,lex-stopwords.lex为停止词词库)。

15。词库更新自动加载功能, 开启一个守护线程随时检测词库的更新并且加载。

16。自动词性标注。

17。jcseg.properties ----- jcseg配置文件 如何配置jcseg

二、分词速度:

测试环境:2.8GHZ/2G/Ubuntu

Simple 模式: 1366058字/秒 3774.5KB/秒

Complex 模式: 479338字/秒 1324.4KB/秒

分词正确率98%以上,请参考本算法的原作:

http://technology.chtsai.org/mmseg/

测试文章,“世界与和平” 简易模式830msec,复杂模式2461msec。

17 THULAC(清华大学)

项目网址:https://github.com/thunlp/THULAC

THULAC(THULexical Analyzer for Chinese)由清华大学自然语言处理与社会人文计算实验室研制推出的一套中文词法分析工具包,具有中文分词和词性标注功能。THULAC具有如下几个特点:

l  能力强。利用我们集成的目前世界上规模最大的人工分词和词性标注中文语料库(约含5800万字)训练而成,模型标注能力强大。

l  准确率高。该工具包在标准数据集Chinese Treebank(CTB5)上分词的F1值可达97.3%,词性标注的F1值可达到92.9%,与该数据集上最好方法效果相当。

l  速度较快。同时进行分词和词性标注速度为300KB/s,每秒可处理约15万字。只进行分词速度可达到1.3MB/s。

THULAC 是C++语言实现。

其他语言实现

THULAC(Java版)https://github.com/thunlp/THULAC-Java

THULAC(Python版)https://github.com/thunlp/THULAC-Python

THULAC(so版)https://github.com/thunlp/THULAC.so

作者

Maosong Sun (孙茂松,导师), Xinxiong Chen(陈新雄,博士生), Kaixu Zhang (张开旭,硕士生), Zhipeng Guo(郭志芃,本科生), Zhiyuan Liu(刘知远,助理教授).

18Isan

项目网址:http://zhangkaixu.github.io/isan/

作者:张开旭(清华2012届博士毕业生,毕业论文)。

 

张开旭老师获得CLPS-SIGHAN2012微博分词评测第一名,系统是清华大学中文分词和词性标注系统演示(THULAC,作者:张开旭,孙茂松)(不开源,系统评测报告PPT,可以管中窥豹: sighan12-slides.pdf ),演示地址:

http://nlp.csai.tsinghua.edu.cn/thulac/

性能,用Bakeoff2005的测试工具,测试结果能有0.99以上的F1值。

源码是python。

一个数据驱动的中文处理**实验环境**,可进行*中文分词*和*依存句法分析*等任务。作者张开旭。

特点

  • 速度**慢**,不为速度牺牲性能,同时保证算法的各个组件的代码容易修改,但理论上保持O(n)的时间复杂度。
  • 效果**差**,本系统专为实验使用,目标并非实用分词工具,处理真实文本效果并不理想。但可用于设计实用分词系统。
  • 使用**难**,虽然不太实用,但有很多“手动功能”,可以通过理解并修改源代码来完成算法和设置的充分修改。

19 perminusminus

项目网址:http://code.google.com/p/perminusminus/

作者:张开旭(清华2012届博士毕业生,毕业论文,现在厦大)。

个人主页:http://nlp.csai.tsinghua.edu.cn/~zkx/

源码是python。算法原理是感知器模型。

Introduction

Per-- is a toolkit of Averaged Perceptron (Freund and Schapire, 1999) for path Labeling under the KISSprinciple(Keep It Simple and Stupid).

Features

 

20 SCWS

   Author: Hightman

C语言编写。

算法:

基于词频词典的机械中文分词引擎,采用的是采集的词频词典,并辅以一定的专有名称,人名,地名,数字年代等规则识别来达到基本分词

准确率:

经小范围测试大概准确率在 90% ~ 95%  之间,已能基本满足一些小型搜索引擎、关键字提取等场合运用。

性能:

45Kb 左右的文本切词时间是 0.026 秒,大概是 1.5MB 文本 / 秒,

语言和平台:

SCWS 采用纯  C  代码开发,以 Unix-Like OS  为主要平台环境,提供共享函数库,方便植入各种现有软件系统。此外它支持  GBK , UTF-8 ,BIG5  等汉字编码。支持 PHP4 和PHP 5 。

版本列表

版本

类型

平台

性能

SCWS-1.1.x

C 代码

*Unix*/*PHP*

准确: 95%,  召回 : 91%,  速度 : 1.2MB/sec

PHP扩展分词速度 : 250KB/sec

php_scws.dll(1)

PHP扩展库

Windows/PHP 4.4.x

准确: 95%,  召回 : 91%,  速度 : 40KB/sec

php_scws.dll(2)

PHP扩展库

Windows/PHP 5.2.x

准确: 95%,  召回 : 91%,  速度 : 40KB/sec

php_scws.dll(3)

PHP扩展库

Windows/PHP 5.3.x

准确: 95%,  召回 : 91%,  速度 : 40KB/sec

PSCWS23

PHP源代码

不限  (不支持 UTF-8)

准确: 93%,  召回 : 89%,  速度 : 960KB/min

PSCWS4

PHP源代码

不限

准确: 95%,  召回 : 91%,  速度 : 160KB/min

 

21 Friso

官网http://code.google.com/p/friso/

friso是使用c语言开发的一个中文分词器,使用mmseg算法实现。完全基于模块化设计和实现,可以很方便的植入到其他程序中,例如:MySQL,PHP等。并且提供了一个php中文分词扩展robbe。

1。只支持UTF-8编码。【源码无需修改就能在各种平台下编译使用,加载完20万的词条,内存占用稳定为14M。】。

2。mmseg四种过滤算法,分词准确率达到了98.41%。

3。支持自定义词库。在dict文件夹下,可以随便添加/删除/更改词库和词库词条,并且对词库进行了分类。

4。词库使用了friso的Java版本jcseg的简化词库。

5。支持中英混合词的识别。例如:c语言,IC卡。

7。很好的英文支持,电子邮件,网址,小数,分数,百分数。

8。支持阿拉伯数字基本单字单位的识别,例如2012年,5吨,120斤。

9。自动英文圆角/半角,大写/小写转换。

并且具有很高的分词速度:简单模式:3.7M/秒,复杂模式:1.8M/秒。[3]

22 HTTPCWS

基于HTTP 协议的开源中文分词系统,

语言和平台:目前仅支持Linux 系统

算法:HTTPCWS  使用“ICTCLAS 3.0 2009 共享版中文分词算法 ” 的 API 进行分词处理,得出分词结果。 HTTPCWS  将取代之前的  PHPCWS 中文分词扩展 。

PHPCWS( PHP 中文分词扩展)

author :张宴

   语言和平台:

PHPCWS 是一款开源的PHP 中文分词扩展,目前仅支持 Linux/Unix 系统。

   算法: PHPCWS 先使用 “ICTCLAS 3.0  共享版中文分词算法 ” 的 API 进行初次分词处理,再使用自行编写的 “ 逆向最大匹配算法 ” 对分词和进行词语合并处理,并增加标点符号过滤功能,得出分词结果。 ICTCLAS 3.0  商业版是收费的,而免费提供的 ICTCLAS 3.0  共享版不开源,词库是根据人民日报一个月的语料得出的,很多词语不存在。所以本人对 ICTCLAS 分词后的结果,再采用逆向最大匹配算法,根据自己补充的一个 9 万条词语的自定义词库(与 ICTCLAS 词库中的词语不重复),对 ICTCLAS 分词结果进行合并处理,输出最终分词结果。由于 ICTCLAS 3.0  共享版只支持 GBK 编码,因此,如果是 UTF-8 编码的字符串,可以先用 PHP 的 iconv 函数转换成 GBK 编码,再用 phpcws_split 函数进行分词处理,最后转换回 UTF-8 编码。

性能:5 8字节的一句话 ——“2009 年 2 月 13 日,我编写了一款PHP 中文分词扩展: PHPCWS 1.0.0。 ” ,分词速度只需 0.0003 秒。对于那些采用二元交叉切分的搜索引擎, PHPCWS 用在前端搜索层对用户输入的搜索关键字、短语进行分词处理,同样适合。 PHPCWS 开发的目的正在于此,对于短句、小文本中文分词切分,速度非常之快。

 

23 libmmseg

Author: 李沫南

语言和平台:

C++ 编写的开源的中文分词软件, libmmseg 主要被作者用来实现 Sphinx 全文检索软件的中文分词功能,因此作者给 Sphinx 提供了一个补丁文件,可以让 Sphinx 集成 libmmseg ,从而支持对于中文文章的全文检索功能。 libmmseg 从 0.7.2 版本开始,作者提供了 ruby 调用的接口,所以我们可以直接在 ruby 程序里面调用 libmmseg 进行分词了。特别是我们可以用 ferret 去调用 libmmseg 分词功能,从而让 ruby 原生支持中文的全文检索。

算法 :

“基于词库的最大匹配算法 ”

性能:

分词速度为每秒300KB 左右。

 

24 OpenCLAS

是一个开源的中文词法分析库。

主要功能:

其中包括了中文分词、词性标注等功能。系统使用基于概率的多层HMM 。可以对已登录词和未登录词进行识别分析。

OpenCLAS是对原有的 ICTCLAS ( 中科院中文词法分析系统 ) 进行的重写。 OpenCLAS将不包含任何 ICTCLAS 中的源代码,并且以 BSD 协议发布。因此其代码可以在满足 BSD 协议的前提下,用于包括商用在内的各种场合。

OpenCLAS将包含三个语言分支, C++, Java 和 C# 。 ( 目前只实现了 C++ 的版本 ) 。

25CRF++(上海交大)

项目网址:http://code.google.com/p/crfpp/

详细介绍:http://crfpp.googlecode.com/svn/trunk/doc/index.html

作者:上海交大 赵海

个人主页:http://bcmi.sjtu.edu.cn/~zhaohai/index.ch.html

成绩

[2007] Bakeoff-4

第一届中国中文信息学会汉语处理评测暨第四届国际中文自然语言处理Bakeoff (Bakeoff-4, Bakeoff-2007, 2008)

       28个研究团队提交的166个分词结果中赢得本届Bakeoff分词的封闭评测的所有五项第一名

       33个命名实体识别结果中赢得三个第二名,一个第三名

Bakeoff-4的正式结果在此。 我们的系统报告在此。

[2006] Bakeoff-3

第三届国际中文分词竞赛 (Bakeoff-3, Bakeoff-2006)

       在29个研究团队提交的101个分词结果中赢得四项第一、两项第三

Bakeoff-3的正式结果在此。 我们的系统报告在此。

CRF++ is a simple,customizable, and open source implementation of Conditional Random Fields(CRFs) for segmenting/labeling sequential data. CRF++ is designed for genericpurpose and will be applied to a variety of NLP tasks, such as Named EntityRecognition, Information Extraction and Text Chunking.

26各分词工具的性能比较

github上有个开源项目对java版的中文分词工具做了测评:

https://github.com/ysc/cws_evaluation

测评结果来自https://github.com/ysc/cws_evaluation。

评估报告

1、word分词最大Ngram分值算法:

分词速度:370.9714 字符/毫秒

行数完美率:66.55%  行数错误率:33.44%  总的行数:2533709  完美行数:1686210  错误行数:847499

字数完美率:60.94% 字数错误率:39.05% 总的字数:28374490 完美字数:17293964 错误字数:11080526

      

2、word分词最少词数算法:

分词速度:330.1586 字符/毫秒

行数完美率:65.67%  行数错误率:34.32%  总的行数:2533709  完美行数:1663958  错误行数:869751

字数完美率:60.12% 字数错误率:39.87% 总的字数:28374490 完美字数:17059641 错误字数:11314849

 

3、HanLP分词器标准分词:

分词速度:935.7724 字符/毫秒

行数完美率:58.31%  行数错误率:41.68%  总的行数:2533709  完美行数:1477422  错误行数:1056287

字数完美率:50.43% 字数错误率:49.56% 总的字数:28374490 完美字数:14311008 错误字数:14063482

 

4、word分词全切分算法:

分词速度:62.960262 字符/毫秒

行数完美率:57.2%  行数错误率:42.79%  总的行数:2533709  完美行数:1449288  错误行数:1084421

字数完美率:47.95% 字数错误率:52.04% 总的字数:28374490 完美字数:13605742 错误字数:14768748

 

5、AnsjBaseAnalysis 基本分词:

分词速度:1295.5205 字符/毫秒

行数完美率:55.36%  行数错误率:44.63%  总的行数:2533709  完美行数:1402905  错误行数:1130804

字数完美率:48.18% 字数错误率:51.81% 总的字数:28374490 完美字数:13672441 错误字数:14702049

 

6、smartcn:

分词速度:611.1504 字符/毫秒

行数完美率:55.29%  行数错误率:44.7%  总的行数:2533690  完美行数:1401069  错误行数:1132621

字数完美率:48.03% 字数错误率:51.96% 总的字数:28374433 完美字数:13628910 错误字数:14745523

 

7、AnsjToAnalysis 精准分词:

分词速度:759.40717 字符/毫秒

行数完美率:54.72%  行数错误率:45.27%  总的行数:2533709  完美行数:1386683  错误行数:1147026

字数完美率:44.99% 字数错误率:55.0% 总的字数:28374490 完美字数:12768426 错误字数:15606064

 

8、HanLP分词器极速词典分词:

分词速度:6015.3677 字符/毫秒

行数完美率:54.25%  行数错误率:45.74%  总的行数:2533709  完美行数:1374736  错误行数:1158973

字数完美率:46.12% 字数错误率:53.87% 总的字数:28374490 完美字数:13088320 错误字数:15286170

 

9、word分词双向最大最小匹配算法:

分词速度:462.87158 字符/毫秒

行数完美率:53.06%  行数错误率:46.93%  总的行数:2533709  完美行数:1344624  错误行数:1189085

字数完美率:43.07% 字数错误率:56.92% 总的字数:28374490 完美字数:12221610 错误字数:16152880

 

10、HanLP分词器 N-最短路径分词:

分词速度:77.89775 字符/毫秒

行数完美率:53.01%  行数错误率:46.98%  总的行数:2533709  完美行数:1343252  错误行数:1190457

字数完美率:44.42% 字数错误率:55.57% 总的字数:28374490 完美字数:12604878 错误字数:15769612

 

11、HanLP分词器最短路径分词:

分词速度:384.70233 字符/毫秒

行数完美率:52.94%  行数错误率:47.05%  总的行数:2533709  完美行数:1341450  错误行数:1192259

字数完美率:43.76% 字数错误率:56.23% 总的字数:28374490 完美字数:12417741 错误字数:15956749

 

12、AnsjNlpAnalysis NLP分词:

分词速度:172.19516 字符/毫秒

行数完美率:52.66%  行数错误率:47.33%  总的行数:2533709  完美行数:1334314  错误行数:1199395

字数完美率:42.66% 字数错误率:57.33% 总的字数:28374490 完美字数:12105808 错误字数:16268682

 

13、HanLP分词器 NLP分词:

分词速度:408.2249 字符/毫秒

行数完美率:52.18%  行数错误率:47.81%  总的行数:2533709  完美行数:1322216  错误行数:1211493

字数完美率:43.03% 字数错误率:56.96% 总的字数:28374490 完美字数:12211399 错误字数:16163091

 

14、FudanNLP:

分词速度:123.456985 字符/毫秒

行数完美率:51.48%  行数错误率:48.51%  总的行数:2533709  完美行数:1304371  错误行数:1229338

字数完美率:43.22% 字数错误率:56.77% 总的字数:28374490 完美字数:12265742 错误字数:16108748

 

15、JiebaSEARCH:

分词速度:993.435 字符/毫秒

行数完美率:50.84%  行数错误率:49.15%  总的行数:2533709  完美行数:1288237  错误行数:1245472

字数完美率:41.54% 字数错误率:58.45% 总的字数:28374490 完美字数:11789036 错误字数:16585454

 

16、Jcseg复杂模式:

分词速度:561.55975 字符/毫秒

行数完美率:47.96%  行数错误率:52.03%  总的行数:2533709  完美行数:1215171  错误行数:1318538

字数完美率:38.84% 字数错误率:61.15% 总的字数:28374490 完美字数:11021588 错误字数:17352902

 

17、word分词双向最小匹配算法:

分词速度:967.68604 字符/毫秒

行数完美率:46.34%  行数错误率:53.65%  总的行数:2533709  完美行数:1174276  错误行数:1359433

字数完美率:36.07% 字数错误率:63.92% 总的字数:28374490 完美字数:10236574 错误字数:18137916

 

18、word分词双向最大匹配算法:

分词速度:661.148 字符/毫秒

行数完美率:46.18%  行数错误率:53.81%  总的行数:2533709  完美行数:1170075  错误行数:1363634

字数完美率:35.65% 字数错误率:64.34% 总的字数:28374490 完美字数:10117122 错误字数:18257368

 

19、HanLP分词器索引分词:

分词速度:942.4862 字符/毫秒

行数完美率:45.44%  行数错误率:54.55%  总的行数:2533709  完美行数:1151473  错误行数:1382236

字数完美率:35.48% 字数错误率:64.51% 总的字数:28374490 完美字数:10068062 错误字数:18306428

 

20、Jcseg简易模式:

分词速度:1193.3085 字符/毫秒

行数完美率:44.59%  行数错误率:55.4%  总的行数:2533709  完美行数:1130000  错误行数:1403709

字数完美率:35.78% 字数错误率:64.21% 总的字数:28374490 完美字数:10155059 错误字数:18219431

 

21、word分词正向最大匹配算法:

分词速度:1567.1318 字符/毫秒

行数完美率:41.88%  行数错误率:58.11%  总的行数:2533709  完美行数:1061189  错误行数:1472520

字数完美率:31.35% 字数错误率:68.64% 总的字数:28374490 完美字数:8896173 错误字数:19478317

 

22、word分词逆向最大匹配算法:

分词速度:1232.6017 字符/毫秒

行数完美率:41.69%  行数错误率:58.3%  总的行数:2533709  完美行数:1056515  错误行数:1477194

字数完美率:30.98% 字数错误率:69.01% 总的字数:28374490 完美字数:8792532 错误字数:19581958

 

23、word分词逆向最小匹配算法:

分词速度:1936.9575 字符/毫秒

行数完美率:41.42%  行数错误率:58.57%  总的行数:2533709  完美行数:1049673  错误行数:1484036

字数完美率:31.34% 字数错误率:68.65% 总的字数:28374490 完美字数:8893622 错误字数:19480868

 

24、AnsjIndexAnalysis 面向索引的分词:

分词速度:677.1308 字符/毫秒

行数完美率:40.66%  行数错误率:59.33%  总的行数:2533709  完美行数:1030336  错误行数:1503373

字数完美率:29.81% 字数错误率:70.18% 总的字数:28374490 完美字数:8459997 错误字数:19914493

 

25、MMSeg4jComplexSeg:

分词速度:1699.5801 字符/毫秒

行数完美率:38.81%  行数错误率:61.18%  总的行数:2533688  完美行数:983517  错误行数:1550171

字数完美率:29.6% 字数错误率:70.39% 总的字数:28374428 完美字数:8400089 错误字数:19974339

 

26、MMSeg4jSimpleSeg:

分词速度:2355.5115 字符/毫秒

行数完美率:37.57%  行数错误率:62.42%  总的行数:2533688  完美行数:951909  错误行数:1581779

字数完美率:28.45% 字数错误率:71.54% 总的字数:28374428 完美字数:8074021 错误字数:20300407

 

27、IKAnalyzer智能切分:

分词速度:319.28085 字符/毫秒

行数完美率:37.55%  行数错误率:62.44%  总的行数:2533686  完美行数:951638  错误行数:1582048

字数完美率:27.97% 字数错误率:72.02% 总的字数:28374416 完美字数:7938726 错误字数:20435690

 

28、word分词正向最小匹配算法:

分词速度:2228.9465 字符/毫秒

行数完美率:36.7%  行数错误率:63.29%  总的行数:2533709  完美行数:930069  错误行数:1603640

字数完美率:26.72% 字数错误率:73.27% 总的字数:28374490 完美字数:7583741 错误字数:20790749

 

29、JiebaINDEX:

分词速度:861.55615 字符/毫秒

行数完美率:36.02%  行数错误率:63.97%  总的行数:2533709  完美行数:912771  错误行数:1620938

字数完美率:25.9% 字数错误率:74.09% 总的字数:28374490 完美字数:7351689 错误字数:21022801

 

30、MMSeg4jMaxWordSeg:

分词速度:1737.2491 字符/毫秒

行数完美率:34.27%  行数错误率:65.72%  总的行数:2533688  完美行数:868440  错误行数:1665248

字数完美率:25.2% 字数错误率:74.79% 总的字数:28374428 完美字数:7152898 错误字数:21221530

 

31、IKAnalyzer细粒度切分:

分词速度:323.76926 字符/毫秒

行数完美率:18.87%  行数错误率:81.12%  总的行数:2533686  完美行数:478176  错误行数:2055510

字数完美率:10.93% 字数错误率:89.06% 总的字数:28374416 完美字数:3103178 错误字数:25271238

 

评估耗时:41分钟,42秒,725毫秒

 

重点说明:

       关于分词速度,这个不是绝对的,每次测试都会有些差距,而完美率是固定的,所以按行数完美率排名

       上面的评估报告中没有包括Stanford分词器和Paoding分词器

       当前代码已经移除了Paoding分词器,因为Paoding分词器已经7年没有维护了

       当前代码升级Stanford分词器到3.5.2,速度慢的无法等待评估完成,仅用于交互式效果对比

       下面是之前代码对 Paoding分词器2.0.4-beta 和 Stanford分词器 3.3.1 的评估数据

 

Stanford Beijing Universitysegmentation

分词速度:14.4612055 字符/毫秒

行数完美率:58.29%  行数错误率:41.7%  总的行数:2533709  完美行数:1477034  错误行数:1056675

字数完美率:51.36% 字数错误率:48.63% 总的字数:28374490 完美字数:14574120 错误字数:13800370

 

Stanford Chinese Treebanksegmentation

分词速度:13.723294 字符/毫秒

行数完美率:55.45%  行数错误率:44.54%  总的行数:2533709  完美行数:1404968  错误行数:1128741

字数完美率:47.27% 字数错误率:52.72% 总的字数:28374490 完美字数:13414926 错误字数:14959564

 

Paoding MAX_WORD_LENGTH_MODE

分词速度:1343.1075 字符/毫秒

行数完美率:14.19%  行数错误率:85.8%  总的行数:2533158  完美行数:359637  错误行数:2173521

字数完美率:7.72% 字数错误率:92.27% 总的字数:28373102 完美字数:2191349 错误字数:26181753

 

Paoding MOST_WORDS_MODE

分词速度:1338.9246 字符/毫秒

行数完美率:11.6%  行数错误率:88.39%  总的行数:2533158  完美行数:294011  错误行数:2239147

字数完美率:5.92% 字数错误率:94.07% 总的字数:28373102 完美字数:1680261 错误字数:26692841

 

效果对比

1、以 我爱楚离陌 为例子:

word分词器 的分词结果:

    1、【全切分算法】 我 爱 楚离陌

    2、【双向最大最小匹配算法】 我 爱 楚离陌

    3、【最大Ngram分值算法】   我 爱 楚离陌

    4、【正向最大匹配算法】  我 爱 楚离陌

    5、【双向最大匹配算法】  我 爱 楚离陌

    6、【最少词数算法】  我 爱 楚离陌

    7、【逆向最大匹配算法】  我 爱 楚离陌

    8、【正向最小匹配算法】  我 爱 楚离陌

    9、【双向最小匹配算法】  我 爱 楚离陌

    10、【逆向最小匹配算法】 我 爱 楚离陌

Stanford分词器 的分词结果:

    1、【Stanford Chinese Treebanksegmentation】 我爱 楚离陌

    2、【Stanford Beijing Universitysegmentation】  我爱 楚 离陌

Ansj分词器 的分词结果:

    1、【BaseAnalysis】  我 爱 楚 离 陌

    2、【IndexAnalysis】 我 爱 楚 离 陌

    3、【ToAnalysis】 我 爱 楚 离 陌

    4、【NlpAnalysis】   我 爱 楚离 陌

HanLP分词器 的分词结果:

    1、【NLP分词】 我 爱 楚 离 陌

    2、【标准分词】  我 爱 楚 离 陌

    3、【N-最短路径分词】  我 爱 楚 离 陌

    4、【索引分词】  我 爱 楚 离 陌

    5、【最短路径分词】    我 爱 楚 离 陌

    6、【极速词典分词】    我 爱 楚 离 陌

smartcn分词器 的分词结果:

    1、【smartcn】    我 爱 楚 离 陌

FudanNLP分词器 的分词结果:

    1、【FudanNLP】   我 爱楚离陌

Jieba分词器 的分词结果:

    1、【SEARCH】 我爱楚 离 陌

    2、【INDEX】  我爱楚 离 陌

Jcseg分词器 的分词结果:

    1、【简易模式】   我 爱 楚 离 陌

    2、【复杂模式】   我 爱 楚 离 陌

MMSeg4j分词器 的分词结果:

    1、【SimpleSeg】  我爱 楚 离 陌

    2、【ComplexSeg】 我爱 楚 离 陌

    3、【MaxWordSeg】 我爱 楚 离 陌

IKAnalyzer分词器 的分词结果:

    1、【智能切分】   我 爱 楚 离 陌

    2、【细粒度切分】 我 爱 楚 离 陌

2、以 结合成分子 为例子:

word分词器 的分词结果:

    1、【全切分算法】 结合 成 分子

    2、【双向最大最小匹配算法】 结 合成 分子

    3、【最大Ngram分值算法】   结合 成 分子

    4、【正向最大匹配算法】  结合 成分 子

    5、【双向最大匹配算法】  结 合成 分子

    6、【最少词数算法】  结合 成 分子

    7、【逆向最大匹配算法】  结 合成 分子

    8、【正向最小匹配算法】  结合 成分 子

    9、【双向最小匹配算法】  结 合成 分子

    10、【逆向最小匹配算法】 结 合成 分子

Stanford分词器 的分词结果:

    1、【Stanford Chinese Treebanksegmentation】 结合成 分子

    2、【Stanford Beijing Universitysegmentation】  结合成 分子

Ansj分词器 的分词结果:

    1、【BaseAnalysis】  结合 成 分子

    2、【IndexAnalysis】 结合 成 分子

    3、【ToAnalysis】 结合 成 分子

    4、【NlpAnalysis】   结合 成 分子

HanLP分词器 的分词结果:

    1、【NLP分词】   结合 成 分子

    2、【标准分词】   结合 成 分子

    3、【N-最短路径分词】    结合 成 分子

    4、【索引分词】   结合 成 分子

    5、【最短路径分词】  结合 成 分子

    6、【极速词典分词】  结合 成分 子

smartcn分词器 的分词结果:

    1、【smartcn】    结合 成 分子

FudanNLP分词器 的分词结果:

    1、【FudanNLP】   结合 成 分子

Jieba分词器 的分词结果:

    1、【SEARCH】 结合 成 分子

    2、【INDEX】  结合 成 分子

Jcseg分词器 的分词结果:

    1、【简易模式】   结合 成分 子

    2、【复杂模式】   结合 成 分子

MMSeg4j分词器 的分词结果:

    1、【SimpleSeg】  结合 成分 子

    2、【ComplexSeg】 结合 成分 子

    3、【MaxWordSeg】 结合 成分 子

IKAnalyzer分词器 的分词结果:

    1、【智能切分】   结合 成 分子

    2、【细粒度切分】 结合 合成 成分 分子

速度对比

1、HanLP分词器极速词典分词:

分词速度:5030.1978 字符/毫秒

 

2、MMSeg4jMaxWordSeg:

分词速度:2454.494 字符/毫秒

 

3、MMSeg4jSimpleSeg:

分词速度:2184.697 字符/毫秒

 

4、word分词逆向最小匹配算法:

分词速度:1407.4127 字符/毫秒

 

5、word分词正向最小匹配算法:

分词速度:1234.6848 字符/毫秒

 

6、MMSeg4jComplexSeg:

分词速度:1184.436 字符/毫秒

 

7、Jcseg简易模式:

分词速度:1023.73364 字符/毫秒

 

8、AnsjBaseAnalysis 基本分词:

分词速度:906.4427 字符/毫秒

 

9、word分词双向最小匹配算法:

分词速度:833.2229 字符/毫秒

 

10、JiebaSEARCH:

分词速度:831.52246 字符/毫秒

 

11、word分词逆向最大匹配算法:

分词速度:808.4246 字符/毫秒

 

12、IKAnalyzer细粒度切分:

分词速度:735.4621 字符/毫秒

 

13、HanLP分词器索引分词:

分词速度:664.67535 字符/毫秒

 

14、word分词正向最大匹配算法:

分词速度:573.46375 字符/毫秒

 

15、word分词双向最大匹配算法:

分词速度:539.6636 字符/毫秒

 

16、JiebaINDEX:

分词速度:507.40472 字符/毫秒

 

17、word分词双向最大最小匹配算法:

分词速度:505.20273 字符/毫秒

 

18、IKAnalyzer智能切分:

分词速度:483.90262 字符/毫秒

 

19、HanLP分词器标准分词:

分词速度:461.43375 字符/毫秒

 

20、AnsjIndexAnalysis 面向索引的分词:

分词速度:446.76096 字符/毫秒

 

21、word分词最少词数算法:

分词速度:444.56738 字符/毫秒

 

22、AnsjToAnalysis 精准分词:

分词速度:440.2442 字符/毫秒

 

23、word分词最大Ngram分值算法:

分词速度:419.61484 字符/毫秒

 

24、smartcn:

分词速度:419.39886 字符/毫秒

 

25、Jcseg复杂模式:

分词速度:391.21075 字符/毫秒

 

26、HanLP分词器最短路径分词:

分词速度:288.55948 字符/毫秒

 

27、HanLP分词器 NLP分词:

分词速度:251.66522 字符/毫秒

 

28、AnsjNlpAnalysis NLP分词:

分词速度:174.01068 字符/毫秒

 

29、word分词全切分算法:

分词速度:146.16898 字符/毫秒

 

30、FudanNLP:

分词速度:111.7975 字符/毫秒

 

31、HanLP分词器 N-最短路径分词:

分词速度:67.67644 字符/毫秒

支持的分词器有:

1、word分词器

2、ansj分词器

3、mmseg4j分词器

4、ik-analyzer分词器

5、jcseg分词器

6、fudannlp分词器

7、smartcn分词器

8、jieba分词器

9、stanford分词器

10、hanlp分词器

参考文献:

[1]ansj分词工具https://github.com/NLPchina/ansj_seg

[2] HanLP自然语言处理工具包https://github.com/hankcs/HanLP

[3] word分词工具https://github.com/ysc/word

[4] THULAC:一个高效的中文词法分析工具包https://github.com/thunlp/THULAC

[5] 盘古分词-开源中文分词组件 http://pangusegment.codeplex.com/

[6] Stanford汉语分词工具https://nlp.stanford.edu/software/segmenter.shtml

[7] 哈工大语言云 https://www.ltp-cloud.com/

[8] 中文分词器分词效果评估对比 https://github.com/ysc/cws_evaluation

开源中文切词工具介绍相关推荐

  1. 常用的开源中文分词工具

    转载自:  http://www.scholat.com/vpost.html?pid=4477 常用的开源中文分词工具 由于中文文本词与词之间没有像英文那样有空格分隔,因此很多时候中文文本操作都涉及 ...

  2. 常用的中文分词工具介绍

    本文首先介绍下中文分词的基本原理,然后介绍下国内比较流行的中文分词工具,如jieba.SnowNLP.THULAC.NLPIR,上述分词工具都已经在github上开源,后续也会附上github链接,以 ...

  3. 6款开源中文OCR使用介绍(亲测效果)

    文章目录 前言 开源ocr项目 1. Paddle OCR(推荐指数:★★★★★) 1.1 简介 1.2 使用 1.3 优缺点 2. CnOCR(推荐指数:★★★★★) 2.1 简介 2.2 使用 2 ...

  4. 【NLP】基于预训练的中文NLP工具介绍:ltp 和 fastHan

    1. 简介 2. ltp 2.1 工作流程 2.2 demo 2.3 词典分词 2.4 词性标注集 2.5 模型算法 3. fastHan 3.1 模型结构 3.2 demo 3.3 词典分词 3.4 ...

  5. jieba textrank关键词提取 python_五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg,THULAC, HanLP...

    最近玩公众号会话停不下来:玩转腾讯词向量:Game of Words(词语的加减游戏),准备把NLP相关的模块搬到线上,准确的说,搬到AINLP公众号后台对话,所以,趁着劳动节假期,给AINLP公众号 ...

  6. 中文分词工具探析(一):ICTCLAS (NLPIR)

    [开源中文分词工具探析]系列: 开源中文分词工具探析(一):ICTCLAS (NLPIR) 开源中文分词工具探析(二):Jieba 开源中文分词工具探析(三):Ansj 开源中文分词工具探析(四):T ...

  7. python 分词工具对比_五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP

    最近玩公众号会话停不下来: 玩转腾讯词向量:Game of Words(词语的加减游戏) ,准备把NLP相关的模块搬到线上,准确的说,搬到AINLP公众号后台对话,所以,趁着劳动节假期,给AINLP公 ...

  8. 中文开源汉语分词工具

    本文转载自:http://www.scholat.com/vpost.html?pid=4477 由于中文文本词与词之间没有像英文那样有空格分隔,因此很多时候中文文本操作都涉及切词,这里整理了一些中文 ...

  9. 构想:中文文本标注工具(内附多个开源文本标注工具)

    ■ 项目地址 | https://github.com/crownpku/Chinese-Annotator 自然语言处理的大部分任务是监督学习问题.序列标注问题如中文分词.命名实体识别,分类问题如关 ...

最新文章

  1. 独家 | 这可能会引领通用AI的下一个重大突破
  2. UITableView全面解析
  3. 在Eclipse中使用JUnit4进行单元测试
  4. numpy是这样操作的
  5. 判断手机浏览器还是微信浏览器(PHP)
  6. Visio与word搭配使用
  7. 【知识梳理1】Android触摸事件机制
  8. Oracle数据库sql调优
  9. 傻瓜神经网络入门指南
  10. 【jQuery Demo】jQuery打造动态下滑菜单
  11. 有哪些问题应该得到解决?
  12. jer中无html文件,jsoup抓取网页+详细讲解
  13. 2020-11-06
  14. Ruby中的concat()方法
  15. 【工业机器人】机器人产业的前途取决于人工智能关键技术的发展
  16. Syntax Error Error No ESLint configuration found in statusGitmibsrc
  17. [原创][Java]一个简单高效的线程安全队列的JAVA实现
  18. [转]全网最!详!细!tarjan算法讲解
  19. Yoshua Bengio——《Deep Learning》学习笔记1
  20. BUU刷题记录——5

热门文章

  1. C++_输入一个字符串,并逆序输出
  2. 盘点程序员逃离一线的Plan B
  3. RGB888 和 RGB565
  4. ORB-SLAM2-----Frame()
  5. 怒揭黑莓市场黑幕,还消费者公道
  6. AI Studio图形化任务说明
  7. 文字和图片,图片和图片底部对齐
  8. GBK,UTF8是什么?
  9. 十一、mysql连接查询
  10. 写CSDN文章时,生成下标、上标、竖线的方法