手把手陪你学文本分析——Chapter 1 分词的基础操作

Chapter 1.1 分词的基础操作

知识点1.1.1 分词方法的类型

1、基于规则的分词

定义:将每个字符串与词典中的每个词进行匹配,若匹配上则进行切分,反之则不进行切分

优势:简单高效

劣势:不能较好处理未登录词(新词)

2、基于统计的分词

定义:将字作为组成词的最小单位,统计大规模语料库中字与字相连共现的频次,频次越高越能认为这些相连的字能够组成一个词

优势:能够较好处理未登录词(新词)

劣势:算法较为复杂(HMM、CRF)

知识点1.1.2 基于规则分词的主要规则

1、正向最大匹配法

第一步,在需分析的文档中,从左往右取出i个字符作为待匹配的字符串,i为词典中最长的词的字符数

第二步,将待匹配的字符串与词典中的每个词进行匹配,若匹配上则进行切分,若匹配不上则将待匹配字符串的最后一个字去掉,再进行匹配,不断重复直至切分出文档中的所有词为止

2、逆向最大匹配法

第一步,生成需分析文档的逆序文档,从左往右取出i个字符作为待匹配的字符串,i为词典中最长的词的字符数

第二步,将待匹配的字符串与逆序词典中的每个逆序词进行匹配,若匹配上则进行切分,若匹配不上则将待匹配字符串的最后一个字去掉,再进行匹配,不断重复直至切分出文档中的所有词为止

3、双向最大匹配法

第一步,分别使用正向最大匹配法、逆向最大匹配法进行分词

第二步,若两种方法的分词词数相同且分词结果相同,则返回任意一个结果

​ 若两种方法的分词词数相同但分词结果不同,则返回单字个数较少的结果

​ 若两种方法的分词词数不同,则返回词数较少的结果

知识点1.1.3 分词工具的介绍——Jieba分词

工具特点:动态更新、功能多样(分词、自定义词典、词性标注、关键词提取等)、操作简单

分词方法:基于规则+基于统计(HMM,Viterbi算法)

分词模式:

(1)精确模式(默认)——试图将句子最精确地切开,适合用于文本分析

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

(3)搜索引擎模式——在精确模式的基础上,对长词再次切分,适合用于搜索引擎分词

(4)paddle模式——利用PaddlePaddle深度学习框架,训练序列标注(双向GRU)网络模型实现分词

知识点1.1.4 Jieba分词的实战——2021年政府工作报告

#安装所需要的程序包
pip install jieba
#载入所需要的程序包
import numpy as np
import pandas as pd
import jieba
#导入需分析的文档,并查看前十行
chap1 = pd.read_csv('C:\\Users\\dell-pc\\desktop\\2021.txt', names = ['txt'], sep = ' ', encoding = 'utf-8')
chap1.head(10)
#使用jieba.cut命令进行分词,分词结果为generator,不能直接print
word_list = jieba.cut(" ".join(chap1.txt))
print(' '.join(word_list))
#使用jieba.lcut命令进行分词,分词结果为list,能够直接print
word_list = jieba.lcut(" ".join(chap1.txt))
print(word_list)
#使用精确模式进行分词
word_list = jieba.cut("我们在六稳工作基础上明确提出六保任务")
print(' '.join(word_list))
#使用全模式进行分词
word_list = jieba.cut("我们在六稳工作基础上明确提出六保任务", cut_all = True)
print(' '.join(word_list))
#使用搜索引擎模式进行分词
word_list = jieba.cut_for_search("我们在六稳工作基础上明确提出六保任务")
print(' '.join(word_list))
#使用paddle模式进行分词
jieba.enable_paddle()   #启动paddle模式
word_list = jieba.cut("我们在六稳工作基础上明确提出六保任务", use_paddle = True)
print(' '.join(word_list))

欢迎关注微信公众号“Trihub数据社”

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值