SVM第一节----SVM问题的定义及数学描述

1.SVM的定义

二分类模型
基本模型是定义在特征空间上的最大间隔线性分类器
学习策略是间隔最大化
可转换为一个求解凸二次规划的问题
学习算法是求解凸二次规划的最优化算法

2.SVM问题的数学描述

2.1线性模型

凡是可以用一条直线把训练样本集分开的样本集称为线性样本集,这条直线便是线性模型;如图
在这里插入图片描述定理:若空间中有一条直线可以将线性样本集分开,则有无数条直线可以将其分开

2.2找到最优的直线

如图:我们从无数条直线中选择3条进行分析;
在这里插入图片描述首先我们在直观上感觉2号线的分类效果最好,因为它把样本分的最开。那么,我们需要从数学上描述2号线:

2.3最优直线的数学描述

其实寻找的是评价这些所有能把样本分开的直线的一个共同的性能指标,然后找到在该指标下,性能最优的那条直线;
下图给出该性能指标d:
在这里插入图片描述定义d:对于每一条能够分开圆圈和叉号的线,平行地将其向正负样本的方向移动,直到与样本点相交为止,得到的两条直线的距离为d。
2号线是使得距离d最大的一条直线
但是存在一个问题,如果不再加入其他的限制条件,与2号线平行的直线都满足最优直线,所以为了保证其唯一性,让最优的直线取在d的中间,即到最近的样本点的距离为d/2的直线为最优的直线

2.4最优直线寻找过程的描述

首先定义几个概念:
d: 间隔 (Margin)
支持向量:与平行线相交的向量(Support vectors)
可以看出,做出最优化直线的过程只与支持向量有关,不需要其他向量,所以处理的数据较少,而且可以用小样本训练;
定义:
1.训练数据及标签( x 1 x_1 x1, y 1 y_1 y1),( x 2 x_2 x2, y 2 y_2 y2)…( x N x_N xN, y N y_N yN)
所有的 X X X都是N维向量,相当于一个训练样本有n个特征点
Y Y Y是标签, y i y_i yi只能等于±1,表示2分类的两个类别
2.线性模型
二维向量 X X X的线性二分类模型是直线
多维向量 X X X的线性二分类模型是超平面
定义超平面的模型(Hyperplane)
W T X + b = 0 \begin{array}{c} W^{T}X+b =0 \end{array} WTX+b=0
其中 W W W是与 X X X维数相同的向量,那么 W T X W^{T}X WTX是一个数, b b b也是一个数
如果只有一个样本点,则满足该等式的参数 W W W b b b将会有无数个,分类器所做的工作就是要通过这些所有的样本点,找到最优的参数,得到最优的分类模型
所有的机器学习算法大致有3个步骤
a.限定一个模型,用一个方程来限定,SVM机器学习算法就是限定了这个模型为超平面模型
b.在模型里面留出待定的参数
c.用训练样本和机器学习算法来确定这些参数的取值,得到参数的值后整个机器学习过程完成
3.线性可分的定义
一个训练集 ( X i , Y i ) {(X_i,Y_i)} (Xi,Yi), ( i = ( 1 − N ) ) (i=(1-N)) (i=(1N)),存在 W , b W,b W,b, s . t s.t s.t对于任意的 i i i,有:(其中 i i i为数据集的个数,不是一个样本的特征数)
Y i = s i g n ( W T X i + b ) \begin{array}{c}Y_i=sign(W^TX_i+b) \end{array} Yi=sign(WTXi+b)
及当 W T X + b > = 0 , Y i = + 1 ; \begin{array}{c} W^{T}X+b >=0 \end{array},Yi=+1; WTX+b>=0,Yi=+1;
W T X + b < 0 , Y i = − 1 ; \begin{array}{c} W^{T}X+b <0 \end{array},Yi=-1; WTX+b<0,Yi=1;
由于 Y i = 1 或 − 1 Y_i=1或-1 Yi=11,所以可以用一种能够更简单的方式来表示上面的两个式子:
Y i ∗ [ W T X + b ] > = 0 ; \begin{array}{c} Y_i*[W^{T}X+b]>=0 \end{array}; Yi[WTX+b]>=0;

函数间隔的定义

在这里插入图片描述但是存在问题:只要成比例地改变W和b,超平面并没有改变,但是函数间隔却以倍数改变,这样来刻画超平面到样本点之间的距离是不准确的,故我们需要对分离超平面的法向量添加一些约束,或者说使其标准化,这时函数间隔就变成了几何间隔;

