前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【原创】机器学习从零开始系列连载(3)——​支持向量机

【原创】机器学习从零开始系列连载(3)——​支持向量机

作者头像
lujohn3li
发布2020-02-29 17:12:24
4050
发布2020-02-29 17:12:24
举报

支持向量机

Support Vector Machine‍

支持向量机通过寻找一个分类超平面使得(相对于其它超平面)它与训练集中任何一类样本中最接近于超平面的样本的距离最大。虽然从实用角度讲(尤其是针对大规模数据和使用核函数)并非最优选择,但它是大家理解机器学习的最好模型之一,涵盖了类似偏差和方差关系的泛化理论、最优化原理、核方法原理、正则化等方面知识。

模型原理

SVM原理可以从最简单的解析几何问题中得到:

超平面的定义如下:

从几何关系上来看,超平面与数据点的关系如下(以正样本点为例):

定义几何距离和函数距离分别如下:

由于超平面的大小对于SVM求解并不重要,重要的是其方向,所以根据SVM的定义,得到约束最优化问题:

现实当中我们无法保证数据是线性可分的,强制要求所有样本能正确分类是不太可能的,即使做了核变换也只是增加了这种可能性,因此我们又需要做折中,允许误分的情况出现,对误分的样本根据其严重性做惩罚,所以引入松弛变量,将上述问题变成软间隔优化问题。

新的优化问题:

如果选择:

那么优化问题变成:

损失函数

损失函数2 —— Hinge Loss

使用hinge loss将SVM套入机器学习框架,让它更容易理解。此时原始约束最优化问题变成损失函数是hinge loss且正则项是L2正则的无约束最优化问题:

下面我证明以上问题(1)和问题(2)是等价的(反之亦然):

到此为止,SVM和普通的判别模型没什么两样,也没有support vector的概念,它之所以叫SVM就得说它的对偶形式了,通过拉格朗日乘数法对原始问题做对偶变换:

从互补松弛条件可以得到以下信息:

C越大表明你越不想放弃离群点

分类超平面越向离群点移动

当以上问题求得最优解后,几何间隔变成如下形式:

它只与有限个样本有关系,这些样本被称作支持向量,从这儿也能看出此时模型参数个数与样本个数有关系,这是典型的非参学习过程。

核方法

上面对将内积用一个核函数做了代替,实际上这种替换不限于SVM,所有出现样本间内积的地方都可以考虑这种核变换,本质上它就是通过某种隐式的空间变换在新空间(有限维或无限维兼可)做样本相似度衡量,采用核方法后的模型都可以看做是无固定参数的基于样本的学习器,属于非参学习,核方法与SVM这类模型的发展是互相独立的。

一些可以应用核方法的模型:

代码语言:javascript
复制
1.SVM
2.Perceptron
3.PCA
4.Gaussian processes
5.Canonical correlation analysis
6.Ridge regression
7.Spectral clustering

在我看来核方法的意义在于:

1、对样本进行空间映射,以较低成本隐式的表达样本之间的相似度,改善样本线性可分的状况,但不能保证线性可分;

2、将线性模型变成非线性模型从而提升其表达能力,但这种升维的方式往往会造成计算复杂度的上升。

往期推荐

1.机器学习原来这么有趣!【第一章】

2.【原创】机器学习从零开始系列连载(1)——基本概念

3.【原创】机器学习从零开始系列连载(2)——线性回归

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习爱好者社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档