机器学习入门(2)——单变量线性回归

模型描述(Model Representation)

h 代表学习算法的解决方案或函数也称为假设(hypothesis)

一种可能的表达方式为:
在这里插入图片描述
因为只含有一个特征/输入变量,因此这样的问题叫作单变量线性回归问题。

代价函数(Cost Function)

我们选择的参数决定了我们得到的直线相对于我们的训练集的准确程度,模型所预测的值与训练集中实际值之间的差距,即建模误差(modeling error)。
我们的目标便是选择出可以使得建模误差的平方和能够最小的模型参数。 即使得代价函数最小。
代价函数也被称作平方误差函数,有时也被称为平方误差代价函数。我们之所以要求出误差的平方和,是因为误差平方代价函数,对于大多数问题,特别是回归问题,都是一个合理的选择。

代数函数直观理解1

代数函数直观理解2

如上图,代价函数的样子为等高线图,则可以看出在三维空间中存在一个使得最小的点。

梯度下降(Gradient Descent)

梯度下降是一个用来求函数最小值的算法,我们将使用梯度下降算法来求出代价函数的最小值。

其中α是学习率(learning rate),它决定了我们沿着能让代价函数下降程度最大的方向向下迈出的步子有多大,在批量梯度下降中,我们每一次都同时让所有的参数减去学习速率乘以代价函数的导数。
注:当人们谈到梯度下降时,他们的意思就是同步更新。

若α太小,即学习速率太小,结果就是移动速度很慢的去接近最低点,这样就需要很多步才能到达全局最低点。
若α太大,那么梯度下降法可能会越过最低点,甚至可能无法收敛,下一次迭代又移动了一大步,越过一次,又越过一次,一次次越过最低点,直到发现实际上离最低点越来越远。所以若α太大,会导致无法收敛,甚至发散。

在梯度下降法中,当我们接近局部最低点时,梯度下降法会自动采取更小的幅度,这是因为在局部最低时导数等于零,所以当我们接近局部最低时,导数值会自动变得越来越小,所以梯度下降将自动采取较小的幅度,这就是梯度下降的做法。所以实际上没有必要再另外减小α。

梯度下降的线性回归

梯度下降算法和线性回归算法比较如图:


上述算法有时也称为批量梯度下降(Batch Gradient Descent):指的是在每一步梯度下降中,我们都遍历了整个训练集的样本。在梯度下降中,当计算偏导数时,我们进行求和运算,所以,在每一个单独的梯度下降中,我们最终都要计算m个训练样本的总和。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值