关于机器学习SVM算法介绍

【嵌牛导读】:对于普通的线性可分问题,通常我们可以找到一条直线将数据分为两类,但是一般情况下我们找到的分类线不止一条,如何选择最优分类线是面临的问题。

【嵌牛鼻子】:SVM,线性可分,最优分类线选择

【嵌牛提问】:SVM算法用来解决什么问题?什么时候采用SVM算法?

【嵌牛正文】:

首先给出一个非常非常简单的分类问题(线性可分),我们要用一条直线,将图一中黑色的点和白色的点分开,很显然,图一的这条直线就是我们要求的直线之一,但是从图二可以看出将这些点分开的线不止有一条,那么选择哪一条就是面临的问题。

图一

图二

我们从图三,图四选择了两种不同的分法,如下:

图三

图四

我们可以观察到,图四上的直线相对于图一样本中的点距离远,在实践中分类效果也是优于图四,我们把图四上圈出来的点称为支持向量即support vector,而图四的黄色部分我们称为margine,我们的目的也就是要让这段间隔最大化。如图五所示,M的计算公式为



我们要最大化M即另W的二范数最小,为了方便求导我们将其先平方在其系数加上1/2,

但是当样本点出现在间隔中我们无法判定属于哪一类,因此为了确保样本点不在间隔内,我么那加入了约束条件

s.t的意思是subject to,也就是在后面这个限制条件下的意思,W为列向量。我们要求下面函数的最优解。转化为对偶问题。

利用拉格朗日乘子方法,求得最优解α*,然后继续求得w*,b*,即得到了分类的超平面w*x+b*=0;我们将决策函数写为f(x)=sign(w*x+b*)。至此我们便找到了分类面,这也就是svm算法的硬间隔问题。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容