简述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执行系统命令的常见方法(全)
Oct 22 Python
使用Python来编写HTTP服务器的超级指南
Feb 18 Python
Python实现读取json文件到excel表
Nov 18 Python
python中yaml配置文件模块的使用详解
Apr 27 Python
Python中的groupby分组功能的实例代码
Jul 11 Python
简单瞅瞅Python vars()内置函数的实现
Sep 27 Python
python 消除 futureWarning问题的解决
Dec 25 Python
Tensorflow之梯度裁剪的实现示例
Mar 08 Python
django实现日志按日期分割
May 21 Python
Django Session和Cookie分别实现记住用户登录状态操作
Jul 02 Python
使用python脚本自动生成K8S-YAML的方法示例
Jul 12 Python
Python wordcloud库安装方法总结
Dec 31 Python
python自动化调用百度api解决验证码
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
You might like
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
2011/08/15 PHP
PHP中::、->、self、$this几种操作符的区别介绍
2013/04/24 PHP
php利用事务处理转账问题
2015/04/22 PHP
PHP命名空间namespace及use的简单用法分析
2018/08/03 PHP
jQuery使用动态渲染表单功能完成ajax文件下载
2013/01/15 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
基于javascript制作经典传统的拼图游戏
2016/03/22 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
javascript简单进制转换实现方法
2016/11/24 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
JavaScript 巧学巧用
2017/05/23 Javascript
JS创建Tag标签的方法详解
2017/06/09 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
Angularjs使用过滤器完成排序功能
2017/09/20 Javascript
Vue Router的懒加载路径的解决方法
2018/06/21 Javascript
微信小程序扫描二维码获取信息实例详解
2019/05/07 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
Python 错误和异常小结
2013/10/09 Python
python模拟登录百度贴吧(百度贴吧登录)实例
2013/12/18 Python
Django中URL视图函数的一些高级概念介绍
2015/07/20 Python
python线程、进程和协程详解
2016/07/19 Python
python如何实现内容写在图片上
2018/03/23 Python
python使用正则表达式(Regular Expression)方法超详细
2019/12/30 Python
django-利用session机制实现唯一登录的例子
2020/03/16 Python
python 数据库查询返回list或tuple实例
2020/05/15 Python
Python unittest单元测试openpyxl实现过程解析
2020/05/27 Python
python的help函数如何使用
2020/06/11 Python
Keras自动下载的数据集/模型存放位置介绍
2020/06/19 Python
python实现AHP算法的方法实例(层次分析法)
2020/09/09 Python
八年级美术教学反思
2014/02/02 职场文书
企业厂务公开实施方案
2014/03/26 职场文书
代理协议书
2014/04/22 职场文书
医院标语大全
2014/06/23 职场文书
少先队工作总结2015
2015/05/13 职场文书
学习习近平主席讲话心得体会
2016/01/20 职场文书
MySQL 不等于的三种使用及区别
2021/06/03 MySQL