您的位置:首页 > 其它

SVM

2016-06-26 18:24 225 查看

SVM的目的就是找到一组向量w和常量b,构成一个超平面

,学习出一个分类函数



SVM的目的就是找到一组向量w和常量b,构成一个超平面

,学习出一个分类函数

,SVM叫做支持向量机,我主要想说一下支持向量的定义,利用超平面将数据分为两类,将每一类中距离超平面最近的点与超平面做两个平行的平面,而“支撑”这两个超平面的必定会有一些点,而这些“支撑”的点便叫做支持向量。

很显然,由于这些支持向量(x,y)刚好在边界上,所以它们满足

(前面,函数间隔固定为1);而对于所有不是支持向量的点,也就是在“阵地后方”的点,则显然有y(wTx + b) > 1。事实上,当最优的超平面确定下来之后,这些后方的点就不会对超平面产生任何影响。SVM这样的特性一个最直接的好处就在于存储和计算上的优越性-只需要存储和计算少量的支持向量点即可完成对新数据的分类判断。例如,如果使用
100 万个点求出一个最优的超平面,其中是 supporting vector 的有 100 个,那么我只需要记住这 100 个点的信息即可,对于后续分类也只需要利用这 100 个点而不是全部 100 万个点来做计算。当然,通常除了k 近邻之类的“Memory-based Learning”算法,通常算法也都不会直接把所有的点用来做后续推断中的计算。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: