1. 原理
直觉解释:SVM需要尝试找到满足红点和绿点分别到边界线的最小距离的最大值的那条边界。
2. Python案例实现
2.1 数据
案例中使用的数据结构如下(只展示了部分样本):
2.2 实现
代码部分与[机器学习-笔记06]逻辑回归的案例代码部分类似,主要在模型拟合那部分有所改动,因此相似的代码就省略了。
from sklearn.svm import SVC
# 拟合模型
classifier = SVC(kernel = 'linear', random_state = 0)
classifier.fit(X_train, y_train)
[注1] kernel:核函数,默认是rbf,可以是linear、poly、rbf、sigmoid、precomputed;关于sklearn的sklearn.svm.SVC更多内容可参考这篇:sklearn系列之 sklearn.svm.SVC详解。