局部极小值点与鞍点
临界点定义与种类
临界点:梯度为零的点
临界点种类:局部极小值、鞍点
判断临界点类型
判断一个临界点到底是局部极小值还是鞍点需要知道损失函数的形状,但网络本身很复杂,用复杂网络算出来的损失函数显然也很复杂,可通过计算海森矩阵进行判断。
计算出海森矩阵后,若 H 的所有特征值都是正的,H 为正定矩阵,临界点是局部极小值。若 H 的所有特征值都是负的,H 为负定矩阵,临界点是局部极大值。若H 的特征值有正有负,临界点是鞍点。
逃离鞍点
如图 (a) 所示的一维空间中的误差表面,有一个局部极小值。但是在二维空间(如图 (b) 所示),这个点就可能只是一个鞍点。
深度学习的训练是非常复杂的(如图(c)所示)。如果移动某两个参数,误差表面的变化非常的复杂,有非常多局部极小值。低维度空间中的局部极小值点,在更高维的空间中,实际是鞍点。
所以从经验上看起来,局部极小值并没有那么常见。多数的时候,我们训练到一个梯度很小的地方,参数不再更新,往往只是遇到了鞍点。