当前位置: 代码迷 >> 综合 >> 梯度最速下降算法
  详细解决方案

梯度最速下降算法

热度:1   发布时间:2024-01-22 02:30:14.0

  要理解BP模型的理论基础,就必须先知道什么是最速下降算法.因为这是BP网络理论的重要基础.

  通常来说,我们求解一个函数的极小值点,可以求解这个函数的导数,并令其为0.这样就可以求出其极小值点.但是在计算机当中,这样求解显得比较麻烦.这就产生了一种方法就是梯度最速下降算法.即从某一个点出发,沿着负梯度方向,不断的进行迭代,求出极小值点.

  例如,求某一个函数φ(x)的最小值点,先从某一个点x(0)出发,沿φ(x)在x(0)的负梯度方向.r(0)=b-Ax(0),求得φ(x)的极小值点x(1),即可以写成minφ(x(0)+λr(0)),然后重x(1)出发,继续寻找下一个极小值点x(2).就这样一直下去.

  最速下降法的迭代格式为:

                     r(k)=b - Ax(k)               λ(k) = <r(k)',r(k)>/<r(k)',Ar(k)>   k =1,2,... ...     x(k+1) = x(k) + λ(k)r(k).

  说白了也就是切线一直画,一直到它趋于0为止.

  下面两张图看一下就更直观了.

 

 这是书上在讲解BP模型原理时用到的两幅图.现在总算把它看明白一点了.

  相关解决方案