开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第39天,点击查看活动详情
jieba
介绍
jieba 是目前表现较为不错的 Python 中文分词组件,它主要有以下特性:
- 中文文本需要通过分词获得单个的词语
- jieba需要额外安装
- jieba库提供三种分词模式
jieba库的分词原理:利用一个中文词库,确定汉字之间的关联概率,汉字间概率大的组成词组,形成分词结果
安装
直接pip install jieba
精准模式
将语句最精确的切分,不存在冗余数据,适合做文本分析。
精确模式
jieba.cut(text, cut_all=False)
全模式
将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据。
全模式
jieba.cut(text, cut_all=True)
全模式与精确模式的不同在于,全模式存在冗余数据,是将存在可能的词语全部切分出来,从第一个字到最后一个字遍历作为词语第一个字。例如:以“吉”开头的词语包括“吉林”,“吉林省”,以“长”开头的名词包括“长春”“长春市”
搜索引擎模式
在精确模式的基础上,对长词再次进行切分,提高召回率,适合用于搜索引擎分词。
搜索引擎模式
jieba.lcut_for_search(text)
示例:
import jieba
ls = jieba.lcut_for_search("全国计算机等级考试")
print(ls)
添加分词词典
add_word()
在分词词典中增加新词
示例:
import jieba
jieba.add_word("等级考试")
ls = jieba.lcut_for_search("全国计算机等级考试")
print(ls)
小结
如果希望对文本精准分词,不产生冗余,那么选择精准模式就行。如果希望保证准确率,那么就选择全模式。