正则化(1):通俗易懂的岭回归

2020-09-17 09:58:23 浏览数 (1)

引言:在学习本章节的的内容之前,如果你不太熟悉模型的方差与偏差(偏差与方差(Bias and Variance)),此外还有简单线性模型、多元线性模型(线性回归的R实现与结果解读)、广义线性模型实现t检验和方差分析(线性回归的妙处:t检验与方差分析),以及设计矩阵(设计矩阵(design matrices))。这些内容在之前的章节中已有对应推送,可参考学习。如果你已经非常熟悉这些知识了,就可以直接开始本章节的岭回归学习啦~

如果你在这之前有听说正则化(Regularization),那么你应该知道其在建模中的重要性。正则化是一个大类,包括L1正则化和L2正则化,L1正则化又称为lasso回归(Lasso Regression),L2正则化又称为岭回归(Ridge Regression)。L1正则化和L2正则化合用,又被称为Elastic网络回归(Elastic Net Regression)。

今天我们首先学习L2正则化,也就是岭回归。

内容概要

  • 岭回归的主要思想
  • 岭回归的作用及如何发挥作用
  • 岭回归的多种使用情形
  • 岭回归可以解决样本较少的难题

1.岭回归与线性模型

例如在如下数据中,代表许多只小鼠的体重和体积数据,横坐标对应小鼠的体重,纵坐标对应同一小鼠的体积。

1.1 单独使用线性模型。

  • 单独使用线性模型。通过观察可知,小鼠的体积和对应的体重数据趋近于围绕一条直线分布,故可基于最小二乘法对其拟合线性回归模型(Size = 0.9 0.75 x Weight)。根据拟合的线性模型,我们可以预测任意体重小鼠的体积。

如果样本越多,通过最小二乘法得到的线性回归模型的预测准确性越高,即该模型能够更加准确的反应小鼠体重与小鼠体积的关系。

如果仅有两个样本呢?因为两点决定一条直线,故基于两个样本的线性回归模型(size=0.4 1.3 x weight)的残差平方和等于0,但是其在新数据集中的预测性能将会非常差。

在机器学习中,将用于线性模型拟合的这两个样本当做训练样本(红色圆圈),而其他的样本当做测试样本(绿色圆圈)。

在训练样本中,两个样本得出的回归模型(红色直线)的残差平方和等于0,也可以说其偏差(bias)为0;但是这训练样本得出的模型在测试样本中的残差平方和非常大。因为数据集的不同,同一线性模型的预测性能有非常大的差异,故可以说该模型有很大的方差(variance)。

注意:在机器学习中提及的方差与方差分析中的方差,二者不同。

