梯度下降算法原理以及其实现

摘要

本文将以通俗易懂的方式介绍梯度下降算法的原理,以及文章的最后会去简要实现梯度下降算法(python代码实现)

基本思想

首先,我们需要了解梯度下降算法的原理,这里我举一个简单的例子:
有一个农夫在山上砍柴,天色将晚,农夫准备从山顶走到山底的家,由于天气原因,可见度很低,他每走一步只能看到很短的一段距离,这里我们想一下,这位农夫怎样才能以最快的时间走到家,这里这位农夫就可以使用梯度下降算法了,答案是他每一步都去走自己附近最陡峭的地方。好,问题解决了,我们继续,那么假设这位农夫具有判断最陡峭方向的能力,那么问题又来了,这位农夫每次沿着这个最陡峭的方向走多大的步子呢?如果步子很大就会错过家门,然而如果步子很小,就很有可能在很短的时间里到不了家,所以每一步的大小也是一个至关重要的问题。
蓝色的点表示农夫的家,红色的点代表农夫
好了,故事讲完了,这里我想说的是,每一次走最陡峭的地方就是梯度下降算法的原理,而每一步的大小又是梯度学习算法中很重要的学习率参数问题,相信读到这里,你的脑子中会记住一些概念了,接下来我们首先利用数学的角度去解释梯度下降算法,可能有些枯燥,但一定坚持读下去。

梯度下降算法的数学原理解释

x1=x0−α∗δy(x) x1= x0 - \alpha * \delta y(x)x1=x0αδy(x)
其中上述公式中的参数分别表示为:
x1:next position 下一步的位置
x0:current position 当前所处的位置
α\alphaα:every step 每一步的步长(也就是上文中的学习率 不能太大,也不能太小)
δ\delta

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值