序列化 scikit-learn 分类器的最有效方法是什么?
我目前正在使用 Python 的标准 Pickle 模块来序列化文本分类器,但这会导致 pickle 非常大。序列化的对象可以是 100MB 或更大,这似乎太大了,需要一段时间来生成和存储。我用 Weka 做过类似的工作,等效的序列化分类器通常只有几个 MB。
scikit-learn 是否可能在 pickle 中缓存训练数据或其他无关信息?如果是这样,我怎样才能加快和减少序列化 scikit-learn 分类器的大小?
classifier = Pipeline([
('vectorizer', CountVectorizer(ngram_range=(1,4))),
('tfidf', TfidfTransformer()),
('clf', OneVsRestClassifier(LinearSVC())),
])