在Sklearn中了解Tfidfvectorizer的矩阵输出

时间:2017-10-26 16:53:11

标签: python matrix scikit-learn tf-idf

我在解释Tfidf矢量化器的矩阵输出时遇到了麻烦。

给出

vectorizer = TfidfVectorizer(max_df=0.5, max_features=10000,
                         min_df=2, stop_words='english',
                         use_idf=True)


X_train_tfidf = vectorizer.fit_transform(X_train_raw)

如果我要查看X_train_tfidf的输出,我是否正在查看结构如下的矩阵:

第1列对应于文档1,其中元素是10000个要素的tfidf分数,第2列对应于文档2 ...依此类推?

1 个答案:

答案 0 :(得分:8)

假设您看到与此类似的输出:

(0, 18)       0.424688479366
(0, 6)        0.424688479366
(0, 4)        0.424688479366
(0, 14)       0.239262081323
(0, 17)       0.202366335916
(0, 5)        0.424688479366
(0, 1)        0.424688479366
(1, 17)       0.184426607226
(1, 8)        0.387039944282
(1, 15)       0.387039944282
(1, 0)        0.387039944282
(1, 2)        0.387039944282
(1, 13)       0.387039944282
(1, 7)        0.387039944282
(1, 11)       0.259205161463
(2, 14)       0.313686744222
(2, 17)       0.530628478217
(2, 9)        0.556791722552
(2, 16)       0.556791722552
(3, 14)       0.346483013718
(3, 17)       0.293053113789
(3, 11)       0.411875926253
(3, 10)       0.61500486583
(3, 3)        0.496182053366
(4, 14)       0.346483013718
(4, 17)       0.293053113789
(4, 11)       0.411875926253
(4, 3)        0.496182053366
(4, 12)       0.61500486583

假设一般形式:(A,B)C

答:文件索引 B:特定的词向量索引 C:文件A中单词B的TFIDF分数

这是一个稀疏矩阵。它表示每个文档的单词向量中所有非零值的tfidf分数。