机器学习————SVM

目录

一、SVM

1.1 概述

1.2 四种分隔的情况

1.3 最大间隔与分类

1.4 对偶问题:等式约束

1.5 核函数

二、实现

2.1 数据集介绍

2.2 代码

2.2.1 数据可视化部分

2.2.2 SMO实现

2.2.3 结果

三、总结


一、SVM

1.1 概述

支持向量机(Support Vector Machine,简称SVM)是一种经典的机器学习算法,它在解决小样本、非线性及高维模式识别等问题中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。
是一种二分类模型,监督性学习。目的是找到集合边缘上的若干数据(支持向量)用这些点找出一个平面(决策面)使支持向量到该平面的距离最大。

1.2 四种分隔的情况

此外,我们将详细介绍一些线性可分的情况

如上图所示,在图A中的两组数据已经分的足够开,因此很容易就可以画一条直线将两组数据点分开。
这种情况下,这组数据就被称为线性可分数据。

将数据集分开的直线称为分割超平面。当数据点都在二维平面上时,分割超平面只是一条直线。当数据集是三维时就是一个平面。如果数据集是N维的,那么就需要N-1维的某某对象对数据进行分割。该对象就被称为超平面也是分类的决策边界。

根据这种方法我们构造一个分类器,如果数据点离决策边界越远,那么其最后的预测结果也就越可信

点到分割线的距离称为间隔
支持向量就是离分隔超平面最近的那些点。

1.3 最大间隔与分类

什么样的决策边界才是最好的呢?
首先我们引入
超平面方程:

w^Tx+b=0

对于线性可分的数据集来说,超平面有许多个,但几何间隔最大的分离超平面是唯一的。
① 两类样本分别分割在超平面的两侧
② 两侧距离超平面最近的样本点到超平面的距离被最大化

x=(x_1,x_2,\ldots\ldots x_n)

到直线

w^Tx+b=0

距离为

\frac{(w^Tx+b)}{||w||}

其中

||w||=\sqrt{w_1^2+\ldots\ldots+w_n^2}

\begin{cases}&\frac{(w^Tx+b)}{||w||}\geq d,y=1\\&\frac{(w^Tx+b)}{||w||}\leq-d,y=-1\end{cases}

支持向量(正、负)之差为

\frac2{||w||}

则最大间隔转化为求其最大值

arg\max_{w,b}\frac2{||w||}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值