BP神经网络(二)--为何梯度反方向函数下降

常看到很多地方说梯度的反方向是函数下降最快的方向,为何?这里给出详
细的解释和理解过程。首先来说说梯度:

梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着某个方向可以使方向导数取得最大值,即函数在该点处沿着某方向(梯度的方向)变化最快,梯度的模为方向导数的最大值。

沿某一方向变化,是用方向导数描述,变化最快,即方向导数取最大值。总结起来是说,梯度就是在函数某点的方向导数取得最大值的方向。

好,既然这样,还记得在 BP神经网络(一)–方向导数 推导的定理吗?

d f d x ∣ ( x 0 , y 0 ) = f x ( x 0 , y 0 ) cos ⁡ α + f y ( x 0 , y 0 ) sin ⁡ α \left. \frac{{\rm d}f}{{\rm d}x} \right|_{(x_0,y_0)} = f_x(x_0,y_0)\cos\alpha+f_y{(x_0,y_0)}\sin\alpha dxdf(x0,y0)=fx(x0,y0)cosα+fy(x0,y0)sinα

方向导数可以用上式表示,我们写成向量相乘的形式,取向量 A = ( f x ( x 0 , y 0 ) , f y ( x 0 , y 0 ) ) A=(f_x(x_0,y_0),f_y(x_0,y_0)) A=(fx(x0,y0),fy(x0,y0)),取向量 B = ( cos ⁡ α , sin ⁡ α ) B=(\cos\alpha,\sin\alpha) B=(cosα,sinα),由向量内积的乘法定理有:
d f d x ∣ ( x 0 , y 0 ) = A ⋅ B \left. \frac{{\rm d}f}{{\rm d}x} \right|_{(x_0,y_0)} = A\cdot B dxdf(x0,y0)=AB
根据向量内积的定义有:
d f d x ∣ ( x 0 , y 0 ) = A ⋅ B = ∣ A ∣ ⋅ ∣ B ∣ cos ⁡ θ \left. \frac{{\rm d}f}{{\rm d}x} \right|_{(x_0,y_0)} = A\cdot B = |A| \cdot |B|\cos\theta dxdf(x0,y0)=AB=ABcosθ
其中, θ \theta θ为A、B之间的夹角。可见,当夹角为0时方向导数取得最大值,即向量A与向量B方向相同时,才能取得最大值。由于向量A当取完点 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)后就确定下来了,因为此时向量 A = ( f x ( x 0 , y 0 ) , f y ( x 0 , y 0 ) ) A=(f_x(x_0,y_0),f_y(x_0,y_0)) A=(fx(x0,y0),fy(x0,y0))为一个常数。当在函数上固定了 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)点,不断变化 α \alpha α的值寻找最大方向导数,当其与向量A同方向,方向导数取得最大,这时的方向就是梯度的方向(因为这是梯度的定义),也是向量A的方向,此时的方向就是梯度的方向,方向导数的最大值就是梯度的模。因此说梯度的方向就是函数变化(上升)最快的方向,那么其反方向自然是下降最快的方向了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wyssailing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值