李航. 统计学习方法[M]. 清华大学出版社, 2012.
7.3 非线性支持向量机与核函数
7.3.1 核技巧
用线性分类方法求解非线性分类问题分为两步:①使用一个变换将原空间的数据映射到新空间;②在新空间里用线性分类学习方法从训练数据中学习分类模型。核技巧就属于这样的方法。
核技巧应用到支持向量机,其基本思想就是通过一个非线性变换将输入空间(欧式空间或离散空间)对应于一个特征空间,使得在输入空间中的超曲面模型对应于特征空间中的超平面模型(支持向量机)。
核函数
设是输入空间,又设为特征空间,如果存在一个从到
的映射使得对所有,函数满足条件,则称为核函数,为映射函数,式中为内积。
核技巧的想法是,在学习与预测过程中只定义核函数,而不显式地定义映射函数。对于给定的核,特征空间和映射函数的取法并不唯一。
在对偶问题的目标函数中的内积可以用核函数来代替,于是对偶问题的目标函数成为
同样,分类决策函数中的内积也可以用核函数代替,分类决策函数式成为
7.3.2 正定核
正定核的充要条件
设是对称函数,则为正定核函数的充要条件是对任意的,对应的Gram矩阵是半正定矩阵。
正定核的等价定义
设,是定义在上的对称函数,如果对任意的,,对应的Gram矩阵是半正定矩阵,则称是正定核(positive definite kernel function)。
7.3.3 常用核函数
- 多项式核函数(polynomial kernel function)
- 高斯核函数(Gaussian kernel function)
- 字符串核函数(string kernel function)
7.3.4 非线性支持向量分类机
非线性支持向量机
从非线性分类训练集,通过核函数与软间隔最大化,或下面算法中的凸二次规划,学习到的分类决策函数
称为非线性支持向量机,是正定核函数。
非线性支持向量机学习算法
输入:训练数据集,其中,,
输出:分类决策函数
(1) 选取适当的核函数和适当的参数,构造并求解最优化问题
(2) 选择的一个正分量,计算
(3) 构造决策函数
7.4 序列最小最优化算法
序列最小最优化算法(sequential minimal optimization, SMO)算法旨在高效实现支持向量机学习,是一种启发式算法,其基本思路是:如果所有变量的解都满足此最优化问题的KKT条件(Karush-Kuhn-Tucker conditions),那么这个最优化问题的解就得到了。因为KKT条件是该最优化问题的充分必要条件。
SMO算法
输入:训练数据集,其中,,精度
输出:近似解
(1) 取初值,令;
(2) 选取优化变量,解析求解两个变量的最优化问题
求得最优解,更新为;
(3) 若在精度范围内满足停机条件
其中,则转(4);否则令,转(2);
(4) 取。