线性可分支持向量机
支持向量机的基本型
即:
问题可以转化成:
求解方法–最大间隔法:
求解过程
使用拉格朗日乘子法,利用拉格朗日对偶性,通过求解对偶问题,得到原始问题的最优解。
构造拉格朗日函数:
原始问题:
对偶问题:
第一步:
首先求解
对w和b求偏导,得:
把求导结果带入L(w,b,α),得:
即:
这样,原式就变成了求解α,使得式子取极大值
第二步:
求解:
做一下变换,添加一个负号,把式子变成取极小,α结果相同。
求得α的最优解,则w和b的解为:
分离超平面可以写成:
分类决策函数可以写成:
线性不可分支持向量机
若有一些点线性不可分,则引入松弛变量,允许样本不满足硬间隔的约束,使得函数间隔加上松弛变量大于等于1,最终满足软间隔约束。
约束条件:
目标函数:
原始问题的优化问题变为:
拉个朗日函数:
求导:
将求导结果带入拉格朗日函数,得:
然后求解α即可。
核函数
当训练样本线性不可分时,可以将样本从原始空间映射到一个更高纬的空间。
原始问题表示为
对偶问题为:
定义核函数:
对偶问题表示为:
求解得到:
常用的核函数:
优缺点
优点:
1.泛化错误率低
2.决策函数只由少数支持向量所确定,计算复杂性取决于支持向量的数目,而不是样本空间的维数, 避免了“维数灾难”
3. 结果易解释
4. “剔除”大量冗余样本, 不但算法简单,而且、有较好的“鲁棒”性。
缺点:
1.对参数调节和核函数的选择敏感
2. 不太适于大规模样本,它借助二次规划求支持向量,而二次规划涉及m阶矩阵的计算,当m很大时该矩阵的存储和计算代价都很大
3.用SVM解决多分类问题存在困难
参考:
《机器学习》周志华
《统计学习方法》李航