Ho addestrato un RandomForestClassifier da Python Sckit Learn Module con un set di dati molto grande, ma la domanda è come posso salvare questo modello e lasciare che altri lo applichino alla loro fine. Grazie!Come generare RandomForest Classifier da python?
11
A
risposta
23
Il metodo consigliato è quello di utilizzare joblib
, questo risulterà in un file molto più piccolo di un sottaceto:
from sklearn.externals import joblib
joblib.dump(clf, 'filename.pkl')
#then your colleagues can load it
clf = joblib.load('filename.pk1')
Vedere la online docs
4
Hai provato a decapare il RandomForestClassifier
utilizzando il modulo Pickle e quindi salvarlo sul disco?
Ecco un esempio in base ai pickle documentazione:
import pickle
classifier = RandomForestClassifier(etc)
output = open('classifier.pkl', 'wb')
pickle.dump(classifier, output)
output.close()
Il “altre persone” potrebbe quindi ricaricare l'oggetto in salamoia come segue:
import pickle
f = open('classifier.pkl', 'rb')
classifier = pickle.load(f)
f.close()
+1
joblib è preferito e meno dettagliato (cioè file più piccolo): http://scikit-learn.org/stable/tutorial/basic/tutorial.html#model-persistence – EdChum
Vedi http://scikit-learn.org/stable/tutorial/basic/tutorial.html#model-persistence – EdChum