本文是《Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow》一书的一篇小笔记,旨在注释一下equation 4-4与equation 4-6的推导。
线性回归算法旨在使得模型在训练集上的均方差误差最小。假设训练集有m个样本,每个样本有n个特征。线性回归模型的训练算法就是要使得下式最小:
其中,代表第i个样本的第j个特征,代表第j个特征的参数,代表第i个样本的值。注意这里j是从0到n。0代表的是bias term,它对应的特征值永远是1。如果把特征与参数都看成是列向量,这个式子就可以写成书本equation 4-3的样子:
其中,表示转置矩阵。写成这种形式只是为了和书本对得上。事实上,写成下面的形式才真正有助于推导书本上的4-4式:
上式我们采取一个规则:凡乘积项中重复的下标表示对此下标要求和。比如表示要对j求和。另外,我们这里的含义已经有所变化。在表示单个样本时,是列向量,也就是每一个样本就是一列。但我们这里把全部样本现在一个矩阵中,此时,每一行代表一个样本。这样做是为了与书本保持一致。
现在,我们将上式对求导:
这实质上就是4-5式。现在我们要把它写成矩阵形式。为了写成矩阵形式,我们一定要把求和的下标“挨在一起”,也就是前一个矩阵的列下标对应后一个矩阵的行下标。因此:
于是:
注意到这个是行向量,而我们最终需要的是列向量,因此要做个倒置:
这就是书本4-6式。现在,为了得到最优解,我们要求上式为零。于是:
这就是线性回归算法的理论解,也是书本4-4式。