zoukankan      html  css  js  c++  java
  • 训练深度神经网络失败的罪魁祸首是退化

    笔记参考机器之心Pro

    人们通常认为这种困难主要是(如果不全是)由于梯度消失问题(和/或梯度爆炸问题)。「梯度消失」指的是随着网络深度增加,参数的梯度范数指数式减小的现象。梯度很小,意味着参数的变化很缓慢,从而使得学习过程停滞,直到梯度变得足够大,而这通常需要指数量级的时间。这种思想至少可以追溯到 Bengio 等人 1994 年的论文:「Learning long-term dependencies with gradient descent is difficult」,目前似乎仍然是人们对深度神经网络的训练困难的偏好解释。

    偏好解释:学习率下降

    Saxe 等人 2013 年的论文「Exact solutions to the nonlinear dynamics of learning in deep linear neural networks」表明深度线性网络中的学习动力学仍然可以提供非线性网络的学习动力学的信息。

    如果梯度范数的大小本身和深度网络的训练困难并没有关系,那是什么原因呢?答案是,模型的退化基本上决定了训练性能。为什么退化会损害训练性能?直观地说,学习曲线基本上会在参数空间的退化方向变慢,因此退化会减少模型的有效维度。在以前,你可能会认为是用参数拟合模型,但实际上,由于退化,可以有效地拟合模型的自由度却变少了。

    正如 Saxe 等人的论文表明,随着相乘矩阵的数量(即网络深度)增加,矩阵的乘积变得更加退化(线性相关)。以下分别是该论文中的 1 层、10 层和 100 层网络的例子:

  • 相关阅读:
    Linux速成(二)
    Linux速成(一)
    突如其来的有赞电话面试!
    mark一下岗位
    游戏道具上下架设计
    ET框架学习-ECS组件式编程的基本思想之于UNITY
    一个类似与地平线中的车漆画板制作
    unity用刚体做玩家移动和玩家看向鼠标点
    C#简单的消除注释
    拉格朗日差值法, 快速排序.
  • 原文地址:https://www.cnblogs.com/gaowenxingxing/p/13262727.html
Copyright © 2011-2022 走看看