机器学习入门实验之支持向量机(简单实验,使用sklearn完成)
代码如下
注:本文章主要是为方便自己以后复习所学内容而写,并不做详细介绍。
// 支持向量机,这里是线性核,sklearn自带软间隔支持向量机
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn import svm
from sklearn.model_selection import train_test_split
data=pd.read_csv("alcohol_dataset.csv")
data1=data
data1["LABEL"]=data["LABEL"].replace(to_replace=0,value=-1)
x_train,x_test,y_train,y_test = train_test_split(data1.iloc[:,:5],data1.iloc[:,-1],test_size=0.5,random_state=5)
transfer=svm.LinearSVC(loss="hinge",C=1,random_state=5)
transfer.fit(x_train,y_train)
print(transfer.get_params())
print(transfer.predict(x_test))
print(transfer.score(x_test,y_test))
下面看看其他核函数
//可以通过修改kernel参数的值来改变核函数,详细请看sklearnApi
# 尝试使用其他核来计算
transfer01=svm.SVC(C=1.5,kernel="rbf",random_state=5)
transfer01.fit(x_train,y_train)
print(transfer01.get_params())
print(transfer01.predict(x_test))
print(transfer01.score(x_test,y_test))
最后,附上sklearnApi链接,以备以后查看:
链接: https://scikit-learn.org/stable/getting_started.html