【问题标题】:Clarification needed for the 'penalty' argument in svm.LinearSVC需要澄清 svm.LinearSVC 中的“惩罚”参数
【发布时间】:2021-07-17 07:55:57
【问题描述】:

关于这个post,接受的答案解释了 SVM 正则化问题中的惩罚和损失。但是最后会使用术语“l1-loss”、“l2-loss”。

据我了解,正则化问题中的目标函数是损失函数的总和,例如铰链损失:
\sum_i [1- y_i * f_i]_+
和处罚期限:
\lambda /2 ||\beta ||^2

通过说“l1 铰链损失”,我可以将其解释为参数“惩罚”中指定的 l1 范数,适用于损失和惩罚项吗?

在下面来自统计学习元素(Hastie 等人)的正则化问题中,是否使用了 l1-loss?

【问题讨论】:

    标签: python svm loss-function


    【解决方案1】:

    不,L2 表示应用了什么样的惩罚,铰链描述了损失项的性质。选择 L1 或 L2 不会改变铰链损失,它们只会影响惩罚项。

    如果您在此处参考等式:https://scikit-learn.org/stable/modules/svm.html#linearsvc 对于 LinearSVC 的默认损失项,左侧部分是惩罚,默认情况下是应用于权重的 L2 惩罚,而等式的右侧部分是铰链损失。

    在这里查看惩罚参数的描述:https://scikit-learn.org/stable/modules/generated/sklearn.svm.LinearSVC.html

    指定惩罚中使用的规范。

    在您提供的上述示例中,使用了 L2 惩罚。 L1 惩罚将是 beta 项的绝对值之和,您上面的值是平方值之和。

    【讨论】:

      猜你喜欢
      • 2022-12-14
      • 1970-01-01
      • 1970-01-01
      • 2011-11-09
      • 2012-07-18
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多