深度模型优化与正则化:
- 网络优化
目的:经验风险最小化。对于低维来说,目的是逃离局部最优点;对于高维来说,则是逃离鞍点。 - 梯度下降
批量梯度下降、小批量梯度下降、随机批量梯度下降。
3.学习率
流程:学习率预热、学习率衰减、学习率周期调整、自适应学习率。
1)学习率预热:
2)学习率衰减
3)周期性学习率调整
4)自适应学习率
4.缓解batch小导致的幅度震荡
动量法
比较:
5.参数初始化
权重初始化不能全为0,而偏置可以全为0。
目的:合适的初始化方法,解决梯度消失(初始化太小)和梯度爆炸(初始化太大)等问题。
初始化方法:
1)基于固定方差的参数初始化
高斯分布初始化:从一个固定均值和方差的高斯分布进行随机初始化。
均匀分布初始化:在一个[-r,r]的区间内采用均匀分布来初始化。
这两种一般比较常见。
2)基于方差缩放的参数初始化
本质:尽可能保持每个神经元的输入和输出的方差一致,根据神经元的连接数量来自适应的调整初始化分布的方差。
主要包括Xavier初始化和He初始化。主要对比如下,分别在不同的激活函数下设置不同的方差来保证前后的方差不变。
推导过程:
①Xavier推导:
②He推导:
3)正交初始化方法
数据初始化
主要包括三种,步骤分为两步,区别见下面:
用途总结:
逐层归一化
目的:解决内部协变量偏移问题;解决梯度消失、梯度爆炸等问题;更平滑的优化地形。
1)批量归一化(BN)
是对一个中间层的单个神经元进行归一化操作。其主要在一篇论文中提出,InceptionV2。
2)层归一化
比较:
超参数优化
详情就不再说了,调参是一门技术,有需要的同学自己去搜索吧,。。
过拟合-正则化
过拟合:即模型的训练参数可能太大,导致模型的训练效果太好了,而正则化就是降低这种效果。
1)l1和l2正则化
2)提前停止
3)dropout
10.数据增强