1. 程式人生 > >機器學習演算法——支援向量機svm,實現過程

機器學習演算法——支援向量機svm,實現過程

 初學使用python語言來實現支援向量機演算法對資料進行處理的全過程。

from sklearn.datasets import load_iris  #匯入資料集模組
from sklearn.model_selection import train_test_split #匯入資料分割模組
from sklearn.metrics import accuracy_score  # 匯入預測結果準確率
from sklearn.metrics import classification_report #匯入輸出資料集訓練報告
 
from sklearn import svm #匯入支援向量機模組


#匯入資料集
iris=load_iris()
x=iris.data
y=iris.target

#分割資料集
X_train, X_test, y_train, y_test = train_test_split(x, y)

#構造向量機主體
clf=svm.SVC() 
clf.fit(X_train,y_train)


#預測資料集
data_pre=clf.predict(X_test)

#對模型效能進行評估
print (clf.score(X_train, y_train) ) 

#對模型的預測結果準確率進行評估
accuracy_score(clf.predict(X_train), y_train, '訓練集')

#同上,對測試集資料進行評估
print (clf.score(X_test, y_test))
accuracy_score(clf.predict(X_test), y_test, '測試集')

#輸出測試集評估報告,召回率等指標
print(classification_report(clf.predict(X_test),y_test))