使用python scikit svm,運行clf.fit(X,Y)後,您將獲得支持向量。 可以在實例化svm.SVC對象時直接加載這些支持向量(將它們作爲參數傳遞)?這意味着我不需要每次運行fit()方法來進行預測scikit學習SVM,如何保存/加載支持向量?
9
A
回答
17
從scikit手冊:http://scikit-learn.org/stable/modules/model_persistence.html
1.2.4模型持久 有可能通過使用保存在scikit模型Python的內置的持久性模型,即鹹菜。
>>> from sklearn import svm
>>> from sklearn import datasets
>>> clf = svm.SVC()
>>> iris = datasets.load_iris()
>>> X, y = iris.data, iris.target
>>> clf.fit(X, y)
SVC(kernel=’rbf’, C=1.0, probability=False, degree=3, coef0=0.0, eps=0.001,
cache_size=100.0, shrinking=True, gamma=0.00666666666667)
>>> import pickle
>>> s = pickle.dumps(clf)
>>> clf2 = pickle.loads(s)
>>> clf2.predict(X[0])
array([ 0.])
>>> y[0]
0
在scikit的特定情況下,它可能是更有趣的使用JOBLIB的替代泡菜,這是對大數據更 效率,但只能鹹菜到磁盤,而不是一個字符串:
>>> from sklearn.externals import joblib
>>> joblib.dump(clf, ’filename.pkl’)
3
您可以保存模型以便稍後使用。 我寫下面的代碼來使用模型,當存在一個我以前安裝和保存的模型時。
from sklearn.externals import joblib
svm_linear_estimator = svm.SVC(kernel='linear', probability=False, C=1)
try:
estimator = joblib.load("/my_models/%s.pkl"%dataset_name)
print "using trained model"
except:
print "building new model"
estimator.fit(data_train, class_train)
joblib.dump(estimator,"/my_models/%s.pkl"%dataset_name)
+0
當您保存訓練的模型,它可以創建一個以上文件。但您仍然使用「dataset_name.pkl」名稱調用它。上面的變量估計器應該是svm_linear_estimator。 – 2013-05-13 08:53:30
+1
我剛剛意識到os.path.exists()比使用try catch更聰明:) – 2013-05-21 14:30:10
相關問題
- 1. 保存矢量器scikit學習
- 2. scikit學習多類支持向量機的參數優化
- 3. scikit-learn,linearsvc - 如何從訓練的SVM獲取支持向量?
- 4. Scikit學習SVM功能名稱
- 5. Python中的Scikit學習(svm函數)
- 6. 縮放數據scikit學習SVM
- 7. Scikit學習SVM - 輸入類型
- 8. 麻煩訓練SVM(scikit學習包)
- 9. scikit使用svm錯誤學習
- 10. Python; SciKit學習; SVM;形狀不匹配
- 11. sklearn支持向量機不學習
- 12. SVM(支持向量機)opencv
- 13. 分類保存到磁盤scikit學習
- 14. 用於scikit的SVM輕型裝載機學習
- 15. SVM的增量學習
- 16. 在Scikit中找到混合度多項式學習支持向量迴歸
- 17. 使用scikit-learn,如何通過小數據集學習SVM?
- 18. OneClassSVM scikit學習
- 19. scikit-learn支持大量樣本/小批量的SVM嗎?
- 20. Sklearn支持向量機與Matlab SVM
- 21. SVM支持向量機迴歸openCv C++
- 22. Scikit學習安裝
- 23. 路徑scikit學習
- 24. scikit學習管道
- 25. Scikit學習分類
- 26. 如何學習Oracle 11ie for ERP支持
- 27. scikit在訓練期間學習SVM停止和訪問
- 28. Scikit的隱藏錯誤消息學習Svm Fit
- 29. OpenCV + HOG + SVM:支持SVM單特徵向量所需的幫助
- 30. 微軟學習支持VS2010
可能的複製http://stackoverflow.com/questions/11440970/how-can-i-save-a-libsvm-python-object-instance – Pedrom 2013-03-22 11:46:52