简述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的Bottle框架写一个简单的服务接口的示例
Aug 25 Python
Python中shutil模块的学习笔记教程
Apr 04 Python
Python中with及contextlib的用法详解
Jun 08 Python
详解Python中for循环是如何工作的
Jun 30 Python
Python中生成器和迭代器的区别详解
Feb 10 Python
彻底理解Python中的yield关键字
Apr 01 Python
用Python实现BP神经网络(附代码)
Jul 10 Python
Python使用matplotlib 模块scatter方法画散点图示例
Sep 27 Python
python实现矩阵和array数组之间的转换
Nov 29 Python
关于pytorch中全连接神经网络搭建两种模式详解
Jan 14 Python
python Django框架快速入门教程(后台管理)
Jul 21 Python
Python实现视频自动打码的示例代码
Apr 08 Python
python自动化调用百度api解决验证码
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
You might like
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
javascript 继承实现方法
2009/08/26 Javascript
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
ie中js创建checkbox默认选中问题探讨
2013/10/21 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
Javascript this 关键字 详解
2014/10/22 Javascript
jquery加载图片时以淡入方式显示的方法
2015/01/14 Javascript
深入理解JavaScript系列(46):代码复用模式(推荐篇)详解
2015/03/04 Javascript
javascript实现超炫的向上滑行菜单实例
2015/08/03 Javascript
JS实现网页Div层Clone拖拽效果
2015/09/26 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
JS如何设置iOS中微信浏览器的title
2016/11/22 Javascript
利用D3.js实现最简单的柱状图示例代码
2016/12/09 Javascript
jQuery响应滚动条事件功能示例
2017/10/14 jQuery
深入浅析vue组件间事件传递
2017/12/29 Javascript
浅谈React的最大亮点之虚拟DOM
2018/05/29 Javascript
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
JS实现简易日历效果
2021/01/25 Javascript
Python实现信用卡系统(支持购物、转账、存取钱)
2016/06/24 Python
python opencv 图像尺寸变换方法
2018/04/02 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
基于HTML5 Canvas 实现弹出框效果
2017/06/05 HTML / CSS
25道Java面试题集合
2013/05/21 面试题
电脑饰品店的创业计划书
2014/01/21 职场文书
关于安全演讲稿
2014/05/09 职场文书
励志演讲稿大全
2014/08/21 职场文书
119消防日活动总结
2014/08/29 职场文书
党员对照检查材料整改措施思想汇报
2014/09/26 职场文书
不听老师话的万能检讨书
2014/10/04 职场文书
2014年科普工作总结
2014/12/06 职场文书
2015年学校管理工作总结
2015/07/20 职场文书
职场新人知识:如何制定一份合理的工作计划?
2019/09/11 职场文书
解决Go gorm踩过的坑
2021/04/30 Golang
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python