深度学习之梯度

什么是梯度?

一、数学知识:

一、简介

  1. 导数(derivate):高中所学的二维空间中的增长速率。(标量)
  2. 偏微分(partial derivate):对于空间中,某一方向的增长。(标量)
  3. 梯度(gradient):对函数的各个自变量的偏微分的集合。(矢量)

二、实例

  1. 函数

    z

    =

    y

    2

    x

    2

    z = y^2 - x^2

    z=y2x2
    在这里插入图片描述

    1. 偏导数:

      z

      x

      =

      2

      x

      frac{partial z}{partial x}=-2x

      xz=2x,

      z

      y

      =

      2

      y

      frac{partial z}{partial y}=2y

      yz=2y

    2. 梯度:

      f

      =

      (

      z

      x

      ,

      z

      y

      )

      =

      (

      2

      x

      ,

      2

      y

      )

      nabla f=(frac{partial z}{partial x},frac{partial z}{partial y})=(-2x,2y)

      f=(xz,yz)=(2x,2y)

三、梯度的含义

  1. 神经网络的特征之一,从数据样本中学习。loss函数就是我们可以自动确定的抓手。当然,使得loss函数达到最小值时,就是我们要寻找的参数。这时就引入了导数的概念。
  2. 导数的引入,可以使我们容易获得极值点,

    f

    (

    x

    )

    =

    0

    f'(x)=0

    f(x)=0,可是使得我们通过微分方程来轻松获得极值点。但是导数仅仅是对一维函数所说的,但是在现实生活中,往往存在很多维度的属性,这时候并不能用导数来完成这一工作,所以我们引入了梯度
    在这里插入图片描述

四、迭代法求取最小值

1、简单例子

通过使用

θ

t

+

1

=

θ

t

a

t

f

(

θ

t

)

theta_{t+1}=theta_{t}-a_tnabla f(theta_t)

θt+1=θtatf(θt)

  1. 函数:

    f

    (

    θ

    1

    ,

    θ

    2

    )

    =

    θ

    1

    2

    +

    θ

    2

    2

    f(theta_1,theta_2)=theta_1^2+theta_2^2

    f(θ1,θ2)=θ12+θ22

  2. 目标函数:

    m

    i

    n

    θ

    1

    ,

    θ

    2

    (

    f

    (

    θ

    1

    ,

    θ

    2

    )

    )

    underset{theta_1,theta_2}{min}(f(theta_1,theta_2))

    θ1,θ2min(f(θ1,θ2))

  3. 更新规则:
    1. θ

      1

      =

      θ

      1

      a

      d

      d

      θ

      1

      f

      (

      θ

      1

      ,

      θ

      2

      )

      theta_1=theta_1-afrac d{dtheta_1}f(theta_1,theta_2)

      θ1=θ1adθ1df(θ1,θ2)

    2. θ

      2

      =

      θ

      2

      a

      d

      d

      θ

      2

      f

      (

      θ

      1

      ,

      θ

      2

      )

      theta_2=theta_2-afrac d{dtheta_2}f(theta_1,theta_2)

      θ2=θ2adθ2df(θ1,θ2)

2、相关问题

  1. Learning rate的设置:Learning rate设置不合理会影响最终生成的答案。如果LR太大则可能会跨越,太小可能会计算速度变慢。如下图所示
    在这里插入图片描述

  2. 初始值的设置:初始值设置不合理会影响最终生成的答案。如图下图所示
    在这里插入图片描述

  3. 就上图而言如何逃离最小值呢?可以引入惯性,可以变换到其他位置,如图所示:
    在这里插入图片描述

五、常见的梯度函数

在这里插入图片描述

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>