700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 机器学习数学知识补习——梯度下降(Gradient Descent)

机器学习数学知识补习——梯度下降(Gradient Descent)

时间:2022-06-02 13:20:26

相关推荐

机器学习数学知识补习——梯度下降(Gradient Descent)

导数

导数与微分:

图中的Δy、dy等符号的意义及关系如下:

Δx:x的变化量;dx:x的变化量 Δ x Δx Δx趋于0时,则记作微元 d x dx dx;Δy: Δ y = f ( x 0 + Δ x ) − f ( x 0 ) Δy=f(x0+Δx)-f(x0) Δy=f(x0+Δx)−f(x0),是函数的增量;dy: d y = f ′ ( x 0 ) d x dy=f'(x0)dx dy=f′(x0)dx,是切线的增量; 当Δx→0时,dy与Δy都是无穷小,dy是Δy的主部,即 Δ y = d y + o ( Δ x ) Δy=dy+o(Δx) Δy=dy+o(Δx).

导数定义如下:

反映的是函数 f ( x ) f(x) f(x)在x轴上某一点处沿着x轴正方向的变化率/变化趋势。

导数和偏导数

偏导数的定义如下:

可以看到,导数与偏导数本质是一致的,都是当自变量的变化量趋于0时,函数值的变化量与自变量变化量比值的极限。直观地说,偏导数也就是函数在某一点上沿坐标轴正方向的的变化率。

区别在于:

导数,指的是一元函数中,函数 y = f ( x ) y=f(x) y=f(x)在某一点处沿x轴正方向的变化率; 偏导数,指的是多元函数中,函数 y = f ( x 1 , x 2 , … , x n ) y=f(x_1,x_2,…,x_n) y=f(x1​,x2​,…,xn​)在某一点处沿某一坐标轴 ( x 1 , x 2 , … , x n ) (x_1,x_2,…,x_n) (x1​,x2​,…,xn​)正方向的变化率。

导数与方向导数

方向导数的定义如下:

在前面导数和偏导数的定义中,均是沿坐标轴正方向讨论函数的变化率。那么当我们讨论函数沿任意方向的变化率时,也就引出了方向导数的定义,即:某一点在某一趋近方向上的导数值。

通俗的解释是:

我们不仅要知道函数在坐标轴正方向上的变化率(即偏导数),而且还要设法求得函数在其他特定方向上的变化率。而方向导数就是函数在其他特定方向上的变化率。

导数与梯度

梯度的定义如下:

梯度的提出只为回答一个问题:

函数在变量空间的某一点处,沿着哪一个方向有最大的变化率?

梯度定义如下:

函数在某一点的梯度是这样一个向量,它的方向与取得最大方向导数的方向一致,而它的模为方向导数的最大值。

这里注意三点:

梯度是一个向量,即有方向有大小;梯度的方向是最大方向导数的方向;梯度的值是最大方向导数的值。

导数与向量

提问:导数与偏导数与方向导数是向量么?

向量的定义是有方向(direction)有大小(magnitude)的量。

从前面的定义可以这样看出,偏导数和方向导数表达的是函数在某一点沿某一方向的变化率,也是具有方向和大小的。因此从这个角度来理解,我们也可以把偏导数和方向导数看作是一个向量,向量的方向就是变化率的方向,向量的模,就是变化率的大小。

那么沿着这样一种思路,就可以如下理解梯度:

梯度即函数在某一点最大的方向导数,函数沿梯度方向函数有最大的变化率。

梯度下降法

既然在变量空间的某一点处,函数沿梯度方向具有最大的变化率,那么在优化目标函数的时候,自然是沿着负梯度方向去减小函数值,以此达到我们的优化目标。

如何沿着负梯度方向减小函数值呢?既然梯度是偏导数的集合,如下:

同时梯度和偏导数都是向量,那么参考向量运算法则,我们在每个变量轴上减小对应变量值即可,梯度下降法可以描述如下:

以上就是梯度下降法的由来,大部分的机器学习任务,都可以利用Gradient Descent来进行优化。

转载:

[机器学习] ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)

/walilk/article/details/50978864

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。