1.2 岭回归与线性模型

  • 岭回归原理的概览:在机器学习领域,某个模型在训练数据中表现良好而在测试数据中表现糟糕的现象,称为过拟合(over fit)。岭回归的作用就是缓冲这种过拟合现象,具体而言就是在拟合模型(红色直线)中引入少量偏差(bias)形成新拟合模型(蓝色直线),并以此为代价减少拟合模型的方差(variance),使新拟合模型在测试数据中的表现更好。
  • 岭回归的作用原理解析:
    • 直线模型:最小二乘法决定直线模型的参数,最佳拟合模型满足其残差平方和最小。参考往期推文:最小二乘法与线性回归。
  • 岭回归 直线模型:岭回归通过给原始模型增加惩罚实现,其拟合的最佳模型满足(直线的残差平方和 λ x 直线斜率的平方)最小。其中λ是希腊字母,对应读作lambda(λ)。在以下公式中,直线斜率的平方为惩罚(penalty),而λ则确定惩罚的大小。λ的取值范围为(0, ∞),λ为0时,该惩罚项不存在,λ越大对应的惩罚也越大。
  • 岭回归运用的示例:
    • 在前面提及的仅含两个训练样本中,使用最小二乘法计算最佳拟合直线,其残差平方和为0。接着将最小二乘法拟合的直线参数带入岭回归公式中,令λ=1,计算得出该拟合直线在岭回归中的值为1.69。
    • 岭回归得出的最佳拟合直线(size = 0.9 0.8 x weight),令λ=1,其对应的残差平方和与惩罚项的总和最小(0.32 0.12 1 * 0.82 = 0.74)。因此,如果想要拟合直线的残差平方和与岭回归惩罚项总和最小(0.74),我们应该选择岭回归直线模型(Size = 0.9 0.8 * Weight)。
      • 注:此处得到的岭回归模型,是基于交叉验证得出λ,从而进一步拟合出岭回归模型。这将在后续的推文中继续学习。
  • 岭回归减少模型在不同数据集间的方差。在最小二乘法拟合模型中引入岭回归惩罚项后,岭回归模型有少量的偏差(bias),但是其确减少了该模型的方差(variance)。因为机器学习中,我们更加关注模型在不同数据集中表现情况,故岭回归模型减少方差的性质更重要。
  • 岭回归的λ值:
    • λ与斜率:在基于小鼠体重与小鼠体积数据的直线模型中,如果直线的斜率较大,小鼠体积随小鼠体重的增加而出现较大的变化;如果直线的斜率较小,小鼠体积随小鼠体重的变化仅出现非常小的变化。
    • 岭回归中的惩罚项使岭回归模型的斜率小于实际最小二乘法直线模型的斜率,使得小鼠体积随小鼠体重的变化减小,故岭回归模型对小鼠体重变化的敏感度降低。
  • 随着λ的增大,小鼠体重对小鼠体积的变化越来越不敏感。也就是说,随着λ逐渐增加,小鼠体重随其体积的增加而增加(增加量逐渐减少)。λ的取值(0, ∞):
    • 当λ=0时,岭回归惩罚项=0,岭回归与最小二乘法回归的结果一致。
    • 当λ>0时,λ越大,斜率越小;λ趋近于无穷,斜率趋近于0(但永不为0)。
  • 如何确定λ值:将不同的λ值带入岭回归,并在数据集中使用交叉验证(通常为十折交叉验证),最后选取方差(variance)最小时对应的λ值。

2. 岭回归的使用场景

  • 在连续变量的线性回归中:如上讨论,岭回归模型满足(残差平方和 岭回归惩罚项)之和最小。
  • 在分类变量的线性模型中:岭回归模型满足(残差平方和 岭回归惩罚项)之和最小,如下。λ越大,不同饮食造成的差异越小。使用岭回归的主要作用是当样本量较小时,线性模型在不同数据集中的表现方差很大,岭回归因引入少量偏差从而降低方差。
  • 在logistic回归中:岭回归模型满足(似然值之和 惩罚项)总和最小。
  • 在较复杂的模型中:岭回归模型中的惩罚项包括除截距外的所有参数,如下图所示。岭回归模型满足(残差平方和 岭回归惩罚项)之和最小。

岭回归在样本数少于参数数量时的重要作用

最小二乘法对样本数量的严格要求:基于最小二乘法拟合模型,仅有一个数据时,基于该样本可拟合无数条直线,故不能确定一条最佳直线,需要至少两个样本才能确定一条直线(含有两个参数的模型,其中一个参数为截距)。

同理,至少需要3个样本确定一个平面(含有3个参数的模型),至少需要4个样本确定含有4个参数的模型......至少需要10001个样本确定一个含有10001个参数的模型。例如基于10001个基因的表达预测小鼠的体重,难道我们需要测定10001只小鼠的10001个基因表达吗?其实只有500只小鼠也是可以创建目标模型。

当仅有500个小鼠的测定数据时,可以通过岭回归拟合含有10001个基因参数的模型。需要通过交叉验证法确定最优惩罚项的系数λ,从而使得(拟合模型的残差平方和 惩罚项)最小。

3. 总结

岭回归通过加入惩罚项(惩罚系数 x 不包含截距的其他模型参数),解决样本个数少引起的模型的过拟合现象,从而增大模型的预测效能。至于如何通过交叉验证法实现岭回归,明确最佳λ系数,我们将在后续的推文中详细介绍。

0 人点赞