为什么 L1 正则化能做特征选择而 L2 正则化不能
  582TtX3TNojB 2023年11月01日 54 0

假设我们的模型只有一个参数 \(w\),损失函数为 \(L(w)\),加入 L1 和 L2 正则化后的损失函数分别记为 \(J_1(w), J_2(w)\)

\[\begin{gathered} J_1(w) = L(w) + \lambda |w| \\ J_2(w) = L(w) + \lambda w^2 \end{gathered} \]

原损失函数 \(L\)\(w = 0\) 处的导数记为 \(L'(0)\),那么 \(J_1\)\(w = 0\) 处的左、右导数为:

\[\begin{gathered} J_{-}'(0) = L'(0) - \lambda \\ J_{+}'(0) = L'(0) + \lambda \\ \end{gathered} \]

\(\lambda > |L'(0)|\) 时,\(w = 0\) 处的左导数 \(L'(0) - \lambda < 0\)、右导数 \(L'(0) + \lambda > 0\),此时 \(w = 0\)\(J_1\) 的一个极小值点。

也就是说,即使 \(L\) 不在 \(w = 0\) 处取得极小值(\(L'(0) \neq 0\)),我们也能够通过调节 \(\lambda\) 将损失函数的极小值点“转移”到 \(w = 0\)

再来看 L2 正则化时的情况,\(J_2\)\(w = 0\) 处的导数为:

\[J_2'(0) = [L'(w) + 2 \lambda w]_{w = 0} = L'(0) \]

由此可见,如果 \(L\) 不在 \(w = 0\) 处取得极小值(\(L'(0) \neq 0\)),那么加入 L2 正则项后仍然不可能在 \(w = 0\) 处取得极小值。

总结:L1 正则化能将损失函数的极小值点“转移”到 \(w = 0\) 处,而 L2 正则化无论如何设置 \(\lambda\) 都达不到这样的效果。

相关资料:

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  yCJS27XXARYK   2024年05月17日   62   0   0 AI综合
582TtX3TNojB