user3038725
user3038725

Reputation: 321

How to output RandomForest Classifier from python?

I have trained a RandomForestClassifier from Python Sckit Learn Module with very big dataset, but question is how can I possibly save this model and let other people apply it on their end. Thank you!

Upvotes: 13

Views: 13347

Answers (2)

EdChum
EdChum

Reputation: 394041

The recommended method is to use joblib, this will result in a much smaller file than a pickle:

from sklearn.externals import joblib
joblib.dump(clf, 'filename.pkl') 

#then your colleagues can load it

clf = joblib.load('filename.pkl')

See the online docs

Upvotes: 29

Ryan D.W.
Ryan D.W.

Reputation: 373

Have you tried pickling the RandomForestClassifier using the Pickle module and then saving it to the disk?

Here’s an example based on the pickle docs:

import pickle

classifier = RandomForestClassifier(etc)
output = open('classifier.pkl', 'wb')
pickle.dump(classifier, output)
output.close()

The “other people” could then reload the pickled object as follows:

import pickle

f = open('classifier.pkl', 'rb')
classifier = pickle.load(f)
f.close()

Upvotes: 5

Related Questions