简述python四种分词工具,盘点哪个更好用?


Posted in Python onApril 13, 2021

大家好,我是安果!

分词在自然语言处理中有着常见的场景,比如从一篇文章自动提取关键词就需要用到分词工具,中文搜索领域同样离不开分词

Python 中有很多开源的分词工具,下面给大家介绍几款常见的分词依赖库

1. jieba 分词

“结巴” 分词,GitHub 最受欢迎的分词工具,立志做最好的 Python 中文分词组件,支持多种分词模式,支持自定义词典

github star:26k

代码示例

import jieba

strs=["我来到北京清华大学","乒乓球拍卖完了","中国科学技术大学"]

for str in strs:
    seg_list = jieba.cut(str,use_paddle=True) # 使用paddle模式
    print("Paddle Mode: " + '/'.join(list(seg_list)))

seg_list = jieba.cut("我来到北京清华大学", cut_all=True)
print("全模式: " + "/ ".join(seg_list))  # 全模式

seg_list = jieba.cut("我来到北京清华大学", cut_all=False)
print("精确模式: " + "/ ".join(seg_list))  # 精确模式

seg_list = jieba.cut("他来到了网易杭研大厦")  # 默认是精确模式
print("新词识别:", ",".join(seg_list))

seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")  # 搜索引擎模式
print("搜索引擎模式:", ".join(seg_list))

输出:

【全模式】: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学

【精确模式】: 我/ 来到/ 北京/ 清华大学

【新词识别】:他, 来到, 了, 网易, 杭研, 大厦    (此处,“杭研”并没有在词典中,但是也被Viterbi算法识别出来了)

【搜索引擎模式】: 小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所, 后, 在, 日本, 京都, 大学, 日本京都大学, 深造

项目地址:

https://github.com/fxsjy/jieba

2. pkuseg 分词

pkuseg 是北大语言计算与机器学习研究组开源的一款分词工具

它的特点是支持多领域分词,目前支持新闻领域,网络领域,医药领域,旅游领域,以及混合领域的分词预训练模型,用户可以自由地选择不同的模型

相比通用分词工具,它的分词准确率更高 

github star:5.4k

代码示例

import pkuseg

seg = pkuseg.pkuseg()           # 以默认配置加载模型
text = seg.cut('python是一门很棒的语言')  # 进行分词
print(text)

输出

['python', '是', '一', '门', '很', '棒', '的', '语言']

项目地址:

https://github.com/lancopku/pkuseg-python

3. FoolNLTK 分词

基于 BiLSTM 模型训练而成,据说可能是最准的开源中文分词,同样支持用户自定义词典

GitHub  star: 1.6k

代码示例

import fool

text = "一个傻子在北京"
print(fool.cut(text))
# ['一个', '傻子', '在', '北京']

项目地址:

https://github.com/rockyzhengwu/FoolNLTK

4. THULAC

THULAC 由清华大学自然语言处理与社会人文计算实验室研制推出的一套中文词法分析工具包

具有词性标注功能,能分析出某个词是名词还是动词或者形容词

github star:1.5k

代码示例

 import thulac  

 thu1 = thulac.thulac()  #默认模式
 text = thu1.cut("我爱北京天安门", text=True)  #进行一句话分词
 print(text) # 我_r 爱_v 北京_ns 天安门_ns
 代码示例2
 thu1 = thulac.thulac(seg_only=True)  #只进行分词,不进行词性标注
 thu1.cut_f("input.txt", "output.txt")  #对input.txt文件内容进行分词,输出到output.txt

项目地址:

https://github.com/thunlp/THULAC-Python

目前我在用的还是结巴分词,配合用户自定义词典,解决常见的网络词语

你在用什么分词工具,欢迎留下你的意见

以上就是简述python四种分词工具,盘点哪个更好用?的详细内容,更多关于python 分词工具的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python对字典进行排序实例
Sep 25 Python
Python正则表达式经典入门教程
May 22 Python
python监控linux内存并写入mongodb(推荐)
Sep 11 Python
Windows系统下多版本pip的共存问题详解
Oct 10 Python
python字符串常用方法
Jun 14 Python
python对list中的每个元素进行某种操作的方法
Jun 29 Python
Python 十六进制整数与ASCii编码字符串相互转换方法
Jul 09 Python
python实现K近邻回归,采用等权重和不等权重的方法
Jan 23 Python
Python实现判断一个整数是否为回文数算法示例
Mar 02 Python
Python使用lambda表达式对字典排序操作示例
Jul 25 Python
Python Numpy 控制台完全输出ndarray的实现
Feb 19 Python
Python实现分数序列求和
Feb 25 Python
python自动化调用百度api解决验证码
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
You might like
PHP的password_hash()使用实例
2014/03/17 PHP
PHP扩展迁移为PHP7扩展兼容性问题记录
2016/02/15 PHP
Jquery实现自定义tooltip示例代码
2014/02/12 Javascript
Javascript中typeof 用法小结
2015/05/12 Javascript
javascript父子页面通讯实例详解
2015/07/17 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
2016/03/22 Javascript
利用C/C++编写node.js原生模块的方法教程
2017/07/07 Javascript
微信小程序 转发功能的实现
2017/08/04 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
JavaScript实现美化滑块效果
2019/05/17 Javascript
微信小程序获取当前位置和城市名
2019/11/13 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
[56:35]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第一局
2016/03/06 DOTA
python进阶教程之动态类型详解
2014/08/30 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
2015/04/09 Python
详解python单例模式与metaclass
2016/01/15 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
对python3新增的byte类型详解
2018/12/04 Python
Python子类继承父类构造函数详解
2019/02/19 Python
python3-flask-3将信息写入日志的实操方法
2019/11/12 Python
python matplotlib 画dataframe的时间序列图实例
2019/11/20 Python
python实现高斯判别分析算法的例子
2019/12/09 Python
Python类继承和多态原理解析
2020/02/05 Python
python 画条形图(柱状图)实例
2020/04/24 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
2020/10/15 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
2020/12/09 Python
美国排名第一的在线葡萄酒商店:Wine.com
2016/09/07 全球购物
JAKO-O德国野酷台湾站:德国首屈一指的婴幼童用品品牌
2019/01/14 全球购物
销售人员中英文自荐信
2013/09/22 职场文书
酒店行政人事部经理职务说明书
2014/02/26 职场文书
个人担保书范文
2014/05/20 职场文书
党员个人公开承诺书
2014/08/29 职场文书
开会通知
2015/04/20 职场文书
实习证明格式范文
2015/06/16 职场文书