在scikit-learn中保存矢量器

时间:2015-01-05 10:48:48

标签: scikit-learn tokenize

我对保存矢量化器以供以后在生产中使用存在疑问:

a)拟合(在这种情况下是词汇表和所有其他参数集)是否改变了它的参数?

b)是否适合(通常)改变矢量化器参数?

c)它是否重要 - 在装配之前保存(取决于装配期间是否更改)?

vec = TfidfVectorizer(analyzer='word', ngram_range=(1, 2), lowercase=True, stop_words=StopWordsList, token_pattern=r'\b\w{3,}\b', norm='l1', sublinear_tf=True, max_df=0.99, min_df=0.01,  max_features=10000, vocabulary=FreqDict1000)


VectFName = PathName + 'VECTORIZER/' + SysName + 'vec.pkl'
joblib.dump(vec, VectFName)

我比较了vec.get_params之前和之后它们是相同的。

1 个答案:

答案 0 :(得分:0)

您需要比较vocabulary_ property或get_feature_names(),而不是vec.get_params。从documentation通过拟合TfidfVectorizer,您正在改变其词汇量和idf_频率。这是拟合的重点。