支持向量机----分类中的“王者”
Posted 凌云网络实验室
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支持向量机----分类中的“王者”相关的知识,希望对你有一定的参考价值。
|
|
|
|
关于支持向量机,在理论方面有很多数学公式推导,理解那一系列的数学推导对支持向量机的理解你会更加深入,但是本文打算从基础概念入手,避免复杂的数学公式,以下内容是我看过有关SVM总体认知讲解最好的了,很通俗,很清晰,特别适合初学者在大体上对SVM有一个清晰的认识。我对其进行了相应的整体与归纳,希望对大家有所帮助,有什么问题也可以与我们交流讨论。 |
|||
|
|
SVM三大重要构件
最大间隔
高维辐射
核方法
这三个构件是彼此独立又互相关联的关系。正可谓“千里之行始于‘最大间隔’,在‘高维映射’迎来升华,最后通过‘核方法’修成正果”。
间隔概念
硬间隔:要求很严格,不允许有一点错误分类
软间隔:知道会有划错但希望尽可能少
支持向量:处于边缘的数据点,支持向量处于两个类的边缘,离另一个类最近,只要确保它们分类正确,剩下的肯定能分类正确,支持向量是支持向量机的焦点,也是支持向量机的由来。
高维映射
非线性分布时,我们可以采取将低维数据映射到高维上,将不可分变为可分。比如在原来左右的维度上增加上下维度。关键是我们要知道当前的分布是什么样的,也知道想要表达的分布是什么样的,选择合适的映射函数。
核函数
核函数不是一种函数,而是一类功能性函数,能够在支持向量机中完成高维映射这种功能的函数都称为核。
一是增加空间的维度;
二是完成对现有数据从原空间到高维空间的映射。
我们必须首先选定一款核函数,才能通过核函数将数据集进行映射从而得到高维映射结果。核函数一旦选定就不会再调整与改变。
最后归纳一下,使用支持向量机进行分类经过三个步骤:
1)选取一个合适的数学函数作为核函数。
2)使用核函数进行高维映射,数据点在映射后由原本的线性不可分变为线性可分。
3)使用SMO等算法使得间隔最大化,用间隔作为度量分类效果的损失函数,最终找到能够让间隔最大的超平面,分类也就最终完成了。
在支持向量机中,涉及“核”的术语实际上有三个,分别是核函数、核方法(Kernel Method)和核技巧(Kernel Trick),核方法和核技巧就是提出需求,核函数则是给出解答。核函数是一石二鸟,实际上是完成了两项独立的任务。
任务一是完成核方法提出的要求,就是如何将低维非线性数据映射成高维数据,从而变成线性可分。前面我们反反复复介绍的其实就是核方法的内容,但这并不是核函数的全部内容。
任务二是完成核技巧提出的要求,之所以称为“技巧”,是因为核技巧主要是提高核方法的计算效率。前面我们将高维映射和间隔最大化认为是支持向量机的两大部分,按照这种理解,数据应该首先完成高维映射,然后计算间隔,最后再进行间隔最大化,也因此产生了双主线“打架”的问题。
计算间隔涉及向量点积运算,如果先进行高维映射再进行向量点积运算,这会导致运算量激增,尤其是高维向量运算,由于参加运算的维度增加了,运算量也会显著增加。核技巧简化了这个过程:只需要输入原始向量就能通过核技巧计算直接得到正确的点积结果,而不用把两个向量分别完成高维映射,再进行点积运算,即将两项工作用数学技巧一次就完成。
THE
END
凌云网络
排版:米玉秋
审核:马淑芳
以上是关于支持向量机----分类中的“王者”的主要内容,如果未能解决你的问题,请参考以下文章