前言

这一系列文章将介绍各种机器学习算法,部分算法涉及公示推导,我的博客中有另一个板块介绍基于python和R实现各种机器学习算法,详情见置顶的目录,这篇文章将介绍线性回归。

算法介绍

线性回归(Linear Regression),说白了就是高中时候学的一元拟合,相对简单的一种表达如下:

y^=θ0+θ1x1+θ2x2++θnxn

其中,θ0 为偏置,θi(i>1) 为权重,可转换为如下形式:
y^=hθ(x)=θTx

简单地,以一元回归为例,下面的例子截取自吴恩达老师的机器学习公开课,如图所示:
【ML算法】监督学习——线性回归
房价随着房屋面积的变化数据,由此建立预测模型,对房价进行预测,这个例子很简单,初中时候我们就学过,最后得到的大致如下:
【ML算法】监督学习——线性回归

损失函数

通过上述介绍,我们可以知道,通过给出变量与标签间的对应关系,可以得到相应的数学映射,这种映射可能是简单的,也可能很复杂,那么,对于同样的数据集,我们如何来选择好的函数映射,如何来评判这种映射的好坏程度呢?这就要引入损失函数(loss function),也叫代价函数(cost function)用来评价变量与标签间的映射的好坏,这种损失函数的变化趋势与模型的拟合程度相同,即拟合的越准确,损失函数越小。
在线性回归中,给出如下的损失函数:

J(θ)=12mi=1n(hθ(x(i))y(i))2

上式中,hθ(x(i)) 表示第i个数据的预测值,y(i) 表示第i个数据的实际值,这种记录预测值与实际值差的平方的损失函数叫做平方损失函数,可以理解,当预测的值与实际值相差越小,最终损失函数的值也就越小,得到的预测结果就越准确。
下面考虑上述损失函数的优化,即求损失函数的最小值。在上述损失函数中,由于函数本身比较简单,是一个二次函数,区间内极小值就应该是函数的最小值,但是在实际的计算中,损失函数可能相当复杂,我们没办法求出具体最小值,这就需要我们利用梯度下降的方法求得。
梯度下降应用广泛,是一个逐步最小化损失函数的过程。

参考文献

李航《统计学习方法》
周志华《机器学习》
Andrew Ng机器学习公开课

相关文章:

  • 2021-07-07
  • 2021-12-15
  • 2022-01-03
  • 2021-05-10
  • 2021-08-28
  • 2021-12-27
  • 2021-10-12
  • 2021-09-20
猜你喜欢
  • 2021-08-31
  • 2021-08-13
  • 2021-11-30
  • 2021-07-26
  • 2022-12-23
  • 2021-07-06
  • 2021-12-13
相关资源
相似解决方案