【发布时间】:2023-03-14 13:15:02
【问题描述】:
我正在使用适合 N 个文档的 Sklearn TfidfVectorizer,并且我想根据每个文档中的 tfidf 分数获得一个单词的向量表示。
一些代码可能会有所帮助:
from sklearn.feature_extraction.text import TfidfVectorizer
model = TfidfVectorizer()
corpus = ["first corpus with words like dog and cat", "second corpus with words like car and plane"]
model.fit(corpus)
model.transform(["cat"]).toarray().shape
>> (1, 11)
为什么我得到 11 个功能?我希望有 2 个功能,因为我只为模型安装了两个文档。
所以我不会是这样的:
[0, tfidfscore]
【问题讨论】:
-
你的词汇量是 11。这就是为什么你会得到
11特征的特征向量。为什么你期望有 2 个功能? TF-IDF 特征是按单词计算的,而不是按文档计算的。
标签: python scikit-learn tfidfvectorizer