支持向量机概念:
47. 机器学习-4.12 支持向量机01_哔哩哔哩_bilibili
代码实现:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import sklearn.svm as svm
import sklearn.model_selection as ms
import sklearn.metrics as sm
data = pd.read_excel('C:/Users/81936/Desktop/二分类/重构样本.xlsx')
data = np.array(data)
x = data[:, :-1]
y = data[:, -1]
# 拆分训练集和测试集
train_x, test_x, train_y, test_y = ms.train_test_split(x, y, test_size=0.25, random_state=7)
线性核函数的svm分类器
model = svm.SVC(kernel='linear')
model.fit(train_x, train_y)
多项式核函数svm分类器
model = svm.SVC(kernel='poly', degree=27)
model.fit(train_x, train_y)
高斯函数svm分类器
C 正则强度 gamma 正态分布曲线的标准差
model = svm.SVC(kernel='rbf', C=600, gamma=0.01)
model.fit(train_x, train_y)
pred_test_y = model.predict(test_x)
acc = (pred_test_y == test_y).sum() / test_y.size
print(acc)