《scikit-learn机器学习》支持向量机① - SVM+核函数+sklearn中的SVM 基本算法原理理解

1、SVM

support vector machine 支持向量机(二分类模型)
这是一种分类算法,针对于数据小的情况,非线性以及高维的分类问题。
在小数据的情况下,神经网络的的拟合算法都没有svm

1.1 算法原理

svm - 构造出最大间距的边界,可以提高分类算法的鲁棒性
在这里插入图片描述

1.2 公式推导过程

公式推导过程
在这里插入图片描述
其中:w为超平面方向;b为位移项,决定距离;

于是:求解svm算法,就是满足约束条件的前提下,求解||W ^2||的最小值

但是:
对于那种线性不可分的数据集,用上面这种方法找不到分隔超平面,应该怎么办呢???
这种时候就需要加入一个

松弛系数
在这里插入图片描述

2、常用的核函数

线性函数:
在这里插入图片描述

多项式函数
在这里插入图片描述

高斯核函数
在这里插入图片描述

2.1 如何选择算法

在这里插入图片描述

3、sklearn中的SVM

SVC - 用来进行分类的任务
SVR - 用来进行数值回归任务

以SVC为例子:
在这里插入图片描述

1、选择SVM的核函数,由参数kernel指定,其中linear表示线性函数,只能产生直线形状的分割超平面
2、核函数表示:

  • 线性函数 - linear
  • 多项式函数 - poly
  • 高斯核函数 - rbf

3、注意点:

  • 线性函数只需要指定kernel
  • 多项式函数还需要指定degree
  • 高斯核函数还需要指定gamma,对应的是1/(2σ^2)的值
    在这里插入图片描述

另一个例子:

俩个特征,三个类别的数据集,用四个SVM算法拟合数据集,分别用线性核函数,三阶多项式核函数,y = 0.5和y = 0.1的高斯核函数,最后将拟合画面全部都拟合出了。
在这里插入图片描述
plot_hyperplane()函数 - 画出样本点,同时画出分类区间

具体功能:
在这里插入图片描述

最后的图片:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bessie_Lee_gogogo

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值