Python jieba结巴分词原理及用法解析


Posted in Python onNovember 05, 2020

1、简要说明

结巴分词支持三种分词模式,支持繁体字,支持自定义词典

2、三种分词模式

全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义

精简模式:把句子最精确的分开,不会添加多余单词,看起来就像是把句子分割一下

搜索引擎模式:在精简模式下,对长词再度切分

# -*- encoding=utf-8 -*-

import jieba

if __name__ == '__main__':
  str1 = '我去北京天安门广场跳舞'
  a = jieba.lcut(str1, cut_all=True) # 全模式
  print('全模式:{}'.format(a))
  b = jieba.lcut(str1, cut_all=False) # 精简模式
  print('精简模式:{}'.format(b))
  c = jieba.lcut_for_search(str1) # 搜索引擎模式
  print('搜索引擎模式:{}'.format(c))

运行

Python jieba结巴分词原理及用法解析

3、某个词语不能被分开

# -*- encoding=utf-8 -*-

import jieba

if __name__ == '__main__':
  str1 = '桃花侠大战菊花怪'
  b = jieba.lcut(str1, cut_all=False) # 精简模式
  print('精简模式:{}'.format(b))
  # 如果不把桃花侠分开
  jieba.add_word('桃花侠')
  d = jieba.lcut(str1) # 默认是精简模式
  print(d)

运行

Python jieba结巴分词原理及用法解析

4、 某个单词必须被分开

# -*- encoding=utf-8 -*-

import jieba

if __name__ == '__main__':
  # HMM参数,默认为True
  '''HMM 模型,即隐马尔可夫模型(Hidden Markov Model, HMM),是一种基于概率的统计分析模型,
  用来描述一个系统隐性状态的转移和隐性状态的表现概率。
  在 jieba 中,对于未登录到词库的词,使用了基于汉字成词能力的 HMM 模型和 Viterbi 算法,
  其大致原理是:
  采用四个隐含状态,分别表示为单字成词,词组的开头,词组的中间,词组的结尾。
  通过标注好的分词训练集,可以得到 HMM 的各个参数,然后使用 Viterbi 算法来解释测试集,得到分词结果。
  '''
  str1 = '桃花侠大战菊花怪'
  b = jieba.lcut(str1, cut_all=False, HMM=False) # 精简模式,且不使用HMM模型
  print('精简模式:{}'.format(b))
  # 分开大战为大和战
  jieba.suggest_freq(('大', '战'), True)
  e = jieba.lcut(str1, HMM=False) # 不使用HMM模型
  print('分开:{}'.format(e))

运行

Python jieba结巴分词原理及用法解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中定义结构体的方法
Mar 04 Python
python字符串排序方法
Aug 29 Python
Python基础学习之常见的内建函数整理
Sep 06 Python
python实现朴素贝叶斯分类器
Mar 28 Python
Python OpenCV利用笔记本摄像头实现人脸检测
Aug 20 Python
Django文件上传与下载(FileFlid)
Oct 06 Python
pycharm运行scrapy过程图解
Nov 22 Python
python实现的分析并统计nginx日志数据功能示例
Dec 21 Python
Python数据存储之 h5py详解
Dec 26 Python
Django框架配置mysql数据库实现过程
Apr 22 Python
Django表单提交后实现获取相同name的不同value值
May 14 Python
python爬取天气数据的实例详解
Nov 20 Python
Python根据字符串调用函数过程解析
Nov 05 #Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
Nov 05 #Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 #Python
详解Django中异步任务之django-celery
Nov 05 #Python
Python Django路径配置实现过程解析
Nov 05 #Python
Python基于tkinter canvas实现图片裁剪功能
Nov 05 #Python
Python利用matplotlib绘制散点图的新手教程
Nov 05 #Python
You might like
PHP 程序授权验证开发思路
2009/07/09 PHP
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
PHP持久连接mysql_pconnect()函数使用介绍
2012/02/05 PHP
ThinkPHP实现二级循环读取的方法
2014/11/03 PHP
JS修改iframe页面背景颜色的方法
2015/04/01 Javascript
详解NodeJS框架express的路径映射(路由)功能及控制
2017/03/24 NodeJs
bootstrap-Treeview实现级联勾选
2017/11/23 Javascript
Vue列表循环从指定下标开始的多种解决方案
2020/04/08 Javascript
vue自定义组件实现双向绑定
2021/01/13 Vue.js
python中pass语句用法实例分析
2015/04/30 Python
python计算auc指标实例
2017/07/13 Python
CentOS下使用yum安装python-pip失败的完美解决方法
2017/08/16 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
一篇文章弄懂Python中所有数组数据类型
2019/06/23 Python
pandas读取CSV文件时查看修改各列的数据类型格式
2019/07/07 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
python3的数据类型及数据类型转换实例详解
2019/08/20 Python
解决Django Haystack全文检索为空的问题
2020/05/19 Python
Python实现冒泡排序算法的完整实例
2020/11/04 Python
python urllib和urllib3知识点总结
2021/02/08 Python
洲际酒店集团美国官网:IHG美国
2017/11/16 全球购物
Under Armour安德玛法国官网:美国高端运动科技品牌
2018/06/29 全球购物
社会实践自我鉴定
2013/11/07 职场文书
社区学雷锋活动策划方案
2014/01/30 职场文书
工厂保安员岗位职责
2014/01/31 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
《草虫的村落》教学反思
2014/02/16 职场文书
亲子活动总结
2014/04/26 职场文书
中职毕业生自我鉴定范文(3篇)
2014/09/28 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
师德师风个人总结
2015/02/06 职场文书
钢铁是怎样炼成的读书笔记
2015/06/29 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
2016年第二十届“母亲节暨幸福工程救助贫困母亲活动日”活动总结
2016/04/06 职场文书
导游词之扬州大明寺
2019/10/09 职场文书
python中os.path.join()函数实例用法
2021/05/26 Python