顿搜
线性回归 (LR) 模型深入理解——机器学习经典回归算法
什么是回归
最终预测的不是一个类别,而是一个具体的数值
如果想了解回归,请查看机器学习 (ML) 及其基本概念——人工智能(AI)的理论基础线性回归
随机变量 $X = (x_1,x_2,...,x_m)$ 与随机变量 $Y = (y_1,y_2,...,y_m)$ 之间存在一种线性关系.
其中 $x$ 是 n 维向量, 即$x =(x^{(1)}, x^{(2)},..., x^{(n)})^{T}$ 是 n 维特征
$y$ 是真实值,参数 $\omega = (\theta^{(1)}, \theta^{(2)},..., \theta^{(n)})^{T}$ 是权重,令$x^{(0)} = 1, \theta^{(0)} = b$
则预测值
$$h_{\theta}(x) = \omega^{T} \cdot x + b =\theta^{(0)}x^{(0)}+ \theta^{(1)}x^{(1)} + \theta^{(2)}x^{(2)}+,,,+\theta^{(n)}x^{(n)} = \sum_{i = 0}^{n}\theta^{(i)}x^{(i)} = \theta^{T}x$$
误差推导
如果想了解损失函数,请查看损失函数与风险评估详细介绍——统计机器学习模型评价误差定义
真实值 $y$ 与预测值 $h_\theta(x)$ 的差 $\varepsilon$ 定义为误差
$$\varepsilon = y - h_\theta(x) = y - \theta^Tx \tag{1}$$
给定假设
误差 $\varepsilon$ 是独立同分布的,通常认为是服从均值为 0, 方差为 $\theta^2$ 的高斯分布,则
$$p(\varepsilon) = \frac{1}{\sqrt{2\pi} \sigma} exp \left (-\frac{\varepsilon^2}{2\sigma^2} \right )$$
显然,当 $\varepsilon$ 越接 0(均值),也及 $p(\varepsilon)$ 越大(高斯分布),误差就越小。将 (1) 式带入得
$$p(\varepsilon) = \frac{1}{\sqrt{2\pi} \sigma} exp \left (-\frac{(y - \theta^Tx )^2}{2\sigma^2} \right )$$
似然函数
$$L(\theta) = \prod_{i = 1}^{m}p(\varepsilon_{i}) = \prod_{i = 1}^{m} \frac{1}{\sqrt{2\pi} \sigma} exp \left (-\frac{(y_i - \theta^Tx_i )^2}{2\sigma^2} \right )$$
对数似然函数
$$\begin{aligned}\log L(\theta) &= \log \prod_{i = 1}^{m} \frac{1}{\sqrt{2\pi} \sigma} exp \left (-\frac{(y_i - \theta^Tx_i )^2}{2\sigma^2} \right ) \\\\ &= \sum_{i=1}^m \log \frac{1}{\sqrt{2\pi} \sigma} exp \left (-\frac{(y_i - \theta^Tx_i )^2}{2\sigma^2} \right ) \\\\ &= m \log \frac{1}{\sqrt{2\pi} \sigma} - \frac{1}{\sigma^2} \cdot \frac{1}{2} \sum_{i=i}^m(y_i - \theta^Tx_i )^2\end{aligned}$$
令$J(\theta) = \frac{1}{2} \sum_{i=i}^m(y_i - \theta^Tx_i )^2$, 要使 $p(\varepsilon)$ 越大,那么$J(\theta)$ 越小越好
对于矩阵来说,平方项相当于矩阵的转置乘上它自己
$$J(\theta) = \frac{1}{2} \sum_{i=i}^m(y_i - \theta^Tx_i )^2 = \frac{1}{2}(y -X\theta)^T (y-X\theta)$$
求导数
$$\begin{aligned} \frac{\partial J}{\partial \theta}J(\theta) &= \frac{\partial J}{\partial \theta} \left [ \frac{1}{2}(y-X\theta)^T (y-X\theta) \right ] \\\\ &= \frac{\partial J}{\partial \theta} \left [ \frac{1}{2}(y^T-\theta^TX^T) (y-X\theta) \right ] \\\\ &= \frac{\partial J}{\partial \theta} \left [ \frac{1}{2} \left( y^Ty - y^TX\theta -\theta^TX^Ty + \theta^T X^T X \theta \right) \right ] \\\\ &= \frac{1}{2} \left( -(y^T\theta)^T - X^Ty + 2X^TX\theta \right) \\\\ &= X^TX\theta - X^Ty \end{aligned}$$
求极值
令导数 $X^TX\theta - X^Ty = 0$ 得
$$ \theta = (X^TX)^{-1}X^Ty$$