关键词
关键词:在某一个类别的文章中,出现的次数很多,但是在其他类别的文章当中出现很少
能够反映这篇文章核心的词汇
我们只要看到关键词部分,就能大致明白这篇文章是讲一些什么的了
那么,我们应该如何使用计算机找出文章中的关键词呢?要知道,关键词不一定是出现次数最多的词汇,但一定是直接反映了这篇文章的本质。
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.