赞
踩
目录
在原始的代价函数后面加上一个L1正则化项,即所有权重w的绝对值的和,乘以λ/n
同样先计算导数:
上式中sgn(w)表示w的符号。那么权重w的更新规则为:
比原始的更新规则多出了η * λ * sgn(w)/n这一项。当w为正时,更新后的w变小。当w为负时,更新后的w变大——因此他可以使部分权值w变为0,实现参数矩阵的稀疏。也就相当于减小了网络复杂度,防止过拟合。
另外,上面没有提到一个问题,当w为0时怎么办?当w等于0时,|W|是不可导的,所以我们只能按照原始的未经正则化的方法去更新w,这就相当于去掉η*λ*sgn(w)/n这一项,所以我们可以规定sgn(0)=0,这样就把w=0的情况也统一进来了。(在编程的时候,令sgn(0)=0,sgn(w>0)=1,sgn(w<0)=-1)
L2正则化(L2 Regularization)又称为权重衰减,是在代价函数C0后面再加上一个正则化项:
它是这样来的:所有参数w的平方的和,除以训练集的样本大小n。λ就是正则项系数,权衡正则项与C0项的比重。另外还有一个系数1/2,1/2经常会看到,主要是为了后面求导的结果方便,后面那一项求导会产生一个2,与1/2相乘刚好凑整。
L2正则化项是怎么避免overfitting的呢?我们推导一下看看,先求导:
可以发现L2正则化项对b的更新没有影响,但是对于w的更新有影响:
在不使用L2正则化时,求导结果中w前系数为1,现在w前面系数为 1−ηλ/n ,因为η、λ、n都是正的,所以 1−ηλ/n小于1,它的效果是减小w,这也就是权重衰减(weight decay)的由来。当然考虑到后面的导数项,w最终的值可能增大也可能减小。
L2正则化(L2 Regularization)之所以能够减少过拟合是因为权重越小,复杂度就越低。当有异常输入时,小的权重意味着网络输出变化不大,即不易学习到数据中的局部噪声。总而言之,规范化网络基于训练数据的主要规律,从而创建一个相对简单的模型,并且拒绝学习训练数据中的噪声(异常数据)。这样强制网络学习数据的本质规律,并把学到的规律进行更好地推广。
从先验概率的角度理解就要从原始的线性回归说起,我们知道线性回归的公式为:
其中x表示输入的数据,表示预测值。一般线性回归的损失为最小二乘损失 ,就是求真实与预测的的误差,然后最小化这个误差,我们将这个误差标记为
上式中 表示真实值。
线性回归的一大假设是:误差
ϵ 服从均值为0的正态分布,且多个观测数据之间互不影响,相互独立。正态分布的公式如下:
因此对于误差有:
根据决策论,就可以知道可以使似然函数最大的参数w就是最好的参数。
那么我们可以直接得到最大似然估计的最直观理解:对于一个模型,调整参数w,使得用X得到Y的概率最大,即:
max
进行变换得到:min()
具体的推导可以见文章:最大似然估计:从概率角度理解线性回归的优化目标
上面得到的公式是没有正则化条件下,直接利用极大似然估计推导出来的损失函数。
对于我们的训练数据集(
X,Y ),损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。
那么如何添加正则化呢?
正则化的添加来源于最大后验估计(MAP)。最大后验估计认为参数
之后再取对数:
这个式子中就是前面不考虑先验信息的的似然函数,后面是我们的正则项。为此可以进一步引出:
在结构风险的定义中,结构风险 = 经验风险 + 正则化项。因此可以看出来,对于我们的训练数据集(
X,Y ),损失函数是对数损失函数时,结构风险最小化就等价于最大后验估计。
Laplace概率密度函数分布为:
分布的图像如下所示:
假定参数
假定参数
用梯度下降的方法,当w小于1的时候,L2正则项的惩罚效果越来越小,L1正则项惩罚效果依然很大,L1可以惩罚到0,而L2很难。
L2的求导后为一阶函数,对于大的w参数,惩罚作用大,对于小的w参数,惩罚作用小,很难惩罚到0,实际上起到了把大参数和小参数趋向于平均的作用;L1求导后为常数,无论对于大小参数,其惩罚作用一样,所以可以把小参数惩罚到0。
因此L1具有稀疏性
(1)联系:都可以避免过拟合
(2)区别:
参数稀疏的优势:参数的稀疏,在一定程度上实现了特征的选择。一般而言,大部分特征对模型是没有贡献的。这些没有用的特征虽然可以减少训练集上的误差,但是对测试集的样本,反而会产生干扰。稀疏参数的引入,可以将那些无用的特征的权重置为0.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。