一,介绍
官方介绍:“结巴”中文分词:做最好的 Python 中文分词组件
我理解的官方的目标是做最好的python中文分词组件,但是在网上一搜,很多文章直接说成了是最好的中文分词组件,我看是误解了原文意思,就目前来说jieba分词在解决中文歧义方面还是解决不了(接下来会通过代码实战说明),所以精确度不是最好,也就不能说是最好的中文分词组件了,在此做个记录以便后期找到更好的中文分词组件.现在这类自然语言处理模块越来越多,关于好不好而言,只能说没有最好,只有更好,因为每个中文分词组件都在更新和进步.
二,特点 (以下引用自官文的readme)
- 支持四种分词模式:
- 精确模式,试图将句子最精确地切开,适合文本分析;
- 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
- 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
- paddle模式,利用PaddlePaddle深度学习框架,训练序列标注(双向GRU)网络模型实现分词。同时支持词性标注。paddle模式使用需安装paddlepaddle-tiny,
pip install paddlepaddle-tiny==1.6.1
。目前paddle模式支持jieba v0.40及以上版本。jieba v0.40以下版本,请升级jieba,pip install jieba --upgrade
。PaddlePaddle官网
- 支持繁体分词
- 支持自定义词典
- MIT 授权协议
关于第四种分词模式的实战理解:如果jieba v0.40及以上版本,并且paddlepaddle在2.0.0以上版本,直接使用jieba.enable_paddle()会报错,因为paddlepaddle在2.0.0以上是默认开启静态图模式
Traceback (most recent call last):
File "D:\Party_committee_project\党员转出回执收集V1\Lib\identify_name.py", line 15, in <module>
jieba.enable_paddle()
File "D:\Party_committee_project\党员转出回执收集V1\Lib\jieba\_compat.py", line 46, in enable_paddle
import jieba.lac_small.predict as