Introduction
本篇完全參考 scikit-learn 的官方 documentation
Loading Dataset
scikit-learn 提供很多內建的 dataset 作為測試
from sklearn import datasets
iris = datasets.load_iris() # 辨識花朵
digits = datasets.load_digits() # 辨識手寫數字載入的物件有幾個屬性
data : training data X
target : label y
print(digits.data)
# [[ 0. 0. 5. ... 0. 0. 0.]
# [ 0. 0. 0. ... 10. 0. 0.]
# [ 0. 0. 0. ... 16. 9. 0.]
# ...
# [ 0. 0. 1. ... 6. 0. 0.]
# [ 0. 0. 2. ... 12. 0. 0.]
# [ 0. 0. 10. ... 12. 1. 0.]]
print(digits.target)
# [0, 1, 2, ..., 8, 9, 8]Learning and Predicting
scikit-learn 提供多種傳統 Machine learning 套件
可以呼叫這些套件,並修改其 hyperparameters 便可開始訓練
以下用內建的 SVM 套件來示範
接著就可以拿訓練好的 model 進行預測
predict 需要傳遞一個 list 作為 param
所以這邊使用
X[-1:]
Save Model
Python 內建的 pickle 以及 joblib 都可以將 model 存起來下次使用
以下是 pickle 範例
joblib 可以存更大更複雜的 model,但需要存至 disk 上
Refitting and Updating Hyperparameters
建立好的 model 可以隨時修改或 overwrite 他的 hyperparameters
以下先使用 kernel 為 linear 的 SVC
接著再改回 kernel 為 rbf 的 SVC
Last updated
Was this helpful?