人工智能机器学习算法学习-支持向量机(SVM)算法推导

版权声明:本文为博主原创文章,如需转载请标明出处: https://blog.csdn.net/xinyuski/article/details/82347148

 

支持向量机(SVM)算法推导

1.1  SVM要解决的问题

SVM和逻辑回归类似,也是非常经典的二分类问题,也可以作多分类问题。现以二分类问题为例进行算法推导。

支持向量机(SVM)要解决的问题:

  1. 什么样的决策边界是最好的?
  2. 特征数据本身如果很难分,怎么处理?
  3. 计算复杂度怎么样?能实际应用么

目标:基于上述问题对SVM进行推导

假设有一个问题:如下图1-a所示,将两种不同颜色的点分开,图b、图c中的黑色实现均可作决策边界,术语称“决策面”。到底哪个决策边界会是最好的呢?现在需要解决的就是找最好的决策边界将不同的颜色的点分开。

 

 

                                                       图1

扫描二维码关注公众号,回复: 3395347 查看本文章

很明显,图1-b决策边界相对于图1-c,边界区域比较宽,越宽越好。越宽,边界的泛化能力也越强(容忍度比较高)。我们的目标是在训练集上训练出一个最佳的边界,在测试集上表现最佳。

实际问题问题--转化数学问题(目标函数)

决策边界:离样本点距离最远的直线

1.2 距离与数据标签的定义

1) 距离:

决策边界---空间中的一条直线:WX+b =0

X1W1+X2W2+......+b=0 

根据点到直线的距离公式可得,样本点到直线的距离为:

Distance(x,b,w) =\frac{|wx+b|}{||w||}

假设支持向量的点到决策曲面的最近的距离是1个单位,则样本点到直线的距离1,即

  1. 数据标签定义

数据集:(X1,Y1),(X2,Y2)... (Xn,Yn)  X:数据    Y:样本类别

决策方程:y(x) = wx+b

与逻辑回归类似,SVM作二分类 要么正例 要么负例。逻辑回归正例为1,负例为0;SVM正例为1,负例为-1。

预测值 > 0 则y为正例对应y值为+1

预测值 < 0  则为负例y值为-1

y(Xi)为预测值   Yi为数据原有的标签值

无论是正例还是负例,下面的表达式始终成立:

y(Xi)* Yi> 0

1.3目标函数

优化目标:找到一条直线(合适的wb),使得离该线最近的点和这条直线(决策面)的距离最远。

点到平面的距离-----点到直线的距离

猜你喜欢

转载自blog.csdn.net/xinyuski/article/details/82347148