sklearn部分适合CountVectorizer

时间:2016-10-27 15:57:26

标签: scikit-learn countvectorizer

CountVectorizer是否支持部分适合?

我想使用不同批次的数据训练CountVectorizer

1 个答案:

答案 0 :(得分:0)

不,它不支持局部拟合。

但是您可以编写一个简单的方法来实现您的目标:

def partial_fit(self , data):
    if(hasattr(vectorizer , 'vocabulary_')):
        vocab = self.vocabulary_
    else:
        vocab = {}
    self.fit(data)
    vocab = list(set(vocab.keys()).union(set(self.vocabulary_ )))
    self.vocabulary_ = {vocab[i] : i for i in range(len(vocab))}

from sklearn.feature_extraction.text import CountVectorizer
CountVectorizer.partial_fit = partial_fit

vectorizer = CountVectorizer(stop_words=l)
vectorizer.fit(df[15].values[0:100])
vectorizer.partial_fit(df[15].values[100:200])