【书籍阅读】DeepLearning----第八章-深度模型中的优化

  做优化算法时,为什么可以在数据集中随机采样少量样本(instead of 使用全部样本)?

  1. n个样本均值的标准差为 σ n ,其中 σ 是样本值真实的标准差。可以看出,分母 n 表明使用更多样本来估计梯度的方法是低于线性的。
  2. 大数量样本中计算的梯度存在冗余(对样本做相似的贡献。比如两个一样(相似)的样本)。

训练神经网络时,可能存在几个挑战

  1. 病态(如Hessian矩阵的病态)
    优化凸函数时,病态体现在随机梯度下降会“卡”在某些情况,此时即使使用很小的更新步长也会增加代价函数。【牛顿法在解决病态条件的Hessian矩阵的凸优化问题时,是一个很优秀的工具】
  2. 局部最小值
    模型可辨识性:如果一个足够大的训练集可以唯一确定一组模型参数,那么该模型被称为可辨认的。带有潜变量的模型通常是不可辨认的,因为可以通过相互交换潜变量得到等价的模型(比如神经网络的权重空间对称性ReLu激活函数前扩大 α 倍,后缩小 1 α 能得到等价的模型)。虽然模型是等价的,但其参数排布,甚至参数值都不一样,意味着存在非常多甚至不可数的局部最小值。
  3. 高原、鞍点和其他平坦区域
    对于很多高纬非凸函数,局部极小值事实上远少于另一类梯度为零的点——–鞍点。这或许能解释在神经网络中为什么二阶方法(鞍点梯度为0)无法成功替代梯度下降(寻找“下坡”)。
  4. 梯度爆炸

  在优化目标函数时,寻找一个具有良好优化空间的初始点比寻找适合的目标函数更为重要。如果初始位置不够好,就容易陷入局部最小点,而代价函数的各种优化只是“逃离”局部最小点的方法,当该空间内局部最小点多且复杂时,代价函数就没那么好用了。
  连续方法主要用来克服局部最小值的问题,是通过一族通过挑选初始点使优化更容易的方法,以确保局部优化花费的大部分时间在表现良好的空间。连续方法的思想是构造一系列具有相同参数的目标函数,先优化易于优化的目标函数得到“局部最小点”作为下一个目标函数的初始点

猜你喜欢

转载自blog.csdn.net/qq_19784349/article/details/80377415