我做了一個示例程序來訓練使用sklearn的SVM。這裏是代碼sklearn使用joblib轉儲模型,轉儲多個文件。哪一個是正確的模型?
from sklearn import svm
from sklearn import datasets
from sklearn.externals import joblib
clf = svm.SVC()
iris = datasets.load_iris()
X, y = iris.data, iris.target
clf.fit(X, y)
print(clf.predict(X))
joblib.dump(clf, 'clf.pkl')
當我轉儲模型文件時,我得到這個數量的文件。 :
[ 'clf.pkl', 'clf.pkl_01.npy', 'clf.pkl_02.npy', 'clf.pkl_03.npy', 'clf.pkl_04.npy',「clf.pkl_05。 npy','clf.pkl_06.npy','clf.pkl_07.npy','clf.pkl_08.npy','clf.pkl_09.npy','clf.pkl_10.npy','clf.pkl_11.npy' ]
我很困惑,如果我做錯了什麼。或者這是正常的?什麼是* .npy文件。爲什麼有11?
想必這些都是'numpy'陣列存儲數據,'加載回來的時候joblib'了'.pkl'會尋找那些'np'陣列和加載後,我才意識到模型數據 – EdChum
,如果我使用joblib.dump(clf,'clf.pkl',compress = 9)我只得到1個clf.pkl文件。所以我假設你說的那些是數組。在加載過程中,我手動加載或自動加載? –
我希望他們自動加載,只是試試 – EdChum