初识机器学习:回归分析

这是我参与「掘金日新计划 · 8 月更文挑战」的第8天,点击查看活动详情

回归分析(Regression Analysis)是一种统计学上分析数据的方法,目的在于了解两个或更多变量是否相关、关系方向和关系强度,并以此建立数学模型,通过观察特定变量来预测研究者感兴趣的变量。它可以帮助我们在自变量变化时因变量的变化情况。

在机器学习中,回归分析数据监督学习的范畴,可以用于数据的预测。回归分析可以通过多个预测变量来预测结果,并且能够这些变量对结果的影响程度。

简单线性回归

这里我们可以引入一个预测房价的例子,假设某地的放房价主要受房间数和周围居民的收入水平影响,我们可以根据调研数据,绘制趋势线。

下图是放假与房间数的关系图:

在图中,我们可以看到房间数与房价的大致关系,并绘制一条趋势线,根据这条趋势线,我们大致可以预测,有8个房间的房子,单价大概率在 38.15 附近。

根据对房价与周围居民收入的调研,可以得到以下的图表,图表中的横轴表示周围低收入居民的比例,纵轴表示房价:

可以看出,随着周围低收入居民比例的上升,房价呈下降趋势,并且根据这些点,我们同样可以画一条大致的趋势线。

通过对这些调研数据的整理,我们便可以使用房间数和低收入居民的比例对房价进行预测。

提高准确度

为了提高准确度,我们可以将房间数和低收入人群占比进行结合,来进行预测。但是,两个因素对房价的影响强度大小肯定是不一致的,所以,我们需要给两个因素不同的权重,最终可以表示为:

房价  =   a    房间数  +   b    低收入人群占比 房价 = a * 房间数 + b * 低收入人群占比

以上的等式只是表示他们的关系,这里的 a 和 b 分别代表两个因素的权重。这样,通过一个带权重的组合变量,就能够得到更准确的结果。

回归系数

以上分析结果中,最终得到的变量权重,也叫做回归系数。他表示某个变量对预测结果的影响方向和大小。由于多个变量之间的计量单位是不同的,计量单位的选择也会影响回归系数的大小。比如:一个表示重量的变量,使用克和千克两种单位表示时,回归系数会相差1000被,因此,我们在做分析之前,要先对变量的度量单位进行标准化。最简单的方法就是用一个百分位数来表示每个变量,这样得到的回归系数叫做标准回归系数,能够更客观地反映出那个变量对预测结果的影响更大。

比如:标准化后的 房价 = 2.1 * 房间数 + 5.5 * 低收入人群占比 就比没有标准化的 房价 = 2.1 * 房间数 + 550 * 低收入人群占比 更能反应两个变量对预测结果的影响关系。

相关系数

如果我们只使用一个变量来预测结果,那么这个变量的标准化回归系数也叫做相关系数。

相关系数一般会用一个 -1 到 1 之间的数字表示,它能够给我提供两个信息。以文章开头的例子中,低收入人群占比和房价之间的关系趋势线来说明:

图中数据点的集中程度,代表了预测变量对预测结果的影响强度,预测变量对结果的影响强度越大,这个数值就越接近于 1 或者 -1。

另一个信息就是,根据这些点所画出的趋势线的方向,上图中,预测变量和预测结果之间的变化方向是相反的,也就是低收入居民的比例越高,房价越低,则相关系数是负的,反之相关系数就是正的。

权重的失真

有时候,预测变量的选择会导致权重的失真,也就是,导致我们得到不正确的权重信息。

举个例子,比如,我们在预测房价的例子中,再增加一个「房屋面积」的预测变量。 得到如下关系:

房价  =   a    房间数  +   b    低收入人群占比  +   c    房屋面积 房价 = a * 房间数 + b * 低收入人群占比 + c * 房屋面积

在普遍情况下,房屋面积和房间数有非常强的正相关关系,也就是说,房间数更多的房屋,面积也会更大,因此,上述关系中,表示权重的 a 和 c 并不能准确表示房间数或者房屋面积对预测结果影响的真实强度。

所以,需要我们在分析之前,就把相关度比较高的变量进行排除或者合并。

其他

另外,我们通过回归分析所得到的相关关系,并不代表因果关系。

猜你喜欢

转载自juejin.im/post/7127653260017532935
今日推荐