CS229 学习笔记:从线性回归到广义线性模型
这篇是我自学 Stanford CS229 的第一篇笔记。目标不是”会用 sklearn”,而是能独立推导核心算法——只停留在调用层面的话,遇到问题连该查什么都说不清。
损失函数与最大似然:同一枚硬币
线性回归里,我们最小化均方误差:
\[J(\theta) = \frac{1}{2m}\sum_{i=1}^{m}(h_\theta(x^{(i)}) - y^{(i)})^2\]| 换一个视角:假设 $y^{(i)} = \theta^T x^{(i)} + \epsilon^{(i)}$,且 $\epsilon \sim \mathcal{N}(0, \sigma^2)$,那么给定 $x$ 时 $y$ 服从高斯分布。最大化似然 $\prod_i p(y^{(i)} | x^{(i)};\theta)$ 取对数后,高斯分布的指数项恰好就是均方误差——二者只差一个与 $\theta$ 无关的常数项。 |
记忆钩子:最小二乘 = 高斯噪声假设下的最大似然。换一种噪声分布(如拉普拉斯),你就得到了 L1 损失。
正规方程 vs 梯度下降
- 正规方程:直接解 $\theta = (X^TX)^{-1}X^Ty$。一步到位,但求逆是 $O(n^3)$,特征数大时不可行;$X^TX$ 奇异时还要正则化。
- 梯度下降:迭代逼近,$\theta := \theta - \alpha \nabla_\theta J(\theta)$。适合特征很多、样本流式到达的场景;要调学习率。
我在笔记本上把正规方程从几何投影的角度推了一遍(最小二乘 = 把 $y$ 投影到 $X$ 的列空间),比死记公式稳得多。
指数族与 GLM:统一视角
伯努利分布、高斯分布、泊松分布……这些看似无关的分布,都可以写成指数族的一般形式:
\[p(y;\eta) = b(y)\exp(\eta^T T(y) - a(\eta))\]于是「给定假设分布 → 推导出对应的模型」变成了一条流水线:
-
假设 $y x$ 服从某个指数族分布 -
取 $h_\theta(x) = E[y x;\theta]$ - 推导出 $h_\theta(x) = g(\theta^T x)$,其中 $g$ 是联系函数
线性回归(高斯 → 恒等联系)、逻辑回归(伯努利 → logistic 函数)、Softmax 回归(多项式分布)全部是这条流水线的特例。理解了这一步,就理解了为什么这些模型长得”刚好”是那个样子。
下一步
接着学习生成式学习(GDA、朴素贝叶斯)——判别式与生成式的区别,以及它们在什么场景下各有用武之地。
Enjoy Reading This Article?
Here are some more articles you might like to read next: