刘老师,请问一个11-3中关于eta值的问题

来源:11-3 Soft Margin SVM

派蒙的主人

2021-06-25

为什么对于每一个训练样本,都要单独设置一个eta值呢?每个eta值的选取有什么规则吗?

写回答

1回答

liuyubobobo

2021-07-01

你说的是这个吧?

//img.mukewang.com/szimg/60dcbd4f0997384a19341068.jpg


首先,这个 eta 不是超参数,而是模型参数,所以不需要我们设置。他就像线性回归中的 theta 一样,是在 fit 的过程中根据数据求出来的。所以,SVM 的参数列表中,没有这个值的设置:https://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html


为什么对于每一个样本来说,都有一个不同的 eta,简单来说,是因为不是所有的错误都是相等的。eta 的一个直观解释是对每一个数据点容忍的错误。如果是 hard svm,每个数据点都在决策边界的一侧,且 margin 内没有数据点。但是 soft svm,数据点没有这个限制,但对于错误分类的数据点,或者 margin 内的数据点,很显然离正确的那个 margin 边界越近越好,也就是错误越小。eta 在衡量每个数据点的这个错误。我们的正则化项是看所有数据点的这个错误总和(或者平方和),來最小化它。


继续加油!:)

0
1
派蒙的主人
谢谢老师!
2021-07-02
共1条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程