CountVectorizer的sklearn部分拟合

Don*_*beo 5 scikit-learn countvectorizer

是否CountVectorizer支持部分适合?

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

saj*_*jad 2

不,它不支持部分拟合。

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

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])
Run Code Online (Sandbox Code Playgroud)