结巴分词之用户自定义词典的使用

jieba 分词简介:

jieba 对于一长段文字,其分词原理大体可分为三部:
1.首先用正则表达式将中文段落粗略的分成一个个句子。
2.将每个句子构造成有向无环图,之后寻找最佳切分方案。
3.最后对于连续的单字,采用HMM模型将其再次划分。

三种分词模式:

精确模式:试图将句子最精确地切开,适合文本分析;
全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词;

添加用户定义词典

很多时候我们需要针对自己的场景进行分词,会有一些领域内的专有词汇

  • 1.可以用jieba.load_userdict(file_name)加载用户字典
  • 2.少量的词汇可以自己用下面方法手动添加:
    • 用add_word(word,freq=None,tag=None)和del_word(word)在程序中动态修改词典
    • 用suggest_freq(segment,tune=True)可调节单个词语的词频,使其能(或不能)被分出来。
#-*-coding:utf-8-*-
import jieba

file = 'file.csv' 
file_userdict = 'userdict.txt'
jieba.load_userdict(file_userdict)

with open(file,'r',encoding='UTF-8') as f:
    for line in f.readlines():
        print(line)
        seg_list = jieba.cut(line,cut_all=False,HMM=True)
        print("/".join(seg_list))
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值