l1正则化表达式_L0,L1和L2正则化以及Weight decay的理解

正则化 - 搜索结果 - 知乎​www.zhihu.com


L0范数:非0的个数

图像解释(假设X为一个二维样本,那么要求解参数

也是二维):
  • 原函数曲线等高线(同颜色曲线上,每一组
    带入值都相同)

b430962577cc47d9083d2eb0e2ac5c11.png
目标函数等高线
  • L1和L2加入后的函数图像:

eab69f990cf426bafb3f3e943a9beb79.png
加入L1和L2正则的等高线

从上边两幅图中我们可以看出:

  • 如果不加L1和L2正则化的时候,对于线性回归这种目标函数凸函数的话,我们最终的结果就是最里边的紫色的小圈圈等高线上的点。
  • 当加入L1正则化的时候,我们先画出
    的图像,也就是一个菱形,代表这些曲线上的点算出来的 1范数
    都为F。那我们现在的目标是不仅是原曲线算得值要小(越来越接近中心的紫色圈圈),还要使得这个菱形越小越好(F越小越好)。那么还和原来一样的话,过中心紫色圈圈的那个菱形明显很大,因此我们要取到一个恰好的值。那么如何求值呢?

b74f320b8930b09e1c87245d0a781b02.png
带L1正则化的目标函数求解

以同一条原曲线目标等高线来说,现在以最外圈的红色等高线为 例,我们看到,对于红色曲线上的每个点都可以做一个菱形,根据上图可知,当这个菱形与某条等高线相切(仅有一个交点)的时候,这个菱形最小,上图相割对比较大的两个菱形对应的1范数更大。用公式说这个时候能使得在相同

下,由于相切的时候的
小,即
小,所以能够使得
更小。

也就是说在相同的正则化或者目标函数中,总能找到一个相切的使得最终的目标函数最小,实际上也是正则化和原始目标函数的一个trade-off,也就是说原始目标函数的等高线也是和正则化权衡后选择的,实际上就涉及两个选择---trade-off+相同等高线下选到更优的正则化。

可以看出,L1使得解稀疏,L2使得模型稀疏都较小

Weight decay

一、L2正则和Weight Decay并不等价。这两者常常被大家混为一谈。首先两者的目的都是想是使得模型权重接近于0。L2正则是在损失函数的基础上增加L2 norm, 即为

。而权重衰减则是在梯度更新时直接增加一项,
(直接求导的结果)。在
标准SGD的情况下,通过对衰减系数做变换,可以 将L2正则和Weight Decay看做一样。但是在Adam这种自适应学习率算法中两者并不等价。
二、 使用Adam优化带L2正则的损失并不有效。如果引入L2正则项,在计算梯度的时候会加上对正则项求梯度的结果。那么如果本身比较大的一些权重对应的梯度也会比较大,由于Adam计算步骤中减去项会有除以梯度平方的累积,使得减去项偏小。按常理说,越大的权重应该惩罚越大,但是在Adam并不是这样。而权重衰减对所有的权重都是采用相同的系数进行更新,越大的权重显然惩罚越大。在常见的深度学习库中只提供了L2正则,并没有提供权重衰减的实现。这可能就是导致Adam跑出来的很多效果相对SGD with Momentum偏差的一个原因。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值