l2正则化python_L1、L2正则化的区别

简单读了一些文章,总结一下L1和L2正则化的区别吧,似乎是非常容易被问到的一个问题。

L1,L2正则化

机器学习中, 损失函数后面一般会加上一个额外项,常用的是l1-norm和l2-norm,即l1范数和l2范数。

可以看作是损失函数的惩罚项。正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化值就越大。

上面的目标函数,第一项是模型要最小化的误差,第二项是正则化项,λ>=0调节两者之间关系的系数。

正则化项可以取不同的形式。

L0范数

是指正则化项是 参数矩阵W中非0元素的个数,也就是说希望W的大部分元素都是0,W是稀疏的。

由于L0正则项非连续非凸不可求导,难以找到有效解,转而使用L1范数。

L1范数

正则化项是向量中各个元素的绝对值之和。

L0和L1范数可以实现让参数矩阵稀疏,让参数稀疏的好处,可以实现对特征的选择(权重为0表示对应的特征没有作用,被丢掉),也可以增强模型可解释性(例如研究影响疾病的因素,只有少数几个非零元素,就可以知道这些对应的因素和疾病相关)

L1又称Lasso。

L2范数

功效是解决过拟合问题。当模型过于复杂,就会容易出现过拟合问题。

L2范数是指向量各个元素的平方,求和,然后再求平方根。

使L2范数最小,可以使得W的每个元素都很小,都接近于0,但和L1范数不同,L2不能实现稀疏,不会让值等于0,而是接近于0。一般认为,越小的参数,模型越简单,越简单的模型就不容易产生过拟合现象。

L2又称Ridge,也称岭回归。

小结

公式:

区别:

使用L1范数,可以使得参数稀疏化;

使用L2范数,倾向于使参数稠密地接近于0,避免过拟合。

source

文章同步在我的博客

Reference

更多详细的公式,以及解释和分析,可参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值