本文主要介绍Python结巴口吃分词的原理和用法分析,并通过示例代码进行详细介绍。对大家的学习或者工作都有一定的参考价值,有需要的朋友可以参考一下。
1、简要说明
结巴分词支持三种分词模式,繁体中文和自定义词典。
2、三种分词模式
全模式:扫描出一个句子中所有能成词的词。它非常快,但它不能解决歧义。
简化模式:最准确的分句,不加多余的词,看起来像是拆句。
搜索引擎模式:在简化模式下,长词被再次切分。
# -*-编码=utf-8 -*-
进口洁霸
if __name__=='__main__ ':
Str1='我去北京天安门广场跳舞'
A=jieba.lcut (str1,cut _ all=true) #完全模式
打印('完整模式:{} '。格式(a))
B=jieba.lcut (str1,cut _ all=false) #简化模式
打印('简化模式:{} '。格式(b))
C=jieba.lcut_for_search(str1) #搜索引擎模式
打印('搜索引擎模式:{} '。格式(c))
奔跑
3、某个词语不能被分开
# -*-编码=utf-8 -*-
进口洁霸
if __name__=='__main__ ':
Str1='桃花人vs菊花怪'
B=jieba.lcut (str1,cut _ all=false) #简化模式
打印('简化模式:{} '。格式(b))
#如果不分开桃花男
Jieba.add_word('桃花人')
D=jieba.lcut(str1) #默认为简化模式。
打印(d)
奔跑
4、 某个单词必须被分开
# -*-编码=utf-8 -*-
进口洁霸
if __name__=='__main__ ':
# HMM参数,默认值为True
HMM模型,即隐马尔可夫模型,HMM),是一种基于概率的统计分析模型,
用于描述系统隐性状态的转移以及隐性状态的执行概率。
在街霸中,对于词库中没有注册的词,使用了基于汉字组词能力的HMM模型和Viterbi算法。
总的原则是:
采用了四种隐含状态,分别表示为构词法、短语开头、短语中间和短语结尾。
通过标记的分词训练集,得到HMM的参数,然后用Viterbi算法对测试集进行解释,得到分词结果。
'''
Str1='桃花人vs菊花怪'
B=jieba.lcut (str1,cut _ all=false,HMM=false) # reduced mode,不使用HMM模型。
打印('简化模式:{} '。格式(b))
#分开战争,为和平而战
Jieba.suggest_freq(('大','战'),真)
E=jieba.lcut(str1,HMM=False) #不要使用HMM模型
打印(' separate: {} '。格式(e))
奔跑
这就是本文的全部内容。希望对大家的学习有帮助,支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。