TF-IDF 学习笔记

1.定义

TF(词频) = 词频数/一篇文章的总共词数
IDF(逆文档频率) = log(总文档数/出现该词的文档数+1)
TF-IDF = TF*IDF ,其值越大表示其在文档中的重要性也越大,

2.应用

  1. 可用它来提取某关键词
  2. 与余弦相似度结合找出相似的文章
    具体步骤如下

(1)使用TF-IDF算法,找出两篇文章的关键词;
(2)每篇文章各取出若干个关键词(比如20个),合并成一个集合,计算每篇文章对于这个集合中的词的词频(为了避免文章长度的差异,可以使用相对词频);
(3)生成两篇文章各自的词频向量;
(4)计算两个向量的余弦相似度,值越大就表示越相似。

3. sklearn代码实现

from sklearn.feature_extraction.text import TfidfVectorizer
tfidf = TfidfVectorizer()
document = ["I have an pen hah",
"you have an apple"]
tfidf_model = tfidf.fit_transform(document)

得到tf-idf矩阵,稀疏矩阵表示法

print(tfidf_model.todense())

原文地址:https://www.cnblogs.com/rise0111/p/11288908.html