SVM中如何防止过拟合

SVM中如何防止过拟合在前面的博客中 我们已经详细讲述过了 什么是过拟合问题 过拟合 overfitting 表现为模型在训练集上预测效果好 在测试集上预测效果差 数据中的异常点会导致过拟合 这些异常点 严重偏离正常位置 在 SVM 中 最优分类超平面恰恰是那些占少数的支持向量

大家好,我是讯享网,很高兴认识大家。

具体例子:(参考:https://www.jianshu.com/p/9b03cac58966)
如下图所示,深红色线表示我们希望训练得到的最优分类超平面,黑色虚线表示由于过拟合得到的较差的分类面。这是由于蓝色数据中有一个异常点,即图中的那个黑圈蓝点,使得我们的SVM去将就配合它,导致最后得到的分类面(粗黑色虚线)不尽如人意。从间隔可以看出,黑色虚线两边的间隔要比红色线两边的间隔要狭窄,也就是黑色虚线的分类效果比较差
在这里插入图片描述
讯享网
解决过拟合的办法是为SVM引入了松弛变量ξ(slack variable),将SVM公式的约束条件改为:
在这里插入图片描述

从下可以看到,引入松弛变量使SVM能够容忍异常点的存在

为什么?

因为引入松弛变量后,所有点到超平面的距离约束不需要大于等于1了,而是大于0.8就行了(如果ξ=0.2的话),那么异常点就可以不是支持向量了,它就作为一个普通的点存在,我们的支持向量和超平面都不会受到它的影响。
在这里插入图片描述
我们知道,事物都有两面性,对异常点太容忍会导致任意超平面都可以是“最优”超平面,SVM就失去意义了。因此SVM公式中的目标函数也需要相应修改,我们加上松弛变量的平方和,并求最小值。这样就达到一个平衡:既希望松弛变量存在以解决异常点问题,又不希望松弛变量太大导致分类解决太差。

总结:svm中解决过拟合问题.
(1)数据扩增(前面说过)
(2)减少特征维度,维度太高,进行降维
(3)引入松弛变量,SVM特有的(类似于正则化?还在研究中。。。)

注:SVM中还有很多知识需要学习,一点一点啃。

以上内容,如有错误,望留言指正。

引用和参考:

https://www.jianshu.com/p/9b03cac58966

http://www.blogjava.net/zhenandaci/archive/2009/03/15/259786.html

https://www.zhihu.com/question/

https://www.zhihu.com/question/

仅用来个人学习和分享,如若侵权,留言立删。

尊重他人知识产权,不做拿来主义者!

喜欢的可以关注我哦QAQ,

你的关注就是我write博文的动力。

小讯
上一篇 2025-04-01 17:21
下一篇 2025-03-12 12:53

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/103489.html