从HashingVectorizer检索词汇

时间:2018-08-16 11:33:17

标签: python-3.x scikit-learn nlp tfidfvectorizer

我当时使用tfidfVectorizer来使用tfidf值作为权重,将我的单词向量转换为句子向量。由于遇到内存错误,我决定改用HashingVectorizer。有没有一种方法可以像tfidf_vectorizer.vocabulary_[word]一样在这种设置中获取给定单词的向量?

1 个答案:

答案 0 :(得分:1)

HashingVectorizer是无状态转换器。如documentation of fit()中所述:

fit(X, y=None)
    Does nothing: this transformer is stateless.

fit()方法仅用于与scikit-learn中的其他实用程序兼容。 HashingVectorizer实际上不记得任何东西。因此没有词汇。它只是从提供的文档中获取令牌,然后对其进行哈希处理以获得n_features在构造函数中定义的列:

n_features : integer, default=(2 ** 20)
     

输出矩阵中的要素(列)数。少量的功能可能会导致哈希冲突,但较大的功能   数字将导致线性学习器的系数尺寸更大。