以iris數據集爲例,首先導入數據集python
iris = datasets.load_iris()
數據集是一個類詞典的數據,其屬性有git
data | 數據集,類型是numpy的ndarray |
target | 數據對應的類標記,類型是一維的ndarray |
target_name | 類標記對應的名字,類型是一維的ndarray |
DESCR | 數據集的描述信息 |
經過fit(X,y)和predict(X)分別進行訓練和預測,這裏以SVM爲例訓練一個estimator並預測測試
from sklearn import datasets from sklearn import svm from matplotlib import pyplot as plt import numpy as np digits = datasets.load_digits() clf = svm.SVC(gamma=0.001, C=100.) clf.fit(digits.data[:-1],digits.target[:-1]) plt.figure(1, figsize=(3, 3)) plt.imshow(digits.images[-1], cmap=plt.cm.gray_r, interpolation='nearest') plt.show() print(clf.predict(digits.data[-1:]))
經過sklearn.externals下的joblib.dump()來保存訓練好的模型,再次使用能夠經過load進行導入spa
from sklearn import datasets from sklearn import svm from sklearn.externals import joblib iris = datasets.load_iris() clf = svm.SVC(gamma=0.001, C=100.) clf.fit(iris.data[:-2], iris.target[:-2]) print('倒數第一條數據的類標記爲', iris.target[-1], ', 預測結果爲 ', clf.predict(iris.data[-1:])) joblib.dump(clf, 'model.pkl') print('倒數第二條數據的類標記爲', iris.target[-2], ', 預測的結果爲 ', joblib.load('model.pkl').predict(iris.data[-2:-1]))