Может использовать joblib dump много объектов? - PullRequest
0 голосов
/ 26 мая 2019

У меня есть этот код.Могу ли я сохранить 'pca' и 'svm_clf' в один файл, используя joblib.dump?Если нет, есть ли другой способ сделать это?

from sklearn.svm import SVC
from sklearn.externals import joblib
from sklearn import decomposition
from sklearn import svm

X = [[1,3,4,5,6,7,8,7,0],[1,3,4,5,6,7,9,5,1]]
Y = [1,0]
#pca
pca = decomposition.PCA(0.98)
X_new = pca.fit_transform(X)
svm_clf = svm.LinearSVC()
#svm model
svm_clf = SVC(C=1, kernel='rbf')
svm_clf.fit(X_new, Y)
#save model
joblib.dump(pca, 'model.sav')
joblib.dump(svm_clf, 'model.sav')

1 Ответ

0 голосов
/ 26 мая 2019

Вы можете просто использовать:

joblib.dump([pca, svm_clf], 'model.sav', compress=1)

А затем используйте такие модели, как:

pca, svm_clf = joblib.load('model.sav')

Вероятно, более удачный способ - определить конвейер, если вы хотите использовать эти две модели вместе и сбросить конвейер:

from sklearn.pipeline import make_pipeline
pipeline = make_pipeline(pca, svm_clf)
joblib.dump(pipeline, 'model.sav')
...