标签:有向无环图 文本分析 组合 指定 style 词语 png ima pip
安装jieba:pip install jieba
原理:
基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图 (DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采用了基于汉字成词能力的 HMM 模型,使用了 Viterbi 算法
分词:
jieba支持三种分词模式:
精确模式:试图将句子最精确地切开,适合文本分析
全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词
示例:
#!/usr/bin/python # -*- coding: UTF-8 -*- import jieba strt = "我爱北京天安门!" # 全模式 sl = jieba.cut(strt, cut_all=True) print("全模式:", ",".join(sl)) # 精确模式,默认为精确模式,所以可以不指定cut_all=False sl = jieba.cut(strt, cut_all=False) print("精确模式:", ",".join(sl)) # 搜索引擎模式 sl = jieba.cut_for_search(strt) print("搜索引擎模式:", ",".join(sl))
关键词抽取算法主要有以下两种:
有监督学习算法:将关键词抽取过程视为二分类问题,先抽出候选词,然后对于每个候选词划定标签,其要么是关键词,要么不是关键词。然后训练关键词抽取分类器,当对一段新的文本进行抽取关键词时,先抽取出所有的候选词,然后利用训练好的关键词抽取分类器,对各个候选词进行分类,最终将标签为关键词的候选词作为关键词。
无监督学习算法:先抽取出候选词,然后对各个候选词进行打分,然后输出topN个分值最高的候选词作为关键词。根据打分的策略不同,有不同的算法,例如TF-IDF,TextRank等算法。
jieba分词实现了基于TF-IDF关键词抽取算法和基于TextRank关键词抽取算法,两类算法均是无监督学习的算法。以下对这两种算法进行介绍:
1.基于TF-IDF算法进行关键词抽取
标签:有向无环图 文本分析 组合 指定 style 词语 png ima pip
原文地址:https://www.cnblogs.com/qilin20/p/12253067.html