7.1、神经网络优化的特点
1、网络优化的难点:结构差异大,没有通用的优化算法,超参数多。非凸优化问题:参数初始化,逃离局部最优或鞍点。梯度消失梯度爆炸问题。
2、高维空间的非凸优化问题
驻点:梯度为0的点
平坦最小值:一个平坦最小值的领域内,所有点对应的训练损失都比较接近。大部分的局部最小解是等价的。局部最小解对应的训练损失都可能非常接近于全局最小解对应的训练损失。
优化地形的可视化:在高维空间中损失函数的曲面形状。
3、神经网络优化的改善方法
更有效的优化算法来提高优化方法的效率和稳定性:动态学习率调整;梯度估计修正
更好的参数初始化方法、数据预处理方法来提高优化效率。
修改网络结构来得到更好的优化地形:好的优化地形通常比较平滑;使用ReLU激活函数、残差连接、逐层归一化等。
使用更好的超参数优化方法。
7.2、优化算法改进
1、优化算法:随机梯度下降
2、批量大小
批量大小不影响随机梯度的期望,但会影响随机梯度的方差。
7.3、动态学习率
1、
7.4、梯度估计修正
1、动量法
2、Nesterov加速梯度
3、Adam算法≈动量法+RMSprop
4、优化算法改进小结
7.5、参数初始化
1、随机初始化
范数保持性
2、基于方差缩放的参数初始化
3、正交初始化
7.6、数据预处理
1、尺度不变性
机器学习算法在缩放全部或部分特征后不影响学习和预测。
2、规范化(归一化)
标准差不能为0。
7.7、逐层规范化
1、目的:更好的尺度不变性;内部协变量偏移;更平滑的优化地形;
2、规范化方法:批量规范化;层规范化;权重规范化;局部响应规范化。
7.8、超参数优化
1、网格搜索
2、贝叶斯优化
3、动态资源分配
4、神经架构搜索
7.9、网络正则化
1、所有损害优化的方法都是正则化。
增加优化约束,干扰优化过程。
2、干扰优化过程:早停法、暂退法、权重衰减、SGD。
增加约束:l1和l2正则化、数据增强。
7.10、暂退法
1、循环神经网络上的暂退
当在循环神经网络上应用暂退法,不能直接对每个时刻的隐状态进行随机暂退,这样会损害循环网络在时间维度上记忆能力。
7.11、l1和l2正则化
1、
2、
7.12、数据增强
1、
7.13、小结
1、