人工智能四 梯度下降算法

本课需要的前置知识:
初中的: 一次函数,二次函数,
高中数学知识:导数。
大学知识:线性回归分析 的 最小二乘法

1、什么是损失函数:

损失函数:用于衡量模型预测值与真实值之间的差异
例如:做个房价均价的直线图。

样本编号房屋真实价格预测价格误差
11009010
2150160-10
3200205-5

损失函数(最小二乘法)
在这里插入图片描述
损失函数 L 的计算方式如下:
L = ½(|10|² + |-10|² + |-5|² ) =(100+100+25)/2 = 112.5
这里112.5差值:衡量模型预测值与真实值之间的差异

2、什么是梯度下降

举例,要画一条离三个点都最近的直线。
总所周知,一条直线用到的公式就是一次函数 y = wx+b 要找到3个点到这个直线的最短距离,就需要算出3个点到直线y的最小距离。
如何算出他们的最小距离呢,这里就需要用到 最小二乘法。
我们先随便画一条线,再使用最小二乘法,来计算获取最佳的匹配值。

在这里插入图片描述
我们刚才已经知道损失函数的用法了,现在我们再将 一次函数 y=wx+b 的公式 导入到 最小二乘法中。
在这里插入图片描述
化简后就得到了,下面的二次函数公式。
在这里插入图片描述

我们根据初中的知识,就可以知道,二次函数的最小值就是顶点。
在这里插入图片描述
现在假定,我们刚才随机画的线的,位置是上面绿色的点。我们为了得到顶点位置,通过导数可以算出斜率,再乘以一个常数,然后得到b,再让新的b去减去,最终就得到了最佳优化数据。

3、算法优化:

如果当点的数量特别多的时候,如果每次都计算所有的数据,就会导致速度很慢,于是我们就可以采用随机抽样,的方式来计算,几万个个点的时候,我们就可以随机抽取不同位置,不同样本,进行一次计算,就能大大提高计算效率。

4、梯度下降动量。

由于每次的计算是随机的,可能会导致,数据抽取到的数据导致会出现反方向的情况,为了纠正这个行为,我们就加上动量这个概念,相当于动力的惯性,每次计算结果上都加上动量,可以帮助我们快速下降到最佳位置。

5、学习率。

学习率可以理解为梯度下降的步长,可以帮助算法快速收敛,但是学习率不能是固定的,就会用到adam算法。
越接近结果,学习率就越小。
在这里插入图片描述

总结:梯度下降算法
·梯度下降算法(Gradient Descent, GD),深度学习核心之一
·为了提升速度,使用了随机梯度下降算法(Stochastic Gradient Descent, SGD)
·为了让梯度算法方向一致形成惯性,我们加入了动量的概念(Moment)
·为了让梯度算法更快的收敛,我们采用了,自适应学习Adam

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值