前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Support Vector Machine(支持向量机)-机器学习基础

Support Vector Machine(支持向量机)-机器学习基础

作者头像
Steve Wang
发布2019-07-02 10:16:31
7000
发布2019-07-02 10:16:31
举报
文章被收录于专栏:从流域到海域从流域到海域

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1454165

内容总结自自花书《deep learning》Chapter 5,由英文版翻译而来。英文版官网可以免费查阅:http://www.deeplearningbook.org/

支持向量机(Support Vector Machine,SVM)是监督学习中一种极具影响力的方法。这种模型与logistic regression相同,都是由线性函数w⊤x+b\pmb{w}^\top \pmb{x}+bwww⊤xxx+b推导而来的。但与线性回归不同的是,支持向量机不提供概率,只输出一个类别。SVM在w⊤x+b\pmb{w}^\top \pmb{x}+bwww⊤xxx+b为正数时预测其为正阳性类,反之,SVM在w⊤x+b\pmb{w}^\top \pmb{x}+bwww⊤xxx+b为负数时则预测其为负阴性类(针对二元分类而言,译者注)。

支持向量机的一个关键创新在于核技巧(kernel trick)。这种核技巧包含了观察到众多机器学习算法都完全能被写成样本之间点积(dot product)的形式。

该函数(5.83)相对x是非线性的,但是ϕ(x)\phi(\pmb{x})ϕ(xxx)和α\pmb{\alpha}ααα之间是线性的。基于核的函数和使用ϕ(x)\phi(\pmb{x})ϕ(xxx)对所有输入进行数据预处理是完全等价的,之后在一个新的转换后的空间内学习一个线性模型。

核技巧由于以下两个原因是非常强有效的。第一,它使得我们能够学习一个关于x的非线性函数模型,并且保证可以使用凸优化技巧高效收敛。这是因为我们考虑固定ϕ\phiϕ和只优化α\pmb{\alpha}ααα,也即,优化算法可以将决策函数看作在不同的空间内是线性的的。第二,核函数k通常采用的是实现方式会比简单的构造两个ϕ(x)\phi(\pmb{x})ϕ(xxx)向量并显式点积在计算上会高效得多。

在大多数情况下,k(x,x′)k(\pmb{x},\pmb{x'})k(xxx,x′x′x′)都是一个非线性的,可解的x的函数即使ϕ(x)\phi(\pmb{x})ϕ(xxx)是不可解的。

常用的核是高斯核(Gaussian kernel):

高斯核也被称作radial basis function(RBF)核,它因其值在从u射出指向v的直线上降低而得名。

我们可以将高斯核看作是模板匹配(template matching):

支持向量机并不是唯一的可以被核技巧(kernel trick)增加的算法,其他线性模型也可以以这样的形式被增强。这类使用核技巧的算法被称作核机器(kernel machine)或者核方法(kernal machine)。

核机器的一个主要缺陷在于计算决策函数的代价对于训练样本数目是线性增长的。支持向量机可以通过学习一个包含了很多0的α\pmb{\alpha}ααα向量来减轻这个缺陷的影响。分类一个新的样本只需要针对含有非0αi\alpha_iαi​的训练样本计算核函数。这些训练样本被称作支持向量(support vector)。

核机器(kernel machine)也会在数据集庞大时面临高计算成本的问题。使用泛型核的核机器很难良好泛化。现在深度学习的出现就是旨在克服核机器的这些限制。当前深度学习的复兴是从Hinton et al.(2006)证明了一个神经网络能在MNIST benchmark上胜过使用RBF核的SVM开始的。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年06月02日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

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