姓名:黄永飞;学号:17040520006;学院:机电工程学院;
转自:
http://blog.csdn.net/han_xiaoyang/article/details/49797143
【嵌牛导读】机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。在机器学习中,SVM这么神圣的算法可能是每个学习者会头痛却又不得不面对的,下面是SVM算法系列,进行详细讲解算法的使用和应用。
【嵌牛鼻子】SVM算法 逻辑回归 间隔
【嵌牛提问】什么是SVM算法?其用法和原理是什么?如何让理解最大间隔?
1.支持向量机(SVM)的目标是什么
SVM的目标是利用训练数据集的间隔最大化找到一个最优分离超平面
首先和逻辑斯蒂回归和朴素贝叶斯一样,我们需要一些打标签的数据用于训练,这也就是说SVM是一个有监督学习算法。
同样,SVM是一个分类算法,和逻辑斯蒂回归和朴素贝叶斯一样,可以用于预测数据属于哪个类别。
典型的分类问题比如结果预测(比如泰坦尼克号生存结果)和垃圾邮件分类,或者下面这个简答的人群分类小例子:
上图是人的身高和体重绘制的散点图,使用支持向量机(SVM),可以尝试回答以下问题:
给定一个特定的数据点(重量和高度),这个人是一个男人还是一个女人?
例如:有人高175厘米,重80公斤,他是男人还是女人呢?
2.什么是分离超平面
在图中我们可以看出,我们是有办法可以分离这两类样本点的。例如:我们可以画一条线,使得所有的男性数据点在直线上方,所有的女性数据点在直线的下方。我们知道在逻辑斯蒂回归当中,这条直线叫做决策边界,在SVM当中我们暂且把它叫做分离超平面,大概是下图这个样子的,但是它和LR里面的决策边界有一些小小的不同,一会儿我们会提到。
如果它仅仅是一条线,我们为什么称它为一个超平面?
上面只是二维空间中的一个小例子,但事实上SVM在任意维度上均有效。
超平面是平面的一般化
在一维的平面中,它是点
在二维中,它是线
在三维中,它是面
在更高的维度中,我们可以称之为超平面
点L是一维空间下的分离超平面
什么是最优分离超平面?
OK,重点来了,刚才提到了逻辑斯蒂回归当中,有个类似的概念叫做决策边界,在SVM当中把它叫做分离超平面,事实上,你找到了一个分离超平面,但那不意味着它是最优的那个!
回到刚才的例子中,我们可以找到好几个分离超平面。他们每一个都是正确的,可以成功将数据集中的男性和女性划分两边。
但是是不是说这些分离超平面都一样好呢?
OK,咱们一起来看看,假设我们选择那个绿色的分离超平面,然后咱们用在现实生活中的数据上进行分类。
你会发现有一些女性被分错了!!直观上非常好理解,这个分类超平面太接近女性(红色样本点)了,那它对noise/异常点/临近边界的点处理得并不好。
所以大家都想到了,我么要选择这样一个超平面–尽可能的远离所有类别的数据点:
这次看起来好多了,再用刚才新加的样本点去分类,你发现这次它健壮多了,可以好好地把它们分对了。
对,这就是SVM要做的事情,支持向量机就是要找到这样一个最优分类超平面,保证:
正确地对训练数据进行分类
对未知数据也要进行很好的分类
.
所以这和Margin/间隔有什么关系呢?又怎么找到它呢
对应上图,一句话概括:Margin就是最优分离超平面的间隔。
给定一个特定的超平面,我们可以计算出这个超平面与和它最接近的数据点之间的距离。间隔(Margin)就是二倍的这个距离。
一般来说,间隔(Margin)中间是无点区域。这意味着里面不会有任何点。(注:在数据有噪声的情况下,可能达不到这么理想的状况,所以我们后面会引入软间隔分类器)
我们从刚才的分割超平面里再选一个,间隔(Margin)会看起来像这样:
可以清楚地看出,B的间隔要小于A的间隔。
我们有以下的观察结果:
如果一个超平面有非常接近的一个数据点,那么间隔会小。
如果一个超平面离数据点越远,那么间隔越大。
这意味着最优超平面将有最大的间隔。
我们后面也会看到SVM是利用间隔最大化求得最优分离超平面。
欢迎浏览SVM碎碎念part2:SVM中的向量与空间距离
————————————————
版权声明:本文为CSDN博主「寒小阳」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/han_xiaoyang/article/details/52678373