首页 / 基础与评估 / 线性回归

线性回归:手动调参 vs 最小二乘

数据来自 Boston Housing 的 506 条真实记录:横轴是平均房间数 rm,纵轴是房价中位数 medv(千美元)。

房间数与房价

                
              
滑杆或数字框里调出来的值,会实时同步到上面第 ① 段。第 ② 段是同一个模型用 sklearn 的写法——这就是"玩"和"写"之间的那座桥。

模型与损失函数

一元线性回归假设输出是输入的线性组合:

最小二乘(OLS)要找的是让残差平方和最小的那一组参数:

闭式解

对 和 分别求偏导并令其为 0,可以直接解出来,不需要迭代:

三个误差指标

MAE 是线性惩罚,MSE 对大误差平方放大,所以 MSE 对离群点敏感得多。 的含义是"比直接用均值瞎猜好多少",1 为完美,0 等于瞎猜,负数说明还不如猜均值。

关于这份数据:Boston Housing 是教学经典数据集,但它本身带有已知的伦理争议; 这里我们只用「房间数 → 房价」这一对变量做回归演示,不涉及其中任何敏感变量。
1. 为什么最优的那条直线一定经过点 (x̄, ȳ)?
对 求偏导: , 整理得 。 代回模型,当 时 。 所以不管斜率怎么变,最优直线都绕着这个"重心"转。
2. 把斜率拉到极端,MSE 涨得比 MAE 快得多,为什么?
MSE 把残差平方后再平均,误差越大惩罚越重(二次增长);MAE 是线性惩罚。 所以 MSE 对离群点更敏感——这既是它的优点(强烈排斥大误差),也是它的缺点(一个异常值就能带偏整条线)。
3. 既然有闭式解,为什么实际工程里还大量用梯度下降?
闭式解要算 , 特征数为 时代价是 ,且矩阵可能奇异不可逆;样本量极大时也装不进内存。 梯度下降每次只用一批数据更新,能扩展到大规模数据,也能用在没有闭式解的模型(比如神经网络)上。