Save MinMaxScaler model in sklearn
Even better than pickle
(which creates much larger files than this method), you can use sklearn
's built-in tool:
from sklearn.externals import joblibscaler_filename = "scaler.save"joblib.dump(scaler, scaler_filename) # And now to load...scaler = joblib.load(scaler_filename)
Note: sklearn.externals.joblib
is deprecated. Install and use the pure joblib
instead
So I'm actually not an expert with this but from a bit of research and a few helpful links, I think pickle
and sklearn.externals.joblib
are going to be your friends here.
The package pickle
lets you save models or "dump" models to a file.
I think this link is also helpful. It talks about creating a persistence model. Something that you're going to want to try is:
# could use: import pickle... however let's do something elsefrom sklearn.externals import joblib # this is more efficient than pickle for things like large numpy arrays# ... which sklearn models often have. # then just 'dump' your filejoblib.dump(clf, 'my_dope_model.pkl')
Here is where you can learn more about the sklearn externals.
Let me know if that doesn't help or I'm not understanding something about your model.
Note: sklearn.externals.joblib
is deprecated. Install and use the pure joblib
instead
Just a note that sklearn.externals.joblib
has been deprecated and is superseded by plain old joblib
, which can be installed with pip install joblib
:
import joblibjoblib.dump(my_scaler, 'scaler.gz')my_scaler = joblib.load('scaler.gz')
Note that file extensions can be anything, but if it is one of ['.z', '.gz', '.bz2', '.xz', '.lzma']
then the corresponding compression protocol will be used. Docs for joblib.dump()
and joblib.load()
methods.