几何间隔的定义以及几何间隔最大化

在这里插入图片描述

SVM问题的数学描述

在这里插入图片描述这里关于为什么令函数间隔为1,给出如下解释:
1.事实1:
W T X + b = 0 与 a W T X + a b = 0 是 同 一 个 平 面 , a 为 正 实 数 \begin{array}{c} W^{T}X+b =0 \end{array}与\begin{array}{c} aW^{T}X+ab =0 \end{array}是同一个平面,a为正实数 WTX+b=0aWTX+ab=0a
若(W,b)满足公式 Y i ∗ [ W T X + b ] > = 0 ; \begin{array}{c} Y_i*[W^{T}X+b]>=0 \end{array}; Yi[WTX+b]>=0;
则(aW,ab)也满足该公式;
2.事实2:
点到平面的距离公式:
设平面的方程为:W1X+W2Y+b=0
则(X0,Y0)到此平面的距离为:
d = ∣ W 1 X 0 + W 2 Y 0 + b ∣ / ( W 1 2 + W 2 2 ) ( 1 / 2 ) \begin{array}{c} d =|W_1X_0+W_2Y_0+b|/(W_1^2+W_2^2)^(1/2)\end{array} d=W1X0+W2Y0+b/(W12+W22)(1/2)
向量X0到超平面 W T X + b = 0 \begin{array}{c} W^{T}X+b =0 \end{array} WTX+b=0的距离为:

d = ∣ W T X 0 + b ∣ / ∣ ∣ W ∣ ∣ \begin{array}{c} d =|W^TX_0+b |/ ||W||\end{array} d=WTX0+b/W
我们可以用a去缩放(W,b),得到(aW,ab),最终使得在所有的支持向量X0上,有:
∣ W T X 0 + b ∣ = 1 \begin{array}{c} |W^TX_0+b | =1\end{array} WTX0+b=1
此时支持向量与平面的几何距离d=1 / ||w||;到此便得到了函数距离1;根据函数距离的定义便可以得到约束条件(因为最短的函数距离为1,其他的函数距离均会大于等于1),另一种理解方式为支持向量到超平面的函数距离为1;则其他向量到超平面的函数距离必大于1,在w相同的条件下比较;当然如果不取1;取任意一个正实数作为函数距离的值,最终求解出来的W,b只是与原来的相差了一个常数a,而不会影响超平面的选择;
目标函数就是求解最大距离d;(见上图)
最后,稍加整理,便得到了一个优化问题:
在这里插入图片描述至此,SVM最简单的数学模型构建完毕,最终转化成了一个凸优化的问题;正是因为这是一个凸问题,所以求出的W,b的极值一定是唯一的!
下次介绍松弛变量以及非线性样本集引入核函数的概念。

支持向量机(Support Vector Machine,SVM)是一种常用的机器学习算法,用于分类和回归分析。在解决SVM问题时,可以采用数学方法进行求解。 首先,假设给定的训练数据集包含两个类别的样本,为了方便说明,我们假设这两个类别为正例和负例。SVM的目标是找到一个最优的超平面,将这两个类别的样本完全分开。 数学方法解决SVM问题的核心在于确定超平面的参数。常用的方法是通过求解一个二次规划问题来确定超平面的系数和截距。 具体而言,我们可以定义一个目标函数,该目标函数包含两部分:第一部分是最小化超平面的参数的平方和,用于确保超平面能够很好地拟合训练数据;第二部分是最大化训练样本与超平面之间的间隔,用于确保超平面能够很好地区分两个类别的样本。 然后,我们需要引入一个约束条件,确保每个样本点都被正确地分类。这个约束条件可以通过拉格朗日乘子法来引入,并将原始的二次规划问题转化为一个对偶问题。 通过求解对偶问题,可以得到一组拉格朗日乘子的值。最终,通过这些拉格朗日乘子的值,我们可以确定每个样本点上的分类权重,从而完成SVM模型的训练。 最后,通过引入核函数,SVM可以将线性分割问题扩展到非线性分割问题。这个核函数可以将原始特征空间中的样本映射到一个高维特征空间中,从而使得数据更容易分割。 综上所述,在解决SVM问题时,可以采用数学方法来求解超平面的参数,通过求解二次规划问题和对偶问题以及引入核函数,可以有效地解决线性和非线性分割问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值