scikit-learn 분류자를 serialize하는 가장 효율적인 방법은 무엇입니까?scikit-learn 분류자를 효율적으로 serialize하는 방법
저는 현재 파이썬의 표준 Pickle 모듈을 사용하여 text classifier을 직렬화했습니다.하지만이 결과는 엄청나게 큰 피클이됩니다. 직렬화 된 객체는 100MB 이상일 수 있습니다. 이는 과도한 것으로 보이며 생성 및 저장하는 데 시간이 걸립니다. 나는 Weka와 비슷한 작업을 수행했으며, 동등한 직렬화 된 분류기는 대개 몇 MBs입니다.
피클에서 scikit-training 데이터 또는 기타 관련없는 정보를 캐싱 할 가능성이 있습니까? 그렇다면 직렬화 된 scikit-learn 분류기의 속도를 높이고 줄일 수있는 방법은 무엇입니까? (잠재적 파이프 라인에 TfidfTransformer
적층)을 HashingVectorizer
하여 TfidfVectorizer
교체 : 큰 텍스트 데이터 세트에 대한
classifier = Pipeline([
('vectorizer', CountVectorizer(ngram_range=(1,4))),
('tfidf', TfidfTransformer()),
('clf', OneVsRestClassifier(LinearSVC())),
])
cPickle에서 프로토콜 -1을 사용 했습니까? 그것은 종종 기괴한 차이를 만듭니다. –