机器学习:了解线性回归的原理

上一篇文章介绍如何使用sklearn进行线性回归预测。接下来本文将深入原理,了解线性回归是如何工作的。

基础概念

线性回归为何叫线性?实际上,像在处理Google的股票统计数据时,我们使用线性回归是在这堆数据所在的N维空间中找到一条线来描述这些数据的规律,因此才叫线性回归。这个过程称为拟合,这条线成为拟合线。

这条拟合线上的某个数据点或多或少都会偏离实际统计的值。实际统计数据和拟合线对应数据的差叫残差。很明显,残差可以反映模型的预测误差。

但是残差有正有负的,不方便计算。而且实际运用中我们不需要关注残差的正负,因为正负并不能描述误差的大小程度。为了降低计算复杂性,我们使用这个差值的平方进行计算。你可能会想到,差值的平方不是把差值给改了吗,没关系吗?答案是:数据确实变了,但没影响。因为我们真正使用的是残差的绝对值,用它描述误差大小的程度,而对这个绝对值进行平方后有同样的效果,毕竟$-y = |x|-$ 与$-y = x^2-$有同样的单调性。

结合上述平方的想法,为了让预测更加准确,我们应该选择一条线,能够使得线上每个点与实际数据的残差平方的总和最小。这样的线才能叫最佳拟合线。

构建模型

接下来就是利用统计数据和上述原理来构建模型,也就是找最佳拟合线。

二维空间中,直线可以表示为:

$$ Y = a + bX $$

我们已经有通过统计得到的很多份数据$-X_i-$和$-Y_i-$,接下来的目标就是利用这些数据求解参数$-a-$和$-b-$。

求解过程暂时不展开,请参考这个讲述求解参数的文章。最终得到的结果如下图所示:

b a

至此即可得到最佳拟合线的参数,代回直线方程中就可以作为预测模型,可用于对新的$-X-$进行计算从而预测出对应的$-Y-$。其中$-\overline{X}-$表示$-X-$的平均值,$-\overline{Y}-$同理。

上述的这种方法称为最小二乘法(Least Squares)。扩展到N维空间,最小二乘法依旧可用,不过我怕陷入数学的漩涡暂时不敢继续深入。除此之外,在线性回归中求解参数的方法还有“梯度下降法(Gradient Descent)”。

R方理论评估模型

在前一篇文章中提到了模型的准确性accuracy一词。实际上accuracy在统计学中应该称为“可决系数”,它的计算方法有两种。在这里我尝试介绍R方理论作为计算方法。

R方的计算方法如下:

R方的计算方法

这个式子用1减去$-y-$的残差平方和与$-y-$的总方差的比值,$-y-$减去$-\widehat{y}-$也就是残差,是拟合方程中对数据尚不能解释到的部分,用1减去不能解释的部分,那么剩下的就是可以解释的部分。也就是说自变量解释了因变量变动的百分比的多少,那么$-R^2-$的值肯定是越大越好,意味着该模型把$-y-$的变动解释得好,$-R^2-$的范围显然是0到1。

ChardLau

继续阅读此作者的更多文章