Featured image of post 线性回归和梯度下降

线性回归和梯度下降

主要讲述了线性回归、梯度下降的原理和闭式解的推导和
 
tip
持续更新中……

闭式解

闭式解是线性回归模型参数的精确解,通过解析数学方法获得,而不需要进行迭代优化。下面是闭式解的公式和推导过程:

线性回归模型: 线性回归的模型假设目标变量(或因变量) y 和特征变量(或自变量) X 之间存在线性关系。它可以表示为:

$$y = X\theta + ε$$

其中,$y$ 是目标变量,$X$ 是特征矩阵,$\theta$ 是模型参数,$ε$ 是误差项。

损失函数: 通常,线性回归使用均方误差(Mean Squared Error, MSE)作为损失函数。$MSE$ 表示实际观测值与模型预测值之间的差异的平方的均值。$MSE$ 的公式为:

$$MSE = \frac{1}{n} * \sum(y_i - \hat{y}_i)^{2}$$

其中,$n$ 是样本数量,$y_i$ 是实际观测值,$\hat{y}_i$ 是模型的预测值。

最小化损失函数: 为了找到最优的模型参数 $\theta$,我们需要最小化损失函数 $MSE$。这可以通过计算损失函数对参数 $\theta$ 的偏导数,令偏导数等于零来实现。

$$\frac{\partial(MSE)}{\partial \theta} = 0$$

闭式解的推导: 推导闭式解涉及求解 $\frac{\partial(MSE)}{\partial \theta} = 0$ 的方程。这里简要描述一下推导的过程:

  1. 首先,我们将 $MSE$ 展开并对参数 $\theta$ 求偏导数。

  2. 我们将损失函数对参数 $\theta$ 的偏导数设置为零,以找到最小化 $MSE$ 的 $\theta$ 值。

  3. 进一步,通过代数运算,我们得到闭式解的公式:

    $$\theta = (X^TX)^{-1}X^Ty$$

其中,$X$ 是特征矩阵,$X^T$ 是 $X$ 的转置,$y$ 是目标变量。

闭式解的含义: 闭式解给出了一个可以直接计算最佳参数 θ 的公式,而无需迭代的优化过程。这是在假设线性关系的情况下,对线性回归模型的最佳参数进行求解的一种有效方法。然而,它的适用范围受限于数据集的大小和矩阵的可逆性。对于较大的数据集,计算矩阵的逆可能会变得昂贵,此时使用迭代方法如梯度下降可能更合适。

python代码示例

1
2
3
# 闭式解函数
def normal_equation(X, y):
    return (np.linalg.inv(X.T.dot(X))).dot(X.T).dot(y)
Licensed under CC BY-NC-SA 4.0
最后更新于 Nov 04, 2023 17:22 CST
总访问量  |  总访客数  
Built with Hugo   主题 StackJimmy 设计