学习华校专老师的笔记内容,记录线性模型相关知识。
基础模型
- 给定样本 \overrightarrow{\mathbf{x}} , 其中 \overrightarrow{\mathbf{x}}=\left(x_{1}, x_{2}, \cdots, x_{n}\right)^{T}, x_{i} 为样本 \overrightarrow{\mathbf{x}} 的第 i 个特征, 特征有 n 种。 线性模型( linear model ) 的形式为: f(\overrightarrow{\mathbf{x}})=\overrightarrow{\mathbf{w}} \cdot \overrightarrow{\mathbf{x}}+b 。
- 其中 \overrightarrow{\mathrm{w}}=\left(w_{1}, w_{2}, \cdots, w_{n}\right)^{T} 为每个特征对应的权重生成的权重向量。
优点
- 模型简单。
- 可解释性强,权重向量\overrightarrow{\mathbf{w}} 直观地表达了各个特征在预测中的重要性。
- 很多功能强大的非线性模型(
nolinear model) 可以在线性模型的基础上通过引入层级结构或者非线性映射得到。
线性回归
问题定义
- 给定数据集 \mathbb{D}=\left\{\left(\overrightarrow{\mathbf{x}}_{1}, \tilde{y}_{1}\right),\left(\overrightarrow{\mathbf{x}}_{2}, \tilde{y}_{2}\right), \cdots,\left(\overrightarrow{\mathbf{x}}_{N}, \tilde{y}_{N}\right)\right\} , 其中 \overrightarrow{\mathbf{x}}_{i}=\left(x_{i, 1}, x_{i, 2}, \cdots, x_{i, n}\right)^{T} \in \mathcal{X} \subseteq \mathbb{R}^{n}, \tilde{y}_{i} \in \mathcal{Y} \subseteq \mathbb{R}
- 线性回归问题试图学习模型 : f(\overrightarrow{\mathbf{x}})=\overrightarrow{\mathbf{w}} \cdot \overrightarrow{\mathbf{x}}+b
该问题也被称作多元线性回归(multivariate linear regression)
- 对于每个 \overrightarrow{ \mathbf{x}} _ {i}, 其预测值为 \hat{y}_{i}=f\left(\overrightarrow{\mathbf{x}}_{i}\right)=\overrightarrow{\mathbf{w}} \cdot \overrightarrow{\mathbf{x}} _ {i}+b 采用平方损失函数, 则在训练集 \mathbb{D}上, 模型的损失函数为:
优化目标是损失函数最小化,即:
问题求解
- 可以用梯度下降法来求解上述最优化问题的数值解,但是实际上该最优化问题可以通过最小二乘法获得解析解。
- 令:
\overrightarrow{\mathbf{w}}^{*}=\arg \min _{\overrightarrow{\tilde{w}}}(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\mathbf{w}})^{T}(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\tilde{w}})- 令 E_{\overrightarrow{\mathbf{w}}}=(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\tilde{w}})^{T}(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\tilde{\mathbf{w}}}) 。为求得它的极小值,可以通过对 \overrightarrow{\tilde{\mathbf{w}}} 求导, 并令导数为零, 从而得到解析解:
\frac{\partial E_{\overrightarrow{\mathbf{w}}}}{\partial \overrightarrow{\tilde{\mathbf{w}}}}=2 \mathbf{X}^{T}(\mathbf{X} \overrightarrow{\tilde{\mathbf{w}}}-\overrightarrow{\mathbf{y}})=\overrightarrow{\mathbf{0}} \Longrightarrow \mathbf{X}^{T} \mathbf{X} \overrightarrow{\tilde{\mathbf{w}}}=\mathbf{X}^{T} \overrightarrow{\mathbf{y}}矩阵满秩
- 当 \mathbf{X}^{T} \mathbf{X} 的为满秩矩阵时,可得:
- 其中 \left(\mathbf{X}^{T} \mathbf{X}\right)^{-1} 为 \mathbf{X}^{T} \mathbf{X} 的逆矩阵。
- 最终学得的多元线性回归模型为:
矩阵非满秩
- 当 \mathbf{X}^{T} \mathbf{X} 不是满秩矩阵。此时存在多个解析解,他们都能使得均方误差最小化。究竟选择哪个解作为输出,由算法的偏好决定。
比如 N<n \mathbf{X} 的秩小于等于 N, n 中的最小值, 即小于等 于 N (矩阵的秩一定小于等于矩阵的行数和列数);而矩阵 \mathbf{X}^{T} \mathbf{X} 是 n \times n 大小的, 它的秩一定小 于等于 N , 因此不是满秩矩阵。
常见的做法是引入正则化项:
- L_{1} 正则化:此时称作 Lasso Regression :
\lambda>0
- L_{2} 正则化:此时称作 Ridge Regression :
- 同时包含 L_{1} , L_{1}正则化:此时称作Elastic Net:
\lambda>0
1 \geq \rho \geq 0 为比例系数, 调整 L_{1} 正则化与 L_{2} 正则化的比例。
算法
多元线性回归算法:
- 输入:
- 数据集 \mathbb{D}=\left\{\left(\overrightarrow{\mathbf{x}}_{1}, \tilde{y}_{1}\right),\left(\overrightarrow{\mathbf{x}}_{2}, \tilde{y}_{2}\right), \cdots,\left(\overrightarrow{\mathbf{x}}_{N}, \tilde{y}_{N}\right)\right\}, \overrightarrow{\mathbf{x}}_{i} \in \mathcal{X} \subseteq \mathbb{R}^{n}, y_{i} \in \mathcal{Y} \subseteq \mathbb{R} L_{2} 正则化项系数 \lambda>0 L_{2} 正则化项系数 \lambda>0
- 输出模型:
- - f(\overrightarrow{\mathbf{x}})=\overrightarrow{\mathbf{w}}^{*} \cdot \overrightarrow{\mathbf{x}}+b^{*}
- 求解:
令.
\overrightarrow{\tilde{\mathbf{w}}}^{*}=\arg \min _{\overrightarrow{\vec{w}}}\left[(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\mathbf{w}})^{T}(\overrightarrow{\mathbf{y}}-\mathbf{X} \overrightarrow{\tilde{w}})+\lambda\|\mid \overrightarrow{\mathbf{w}}\|_{2}\right] 最终学得模型:
参考资料