SVM的分类原理
SVM的主要思想可以概括为两点: (1) 它是针对线性可分情况进行分析,对于线性不可分的情况, 通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而 使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能; (2) 它基于结构风险最小 化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期 望风险以某个概率满足一定上界。 支持向量机的目标就是要根据结构风险最小化原理,构造一个目标函数将两类模式尽可能地区分开来, 通常分为两类情况来讨论, (1) 线性可分,(2) 线性不可分。 1. 1 线性可分情况 在线性可分的情况下,就会存在一个超平面使得训练样本完全分开,该超平面可描述为: w ·x + b = 0 (1) 其中,“·”是点积, w 是n 维向量, b 为偏移量。 最优超平面是使得每一类数据与超平面距离最近的向量与超平面之间的距离最大的这样的平面. 最优超平面可以通过解下面的二次优化问题来获得: 满足约束条件: 在特征数目特别大的情况,可以将此二次规划问题转化为其对偶问题:
满足约束条件: 这里 优化问题的求解与分析中, KKT条件将起到很重要的作用,在(7) 式中,其解必须满足: 从式(5) 可知,那些 本称为支持向量,故最终的分类函数为: 根据f ( x) 的符号来确定X 的归属。 1. 2 线性不可分的情况 对于线性不可分的情况,可以把样本X 映射到一个高维特征空间H,并在此空间中运用原空间的函 数来实现内积运算,这样将非线性问题转换成另一空间的线性问题来获得一个样本的归属. 根据泛函的 有关理论,只要一种核函数满足Mercer 条件,它就对应某一空间中的内积,因此只要在最优分类面上采 用适当的内积函数就可以实现这种线性不可分的分类问题. 此时的目标函数为: 其相应的分类函数为: 1. 3 内积核函数 目前有三类用的较多的内积核函数:第一类是 我们所能得到的是p阶多项式分类器,第二类是径向基函数(RBF),也称作高斯核函数:
第三类是Sigmoid函数: 这时SVM实现的就是包含一个隐层感知器,隐层结点数是由算法自动确定的。究竟用哪一种 核函数比较好了?这还是取决你对数据处理的要求,不过建议可以使用径向基函数。 |
|