赞
踩
Jieba中文含义结巴,jieba库是目前做的最好的python分词组件。首先它的安装十分便捷,只需要使用pip安装;其次,它不需要另外下载其它的数据包,在这一点上它比其余五款分词工具都要便捷。另外,jieba库支持的文本编码方式为utf-8。
Jieba库包含许多功能,如分词、词性标注、自定义词典、关键词提取。基于jieba的关键词提取有两种常用算法,一是TF-IDF算法;二是TextRank算法。基于jieba库的分词,包含三种分词模式:
Jieba官方文档:https://pypi.org/project/jieba/
Jieba库安装比较便捷,只需要在命令框中输入:pip install jieba;或者在pycharm中,通过setting-project安装。
- import jieba
- import jieba.posseg as posseg
- txt1 ='''
- 文本一:
- 人民网华盛顿3月28日电(记者郑琪)据美国约翰斯·霍普金斯大学疫情实时监测系统显示,截至美东时间3月28日下午6时,
- 美国已经至少有新冠病毒感染病例121117例,其中包括死亡病例2010例。
- 与大约24小时前相比,美国确诊病例至少增加了20400例,死亡病例至少增加了466例。
- 目前美国疫情最为严重的仍是纽约州,共有确诊病例至少52410例。此外,新泽西州有确诊病例11124例,加利福尼亚州有5065例,
- 密歇根州有4650例,马塞诸塞州有4257例,华盛顿州有4008例。
- '''
- # 精确模式
- seg_list = jieba.cut(txt1,cut_all=False)
- # seg_list = jieba.cut_for_search(txt1)
- print("jieba分词:" + "/ ".join(seg_list)) # 精确模式
- list = posseg.cut(txt1)
- tag_list =[]
- for tag in list :
- pos_word = { }
- pos_word[1] = tag.word
- pos_word[2] = tag.flag
- tag_list.append(pos_word)
- print('jieba词性标注:',tag_list)

