在自然语言处理(NLP)中,中文文本处理的第一步通常是分词。由于中文没有像英文那样的空格分隔单词,因此需要智能工具来识别词语边界。
此时,jieba 是最常用且强大的中文分词库之一。
本文介绍 jieba 的安装与核心用法。
1. jieba 简介
jieba 是一个优秀的中文分词库,名字来源于'结巴'二字。它基于前缀词典实现高效的词图扫描算法,结合 HMM(隐马尔可夫模型)来识别新词。
简单来说,它能帮你:
- 把句子切分成有意义的词语;
- 自动识别新词;
- 支持关键词提取;
- 支持自定义词典。
2. 安装 jieba
使用 pip 一键安装即可:
pip install jieba
安装完成后,在 Python 中导入:
import jieba
3. jieba 的三种分词模式
jieba 提供了三种常用分词模式,适用于不同场景。
精确模式(默认)
尽量切分出最精确的词语,适合文本分析。
import jieba
text = "我来到北京清华大学"
words = jieba.cut(text, cut_all=False)
print("精确模式:", "/".join(words))
输出:
精确模式: 我/来到/北京/清华大学
这种模式是最常用的,也是默认模式。
全模式
找出句子中所有可能的词(会有冗余),速度最快但不精确。
words = jieba.cut("我来到北京清华大学", cut_all=True)
print("全模式:", "/".join(words))
输出:
全模式: 我/来到/北京/清华/清华大学/华大/大学
全模式适合搜索引擎分词(即'匹配尽可能多的词')。
搜索引擎模式
在精确模式的基础上,再次对长词进行细分,适合用于搜索引擎索引。
words = jieba.cut_for_search("小明硕士毕业于中国科学院计算所")
print("搜索引擎模式:", "/".join(words))


