1 SVM
1.1 SVM的正确理解
SVM的基本原理普遍表述:SVM通过非线性变换把原空间映射到高维空间,然后在这个高维空间构造线性分类器(在高维空间数据点更容易分开)。甚至有部分学者认为SVM可以克服维数灾难(curseof dimensionality)。
如果这样理解SVM的基本原理,我觉得还没有看到问题的本质。因为这个看法不能解释下面的事实:SVM在高维空间里构建分类器后,为什么这个分类器不会对原空间的数据集Overfitting呢?
成功理解SVM可以考虑以下几个方面:
1)SVM求解最优分类器的时候,使用了L2-norm regularization,这是控制Overfitting的关键。
2)SVM不需要显式地构建非线性映射,而是通过Kernel trick完成,这样大大提高运算效率。
3)SVM的优化问题属于一个二次规划(Quadratic programming),优化专家们为SVM这个特殊的优化问题设计了很多巧妙的解法,比如SMO(Sequentialminimal optimization)解法。4)Vapnika的统计学习理论为SVM提供了很好的理论背景(这点不能用来解释为什么SVM这么popular,因为由理论导出的bound太loose)。
1.2 SVM定义
支持向量机(SupportVector Machine)是建立在统计学习理论的VC维