zoukankan      html  css  js  c++  java
  • 为什么神经网络会有很多局部最优点?

    这其实是一个理解上的误区:

    陷入局部最优其实不是神经网络的问题,在一个非常高维的空间中做梯度下降,这时的local minimum是很难形成的,因为局部最小值要求函数在所有维度上都是局部最小的。实际情况是,函数会落在一个saddle-point上。 

    在saddle-point上会有一大片很平坦的平原,让梯度几乎为0,导致无法继续下降。

    但是saddle-point并不是一个局部极小值点,因为它还是有可以下降的方向,只不过现在这些优化算法都很难去找到这个方向罢了。

    通过以下图来感受以下saddle-points

    NN的设计激活函数是为了引入非线性变换,凸不凸都可以。

    其次在神经网络的变换中,其实是对原始空间的不断的挤压或者拉伸,但是不会切断。tanh这个激活函数能够保证原始空间和变换后的空间的同胚性。(有待研究)colah的博客中提到的。

    Ref:

    [1]Dauphin Y, Pascanu R, Gulcehre C, et al. Identifying and attacking the saddle point problem in high-dimensional non-convex optimization[J]. Mathematics, 2014, 111(6 Pt 1):2475-2485.

    [2]http://colah.github.io/posts/2014-03-NN-Manifolds-Topology/

  • 相关阅读:
    C#中?、??与?:的使用
    循环的嵌套
    Linux中__init、__devinit等初始化宏
    AUPE学习第十章------信号
    C语言--const详解
    database is locked和SQLITE_BUSY
    vc6.0错误提示
    C/C++程序内存模型
    浅谈C中的malloc和free “来自bccn C语言论坛”
    Java几种内部类总结
  • 原文地址:https://www.cnblogs.com/crossing/p/5999461.html
Copyright © 2011-2022 走看看