jieba中文分词工具包(一) 01简介)结巴)中文分词:做最好的Python中文分词组件;
”Jieba“(Chinesefor“tostutter”) chinesetextsegmentation : builttobethebestpythonchinesewordsegmentationmodule。
关于中文的自然语言处理,首先需要将段落和句子切分成词。 这是最基础的一步操作,分词属于词法分析的基础部分。
如何安装jieba? pip install jieba
如何引用jieba? import jieba
02 jieba算法基于前缀字典实现了高效的单词图像扫描,由生成语句中汉字所有可能单词情况组成的有向图(DAG )采用动态规划寻找最大概率路径,并基于词数找到最大分割组合。 对于未登录词,采用了基于汉字成语能力的HMM模型,使用了Viterbi算法。 03分词模式jieba分词模式:
精确模式全模式搜索引擎模式(1)精确模式) )默认模式)文件最精确,适用于文本分析。
import jiebaseg_list=jieba.cut (就读于东南大学网络空间安全学院(cut_all=True ) print ) )全模式: ((/).Join ) )
【精密模式】:我就读于东南大学/网络空间/安全/学院
)扫描所有模式语句中的所有的单词,发现速度非常快,但为不能解决歧义。
import jiebaseg_list=jieba.cut (就读于东南大学网络空间安全学院(cut_all=False ) print ) defaultmode3360 () (/).Join ) sssd
【全模式】:我就读于/东南/东南大学/南大/大学/网络/网络空间/空间/安全/学院
)3)搜索引擎模式基于精确模式,重新划分字段,提高召回率、事故和搜索引擎所用分词。
importjiebaseg _ list=Jie ba.cut (TMD hm硕士毕业于中国科学院计算,在日本京都大学学习)、cut_all=False ) print (' default mode 3360 '/'.joid
【精准模型】: tmdhm/硕士/毕业/在/中国科学院/计算/,/后/在/日本京都大学/深造tmdhm,硕士、毕业、在、中国科学、学院、科学院、中国科学院、计算、后、日本
)新词识别新词问题当我们遇到一些新词时,jieba可能会不正确分词。 例如,对以下句子进行分词时:
import jiebaseg_list=jieba.cut ('刚才做的这个菜叫杂炖。' 、cut_all=False ) print (' default mode : '/'.join (seg _ list ) #正确模式输出结果:
【精准模式】:刚才/做/出/的/子/道菜/叫/杂乱/炖/
如何解决新词的问题? 创建自定义词典文件。 文件格式为txt。
词典格式与dict.txt相同,一个词单独占一行;
每行分为三个部分。
词数(可选)、词类(可选)、可选)的三个部分用空格隔开,顺序不能颠倒。
* *如果**filename是以路径或二进制文件打开的文件,则该文件必须采用UTF-8编码。 *省略词数时,使用自动计算的内容可以保证分离该词。
解决办法:
在本地创建一个名为userdict.txt的文件,并将“添加词汇”添加到自定义词典中。 例如,以新单词的词数(词数越多,对该单词的词分写的精度和优先级就越高)的形式保存。
具体使用方法:
JIAba.load_userDict(filename ) ) ) ) ) ) )。
filename :文件类对象或自定义词典的路径。
使用以下代码可以完成正确的分词。
importjiebajieba.load _ user dict (r ' c : (users (aze ) desktop(NLP(examplecode ) jieba ' ) seg _ list=jj IEG ()
【精准模式】:刚才/做/出/的/子/道菜/叫/杂煮/
分词函数的总结jieba.cut方法接受三个输入参数。 需要分词的字符串; cut_all参数用于控制是否采用完全模式; HMM参数控制是否使用HMM模型。
jieba.cut_fot_search方法接受两个参数:需要分词的字符串。 是否使用HMM模型。 该方法适用于搜索引擎构建倒排索引的分词,粒度较细。
此处的分隔字符串可以是unicode、UTF-8字符串或GBK字符串。
注意:不建议直接输入GBK字符串。 可能意外地错误解码为UTF-8
jieba.cut和jieba.cut_fot_search的返回结构都是可重复的generator,使用for循环获得分词后得到的所有单词(unicode )或
jieba.lcut和jieba.lcut_for_直接返回到list
Jie ba.tokenizer (dictionary=default _ dict )新的定制分词器可用于同时使用不同的词典。
jieba.dt是默认分词器,所有全局分词相关函数都是其分词的映射。
参考博客: https://blog.csdn.net/dujiafengv/article/details/100172139? UTM _ source=appapp _ version=4.7.1code=app _ 1562916241 ulink id=usr1mkqgl 919 blen https://MP.weixin.QQ.com/s _ biz=mzu0NDU5oty2ng==mid=2247483683 idx=1sn=F4 D7 BCD 764 F5 DBE 777 DC0e 4c 8228 chksm=FB 78 fa 3e cc 0f 73283 f 34042 e 11842 d 522 d