文章目录
深度学习中的正则化和优化
深度学习中,正则化与优化策略占据了重要的地位,它们很大程度上决定了模型的泛化与收敛等性能。通过阅读《深度学习》,简要的总结了深度学习中的五大正则化方法和七大优化策略。
1、正则化方法
正则化通过对学习算法的修改,旨在减少泛化误差而不是训练误差。 从之前对方差和偏差( https://blog.youkuaiyun.com/qq_31827399/article/details/96730108 )的角度看,正则化技术就是以偏差的增加换取方差的减少 ,而且一个有效的正则化能显著减少方差而不是过度增加偏差。正则化技术是保证算法泛化能力的有效工具,因此算法正则化的研究成为机器学习中主要的研究主题。
在深度学习中常用的几种正则化策略:数据增强、L1 和L2正则化、提前终止、Dropout、Drop Connect、随机池化等。
1.1 数据增强(Data Augmentation)
让机器学习模型泛化得更好的最好办法是使用更多的数据进行训练,但是在实际运用中数据是有限的,为了实现这一目的,我们可以创建“假数据添加到训练集中。数据增强一般是通过向训练数据添加转换或扰动来人工增加训练数据集。
- 常见的数据增强技术
任务 | 数据增强方式 |
---|---|
对象识别(图像) | 数据集的各种变换,如对图像的平移、旋转和缩放。 |
语音识别 | 注入噪声(通过将随机噪声添加到输入再进行训练能够大大改善神经网络的健壮性,也可以在隐藏层中注入噪声) |
在实际运用中,也有对图像加入噪声的,如通过向图像添加高斯噪声,以及一个色调较低的版本是盐和胡椒噪音(它表现为随机的黑白像素在图像中传播,这类似于通过向图像添加高斯噪声而产生的效果,但可能具有较低的信息失真水平)
https://zhuanlan.zhihu.com/p/41679153
1.2 L1 和L2正则化
L1 和 L2 正则化是最常用的正则化方法,通过对目标函数 J 添加一个参数范数惩罚 Ω ( θ ) \Omega(\theta) Ω(θ),限制模型的学习能力。 J ^ ( t h e t a : X , y ) = J ( θ : X , y ) + α Ω ( θ ) \hat J(theta:\rm{X},y)=J (\theta:\rm{X},y)+\alpha\Omega(\theta) J^(theta:X,y)=J(θ:X,y)+αΩ(θ) α > = 0 \alpha>=0 α>=0衡量参数范数惩罚程度的超参数,在神经网络中,参数包括每层线性变换的权重和偏置,我们通常只对权重做惩罚而不对偏置做正则惩罚;使用向量 ω \omega ω表示应受惩罚影响的权重,用向量 θ \theta θ表示所有参数。
当我们的训练算法最小化正则化后的目标函数 J ^ \hat J J^时,它会降低原始目标函数 J J J关于训练数据的误差并同时减少在某些衡量标准下参数 θ \theta θ(或参数子集)的规模。
L2正则化
L 2 L^2 L2参数正则化(也称为岭回归、Tikhonov正则)通常被称为权重衰减(weight decay),是通过向目标函数添加一个正则项 Ω ( θ ) = 1 2 ∥ ω ∥ 2 2 \Omega(\theta)=\frac{1}{2}\|\omega\|_2^2 Ω(θ)=21∥ω∥22 使权重更加接近原点。
r* 通过研究正则化后目标函数的梯度,可知加入权重衰减后会导致学习规则的修改,即在每步执行梯度更新前先收缩权重(乘以 ( 1 − ϵ α ) (1-\epsilon\alpha) (