NLP(3): 分词和拼写纠错

第一节、Word Segmentation

1、 Tools

  • Jieba
  • SnowNLP
  • LTP
  • HanNLP

使用jieba

import  jieba
seg_list=jieba.cut("贪心学院专注于人工智能教育",cut_all=False)
print("/".join(seg_list))
jieba.add_word("贪心学院")
seg_list=jieba.cut("贪心学院专注于人工智能教育",cut_all=False)
print("/".join(seg_list))

在这里插入图片描述

2、segmentation method 1: Max matching

Forward max-matching

前向最大匹配:
在这里插入图片描述
定义一个参数:max_len=5,希望匹配到的单词越长越好

在这里插入图片描述
每次取五个,与词典中对比是否存在该词,如果不存在,从右边开始减一,直到匹配到目标单词为止。结束该次计算
将一次取五个的这个框向右移动上一次计算的单词的个数的步数。

backward-max matching

从后到前匹配,90%以上的与forward max-matching匹配到的一样
在这里插入图片描述

最大匹配的缺点

  • 无法细分,有时候细分的结果是更好的
  • 局部最优解,贪心未必最优
  • 效率低,max_len越长,时间复杂度越高
  • 歧义:无法考虑语义,看到的只是一个单词,不是语意(即上下文)]

3、segmentation method 2:Incorporate Semantic(考虑语义)

build a black box,将分词后的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值