《Deep Learning》学习3——L2、L1正则化

来源:互联网 发布:大数据平台对比分析 编辑:程序博客网 时间:2024/06/09 14:41

1. 容量、过拟合、欠拟合(为什么需要正则化?)

机器学习两个重要过程分别是训练和预测,在训练过程中,学习的目标是降低训练误差,然而,降低训练误差只是为了达到目标采取的手段,真正的目标是预测,是预测误差,也称泛化误差很小。泛化的含义是在先前未观测到的输入上表现良好的能力。
训练后可能达到的效果有三种:
A. 训练误差大,泛化误差也大
B. 训练误差小,泛化误差大
C. 训练误差小,泛化误差也小
第一种是欠拟合、第二种是过拟合,第三种才是我们希望的状态。
模型的容量是指模型拟合各种函数的能力。训练得到的模型容量是表示容量,而预测表征的容量才是有效容量。两个容量都偏小是欠拟合状态,算法迭代不够,学习不到位;训练误差小,而泛化误差大是过拟合状态,迭代过头了,或者数据集太小,参数拟合太细节化了。
解决欠拟合需要增加参数或者增加迭代次数;解决过拟合需要弱化一些次要参数或者丰富训练数据集。
个人总结了解决过拟合的方法有:增加数据集数量、对训练数据做数据增强、参数惩罚、dropout,这一系列方法都能降低泛化误差。修改学习算法,降低泛化误差而非训练误差的过程称为正则化。

2. L2参数正则化

参数范数惩罚是在目标函数上添加一个惩罚项,组成新的目标函数进行优化。为什么这样做能起到正则化的作用呢?推导如下:
L2参数正则化添加的惩罚项这里写图片描述 是w的二阶范数平方乘惩罚系数

未加惩罚项前的目标函数 这里写图片描述 ,假设 这里写图片描述为最优目标函数,此时,在这里写图片描述 处针对w做这里写图片描述 的二阶泰勒展示,可得:
这里写图片描述
梯度为
这里写图片描述
这里需要注意的是,这里写图片描述 表示所有的参数,包括权重w和偏执b,但是只对权重做正则化,因为每一个偏执是单一变量,不对其做正则化也不会导致太大方差,做了反而可能出现欠拟合。

加入新的目标函数为
这里写图片描述
梯度为
这里写图片描述
假设这里写图片描述 为最优参数,在最优参数位置梯度为0,因此
这里写图片描述
转换后
这里写图片描述
H是目标函数在这里写图片描述 处的Hessian矩阵,H为实对称矩阵,因此,H可以分解成这里写图片描述 ,且Q为标准正交基,因此这里写图片描述,且这里写图片描述
这里写图片描述
根据特征分解的性质,这里写图片描述 是特征值组成的对角矩阵(diag(λ1, λ2,…)),而I是单位矩阵,因此:
这里写图片描述
对于特征值这里写图片描述以及其对应的特征向量这里写图片描述,该维权重这里写图片描述
这里写图片描述
因此,权重衰减是按照H的特征向量方向,按照这里写图片描述的比例缩放。特征分解中已经提到特征值这里写图片描述越大,说明该维特征对模型的影响越明显,越主要,而这里写图片描述越大,λ_i/(λ_i+α)越接近于1,该维权重保存越完整,这里写图片描述越小,该维特征越次要,这里写图片描述越接近于0,权重衰减越厉害。
因此,L2的目标是对能显著减小目标函数方向上的权重保留完整,在无助于目标减小的方向上权重衰减明显。

3. L1正则化

如上L2权重衰减的理论依据很充分,但是L2几乎保留了所有的参数,而L1正则化能让权重稀疏化。L1正则化是在目标函数上加w的L1范数组成新的目标函数。新的目标函数为
这里写图片描述
其中 这里写图片描述
对新的目标函数进行泰勒二次近似,可得
这里写图片描述
这里写图片描述梯度为这里写图片描述
在最小目标函数处这里写图片描述
这里写图片描述
由于权重大于等于0,因此
这里写图片描述
这里写图片描述
这里写图片描述
也就是设定了一个界限这里写图片描述,小于这个界限的权重全部衰减为0,大于这个界限的权重取高出界限的部分为新的权重。这里写图片描述为Hessian矩阵的对i行i列,也就是目标函数对这里写图片描述求二阶导。
权重矩阵的稀疏性由α控制,α越大,被衰减为0的权重越多,矩阵稀疏性越强,α越小,保留下来的权重越多。

无论是L2还是L1,其中的α都是模型的超参数,超参数是非训练得到的,因此,它可以自定义,也可以通过某种规则制定或调解,但调节过程在训练之外。

原创粉丝点击