1 线性回归
基本形式
线性模型一般形式
$$
f(\boldsymbol{x})=w_1 x_1+w_2 x_2+\cdots+w_d x_d+b
$$
\boldsymbol{x}=\left(x_1 ; x_2 ; \cdots, x_d\right) 是由属性描述的示例,其中 x_i 是 \boldsymbol{x} 在第 i 个属性上的取值。
向量形式
$$
f(\boldsymbol{x})=\boldsymbol{w}^{\top} \boldsymbol{x}+b
$$
\boldsymbol{w}=\left(w_1 ; w_2 ; \cdots, w_d\right) 是属性的权重。
线性回归
单元线性回归
目标:学得一个线性模型以尽可能准确地预测实值输出标记
属性处理:如果有序关系(如高、矮)则可以连续化为(\{1.0,0.0\});如果没有则可以化为 k 维独热向量,如(“西瓜”,“南瓜”)中的“西瓜”可以化为 (1,0)。
最小二乘法
最小化目标:均方误差
$$
\mathbb{E}(w,b)=\sum_{i=1}^m[y_i-(wx_i+b)]^2
$$
分别对 w,b 求导,令倒数梯度等于0,得到闭式解
$$
b=\frac{1}{m}\sum_i(y-wx_i)=\bar y-w\bar x
$$
w=\frac{\sum_i y_i(x_i-\bar x)}{\sum_ix_i^2-\frac{1}{m}(\sum_{i}x_i)^2}
这里 \mathbb{E}(w,b) 是关于 w,b 的凸函数,所以导数均为0时得到最优解。
多元线性回归
目标:
f\left(\boldsymbol{x}_{\boldsymbol{i}}\right)=\boldsymbol{w}^{\top} \boldsymbol{x}_i+b \text { 使得 } f\left(\boldsymbol{x}_i\right) \approx y_i
把 \boldsymbol{w} 和 b 合并成 \hat{\boldsymbol{w}}=(\boldsymbol{w};b),则数据集 D 需要拓展一个维度(恒为1)。
\begin{gathered}
\boldsymbol{X}=\left(\begin{array}{ccccc}
x_{11} & x_{12} & \cdots & x_{1 d} & 1 \\
x_{21} & x_{22} & \cdots & x_{2 d} & 1 \\
\vdots & \vdots & \ddots & \vdots & \vdots \\
x_{m 1} & x_{m 2} & \cdots & x_{m d} & 1
\end{array}\right)=\left(\begin{array}{cc}
\boldsymbol{x}_1^{\top} & 1 \\
\boldsymbol{x}_2^{\top} & 1 \\
\vdots & \vdots \\
\boldsymbol{x}_m^{\top} & 1
\end{array}\right) \\
\boldsymbol{y}=\left(y_1 ; y_2 ; \cdots ; y_m\right)
\end{gathered}
最小二乘法
最小化目标:
\mathbb{E}(\hat{\boldsymbol{w}})=||\boldsymbol{y}-\boldsymbol{X}\hat{\boldsymbol{w}}||_2^2=(\boldsymbol{y}-\boldsymbol{X}\hat{\boldsymbol{w}})^\top(\boldsymbol{y}-\boldsymbol{X}\hat{\boldsymbol{w}})
求 E(\widehat{w}) 关于变量 \widehat{w} 的导数得到
\nabla_{\widehat{w}} E(\widehat{\boldsymbol{w}})=2 \boldsymbol{X}^{\top}(\boldsymbol{X} \widehat{\boldsymbol{w}}-\boldsymbol{y})
令其为 0 可以得到 \hat w 最优解的闭式解,但是涉及到矩阵的逆要稍微做点讨论。
如果 X^TX 是满秩矩阵或者正定矩阵,则可以直接求逆。最优解是
此时学得的线性回归模型是
f(\hat{x_i})=\hat{x_i}^T\hat{w}^*
实际情况中往往不满足上述条件,就会解出很多个 \hat w 能使均方误差最小化。此时选择哪一个解要看学习算法的归纳偏好,常见的作法是引入正则化项。
引入正则化就相当于再从另一个角度考量这些解,又可以优化一些出去。
本文阅读量