• L1 正则为什么会使参数偏向稀疏


    2018-12-09 22:18:43

    假设费用函数 L 与某个参数 x 的关系如图所示:


    则最优的 x 在绿点处,x 非零。

    现在施加 L2 regularization,新的费用函数(L + Cx^2)如图中蓝线所示:

    最优的 x 在黄点处,x 的绝对值减小了,但依然非零。

    而如果施加 L1 regularization,则新的费用函数(L + C|x|)如图中粉线所示:

    最优的 x 就变成了 0。这里利用的就是绝对值函数的尖峰。

    两种 regularization 能不能把最优的 x 变成 0,取决于原先的费用函数在 0 点处的导数。
    如果本来导数不为 0,那么施加 L2 regularization 后导数依然不为 0,最优的 x 也不会变成 0。
    而施加 L1 regularization 时,只要 regularization 项的系数 C 大于原先费用函数在 0 点处的导数的绝对值,x = 0 就会变成一个极小值点。原因是我们可以对0两边进行求导分别得到f'(0) - C和f‘(0) + C,如果C > f'(0),那么左右两边就会异号,这样的话,0就成了极小值点了。

    上面只分析了一个参数 x。事实上 L1 regularization 会使得许多参数的最优值变成 0,这样模型就稀疏了。
  • 相关阅读:
    内存溢出和内存泄漏的区别、产生原因以及解决方案
    HTTP1.0、HTTP1.1 和 HTTP2.0 的区别
    TCP, UDP, HTTP, HTTPS协议
    测试面试常见面试题汇总
    SDK测试方法
    App弱网测试工具--Qnet
    PerfDog性能狗移动端性能测试工具
    Jmeter作用域
    事务(转账功能)
    DBUtils
  • 原文地址:https://www.cnblogs.com/hyserendipity/p/10093748.html
Copyright © 2020-2023  润新知