7.4.2 jieba 分词

7.4.2 jieba 分词

jieba库主要提供分词功能,可以辅助自定义分词词典。jieba的分词原理是利用一个中文词库,将待分词的内容与分词词库进行比对,通过图结构和动态规划方法找到最大概率的词组。

jieba分词的原理:

①利用一个中文词库,确定汉字之间的关联概率;

②汉字间关联概率大的组成词组,形成分词结果;

③除了分词,用户还可以添加自定义的词组。

jieba库支持3种分词模式:

①精确模式,将句子最精确地切开,适合文本分析;

②全模式,把句子中所有可以成词的词语都扫描出来,速度快,但不能消除歧义,有冗余;

③搜索引擎模式,在精确模式的基础上,对长词再次进行切分,提高召回率,适合用于搜索引擎分词。

jieba是第三方库,需要先安装才能使用。在命令行中安装的命令是:

jieba库常用分词函数如表7-7所示。

表7-7 jieba库常用分词函数

需要使用jieba分词时,需要先导入jieba库。

【案例7-2】 人物出场次数统计。

人物出场次数统计是Python中词汇统计常见的案例。中文文章需要分词才能进行词频统计,中文分词用的是第三方库jieba库。

用jieba库进行人物出场统计时,很多非人名的词汇会出现,可以将人物名称先提出来存放到文件中。同时有些人的名字会出现特殊的情况,如《天龙八部》,在前半部中乔峰的名字是乔峰,后半部中名字变成了萧峰。再如,天山童姥有时也叫童姥。还有很多人的名字比较生僻,在分词时经常会出现不准确的切分,所以需要进行一些相关的处理。

统计《天龙八部》的人物出场次数前10的人物名称及次数。

运行结果如图7-3所示。

图7-3 人物出场次数前10的人物名称及次数