我是靠谱客的博主 清秀唇膏,这篇文章主要介绍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

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

最后

以上就是清秀唇膏最近收集整理的关于l2正则化python_L1、L2正则化的区别的全部内容,更多相关l2正则化python_L1、L2正则化内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部