线性回归

线性回归算法是解决机器学习中的拟合问题,即假设在空间中有若干个样本点,如第i个样本点(X­(i),Y(i)),X­(i)   表示样本点的特征向量,可能是多维的,Y(i) 表示实际问题中我们期望预测的值。例如样本是一本书的话,那特征向量 可能是书的作者、出版社、类型等等,而Y---我们期望预测的值就是书的价格。对于空间中的这若干点,拟合问题就是期望能找到一个函数表达式,使得这个函数表达式所描述的曲线经过这些样本点。这样我们得到函数表达式后,对于任意一个输入X,我们都能得到相应的Y值。例如刚才的实际问题,输入任意一本书的特征,我们都能预测出这本书的售价是多少。

而线性回归是假设我们要预测的函数表达式形如:Y=hθ(X)=θ­1X1 +θ­2X2 + ….. +θ­nXn   ,其中Xi 就是样本的第i维的特征,即Y由影响它的N维特征线性组合得到。因此,接下来的工作便是确定参数θ­,我们便得到用于预测的函数表达式了。于是让我们的预测函数与我们的样本点尽可能的接近,定义

,

上面的J(θ)便是我们的优化函数,我们令它最小便能使我们的预测函数与样本点尽可能拟合,可以看到我们用到了最小二乘的方法,对于这个最优化问题,我们可以采用梯度下降法求解J(θ)的最小值。我们知道梯度下降法很容易陷入局部最优解,但对于由最小二乘法得到的目标函数J(θ),它是特征向量X的二次函数,因此只有一个最优解,那么梯度下降法得到的局部最优解便是全局最优解了。

由上述可知,线性回归算法的预测函数是依赖于样本的特征数的。若选的特征数太少,就会导致对样本的描述不全面,使得预测函数对样本点拟合不够,称为欠拟合。而如果特征选择过多,可能导致预测函数与样本点过度拟合,这其实也是不好的。因为每一个样本点都是有一定随机性的,与样本点的过度拟合可能导致与样本点之外的点产生较大的偏差。由此可见线性回归算法是依赖于参数的数目的(等同于特征的维数),因此是定参数学习算法。而选择合适的特征并不是容易的事情,因此我们会关心是否有参数数目不定的回归算法,局部加权回归就是这样一种无参数的学习方法。

像上面所说的,如果特征选择的太少,会出现欠拟合的问题。比如几个样本点可能需要一个高次曲线来拟合,但因为特征选的太少,最后得到的预测函数可能是一条曲线,这样回归的效果就不好。而局部加权回归算法的思想是我不去拟合所有的点,我只去拟合我周围的点。想象一下我国古代用多边形去近似圆形,即便直线与圆形相差很远,但是对于每一个点都用与该圆相切的直线段拼接,最后得到的图形与圆就拟合的很好了。局部加权回归也是同样的思想,对于每个点,可能预测函数与整体样本偏差很远,但与这点周围的样本拟合的很好,那么最后拼接起来,也能得到很好的拟合效果。

局部加权回归的具体做法是:给了一些样本点,然后对于任意一个输入X,做线性回归,不过离X近的样本点占的权重更大,离X远的样本点占的比重小。我们要优化的函数即:

wi表示第i个样本所占的权重,wi可取作:


可知距x越远的样本占的权重越小,距x越近的样本占的权重越大。这样对于输入点x得到的预测函数会尽可能地去拟合它周围的样本点。由此可知,局部加权回归算法并没有像线性回归那样得到一个函数表达式,对于任意一个输入x,都得到一个预测值y。局部加权回归是对任意一个输入x,都会得到一个与之对应的预测函数,然后得到预测值。也就是说对不同的输入x,会得到不同的预测函数表达式,也就是不同的参数θ­的取值。

最后再对线性回归与局部加权回归比较一下。他们的共同点都是给定了一些样本(X­(i),Y(i)),都需要解决的问题是输入任意一个非样本的X,预测出一个Y值。线性回归的目标便是确定参数θ,这样就确定了预测函数。它通过优化一个目标函数,得到使目标函数最优的θ值,由此得到预测函数。因此线性回归最后得到了一组确定的θ值,和一个确定的预测函数表达式。而局部加权回归,并没有一个整体的函数表达式,而对每一个点它通过做一次线性回归得到一个函数表达式,而因为所做的线性回归是加权的,因此在不同的点上得到的函数表达式是不同的。也就是说,对任意一个输入点x,需要做一次加权的线性回归,得到相应一组参数θ值,最后得到预测值Y。还是多边形近似圆的例子,近似圆的多边形并没有一个统一的表达式,但是每一个点所在的近似线段都是可以用函数表示的。因此局部加权回归的优势就是,即使我选择的特征不是特别合适,但只要我每个点的局部拟合效果好,我最终整体的拟合效果也会不错。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值