一、线性回归

1.1 问题

  1. 给定数据集 一、线性回归 - 图1,其中 一、线性回归 - 图2

    线性回归问题试图学习模型 :一、线性回归 - 图3

    该问题也被称作多元线性回归(multivariate linear regression)

  2. 对于每个 一、线性回归 - 图4,其预测值为 一、线性回归 - 图5。采用平方损失函数,则在训练集 一、线性回归 - 图6 上,模型的损失函数为:

    一、线性回归 - 图7

    优化目标是损失函数最小化,即:一、线性回归 - 图8

1.2 求解

  1. 可以用梯度下降法来求解上述最优化问题的数值解,但是实际上该最优化问题可以通过最小二乘法获得解析解。

  2. 令:

    一、线性回归 - 图9

    则有:

    一、线性回归 - 图10

    令:

    一、线性回归 - 图11

    则:

    一、线性回归 - 图12

  3. 一、线性回归 - 图13 。为求得它的极小值,可以通过对 一、线性回归 - 图14 求导,并令导数为零,从而得到解析解:

    一、线性回归 - 图15

    • 一、线性回归 - 图16 为满秩矩阵时,可得:一、线性回归 - 图17

      其中 一、线性回归 - 图18一、线性回归 - 图19 的逆矩阵。

      最终学得的多元线性回归模型为:一、线性回归 - 图20

    • 一、线性回归 - 图21 不是满秩矩阵。此时存在多个解析解,他们都能使得均方误差最小化。究竟选择哪个解作为输出,由算法的偏好决定。

      比如 一、线性回归 - 图22 (样本数量小于特征种类的数量),根据 一、线性回归 - 图23 的秩小于等于 一、线性回归 - 图24 中的最小值,即小于等于 一、线性回归 - 图25(矩阵的秩一定小于等于矩阵的行数和列数); 而矩阵 一、线性回归 - 图26一、线性回归 - 图27 大小的,它的秩一定小于等于 一、线性回归 - 图28,因此不是满秩矩阵。

      常见的做法是引入正则化项:

      • 一、线性回归 - 图29 正则化:此时称作Lasso Regression

        一、线性回归 - 图30

        一、线性回归 - 图31 为正则化系数,调整正则化项与训练误差的比例。

      • 一、线性回归 - 图32 正则化:此时称作Ridge Regression

        一、线性回归 - 图33

        一、线性回归 - 图34 为正则化系数,调整正则化项与训练误差的比例。

      • 同时包含 一、线性回归 - 图35 正则化:此时称作Elastic Net

        一、线性回归 - 图36

        其中:

        • 一、线性回归 - 图37 为正则化系数,调整正则化项与训练误差的比例。
        • 一、线性回归 - 图38 为比例系数,调整 一、线性回归 - 图39 正则化与 一、线性回归 - 图40 正则化的比例。

1.3 算法

  1. 多元线性回归算法:

    • 输入:

      • 数据集 一、线性回归 - 图41
      • 一、线性回归 - 图42 正则化项系数 一、线性回归 - 图43
    • 输出模型:一、线性回归 - 图44

    • 算法步骤:

      令:

      一、线性回归 - 图45

      求解:

      一、线性回归 - 图46

      最终学得模型:一、线性回归 - 图47