一句话介绍支持向量机:通过非线性映射将输入空间映射到高维空间,再构造一个最优的分类超平面,使得离分离器超平面最近的异类样本之间具有最大的间隔。
- 线性可分SVM
当训练数据线性可分时,通过硬间隔(hard margin)最大化可以学习得到一个线性分类器,即硬间隔SVM.
- 线性SVM
当训练数据不能线性可分但是可以近似线性可分时,通过软间隔(soft margin)最大化也可以学习到一个线性分类器,即软间隔SVM。
- 非线性SVM
当训练数据线性不可分时,通过使用核技巧(kernel trick)和软间隔最大化,可以学习到一个非线性SVM。
在决定最佳超平面时只有支持向量起作用,而其他数据点并不起作用。如果移动非支持向量,甚至删除非支持向量都不会对最优超平面产生任何影响。也即支持向量对模型起着决定性的作用,这也是“支持向量机”名称的由来。
二. 软间隔
三. 非线性SVM——核技巧
支持向量机的优点是:
- 由于SVM是一个凸优化问题,所以求得的解一定是全局最优而不是局部最优。
- 不仅适用于线性问题还适用于非线性问题(用核技巧)。
- 拥有高维样本空间的数据也能用SVM,这是因为数据集的复杂度只取决于支持向量而不是数据集的维度,这在某种意义上避免了“维数灾难”。
- 理论基础比较完善(例如神经网络就更像一个黑盒子)。
支持向量机的缺点是:
- 二次规划问题求解将涉及m阶矩阵的计算(m为样本的个数), 因此SVM不适用于超大数据集。(SMO算法可以缓解这个问题)
- 只适用于二分类问题。(SVM的推广SVR也适用于回归问题;可以通过多个SVM的组合来解决多分类问题)
核方法、核技巧和核函数 - 知乎本文介绍核方法(kernal method)、核技巧(kernal trick)和核函数(kernal function),以及在它们在SVM中的应用[1], 是 SVM系列的第三篇。之前的SVM推导中,假设了输入空间是线性可分的(存在划分超平面)。现实中的…https://zhuanlan.zhihu.com/p/61794781核方法 是一类把低维空间的非线性可分问题,转化为高维空间的线性可分问题的方法。核方法不仅仅用于SVM,还可以用于其他数据为非线性可分的算法。核方法的理论基础是Cover's theorem,指的是对于非线性可分的训练集,可以大概率通过将其非线性映射到一个高维空间来转化成线性可分的训练集。
核方法(kernal method)、核技巧(kernal trick)和核函数(kernal function)
核函数的选择是SVM的最大变数,如果核函数选择不适,不能将输入空间映射到线性可分的特征空间。
高斯核函数
既然高斯核函数能够比较x和z的相似度,并映射到0到1,回想logistic回归,sigmoid函数可以,因此还有sigmoid核函数等等。