机器学习技法(3)--Kernel Support Vector Machine

根据上一次推导出来的问题:

从计算的角度来说,如果维度太大,向量z的内积求解起来非常的耗时耗力。

我们可以把这个过程分拆成两个步骤,先是一个x空间到z空间的转换Φ,再在z空间里做内积。如果能把这两个步骤合起来算得快一点的话就可以避开这个大计算量。

x和x‘转换了再做内积:

这样的方法可以算得比较快,因为直接在x空间内计算就好了,不用在z空间计算:

而这样的转换叫做kernel function:

这个kernel在SVM里怎样应用呢?

可见,kernel trick是一个避免了在高纬度空间进行计算的方法。根据上图的替代,得出了kernel SVM:

而且,kernel SVM在做prediction的时候只需要SV就可以了。

下面介绍更多的其他形式的二项式转换的kernel:

上面的放缩可以提炼成更加通用的形式:

只要稍微改一下kernel,点对我们要找的线的距离也会随之改变(distance/margin),SV也会跟着改变。所以kernel也要仔细选择。

从2次项kernel,往高次项kernel推导:

不管是什么样的维度,kernel的好处都是适用的:

kernel做1维转换的时候:

这样简单的转换用原来的方法解决就好了。

那如果这个维度是无限大呢?

上图证明了无限多维的kernel也是可行的。所以引出了Gaussian kernel:

把它代入到SVM里:

得到了中心在SV上的线性函数。所以高斯kernel的本质是:

下面比较一下不同kernel的优缺点:

linear kernel

polynomial kernel

Gaussian kernel

其他kernel的介绍:

kernel代表了向量的内积,也就是向量的相似性。kernel必须具备两个特质,一个是对称性,另一个是半正定。

总结:

时间: 2024-08-25 11:59:34

机器学习技法(3)--Kernel Support Vector Machine的相关文章

机器学习技法(1)--Linear Support Vector Machine

线性支持向量机. 在这种分类问题中,我们需要选一条最“胖”的线,而这条最胖的线就是margin largest的线. 我们的优化目标就是最大化这个margin.也就是在最小化每一个点到这条线的距离.这个距离怎么计算呢? 为了以后不会混淆,w0就不整合成向量w了,另外取一个新名字b.同样地,x0=1也就不用塞进x向量里了. 所以得出:h(x)=sign(wTx+b),而距离distance(x,b,w)满足wTx'+b=0 x'和x''是平面上的两个点,(x''–x')是平面上的向量,如果这个平面

机器学习之支持向量机(Support Vector Machine)(更新中...)

支持向量机 支持向量机(support vector machines,SVMs)是一种二类分类模型.它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机:支持向量机还包括核技巧,这使它成为实质上的非线性分类器.支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划(convex quadratic programming)的问题. 支持向量机学习方法包含构建由简至繁的模型:线性可分支持向量机(linear support vector machine in

机器学习技法 笔记六 Support Vector Regressssion

今天要说的是SVR 上一次提到了kernel logistic rgeression 1.kernel ridge regression 同时也提到了,对于任何的L2-regularized linear model,它的w都可以用资料的线性组合来表示 对于以前学的linear regression ,我们的error,是用的squared error,即差值的平方来达到regression 如果把这个regression配合上regularization的话,那么就是ridge regress

机器学习技法——第1-2讲.Linear Support Vector Machine

本栏目(机器学习)下机器学习技法专题是个人对Coursera公开课机器学习技法(2015)的学习心得与笔记.所有内容均来自Coursera公开课Machine Learning Techniques中Hsuan-Tien Lin林轩田老师的讲解.(https://class.coursera.org/ntumltwo-001/lecture) 第1讲-------Linear Support Vector Machine 在机器学习基石介绍的基本工具(主要围绕特征转换Feature Transf

2.机器学习技法- Dual Support Vector Machine

Lecture 2.  Dual Support Vector Machine 2.1 Motivation of Dual Suppor Vector Machine 将 linear support vector machine 加上 feature transformation 就能得到 nonlinear support vector machine.这样做的好处,我们可以利用 svm 和 feature transformation 的优良特性Q1:较小的 VC Dimension (

支持向量机SVM(Support Vector Machine)

支持向量机(Support Vector Machine)是一种监督式的机器学习方法(supervised machine learning),一般用于二类问题(binary classification)的模式识别应用中. 支持向量机的最大特点是既能够最小化经验损失(也叫做经验风险.或者经验误差),同时又能够最大化几何间距(分类器的置信度),因此SVM又被称为最大边缘区(间距)的分类器. 根据具体应用场景的不同,支持向量机可以分为线性可分SVM.线性SVM和带有核函数的SVM.最终的结果都是得

支持向量机(SVM:support vector machine)

传统机器学习分类任务中,我认为支持向量机是最难.最复杂.最有效的一种模型.可能是由于其是一种特殊的神经网络的缘故吧! 1.支持向量机简介 支持向量机(support vector machines,SVM)是一种二类分类模型.它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机:支持向量机还包括核技巧,这使它成为实质上的非线性分类器.支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划(convex quadratic programming,不怕,附录有解

A glimpse of Support Vector Machine

支持向量机(support vector machine, 以下简称svm)是机器学习里的重要方法,特别适用于中小型样本.非线性.高维的分类和回归问题.本篇希望在正篇提供一个svm的简明阐述,附录则提供一些其他内容.(以下各节内容分别来源于不同的资料,在数学符号表述上可能有差异,望见谅.) 一.原理概述 机器学习的一大任务就是分类(Classification).如下图所示,假设一个二分类问题,给定一个数据集,里面所有的数据都事先被标记为两类,能很容易找到一个超平面(hyperplane)将其完

Linear Classification: Support Vector Machine, Softmax

原文地址:http://cs231n.github.io/linear-classify/ ############################## 内容列表: 1.介绍线性分类器 2.线性成绩函数 3.解释一个线性分类器 4.损失函数 4.1.多类支持向量机 4.2 . Softmax分类器 4.3 . 支持向量机 vs Softmax 5.线性分类器的交互式web例子 6.总结 ###############################################3 Linear