用户名*
邮箱*
密码*
确认密码*
验证码* 点击图片更换验证码
找回密码
忘记密码了?输入你的注册邮箱,并点击重置,稍后,你将会收到一封密码重置邮件。
google遍了。。还是没太看懂。请教下。
引用自PRML,说的很清楚。
假设费用函数 L 与某个参数 x 的关系如图所示:
则最优的 x 在绿点处,x 非零。
现在施加 L2 regularization,新的费用函数()如图中蓝线所示:
最优的 x 在黄点处,x 的绝对值减小了,但依然非零。
而如果施加 L1 regularization,则新的费用函数()如图中粉线所示:
最优的 x 就变成了 0。这里利用的就是绝对值函数的尖峰。
两种 regularization 能不能把最优的 x 变成 0,取决于原先的费用函数在 0 点处的导数。
如果本来导数不为 0,那么施加 L2 regularization 后导数依然不为 0,最优的 x 也不会变成 0。
而施加 L1 regularization 时,只要 regularization 项的系数 C 大于原先费用函数在 0 点处的导数的绝对值,x = 0 就会变成一个极小值点。
上面只分析了一个参数 x。事实上 L1 regularization 会使得许多参数的最优值变成 0,这样模型就稀疏了。
首先你要知道L1范式和L2范式是怎么来的,然后是为什么要把L1或者L2正则项加到代价函数中去.
L1,L2范式来自于对数据的先验知识.如果你认为,你现有的数据来自于高斯分布,那么就应该在代价函数中加入数据先验P(x),一般由于推导和计算方便会加入对数似然,也就是log(P(x)),然后再去优化,这样最终的结果是,由于你的模型参数考虑了数据先验,模型效果当然就更好.
哦对了,如果你去看看高斯分布的概率密度函数P(x),你会发现取对数后的log(P(x))就剩下一个平方项了,这就是L2范式的由来–高斯先验.
同样,如果你认为你的数据是稀疏的,不妨就认为它来自某种laplace分布.不知你是否见过laplace分布的概率密度函数,我贴出一张维基上的图,
laplace分布是尖尖的分布,是不是很像一个pulse?从这张图上,你应该就能看出,服从laplace分布的数据就是稀疏的了(只有很小的概率有值,大部分概率值都很小或为0).
那么,加入了laplace先验作为正则项的代价函数是什么?
再看看laplace分布的概率密度函数(还是来自维基百科),
看到没,如果取对数,剩下的是一个一次项|x-u|,这就是L1范式.
所以用L1范式去正则,就假定了你的数据是laplace分布,是稀疏的.
王赟 Maigo的答案特别棒!
我还有几个理解这个问题的方式,不过自己没有搞清楚,想拿出来探讨一下。
1.假设原先损失函数是C0,那么在L2和L1正则条件下对参数求导分别是:
可以想象用梯度下降的方法,当w小于1的时候,L2正则项的惩罚效果越来越小,L1正则项惩罚效果依然很大,L1可以惩罚到0,而L2很难。
2.我们假设有两个完全一样的特征,使用L2正则想的话,两个特征权重相等的时候惩罚最小,所以L2具有权重平均分配的效果。
3.第三个说法是我听说的,如果我们使用L0作为正则项,三个系数不为零则惩罚力度 3 alpha,五个不为零则惩罚力度 5 alpha,很容易理解它有让稀疏稀疏的效果。在某些条件下L0和L1正则项是等价的(不要问我是什么条件,我查了没看懂……),所以L1容易得到稀疏解。
以上个人的理解,有错误的地方欢迎指正。
关于为什么-norm regularization会使得结果稀疏,从几何角度可以很好的解释,以Basis Pursuit(BP)为例,最简单也是最经典的问题。先从BP问题起源说起,假设关于变量,我们有
其中是一个线性算子(linear operator),是观察量(observation)。如下图所示(2D example)
已知和求的过程称作最小二乘(least square),当可逆时,那么可以由如下显式表达
但是,对于,很多时候,,或者且,这使得问题时病态的(ill-posed),并且存在无穷多的解。
对于这类情形,为了得到一些有意义的解,需要对进行正则化(regularization)。下面就对比下,对施加,正则时(比如,希望解的-norm最小),会得到怎样的解。此时我们会得到如下的优化问题
其中。对于,该问题又称作Basis Pursuit。对两种情形分别求解,我们会得到如下图所示的可行点(feasible point),和。很显然,可行解是稀疏的(),而不是()。
也就是说,对于一个线性约束(),当用-norm ball与之相切时,只有当时,切点在该ball的一个顶点(在数轴上),并且该点是稀疏的(很多元素为零)。
不过这时候你也许会问,如果与平行,或者与轴平行怎么办。对于前者,这个时候用-norm 仍然可以得到稀疏解,但此时解不唯一。对于后者,问题时退化的。实际上,线性算子是要满足一定性质的,比如最开始的Restricted Isometry Property (RIP)条件。
还有就是如果observation带噪声怎么办,对于上面的图示,唯一的变化就是不再是一条直线,而是带有上下届的一个band,band宽度依噪声强度决定。
最后,关于稀疏表达的意义,可参考另一个回答
稀疏表达的意义在于?为什么稀疏表达得到广泛的应用? – 知乎用户的回答
可以查查凸优化这本书,书上说,l1对于小值的惩罚,比l2的大。自然求优化的时候,求得小系数的值越小。
因为引入L1-regularization的时候,我们求解问题:
等价于:
也就是我们求解的是一个带约束的问题。用Lagrange multiplier来求解。收敛的地方是:
。
但是有些地方是不可微的。比如的几个顶点处。所以准确的来说,达到最优解的地方是落在的normal cone的区域内。
紫色区域就是顶点处的normal cone。 而正方形的边的一点的normal cone只是垂直它的方向,也就只有一条线。然而我们的数据是服从某个分布,Loss function关于W的形状也就是由数据决定的,那么所有与约束条件相交的点中,哪个满足上面的条件的概率最大呢?显然是顶点。也因此使得我们的模型更加sparse。
更加直观的来说,有一个球在曲面上,我们把球受到的重力和曲面的支撑力的合力看成一个力,方向也就是曲面的梯度方向。此外我们还受到一个来自于四边形(上图)的架子的支撑力,而最优解处就是球能够静止平衡的地方,那么很明显,是不是在四个顶角处最有可能禁止。
就是拿跟绳子挂点重物,绳子很容易滑倒这个架子的角点处吧。
一般来说,越是non-convex的regularizer越是容易使的我们的模型sparse。比如当时。
用梯度来理解比较直观。l1范数恒定以1的梯度向0靠拢, 容易收敛到0。l2范数越接近0梯度数值越小, 容易收敛到一堆小值。
l1在小的时候惩罚力度还很大吧因为
换个角度看
用proximal mapping算法看的话l1的proximal函数是shrinkage带有一个阈值,这么看的话l1优化出来应该很稀疏吧
贝叶斯看法的话原来是Laplace分布所以稀疏吧?不确定
来源:The Elements of Statistical Learning(Second Edition)
昵称*
E-Mail*
回复内容*
回复 ( 10 )
引用自PRML,说的很清楚。
假设费用函数 L 与某个参数 x 的关系如图所示:
则最优的 x 在绿点处,x 非零。
现在施加 L2 regularization,新的费用函数(
)如图中蓝线所示:
而如果施加 L1 regularization,则新的费用函数(
)如图中粉线所示:
两种 regularization 能不能把最优的 x 变成 0,取决于原先的费用函数在 0 点处的导数。
如果本来导数不为 0,那么施加 L2 regularization 后导数依然不为 0,最优的 x 也不会变成 0。
而施加 L1 regularization 时,只要 regularization 项的系数 C 大于原先费用函数在 0 点处的导数的绝对值,x = 0 就会变成一个极小值点。
上面只分析了一个参数 x。事实上 L1 regularization 会使得许多参数的最优值变成 0,这样模型就稀疏了。
首先你要知道L1范式和L2范式是怎么来的,然后是为什么要把L1或者L2正则项加到代价函数中去.
L1,L2范式来自于对数据的先验知识.如果你认为,你现有的数据来自于高斯分布,那么就应该在代价函数中加入数据先验P(x),一般由于推导和计算方便会加入对数似然,也就是log(P(x)),然后再去优化,这样最终的结果是,由于你的模型参数考虑了数据先验,模型效果当然就更好.
哦对了,如果你去看看高斯分布的概率密度函数P(x),你会发现取对数后的log(P(x))就剩下一个平方项了,这就是L2范式的由来–高斯先验.
同样,如果你认为你的数据是稀疏的,不妨就认为它来自某种laplace分布.不知你是否见过laplace分布的概率密度函数,我贴出一张维基上的图,
laplace分布是尖尖的分布,是不是很像一个pulse?从这张图上,你应该就能看出,服从laplace分布的数据就是稀疏的了(只有很小的概率有值,大部分概率值都很小或为0).
那么,加入了laplace先验作为正则项的代价函数是什么?
再看看laplace分布的概率密度函数(还是来自维基百科),
看到没,如果取对数,剩下的是一个一次项|x-u|,这就是L1范式.
所以用L1范式去正则,就假定了你的数据是laplace分布,是稀疏的.
王赟 Maigo的答案特别棒!
我还有几个理解这个问题的方式,不过自己没有搞清楚,想拿出来探讨一下。
1.假设原先损失函数是C0,那么在L2和L1正则条件下对参数求导分别是:
可以想象用梯度下降的方法,当w小于1的时候,L2正则项的惩罚效果越来越小,L1正则项惩罚效果依然很大,L1可以惩罚到0,而L2很难。
2.我们假设有两个完全一样的特征,使用L2正则想的话,两个特征权重相等的时候惩罚最小,所以L2具有权重平均分配的效果。
3.第三个说法是我听说的,如果我们使用L0作为正则项,三个系数不为零则惩罚力度 3 alpha,五个不为零则惩罚力度 5 alpha,很容易理解它有让稀疏稀疏的效果。在某些条件下L0和L1正则项是等价的(不要问我是什么条件,我查了没看懂……),所以L1容易得到稀疏解。
以上个人的理解,有错误的地方欢迎指正。
关于为什么
-norm regularization会使得结果稀疏,从几何角度可以很好的解释,以Basis Pursuit(BP)为例,最简单也是最经典的问题。先从BP问题起源说起,假设关于变量
,我们有
其中
是一个线性算子(linear operator),
是观察量(observation)。如下图所示(2D example)
但是,对于
,很多时候,
,或者
且
,这使得问题时病态的(ill-posed),并且存在无穷多的解。
对于这类情形,为了得到一些有意义的解,需要对
进行正则化(regularization)。下面就对比下,对
施加
,
正则时(比如,希望解的
-norm最小),会得到怎样的解。此时我们会得到如下的优化问题
其中
。对于
,该问题又称作Basis Pursuit。对两种情形分别求解,我们会得到如下图所示的可行点(feasible point),
和
。很显然,可行解
是稀疏的(
),而
不是(
)。
不过这时候你也许会问,如果
与
平行,或者与
轴平行怎么办。对于前者,这个时候用
-norm
仍然可以得到稀疏解,但此时解不唯一。对于后者,问题时退化的。实际上,线性算子
是要满足一定性质的,比如最开始的Restricted Isometry Property (RIP)条件。
还有就是如果observation带噪声怎么办,对于上面的图示,唯一的变化就是不再是
一条直线,而是带有上下届的一个band,band宽度依噪声强度决定。
最后,关于稀疏表达的意义,可参考另一个回答
稀疏表达的意义在于?为什么稀疏表达得到广泛的应用? – 知乎用户的回答
可以查查凸优化这本书,书上说,l1对于小值的惩罚,比l2的大。自然求优化的时候,求得小系数的值越小。
因为引入L1-regularization的时候,我们求解问题:
等价于:
也就是我们求解的是一个带约束的问题。用Lagrange multiplier来求解。收敛的地方是:
但是有些地方是不可微的。比如
的几个顶点处。所以准确的来说,达到最优解
的地方是
落在
的normal cone的区域内。
更加直观的来说,有一个球在曲面上,我们把球受到的重力和曲面的支撑力的合力看成一个力,方向也就是曲面的梯度方向。此外我们还受到一个来自于四边形(上图)的架子的支撑力,而最优解处就是球能够静止平衡的地方,那么很明显,是不是在四个顶角处最有可能禁止。
就是拿跟绳子挂点重物,绳子很容易滑倒这个架子的角点处吧。
一般来说,越是non-convex的regularizer越是容易使的我们的模型sparse。比如
当
时。
用梯度来理解比较直观。l1范数恒定以1的梯度向0靠拢, 容易收敛到0。l2范数越接近0梯度数值越小, 容易收敛到一堆小值。
l1在小的时候惩罚力度还很大吧因为
换个角度看
用proximal mapping算法看的话l1的proximal函数是shrinkage带有一个阈值,这么看的话l1优化出来应该很稀疏吧
贝叶斯看法的话原来是Laplace分布所以稀疏吧?不确定
来源:The Elements of Statistical Learning(Second Edition)