梯度下降算法更新公式推导

文章介绍了梯度下降算法的基本原理,利用一阶泰勒展开逼近函数,通过最小化函数差值找到最快下降方向。更新公式为θ=θ0-η*f(θ0),其中η为学习率,f(θ0)是函数在θ0处的梯度。强调了学习率需足够小以确保一阶近似成立。
摘要由CSDN通过智能技术生成

梯度下降更新算法公式为θ = θ0 - η▽L

首先,如果一个函数n阶可导,那么我们可以用多项式仿造一个相似的函数,这就是泰勒展开式。其在a点处的表达式如下:

如果用一阶泰勒展开式,得到的函数近似表达式是:f(θ) = f(θ0) + (θ - θ0)*f '(θ0)。梯度下降就像是站在山坡往山下走,θ0是当前点,θ是往下一步走后所处的点。

我们知道梯度下降每走一步都是朝着最快下山的方向(因为希望尽快收敛得到最佳值),因此应该最小化f(θ) - f(θ0) = (θ - θ0)*f '(θ0)。

我们使用向量v来表示θ - θ0, f '(θ0)也是一个向量,那么上式就可以写成

                                f(θ) - f(θ0) = v·f '(θ0) = |v|*|f '(θ0)|*cosα

既然我们想要f(θ) - f(θ0)最小,那么只有当cosα=-1,也就是v和f '(θ0)这两个向量反方向时才会最小

当v和f '(θ0)反方向时,我们可以用f '(θ0)向量来表示v,即v = -η*f '(θ0) (其中η表示长度大小)

因为v = θ - θ0,代入可得θ - θ0 = -η*f '(θ0)

这样就得到了更新公式 θ = θ0 - η*f '(θ0)  (其中η是学习率,f '(θ0)是函数在θ0处的梯度)

由于使用的是一阶泰勒展开式,因此θ - θ0必须非常小,式子才成立。也就是说学习率要非常小才行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值