• 问题2 机器学习篇 正则化L1和L2有什么区别?


    问题:正则化L1和L2有什么区别?

    先要知道什么是正则化,再谈他们的区别。后面引用区《机器学习损失函数、L1-L2正则化的前世今生》很值得看。

    答:
    1)什么是正则化
    在机器学习中,L1和L2被称为正则化。
    他们在其他学科中的叫法不一样,在统计学中称为罚项,数学中对应的是范数,本质是相同的。
    2)正则化的提出
    在《机器学习损失函数、L1-L2正则化的前世今生》中提到的Lasso Regression和Ridge Regression在求整体损失最小时分别使用了L1正则化和L2正则化。
    3)为什么要正则化
    正则化的提出是为了使模型更好的拟合实际情况。这里说得不明确,继续往下读。
    4)正则化的一般形式
    在李航的书中说到结构风险化策略如下式,一般形式为

    minfF1Ni=1NL(yi,f(x))+λJ(f)

    其中第一项为损失函数,第二项为正则化项。
    在线性回归问题中,损失函数是平方损失,正则化项是参数向量的L2范数;
    另外还有Hinge loss,exp-loss, log-Loss等等。

    4)J(f)常用距离度量表示
    最常用的是闵可夫斯基距离(Minkowski distance)

    distmk(xi,xj)=(u=1n|xiuxju|p)1/p

    简单说说三种情况:
    a) p =1, 为曼哈顿距离
    distman(xi,xj)=u=1n|xiuxju|=||xixj||1

    b) p =2, 为欧氏距离

    distman(xi,xj)=u=1n|xiuxju|2=||xixj||2

    c) p 趋于无穷大为切比雪夫距离

    上面a)b)两种情况中的表达式已经写成了范数的形式,也就是L1和L2。

    5) 其他范数


    机器学习损失函数、L1-L2正则化的前世今生: https://blog.csdn.net/kicilove/article/details/78051533
    周志华 《机器学习》
    0 范数、1 范数、2 范数有什么区别? - 魏通的回答 - 知乎
    https://www.zhihu.com/question/20473040/answer/102907063
    0 范数、1 范数、2 范数有什么区别? - 凌空的回答 - 知乎
    https://www.zhihu.com/question/20473040/answer/175915374
    校招算法工程师常见面试题及答案总结01——L1和L2正则化
    https://blog.csdn.net/LuckyJune34/article/details/54599655

  • 相关阅读:
    Action获取表单数据的三种方式
    Action三种编写方式
    hibernate 查询方式
    hibernate 多对多操作(级联操作)
    对拍
    树的数据生成器
    SPOJ1825 Free tour II 树分治
    Codeforces 474(#271 Div 2) 解题报告
    HNCPC2012 总结
    Sort 对下标进行排序
  • 原文地址:https://www.cnblogs.com/siucaan/p/9623172.html
Copyright © 2020-2023  润新知