¿Cómo guardar un modelo entrenado con sklearn en Python?

Para guardar nuestro modelo entrenado con sklearn en python podemos usar pickle y joblib

# pickle
s = pickle.dumps(clf)
clf2 = pickle.loads(s)

#joblib
joblib.dump(clf, 'filename.joblib') 
eje = joblib.load('filename.joblib')

Pickle

In [6]:
# Entrenamos el modelo
from sklearn import svm
from sklearn import datasets

datos = datasets.load_iris()
X = datos.data
y = datos.target
clf = svm.SVC(kernel='linear', C=1)
clf.fit(X, y) 
a=clf.predict(X[0:5])

print(a)

# usar el modulo pickle para guardar y cargar
import pickle
s = pickle.dumps(clf)
clf2 = pickle.loads(s)
b=clf2.predict(X[0:5])
print(b)
[0 0 0 0 0]
[0 0 0 0 0]

joblib

In [7]:
# entrenamos el modelo
from sklearn import svm
from sklearn import datasets

datos = datasets.load_iris()
X = datos.data
y = datos.target
clf = svm.SVC(kernel='linear', C=1)
clf.fit(X, y) 
a=clf.predict(X[0:5])

print(a)

# usamos el modulo joblib para guardar y cargar
import joblib
joblib.dump(clf, 'filename.joblib') 
eje = joblib.load('filename.joblib')
b=eje.predict(X[0:5])
print(b)
[0 0 0 0 0]
[0 0 0 0 0]

No hay comentarios.:

Publicar un comentario