本文主要是对SVM进行一个简单介绍。注:作者也是初学者,如有错误,请不吝赐教。
参考了中科院的汪海燕、黎建辉、杨风雷等人的支持向量机理论及算法研究综述这篇论文,在此表示感谢。
1、什么是SVM
维基百科对SVM的定义:更正式地来说,支持向量机在高维或无限维空间中构造超平面或超平面集合,其可以用于分类、回归或其他任务。直观来说,分类边界距离最近的训练数据点越远越好,因为这样可以缩小分类器的泛化误差。
尽管原始问题可能是在有限维空间中陈述的,但用于区分的集合在该空间中往往线性不可分。为此,有人提出将原有限维空间映射到维数高得多的空间中,在该空间中进行分离可能会更容易。为了保持计算负荷合理,人们选择适合该问题的核函数 k(x,y) 来定义SVM方案使用的映射,以确保用原始空间中的变量可以很容易计算点积。 高维空间中的超平面定义为与该空间中的某向量的点积是常数的点的集合。定义超平面的向量可以选择在数据基中出现的特征向量
xi
的图像的参数
αi
的线性组合。通过选择超平面,被映射到超平面上的特征空间中的点集x 由以下关系定义:
∑iαik(xi,x)=constant.
注意,如果随着y 逐渐远离
x
,
SVM(Support Vector Machine):中文名为支持向量机,是建立在严格的统计学习理论上的一种监督式的学习算法。就个人理解而言,SVM算法就是一种以实现最优划分,即实现训练集和分类超平面间隔最大为目标的一种算法,对于线性平面不可分的数据集,它的主要实现方式是通过核函数将数据集映射到一个高维的可线性划分的数据空间中再进行划分。由于支持向量机具有较强的理论基础(理论部分的具体推导详见我的下一篇博客或者是pluskid的SVM的系列博客),故而它能保证找到的极值解是全局最优解而非局部最小值,这也就决定了SVM 方法对未知样本有较好的泛化能力, 正因为这些优点,SVM 能良好地应用到模式识别、概率密度函数估计、时间序列预测、回归估计等领域,也被广泛应用到模式识别中的手写数字识别 、文本分类、图像分类与识别等众多领域中。但是,就我的理解而言,虽然SVM也有在回归方面的应用,但是SVM主要是运用在分类任务上。
2、SVM的运用
这一部分作者还没有了解到一定程度,后面再详细介绍,预计后面会概述SVM的应用并且详细到经典算法的介绍,并给出论文链接和代码地址,在此表示道歉。