基于jieba分词的TF-IDF和TextRank提取关键字

jieba是一个流行的Python库,用于中文分词。它提供了精确、全和搜索引擎模式来适应不同的分词需求。此外,jieba还支持关键词提取,如基于TF-IDF和TextRank算法,并具备词性标注功能。安装jieba库非常简单,只需使用pip。关键词提取能帮助从文本中提取重要信息,例如TF-IDF和TextRank算法可以有效识别文本中的关键内容。
摘要由CSDN通过智能技术生成

中文分词

对于NLP(自然语言处理)来说,分词是一步重要的工作,市面上也有各种分词库,11款开放中文分词系统比较。

1.基于词典:基于字典、词库匹配的分词方法;(字符串匹配、机械分词法)
2.基于统计:基于词频度统计的分词方法;
3.基于规则:基于知识理解的分词方法。

第一类方法应用词典匹配、汉语词法或其它汉语语言知识进行分词,如:最大匹配法、最小分词方法等。这类方法简单、分词效率较高,但汉语语言现象复杂丰富,词典的完备性、规则的一致性等问题使其难以适应开放的大规模文本的分词处理。

第二类基于统计的分词方法则基于字和词的统计信息,如把相邻字间的信息、词频及相应的共现信息等应用于分词,由于这些信息是通过调查真实语料而取得的,因而基于统计的分词方法具有较好的实用性。

jieba分词,完全开源,有集成的python库,简单易用。
jieba分词是基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图 (DAG),动态规划查找最大概率路径, 找出基于词频的最大切分组合

安装jieba

在安装有python3 和 pip 的机子上,安装jieba库很简单,使用pip即可:

pip install jieba
pip install jieba -i https://pypi.doubanio.com/simple

jieba分词特性
支持三种分词模式:

精确模式,试图将句子最精确地切开,适合文本分析;
全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
支持繁体分词

支持自定义词典
MIT 授权协议
主要功能
分词
jieba.cut : 方法接受三个输入参数: 需要分词的字符串;cut_all 参数用来控制是否采用全模式;HMM 参数用来控制是否使用 HMM 模型
jieba.cut_for_search : 方法接受两个参数:需要分词的字符串;是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细
待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8
jieba.cut 以及 jieba.cut_for_search 返回的结构都是一个可迭代的 generator,可以使用 for 循环来获得分词后得到的每一个词语(unicode),或者用jieba.lcut 以及jieba.lcut_for_search 直接返回 list
jieba.Tokenizer(dictionary=DEFAULT_DICT) : 新建自定义分词器,可用于同时使用不同词典。jieba.dt 为默认分词器,所有全局分词相关函数都是该分词器的映射。

官方例程
# encoding=utf-8
import jieba
 
seg_list = jieba.cut("我来到北京清华大学", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list))  # 全模式
 
seg_list = jieba.cut("我来到北京清华大学", cut_all=
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TF-IDFTextRank和LSI都是常见的文本处理算法,它们的应用领域和效果略有不同。 1. TF-IDF TF-IDF是一种常用的文本特征提取方法,用于评估一个单词在一个文档中的重要程度。它通过计算一个单词在文档中的出现频率(Term Frequency,TF)和在语料库中的出现频率的逆文档频率(Inverse Document Frequency,IDF)来确定单词的重要性。TF-IDF算法简单、易于实现、计算速度快,并且在许多文本分类任务中具有良好的效果。 2. TextRank TextRank是一种用于文本摘要和关键词提取的算法,它通过将文本中的词汇看作节点,词汇之间的共现关系看作边,构建一个基于图的模型。然后通过迭代计算每个节点的权重,得到最终的摘要或者关键词。TextRank算法具有良好的可解释性和灵活性,可以应用于多种文本处理任务。 3. LSI LSI(Latent Semantic Indexing)是一种基于奇异值分解(SVD)的文本降维技术,用于将文本转换为低维向量空间表示。LSI可以有效地处理文本中的语义信息,并且在文本聚类和相似度计算等任务中具有良好的效果。但是,LSI算法需要进行矩阵分解,计算复杂度较高,而且对于大规模语料库不太适用。 综上所述,TF-IDFTextRank和LSI都是常见的文本处理算法,它们的应用领域和效果略有不同。具体选择哪种算法,需要根据实际任务需求和文本数据的特点来进行分析和选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值