TF-IDF算法

TF-IDF算法可用来提取文档的关键词,其主要思想是:如果某个单词在某篇文档中出现的频率很高,并且在其他文章中很少出现,则认为此词为该文档关键词。计算公式如下:

Python实现

TfidfVectorizer是sklearn中的库,可以用来计算TF-IDF值。

from sklearn.feature_extraction.text import TfidfVectorizer
corpus = ['This is the first document.','This document is the second document.','And this is the third one.','Is this the first document?',]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names())
print(X.shape)

TfidfVectorizer=TfidfTransformer + CountVectorizer
fit_transform方法将语料转化成TF-IDF权重矩阵,get_feature_names方法可得到词汇表。
输出如下:

将权重矩阵转化成array:

X.toarray()


可以看到是4行9列,m行n列处值的含义是词汇表中第n个词在第m篇文档的TF-IDF值。提取单篇文档的关键词只需要将矩阵按行的值从大到小排序取前几个即可。如果要提取所有文档的关键词,我们可以将矩阵按列求和,得到每个词汇综合TF-IDF值。

X.toarray().sum(axis=0)


转化成dataframe,再排序。

data = {'word': vectorizer.get_feature_names(),'tfidf': X.toarray().sum(axis=0).tolist()}
df = pd.DataFrame(data)
df.sort_values(by="tfidf" , ascending=False)
df


好啦,完成。假如取前三个为关键词,那么就是“document”、“is”和“the”。

Python实现TF-IDF提取关键词(sklearn库的使用)相关推荐

  1. 关键词提取算法—TF/IDF算法

    关键词提取算法一般可分为有监督学习和无监督学习两类. 有监督的关键词提取方法可以通过分类的方式进行,通过构建一个较为完善的词表,然后判断每个文档与词表中的每个词的匹配程度,以类似打标签的方式,达到关键 ...

  2. python提取关键词分类_用Py做文本分析5:关键词提取

    1.关键词提取 关键词指的是原始文档的和核心信息,关键词提取在文本聚类.分类.自动摘要等领域中有着重要的作用. 针对一篇语段,在不加人工干预的情况下提取出其关键词 首先进行分词处理 关键词分配:事先给 ...

  3. python中如何提取列表中的关键词_python中怎么提取关键词

    简单的关键词提取 文章内容关键词的提取分为三大步: (1) 分词 (2) 去停用词 (3) 关键词提取 分词方法有很多,我这里就选择常用的结巴jieba分词:去停用词,我用了一个停用词表.具体代码如下 ...

  4. python中文模糊关键词提取_用Python给你的文本提取关键词

     对代码.编程感兴趣的可以关注「老K玩代码」公众号和我交流!分享代码.经验.项目和资讯 用Python给你的文本提取关键词 关键词提取是自然语言处理中常见的业务模块; 要实现关键词提取,Python ...

  5. ID3决策树 Python实现 + sklearn库决策树模型的应用

    本文介绍机器学习中决策树算法的python实现过程 共介绍两类方法: (1)亲手实习Python ID3决策树经典算法 (2)利用sklearn库实现决策树算法 关于决策树的原理,指路:机器学习 第四 ...

  6. 利用python制作词云图,分词,提取关键词

    利用python制作词云图保姆及教程 前言 一.环境配置 1.要有python的运行环境 2.需要导入jieba ,wordcloud等模块 pip install jieba pip install ...

  7. Python——利用AC自动机进行关键词提取

    Python--利用AC自动机进行关键词提取 目标:在之前写的文章[Python实现多模匹配--AC自动机]基础上,安装gcc(C编译器),再装ahocorasick ,并完成从文本中提取关键词的任务 ...

  8. Python: sklearn库——数据预处理

    Python: sklearn库 -- 数据预处理 数据集转换之预处理数据:       将输入的数据转化成机器学习算法可以使用的数据.包含特征提取和标准化.       原因:数据集的标准化(服从均 ...

  9. python对逻辑回归进行显著性_python sklearn库实现简单逻辑回归的实例代码

    Sklearn简介 Scikit-learn(sklearn)是机器学习中常用的第三方模块,对常用的机器学习方法进行了封装,包括回归(Regression).降维(Dimensionality Red ...

  10. python分类算法的应用_Python基于sklearn库的分类算法简单应用示例

    Python基于sklearn库的分类算法简单应用示例 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python基于sklearn库的分类算法简单应用示例.tx ...

最新文章

  1. 11 12 13c语言编程,C语言编程
  2. 一文带你学C语言,详细知识点思维导图!
  3. python3和python2 优势_python3和python2的区别
  4. python socket 大文件_python之socket运用之传输大文件
  5. android 获取phone实例,Android ContentProvider获取手机联系人实例
  6. 作者:罗圣美,男,中兴通讯股份有限公司首席架构师。
  7. Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (15) - L1数据缓存/读写地址转换
  8. access主窗体名词解释_ACCESS 父子窗体的语法介绍
  9. 拒绝与其他码农一致!CSDN定制T让你成为最靓的仔
  10. Tricks(十九)—— 获得 list of lists 每一列的最大最小值
  11. [node] 对某网站的简单爬虫
  12. ossfs挂载到本地磁盘
  13. FINN(三)BNN在FPGA上的准确性和峰值性能
  14. 导入tkinter出错
  15. python pip 豆瓣镜像
  16. 微信客服消息时间限制
  17. which must be escaped when used within the value
  18. 消费金融成新增长极,江苏银行零售转型如虎添翼
  19. Java实现“梭哈”游戏
  20. flink 教程 Window

热门文章

  1. 一个体育生的编程之路
  2. mac下免费的动态截屏制图工具:kap
  3. 如何将最大化互信息引入到无监督域适应(UDA)任务?
  4. Hive 分区表 分桶表
  5. 根据oe抓取ebayno title fits
  6. 大连工业大学艺术学院计算机考试,大连工业大学艺术与信息工程学院
  7. 你与绝美文章只差一个Typora(Mac版)
  8. 树莓派开发笔记(十七):树莓派4B+上Qt多用户连接操作Mysql数据库同步(单条数据悲观锁)
  9. 北京科技大学871计算机真题,(NEW)北京科技大学871计算机综合一(含计算机组成原理、数据结构)历年考研真题汇编(350页)-原创力文档...
  10. 笔记 | spark安装及入门会遇到哪些坑