作者bibo9901 (function(){})()
看板DataScience
标题Re: [问题] L1与L2正规化的差别
时间Thu Apr 12 07:18:32 2018
※ 引述《bokxko1023 (bokxko1023)》之铭言:
: 在网路上看了不少文章,但还是无法理解为何L1会具有稀疏的特性?这两者的具体差别到
: 底是什麽呢,能用gradient descent 在微分时的差别来解释吗?
: 另外想请问大家是怎麽选正规化的权重alpha的?虽说知道是用trial and error,但数字
: 范围这麽广,有没有限缩范围的方法呢?
: 感谢大家
推文里提到一些观点都不太严谨 (可能是我想像力太差)
1. 每次梯度下降的大小是L1>L2:
格局太小不说(离了GD推论就无效), 迭代的过程只是想当然耳,
每一步用的梯度大小应该只影响收敛速度而非收敛到的值,
难道是原来就有稀疏解, 只是用L1比较快?
那麽不用L1但增加learning rate或多迭代几次, 为什麽不会解到零?
2. 等高线优先撞到角角、相当於lagrange的某个式子...:
更复杂的想当然耳, 为什麽极值一定在边边角角?
又为什麽边上的每个点机率是一样的?
碰到线段上的某定点的机率是0, 应该是「很难」碰到顶点吧?
甚至, 如果降到1维, 整个推论就变得很荒谬:
因为 x 的范围都在 [-C, +C], 线段一样, 顶点一样, 范围里等高线也一样,
此时 L1, L2, L3, ... 没有差别, 而且一定收敛到 -C 或 +C (保证不稀疏)
这解释跟本禁不起推敲
其实可以直接求"存在稀疏解"的条件
假设原损失函数 f(x) 在 x=0 可微,
R(x) 是 regularization term,
a 是 regularization 的权重
则 f(x) + a R(x) 在 x=0 处有最小值(稀疏解) 的定义是:
存在一点 x0 > 0, 使得
for all h in [-x0, x0]
恒有 f(h) + a R(h) >= f(0) + a R(0),
即 f(h) - f(0) >= -a [ R(h) - R(0) ]
把式子两边同时除以 h,并分别取 0 的左右极限
因为是不等式, 所以 h 的正负需分开讨论
<=> lim{h->0+} [f(h)-f(0)]/h >= lim{h->0+} -a [R(h)-R(0)]/h
且
lim{h->0-} [f(h)-f(0)]/h <= lim{h->0-} -a [R(h)-R(0)]/h
由於 f 在 0 可微, 所以上两式的左项相等, 即 f'(0)
整理得
<=> -a R'(0+) <= f'(0) <= -a R'(0-)
其中 R'(0+) 为 R 在 0 的右导数,
R'(0-) 为 R 在 0 的左导数.
所以,
L1:
R(x) = |x|, R'(0+)=1, R'(0-)=-1, 有稀疏解的充要条件是 -a <= f'(0) <= a
L2:
R(x) = x^2, R'(0+)=0, R'(0-)=0 , 有稀疏解的充要条件是 0 <= f'(0) <= 0
换句话说:
用 L1 时, 只要 f 在原点的梯度绝对值 <= 正则的权重,
x=0 就会是区域极小
甚至 f 没有极值都可以 (e.g., x^3 + |x|)
可以想成 "无论f是什麽样子, 只要在0附近足够平缓, 加上L1就会有稀疏解"
当然能不能解到是另一回事
但用 L2 时, 只有原来 f'(0) = 0 才会有稀疏解,
也就是说加上 L2, 对稀疏解没有帮助
也可以机率的观点来看
regularization相当於强迫参数服从於特定的prior distribution
而L1对应的分布 相较L2集中在零点
这有机会再说了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 174.119.85.87
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1523488715.A.DAE.html
※ 编辑: bibo9901 (174.119.85.87), 04/12/2018 07:20:54
※ 编辑: bibo9901 (174.119.85.87), 04/12/2018 09:12:14
※ 编辑: bibo9901 (174.119.85.87), 04/12/2018 09:13:34
1F:推 goldflower: 推 04/12 12:33
2F:推 sxskr1001: 推 04/12 12:55
※ 编辑: bibo9901 (174.119.85.87), 04/12/2018 13:51:29
※ 编辑: bibo9901 (174.119.85.87), 04/12/2018 14:06:14
3F:推 lucien0410: 推 数据科学家的超能力不是数学运算 是数学想像力! 04/12 15:42
4F:推 AmibaGelos: 大推! 从input来看扣掉需要非0 filter的features 其 04/13 12:52
5F:→ AmibaGelos: 它dof是在学noise 用L2的话noise只是rescale 用L1的 04/13 12:52
6F:→ AmibaGelos: 话就是把scattering<regularization strength的砍掉 04/13 12:52
7F:推 goldflower: 话说我一直觉得regularization用机率的角度来看他的 04/13 15:26
8F:→ goldflower: 假设会不会太强啊 一直有这种疑问XD 04/13 15:27
9F:推 a78998042a: 推推 05/02 15:09