当前位置:   article > 正文

自然语言处理--计算tf-idf(sklearn方法)_计算每个句子的tfidf

计算每个句子的tfidf

使用 sklearn 将文本输入直接构建 TF-IDF 矩阵。

from sklearn.feature_extraction.text import TfidfVectorizer

# 数据:三篇文档
docs = ["The faster Harry got to the store, the faster and faster Harry would get home."]
docs.append("Harry is hairy and faster than Jill.")
docs.append("Jill is not as hairy as Harry.")

corpus = docs
'''
TfidfVectorizer可以把原始文本转化为tf-idf的特征矩阵,
从而为后续的文本相似度计算,主题模型(如LSI),文本搜索排序等一系列应用奠定基础。

max_df/min_df: [0.0, 1.0]内浮点数或正整数, 默认值=1.0
当设置为浮点数时,过滤出现在超过max_df/低于min_df比例的句子中的词语;正整数时,则是超过max_df句句子。
这样就可以帮助我们过滤掉出现太多的无意义词语
'''
vectorizer = TfidfVectorizer(min_df=1)
# 得到tf-idf矩阵,稀疏矩阵表示法
model = vectorizer.fit_transform(corpus)
print(model)
#   (0, 7)    0.21233717847222938  # 第0个字符串,对应词典序号为7的词的TFIDF为0.21233717847222938
#   (0, 3)    0.21233717847222938
#   (0, 15)    0.21233717847222938
#   (0, 0)    0.1614878973151404

# todense()转化为更直观的一般矩阵
print(model.todense().round(2))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/937392?site
推荐阅读
相关标签
  

闽ICP备14008679号