这里的优化只是指降低损失值,和模型优化不一样,这里只关注小的方面,不关注模型结构等。
1 反向传播原理
1.1 梯度
1.2 学习率
1.3 链式求导
1 目标
优化的目标在于降低训练损失,只关注最小化目标函数上的表现
深度学习问题中,我们通常会预先定义一个损失函数。有了损失函数以后,我们就可以使用优化算法试图将其最小化。在优化中,这样的损失函数通常被称作优化问题的目标函数(objective function)。依据惯例,优化算法通常只考虑最小化目标函数。
2 为什么要优化
2.1 局部最优
对于目标函数f(x),如果f(x)在x上的值比在x邻近的其他点的值更小,那么f(x)可能是一个局部最小值(local minimum)。如果f(x)在x上的值是目标函数在整个定义域上的最小值,那么f(x)是全局最小值(global minimum)。
比如下面给定的函数
2.2 鞍点
2.3 梯度消失
3 解决方法
其中局部最优的问题有一种方法
梯度消失大的方面分为4个方法,每个大的方面又有好几种方法
3.1 海森矩阵(解决局部最优)
3.2 解决梯度消失
3.2.1 MiNi分批训练
批次量大小选择
3.2.2 3种大的优化方法(难理解)
所有优化算法效果对比
收敛对比
学习率退火跟模拟退火法一样,或者使用动态学习率
3 代码
待完成