- 结果展示:
- jieba分词:
- / 文本/ 一/ :/
- / 人民网/ 华盛顿/ 3/ 月/ 28/ 日电/ (/ 记者/ 郑琪/ )/ 据/ 美国/ 约翰斯/ ·/ 霍普金斯大学/ 疫情/ 实时/ 监测/ 系统/ 显示/ ,/ 截至/ 美/ 东/ 时间/ 3/ 月/ 28/ 日/ 下午/ 6/ 时/ ,/
- / 美国/ 已经/ 至少/ 有/ 新冠/ 病毒感染/ 病例/ 121117/ 例/ ,/ 其中/ 包括/ 死亡/ 病例/ 2010/ 例/ 。/
- / 与/ 大约/ 24/ 小时/ 前/ 相比/ ,/ 美国/ 确诊/ 病例/ 至少/ 增加/ 了/ 20400/ 例/ ,/ 死亡/ 病例/ 至少/ 增加/ 了/ 466/ 例/ 。/
- / 目前/ 美国/ 疫情/ 最为/ 严重/ 的/ 仍/ 是/ 纽约州/ ,/ 共有/ 确诊/ 病例/ 至少/ 52410/ 例/ 。/ 此外/ ,/ 新泽西州/ 有/ 确诊/ 病例/ 11124/ 例/ ,/ 加利福尼亚州/ 有/ 5065/ 例/ ,/
- / 密歇根州/ 有/ 4650/ 例/ ,/ 马塞诸塞/ 州/ 有/ 4257/ 例/ ,/ 华盛顿州/ 有/ 4008/ 例/ 。/
-
- jieba词性标注: [{1: '\n', 2: 'x'}, {1: '文本', 2: 'n'}, {1: '一', 2: 'm'}, {1: ':', 2: 'x'}, {1: '\n', 2: 'x'}, {1: '人民网', 2: 'n'}, {1: '华盛顿', 2: 'ns'}, {1: '3', 2: 'm'}, {1: '月', 2: 'm'}, {1: '28', 2: 'm'}, {1: '日电', 2: 'j'}, {1: '(', 2: 'x'}, {1: '记者', 2: 'n'}, {1: '郑琪', 2: 'nr'}, {1: ')', 2: 'x'}, {1: '据', 2: 'p'}, {1: '美国', 2: 'ns'}, {1: '约翰斯', 2: 'nrt'}, {1: '·', 2: 'x'}, {1: '霍普金斯大学', 2: 'nt'}, {1: '疫情', 2: 'n'}, {1: '实时', 2: 'd'}, {1: '监测', 2: 'vn'}, {1: '系统', 2: 'n'}, {1: '显示', 2: 'v'}, {1: ',', 2: 'x'}, {1: '截至', 2: 'v'}, {1: '美', 2: 'ns'}, {1: '东', 2: 'ns'}, {1: '时间', 2: 'n'}, {1: '3', 2: 'm'}, {1: '月', 2: 'm'}, {1: '28', 2: 'm'}, {1: '日', 2: 'm'}, {1: '下午', 2: 't'}, {1: '6', 2: 'm'}, {1: '时', 2: 'n'}, {1: ',', 2: 'x'}, {1: '\n', 2: 'x'}, {1: '美国', 2: 'ns'}, {1: '已经', 2: 'd'}, {1: '至少', 2: 'd'}, {1: '有', 2: 'v'}, {1: '新', 2: 'a'}, {1: '冠', 2: 'n'}, {1: '病毒感染', 2: 'n'}, {1: '病例', 2: 'n'}, {1: '121117', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '其中', 2: 'r'}, {1: '包括', 2: 'v'}, {1: '死亡', 2: 'v'}, {1: '病例', 2: 'n'}, {1: '2010', 2: 'm'}, {1: '例', 2: 'v'}, {1: '。', 2: 'x'}, {1: '\n', 2: 'x'}, {1: '与', 2: 'p'}, {1: '大约', 2: 'd'}, {1: '24', 2: 'm'}, {1: '小时', 2: 'n'}, {1: '前', 2: 'f'}, {1: '相比', 2: 'v'}, {1: ',', 2: 'x'}, {1: '美国', 2: 'ns'}, {1: '确诊', 2: 'v'}, {1: '病例', 2: 'n'}, {1: '至少', 2: 'd'}, {1: '增加', 2: 'v'}, {1: '了', 2: 'ul'}, {1: '20400', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '死亡', 2: 'v'}, {1: '病例', 2: 'n'}, {1: '至少', 2: 'd'}, {1: '增加', 2: 'v'}, {1: '了', 2: 'ul'}, {1: '466', 2: 'm'}, {1: '例', 2: 'v'}, {1: '。', 2: 'x'}, {1: '\n', 2: 'x'}, {1: '目前', 2: 't'}, {1: '美国', 2: 'ns'}, {1: '疫情', 2: 'n'}, {1: '最为', 2: 'd'}, {1: '严重', 2: 'a'}, {1: '的', 2: 'uj'}, {1: '仍', 2: 'd'}, {1: '是', 2: 'v'}, {1: '纽约州', 2: 'ns'}, {1: ',', 2: 'x'}, {1: '共有', 2: 'v'}, {1: '确诊', 2: 'v'}, {1: '病例', 2: 'n'}, {1: '至少', 2: 'd'}, {1: '52410', 2: 'm'}, {1: '例', 2: 'v'}, {1: '。', 2: 'x'}, {1: '此外', 2: 'c'}, {1: ',', 2: 'x'}, {1: '新泽西州', 2: 'ns'}, {1: '有', 2: 'v'}, {1: '确诊', 2: 'v'}, {1: '病例', 2: 'n'}, {1: '11124', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '加利福尼亚州', 2: 'ns'}, {1: '有', 2: 'v'}, {1: '5065', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '\n', 2: 'x'}, {1: '密歇根州', 2: 'ns'}, {1: '有', 2: 'v'}, {1: '4650', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '马塞诸塞', 2: 'nr'}, {1: '州', 2: 'n'}, {1: '有', 2: 'v'}, {1: '4257', 2: 'm'}, {1: '例', 2: 'v'}, {1: ',', 2: 'x'}, {1: '华盛顿州', 2: 'ns'}, {1: '有', 2: 'v'}, {1: '4008', 2: 'm'}, {1: '例', 2: 'v'}, {1: '。', 2: 'x'}, {1: '\n', 2: 'x'}]
THULAC(THU Lexical Analyzer for Chinese)由清华大学自然语言处理与社会人文计算实验室研制推出的一套中文词法分析工具包,具有中文分词和词性标注功能。THULAC集成了目前世界上规模最大的人工分词和词性标注中文语料库(约含5800万字),模型标注能力强大。该工具包在标准数据集Chinese Treebank(CTB5)上分词的F1值可达97.3%,词性标注的F1值可达到92.9%。同时进行分词和词性标注速度为300KB/s,每秒可处理约15万字。只进行分词速度可达到1.3MB/s。总的来说,可以理解为thulac训练的分词、词性标注语料库很大,性能优良。
Thulac的简单分词,可以通过python程序import thulac,新建thulac.thulac(args)类,其中args为程序的参数,之后可以通过调用thulac.cut()进行单句分词。
Thulac使用参考文档:http://thulac.thunlp.org/
Thulac库的安装也较为简单,不需要下载特别的数据包,安装方法:pip install thulac。
- # -*- coding: utf-8 -*-
- import thulac
- txt1 ='''
- 文本一:
- 人民网华盛顿3月28日电(记者郑琪)据美国约翰斯·霍普金斯大学疫情实时监测系统显示,截至美东时间3月28日下午6时,
- 美国已经至少有新冠病毒感染病例121117例,其中包括死亡病例2010例。
- 与大约24小时前相比,美国确诊病例至少增加了20400例,死亡病例至少增加了466例。
- 目前美国疫情最为严重的仍是纽约州,共有确诊病例至少52410例。此外,新泽西州有确诊病例11124例,加利福尼亚州有5065例,
- 密歇根州有4650例,马塞诸塞州有4257例,华盛顿州有4008例。
- '''
- #seg_only设置词性标注与否,deli设置分词以后以什么分隔
- thu1 = thulac.thulac(seg_only=False, deli='_
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。