liuguangshou123

内容来自CSDN--作者为zsffuture

https://blog.csdn.net/weixin_42398658/article/details/83017995

什么是梯度?

以二元函数为例,如果一个函数为f(x,y),某点(x0,y0)的梯度为:

 

由定义可以看出,梯度为一个向量。

要进一步介绍梯度要从泰勒级数开始 

泰勒级数:解释为什么极值点处导数等于0.

当x为标量时,根据泰勒公式,若在x=xk处有极大值点,不管δ>0,或,δ<0都有满足,所以就有δ>0,一阶导数>0,δ<0,一阶导数<0,又因为

要同时满足,所以要求一阶导数=0。

变成多元函数,x为向量时,根据泰勒公式变成如下,

为了找极值,我们选取一个合适的方向,使f(x)增长或减小最快。由向量內积的性质,令向量δ与共线,且δ=

此时这个向量δ就是多元函数的一阶偏导数,并且指向增长最快的方向。

在TensorFlow使用梯度

w=tf.constant(1.)
x=tf.constant(2.)
with tf.GradientTape() as tape:
        tape.watch([w])
        y2=w*x
grad2=type.gradient(y2,[w])

对函数y=wx+b求梯度。

 

δ>0

分类:

技术点:

相关文章:

  • 2021-09-29
  • 2021-09-13
  • 2021-09-22
  • 2021-09-08
  • 2021-07-21
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-11
  • 2021-10-10
  • 2021-11-27
  • 2022-12-23
  • 2021-07-13
  • 2021-04-30
相关资源
相似解决方案