Epsilon 在 SVM 回归中的含义

机器算法验证 r 回归 支持向量机 e1071
2022-04-01 16:21:22

我做了一些教程并阅读了几篇文章,但 SVM 仍然存在问题,正是 SVR。我在 R 中进行分析,我使用带有“svm”功能的 e1071 库。在那个函数中,我使用了我的多变量方程,所以 svm 从现在开始就像 SVR 一样工作。

我的结果:

(general: cost=1,gamma=0.1666)
-epsilon=0.1(61 SV-supported vectors) - RMSE = 4.1(on unseen data)
-epsilon=1(10 SV) - RMSE = 19(on unseen data)
-epsilon=1.3(7 SV) - RMSE = 25(on unseen data)

当 epsilon 增加时,我知道我们实际上应该有更多支持的向量,如下图所示:

SVR

在我们的例子中,我们可以看到更大的 epsilon 支持的向量越少。我不知道为什么会这样。如果有人可以向我解释,我会很高兴。

1个回答

你倒过来了。

传统的ϵ-SVR 适用于对 epsilon 不敏感的铰链损失。的价值ϵ定义了一个容差范围,其中不对错误进行惩罚。

请记住,支持向量是跨边距的实例,即被惩罚的样本,其中松弛变量不为零。

较大的ϵ也就是说,您在解决方案中承认的错误越大。相比之下,如果ϵ0+,每一个错误都会受到惩罚:你以许多(倾向于实例总数)支持向量结束来维持它。