单变量线性回归

发布时间 2024-01-08 12:05:07作者: 漫舞八月(Mount256)

线性回归模型(linear regression model)

  • 线性回归模型:

\[f_{w,b}(x) = wx + b \]

其中,\(w\) 为权重(weight),\(b\) 为偏置(bias)

  • 预测值(通常加一个帽子符号):

\[\hat{y}^{(i)} = f_{w,b}(x^{(i)}) = wx^{(i)} + b \]

损失/代价函数(cost function)

  • 一个训练样本:\((x^{(i)}, y^{(i)})\)
  • 训练样本总数 = \(m\)
  • 损失/代价函数是一个二次函数,在图像上是一个抛物线的形状。

\[\begin{aligned} J(w, b) &= \frac{1}{2m} \sum^{m}_{i=1} [f_{w,b}(x^{(i)}) - y^{(i)}]^2 \\ &= \frac{1}{2m} \sum^{m}_{i=1} [wx^{(i)} + b - y^{(i)}]^2 \end{aligned} \]

  • 为什么需要乘以 1/2?因为对平方项求偏导后会出现系数 2,是为了约去这个系数。

梯度下降算法(gradient descent algorithm)

  • \(\alpha\):学习率(learning rate),用于控制梯度下降时的步长,以抵达损失函数的极小值处(不是最小值!)。若 \(\alpha\) 太小,梯度下降太慢;若 \(\alpha\) 太大,下降过程可能无法收敛。
  • 梯度下降算法:

\[\begin{aligned} repeat \{ \\ & tmp\_w = w - \alpha \frac{\partial J(w, b)}{w} \\ & tmp\_b = b - \alpha \frac{\partial J(w, b)}{b} \\ & w = tmp\_w \\ & b = tmp\_b \\ \} until \ & converge \end{aligned} \]

其中,偏导数为

\[\begin{aligned} & \frac{\partial J(w, b)}{w} = \frac{1}{m} \sum^{m}_{i=1} [f_{w,b}(x^{(i)}) - y^{(i)}] x^{(i)} \\ & \frac{\partial J(w, b)}{b} = \frac{1}{m} \sum^{m}_{i=1} [f_{w,b}(x^{(i)}) - y^{(i)}] \end{aligned} \]

参数(parameter)和超参数(hyperparameter)

  • 超参数(hyperparameter):训练之前人为设置的任何数量都是超参数,例如学习率 \(\alpha\)
  • 参数(parameter):模型在训练过程中创建或修改的任何数量都是参数,例如 \(w, b\)