11-文本特征抽取TfidfVectorizer

关键词

关键词:在某一个类别的文章中,出现的次数很多,但是在其他类别的文章当中出现很少

能够反映这篇文章核心的词汇

我们只要看到关键词部分,就能大致明白这篇文章是讲一些什么的了

在这里插入图片描述
那么,我们应该如何使用计算机找出文章中的关键词呢?要知道,关键词不一定是出现次数最多的词汇,但一定是直接反映了这篇文章的本质。

Tf-idf文本特征提取

在这里插入图片描述

公式

tfidfi,j=tfi,j×idfi tfidf_{i,j}=tf_{i,j} \times idf_i tfidfi,j=tfi,j×idfi

在这里插入图片描述

举例说明:

在这里插入图片描述
最终得出结果可以理解为重要程度。

那么,我们应该如何在sklearn中使用Tf-idf进行文本特征提取呢?

在sklearn中使用Tf-idf进行文本特征提取

# -*- coding: utf-8 -*-

"""
@Time    : 2021/3/8 11:35
@Author  : yuhui
@Email   : [email protected]
@FileName: 11_文本特征抽取TfidfVectorizer.py
@Software: PyCharm
"""

from sklearn.feature_extraction.text import TfidfVectorizer
import jieba


def tf_idf_feature_extraction(text):
	"""使用tf-idf进行文本特征抽取"""
	data = []
	for t in text:
		data.append(jieba_cut_word(t))
	transfer = TfidfVectorizer()
	text_new = transfer.fit_transform(data)

	print(text_new.toarray())
	print(transfer.get_feature_names())


def jieba_cut_word(text):
	"""使用jieba对文本进行分词处理"""
	return " ".join(list(jieba.cut(text)))


if __name__ == '__main__':
	text = ["今天很残酷,明天更残酷,后天很美好,但绝对大部分是死在明天晚上,所以每个人不要放弃今天。", "我们看到的从很远星系来的光是在几百万年之前发出的,这样当我们看到宇宙时,我们是在看它的过去。",
			"如果只用一种方式了解某样事物,你就不会真正了解它。了解事物真正含义的秘密取决于如何将其与我们所了解的事物相联系。"]
	tf_idf_feature_extraction(text)

D:\Anaconda3\Installation\envs\math\python.exe D:/Machine_Learning/Machine_Learning_1/code/11_文本特征抽取TfidfVectorizer.py
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\Lenovo\AppData\Local\Temp\jieba.cache
Loading model cost 0.627 seconds.
Prefix dict has been built successfully.
[[0.         0.         0.21821789 0.  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值