利用梯度下降实现线性拟合

  • 作业要求

本作业题要求使用线性拟合,利用梯度下降法,求解参数使得预测和真实值之间的均方误差(MSE)误差最小。定义误差如下:

其中:学习率设定为0.3,最大迭代次数设定为50次.初始值可设定为0到1之间的任意数值,我们可以采用随机数进行生成。

  • 理论推导

本作业题的目的是搜索LOSS的最小点。为此我们使用梯度下降法,使得LOSS沿着负梯度方向下降,从而在规定的迭代次数内搜索到相应的符合要求的点。

我们使用的负梯度下降法的一般公式为:

其中:

是一个正实数,称为步长。

  1. 的含义是:给定一个搜索点,由此点出发,根据向量指定的方向和幅值运动,可以得到新点;之后不断迭代,到达终止条件即可。

梯度下降法的终止条件通常有以下几种:

  1. 达到最大迭代次数:在训练模型时,通常会指定最大的迭代次数到这个迭代次数时,梯度下降算法就会停止运行
  2. 目标函数的值达到一定精度:可以指定目标函数的值在两次迭代之间的变化小于某个设定值时,算法止运行
  3. 达到一定的运行时间:可以通过设定算法运行的最大时间来确定算法是否停止。例如,可以指定算法运行时间在某个时间段之后停止。

在本实验中:我们的目标函数LOSS定义为:

在使用梯度下降法时,我们需要分别计算LOSS关于w和b的偏导数的值,并更新它们的值

由此,我们可以实现梯度下降的迭代计算,达到迭代50次的题目要求后终止即可。

  • 实验结果

表1记录了前30次迭代中w、b和 Loss 的值。

表1 前30次迭代中w、b与Loss的值

次数

w

b

Loss

1

1.0122

1.8359

13.674

2

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Metaphysicist.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值