jieba结巴分词与基于python3.6,ltp3.4.0的ltp中文分词

1.结巴分词:记得先安装jieba库
在这里插入图片描述
在这里插入图片描述

import jieba


jieba.load_userdict("userdict.txt")
sent = '在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根节点出发深度探索解空间树。'
# 全模式
wordlist = jieba.cut(sent, cut_all=True)
print('|'.join(wordlist))

# 精确细分
wordlist = jieba.cut(sent) # cut_all=False
print('|'.join(wordlist))

# 搜索引擎模式
wordlist = jieba.cut_for_search(sent)
print('|'.join(wordlist))

运行结果:
在这里插入图片描述

2.ltp中文分词

from pyltp import Segmentor


model_path = "E:\\ltp_data_v3.4.0\\cws.model"
segmentor = Segmentor()
segmentor.load(model_path)
words = segmentor.segment("在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根节点出发深度探索解空间树。")
print("|".join(words))

在这里插入图片描述
分词后可以自定义字典进行简单处理:

from pyltp import Segmentor


# 分词后处理
postdict = {"解|空间": "解空间", "深度|优先": "深度优先"}
model_path = "E:\\ltp_data_v3.4.0\\cws.model"
segmentor = Segmentor()
segmentor.load(model_path)
words = segmentor.segment("在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根节点出发深度探索解空间树。")
seg_sent = "|".join(words)
for key in postdict:
    seg_sent = seg_sent.replace(key, postdict[key])

print(seg_sent)

在这里插入图片描述
当然也可以增加用户自定义词典(新建一个txt文件)进行处理:
在这里插入图片描述
此图示例参考郑捷的《NLP汉语自然语言处理原理与实践》
第一列是词,第二列到第n列是该词的候选词性,如果仅用于分词,该词的词性可以忽略。

from pyltp import Segmentor


# 加入用户词典
model_path = "E:\\ltp_data_v3.4.0\\cws.model"
user_dict = "fulluserdict.txt"
segmentor = Segmentor()
segmentor.load_with_lexicon(model_path, user_dict)

words = segmentor.segment("在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根节点出发深度探索解空间树。")
print("|".join(words))

在这里插入图片描述
其中fulluserdict.txt放在该项目路径中,注意为utf-8格式:
在这里插入图片描述
参考书籍:《NLP汉语自然语言处理原理与实践》郑捷著。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值