SVM:
中文名叫支持向量机,它的基本模型是定义在特征空间上的间隔最大的
线性分类器
。
具体来说就是在
线性可分时
,在原空间寻找两类样本的最优分类超平面。
在线性不可分时,加入
松弛变量
并通过
非线性映射
将低维输入空间的样本映射到高维空间使其变为线性可分,这样就可以在该特征空间中寻找最优分类超平面。
SVM的优点:
1)解决了小样本情况下的机器学习。
2)由于使用
核函数
方法
克服了
维数灾难
和
非线性可分
的问题,所以向高维空间映射时没有增加计算的复杂度。(由于支持向量机算法的最终决策函数只由少数的支持向量所确定,所以计算的复杂性取决于支持向量的数目,而不是整个样本空间的维数)。
SVM的缺点:
1)支持向量机算法对大规模训练样本难以实施,这是因为支持向量算法借助二次规划求解支持向量,这其中会设计m阶矩阵的计算,所以矩阵阶数很大时将耗费大量的
机器内存
和
运算时间
。
2)经典的SVM只给出二分类的算法,而在数据挖掘中,一般要解决多分类的分类问题,而支持向量机对于多分类问题解决效果并不理想。
3)现在常用的SVM理论都是使用固定惩罚系数C,但是正负样本的两种错误造成的损失是不一样的。