java中⽂分词⼯具_五款中⽂分词⼯具在线PK:
Jieba,SnowNLP,PkuSeg,。。。
最近玩公众号会话停不下来:玩转腾讯词向量:Game of Words(词语的加减游戏),准备把NLP相关的模块搬到线上,准确的说,搬到AINLP公众号后台对话,所以,趁着劳动节假期,给AINLP公众号后台聊天机器⼈添加了⼀项新技能:中⽂分词线上PK,例如在AINLP公众号后台对话输⼊:中⽂分词 我爱⾃然语⾔处理,就可以得到五款分词⼯具的分词结果:
早起的图片
现在的开源中⽂分词⼯具或者模块已经很丰富了,并且很多都有⼀些在封闭测试集上的效果对⽐数据,不过这仅仅只能展现这些分词⼯具在这个封闭测试集上的效果,并不能全⾯说明问题,个⼈觉得,选择⼀个适合⾃⼰业务的分词器可能更重要,有的时候,还需要加⼀些私⼈定制的词库。
内存拓展“结巴”中⽂分词:做最好的 Python 中⽂分词组件
"Jieba" (Chine for "to stutter") Chine text gmentation: built to be the best Python Chine word gmentation module.
特点
⽀持三种分词模式:
精确模式,试图将句⼦最精确地切开,适合⽂本分析;
全模式,把句⼦中所有的可以成词的词语都扫描出来, 速度⾮常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提⾼召回率,适合⽤于搜索引擎分词。
⽀持繁体分词
⽀持⾃定义词典
MIT 授权协议
安装:
代码对 Python 2/3 均兼容
中⽂分词⽰例:
SnowNLP是⼀个python写的类库,可以⽅便的处理中⽂⽂本内容,是受到了TextBlob的启发⽽写的,
由于现在⼤部分的⾃然语⾔处理库基本都是针对英⽂的,于是写了⼀个⽅便处理中⽂的类库,并且和TextBlob不同的是,这⾥没有⽤NLTK,所有的算法都是⾃⼰实现的,并且⾃带了⼀些训练好的字典。注意本程序都是处理的unicode编码,所以使⽤时请⾃⾏decode成unicode。
Features
中⽂分词(Character-Bad Generative Model)
词性标注(TnT 3-gram 隐马)风之子帕加尼
情感分析(现在训练数据主要是买卖东西时的评价,所以对其他的⼀些可能效果不是很好,待解决)
⽂本分类(Naive Bayes)
转换成拼⾳(Trie树实现的最⼤匹配)
繁体转简体(Trie树实现的最⼤匹配)
提取⽂本关键词(TextRank算法)
提取⽂本摘要(TextRank算法)
tf,idf
Tokenization(分割成句⼦)
⽂本相似(BM25)
⽀持python3(感谢erning)
安装:
$ pip install snownlp
中⽂分词⽰例:
pkug多领域中⽂分词⼯具; The pkug toolkit for multi-domain Chine word gmentation
主要亮点
pkug具有如下⼏个特点:
多领域分词。不同于以往的通⽤中⽂分词⼯具,此⼯具包同时致⼒于为不同领域的数据提供个性化的预训练模型。根据待分词⽂本的领域特点,⽤户可以⾃由地选择不同的模型。 我们⽬前⽀持了新闻领域,⽹络领域,医药领域,旅游领域,以及混合领域的分词预训练模型。在使⽤中,如果⽤户明确待分词的领域,可加载对应的模型进⾏分词。如果⽤户⽆法确定具体领域,推荐使⽤在混合领域上训练的通⽤模型。各领域分词样例可参考 。
更⾼的分词准确率。相⽐于其他的分词⼯具包,当使⽤相同的训练数据和测试数据,pkug可以取得更⾼的分词准确率。
⽀持⽤户⾃训练模型。⽀持⽤户使⽤全新的标注数据进⾏训练。
⽀持词性标注。
编译和安装
⽬前仅⽀持python3
为了获得好的效果和速度,强烈建议⼤家通过pip install更新到⽬前的最新版本
通过PyPI安装(⾃带模型⽂件):
pip3 install pkug
之后通过import pkug来引⽤
建议更新到最新版本以获得更好的开箱体验:
假期过后pip3 install -U pkug
中⽂分词⽰例:
6500kTHULAC:⼀个⾼效的中⽂词法分析⼯具包
THULAC(THU Lexical Analyzer for Chine)由清华⼤学⾃然语⾔处理与社会⼈⽂计算实验室研制推出的⼀套中⽂词法分析⼯具包,具有中⽂分词和词性标注功能。THULAC具有如下⼏个特点:
能⼒强。利⽤我们集成的⽬前世界上规模最⼤的⼈⼯分词和词性标注中⽂语料库(约含5800万字)训练⽽成,模型标注能⼒强⼤。
准确率⾼。该⼯具包在标准数据集Chine Treebank(CTB5)上分词的F1值可达97.3%,词性标注的F1值可达到92.9%,与该数据集上最好⽅法效果相当。
速度较快。同时进⾏分词和词性标注速度为300KB/s,每秒可处理约15万字。只进⾏分词速度可达到1.3MB/s。
编译和安装
python版(兼容python2.x版和python3.x版)
情侣网名一对
从github下载(需下载模型⽂件,见获取模型)
澄江静如练将thulac⽂件放到⽬录下,通过 import thulac 来引⽤
thulac需要模型的⽀持,需要将下载的模型放到thulac⽬录下。
pip下载(⾃带模型⽂件)
pip install thulac
通过 import thulac 来引⽤
中⽂分词⽰例:
pyhanlp: Python interfaces for HanLP
宝贝的新朋友⾃然语⾔处理⼯具包HanLP的Python接⼝, ⽀持⾃动下载与升级HanLP,兼容py2、py3。
安装
pip install pyhanlp
注意pyhanlp安装之后使⽤的时候还会⾃动下载相关的数据⽂件,zip压缩⽂件600多M,速度有点慢,时间有点长
中⽂分词⽰例:
现在,可以拿起你的⼿机,对着AINLP公众号后台输⼊:中⽂分词 需要分词的内容,或者可以⽤语⾳输⼊:来,试试语⾳(识别)聊天(机器
⼈)