Stanford CS229 Spring 2026 Lecture 4: Exponential Family, GLMs, and Softmax

Stanford CS229 Spring 2026 Lecture 4: Exponential Family, GLMs, and Softmax

指数族提供了一种统一的函数形式来捕捉许多常见的分布,使得无论具体分布如何,都可以使用相同的推导进行推理和学习。这很重要,因为它构成了广泛使用的模型的基础,如逻辑回归、softmax 多分类以及现代神经网络的最后一层。

指数族形式与动机

如果一个概率分布可以写成 exp(ada^T * t(y) - a(ada) + b(y)),则该分布属于指数族,其中 ada 是自然参数,t(y) 是充分统计量,a(ada) 是对数配分函数,b(y) 是不依赖于 ada 的基测度。这种形式确保了归一化由 a(ada) 处理,从而使分布之和为 1。

示例:Bernoulli 和 Gaussian

对于均值为 φ 的 Bernoulli 变量 y ∈ {0,1},充分统计量 t(y) 为 y,自然参数 ada 为 log(φ/(1−φ)),对数配分函数 a(ada) 为 log(1+exp(ada)),b(y) 为零。对于方差已知的 Gaussian 分布,t(y) 为 y,ada 为 μ/σ²,a(ada) 为 μ²/(2σ²) 加上一个常数,b(y) 包含二次项 −y²/(2σ²)。这两个示例都符合规定的形式。

关键性质:对数配分函数给出期望和方差

对数配分函数 a(ada) 对 ada 的一阶导数等于充分统计量 t(y) 的期望。二阶导数等于 t(y) 的方差。这适用于指数族中的任何分布,因此一旦知道了对数配分函数,就可以“免费”获得期望和方差,而无需重新推导矩。

广义线性模型 (GLM) 框架

在监督学习中,我们通过选择一个指数族分布来对 p(y|x;θ) 进行建模,其中自然参数 ada 被设置为等于 θ^T x。预测输出 h_θ(x) 是给定 x 时 t(y) 的期望,这可以通过对 a(ada) 求导获得。学习过程通过最大化数据的对数似然来进行,当充分统计量是单位函数时,这会导致梯度上升更新,可以写成 θ ← θ + (y − h_θ(x)) x。

Softmax 与多分类

当 y 是编码为 one-hot 向量的离散类别标签时,充分统计量是 y 本身,自然参数 ada 是每个类别 j 的分数向量 θ_j^T x。对数配分函数 a(ada) 为 log(∑_j exp(θ_j^T x))。由此产生的分布是 softmax:p(y=j|x) = exp(θ_j^T x) / ∑_k exp(θ_k^T x)。这正是神经网络中使用的多分类模型。

与逻辑回归的联系 (K=2 的情况)

对于两个类别,softmax 会简化为逻辑回归。因为概率之和必须为 1,所以只有一个分数是自由的;定义 θ = θ_1 − θ_2 可以将二分类 softmax 简化为 σ(θ^T x) = 1/(1+exp(−θ^T x)),即逻辑函数。

训练:极大似然、交叉熵、梯度下降

最大化 softmax 模型的对数似然会产生交叉熵损失:−∑_j y_j log(p_j),其中 y_j 是 one-hot 标签。在此损失上进行随机梯度下降,通过 θ ← θ + (y − p) x 来更新参数,其中 p 是 softmax 概率向量。这种更新规则符合增加正确类别分数并降低错误类别分数的直观想法。

标签平滑直觉

标签平滑(Label smoothing)用一个在错误类别上分配少量概率的分布来取代硬性的 one-hot 目标。这可以防止模型变得过度自信,起到正则化作用,并使训练对噪声标签更具鲁棒性。相同的交叉熵公式也适用于平滑后的目标。

实践注意事项:实现与数值稳定性

在实践中,库通过在指数化之前减去最大分数,以数值稳定的方式计算 softmax。底层的数学原理保持不变:对分数进行指数化,通过它们的总和进行归一化,并获得总和为 1 的概率分布。这些操作是大多数现代 AI 系统(包括逐个生成文本 token 的系统)的最后一层。

Sources