深度学习笔记:Softmax回归与线性回归的最大似然估计的理解
本文从概率统计角度揭示了机器学习中损失函数的本质联系:(1) 最小化交叉熵损失等价于最大似然估计,其梯度即为预测概率与真实标签的差值;(2) 交叉熵最小化也等同于最小化KL散度,衡量真实分布与预测分布的差异;(3) 在高斯噪声假设下,最小化均方误差等价于线性模型的最大似然估计。这些结论表明,常见的损失函数设计背后都有坚实的概率统计基础,不同视角(概率、优化、统计)最终导向相同的优化目标。
1. 最小化交叉熵损失 ≡\equiv≡ 对预测结果的最大似然估计 (MLE)
我们需要度量softmax回归的预测效果,考虑使用最大似然估计。
假设整个数据集 {X,YX,YX,Y} 具有nnn个样本,其中索引 iii 的样本由特征向量 x(i)\mathbf{x}^{(i)}x(i) 和独热标签向量 y(i)\mathbf{y}^{(i)}y(i) 组成,一共有 qqq 种分类标签。
我们可以将估计值与实际值进行比较:
P(Y∣X)=∏i=1nP(y(i)∣x(i)). P(\mathbf{Y} \mid \mathbf{X}) = \prod_{i=1}^n P(\mathbf{y}^{(i)} \mid \mathbf{x}^{(i)}). P(Y∣X)=i=1∏nP(y(i)∣x(i)).
根据最大似然估计,我们最大化P(Y∣X)P(\mathbf{Y} \mid \mathbf{X})P(Y∣X),相当于最小化负对数似然:
−logP(Y∣X)=∑i=1n−logP(y(i)∣x(i))=∑i=1nl(y(i),y^(i)) -\log P(\mathbf{Y} \mid \mathbf{X}) = \sum_{i=1}^n -\log P(\mathbf{y}^{(i)} \mid \mathbf{x}^{(i)}) = \sum_{i=1}^n l(\mathbf{y}^{(i)}, \hat{\mathbf{y}}^{(i)}) −logP(Y∣X)=i=1∑n−logP(y(i)∣x(i))=i=1∑nl(y(i),y^(i))
其中,对于任何一个标签y\mathbf{y}y和模型预测y^\hat{\mathbf{y}}y^,损失函数为:
l(y,y^)=−∑j=1qyjlogy^j. l(\mathbf{y}, \hat{\mathbf{y}}) = - \sum_{j=1}^q y_j \log \hat{y}_j. l(y,y^)=−j=1∑qyjlogy^j.
显然,该损失函数与交叉熵损失函数形式相同,故我们可以说
最小化交叉熵损失 ≡\equiv≡ 对预测结果的最大似然估计
2.交叉熵损失函数的导数就是softmax函数分配的概率与真实标签向量之间的差
我们继续上面的操作,
y^\hat{y}y^ 是通过softmax函数处理得到的预测,我们将其代入,得到:
l(y,y^)=−∑j=1qyjlogexp(oj)∑k=1qexp(ok)=∑j=1qyjlog∑k=1qexp(ok)−∑j=1qyjoj=log∑k=1qexp(ok)−∑j=1qyjoj \begin{aligned} l(\mathbf{y}, \hat{\mathbf{y}}) &= - \sum_{j=1}^q y_j \log \frac{\exp(o_j)}{\sum_{k=1}^q \exp(o_k)} \\ &= \sum_{j=1}^q y_j \log \sum_{k=1}^q \exp(o_k) - \sum_{j=1}^q y_j o_j \\ &= \log \sum_{k=1}^q \exp(o_k) - \sum_{j=1}^q y_j o_j \end{aligned} l(y,y^)=−j=1∑qyjlog∑k=1qexp(ok)exp(oj)=j=1∑qyjlogk=1∑qexp(ok)−j=1∑qyjoj=logk=1∑qexp(ok)−j=1∑qyjoj
- 运算细节:这里最后结果的第一项,由于对于任何一个 jjj , log∑exp(ok)\log\sum{exp(o_{k})}log∑exp(ok) 的值都不变,于是我们将其提出,发现 ∑yj\sum{y_{j}}∑yj 的值恒为1,于是将其省略,得到最终结果。
考虑求相对于任何未规范化的预测 ojo_joj 的导数,第一项是log-sum-exp,其导数是对应的 softmax,我们得到:
∂ojl(y,y^)=exp(oj)∑k=1qexp(ok)−yj=softmax(o)j−yj \partial_{o_j} l(\mathbf{y}, \hat{\mathbf{y}})=\frac{\exp(o_j)}{\sum_{k=1}^q \exp(o_k)} - y_j =\mathrm{softmax}(\mathbf{o})_j - y_j ∂ojl(y,y^)=∑k=1qexp(ok)exp(oj)−yj=softmax(o)j−yj
这说明,对于每个类别 jjj
softmax + 交叉熵的梯度 等于模型预测的概率 softmax(o)j\mathrm{softmax}(\mathbf{o})_jsoftmax(o)j 减去真实标签的 yjy_jyj。
这不是巧合,在任何指数族分布模型,对数似然的梯度正是由此得出。这使得梯度计算在实践中容易了许多。
3. 最小化交叉熵损失 ≡\equiv≡ 最小化真实分布与预测分布的 KL 散度
设真实分布为 P=(p1,p2,…,pq)P = (p_1, p_2, \dots, p_q)P=(p1,p2,…,pq),
预测分布为 Q=(q1,q2,…,qq)Q = (q_1, q_2, \dots, q_q)Q=(q1,q2,…,qq)。
1. 交叉熵(Cross Entropy)
衡量用 (Q) 表示 (P) 所需的平均编码长度:
H(P,Q)=−∑j=1qpjlogqj H(P, Q) = -\sum_{j=1}^q p_j \log q_j H(P,Q)=−j=1∑qpjlogqj
2. KL 散度(Kullback-Leibler Divergence)
衡量两个概率分布的差异:
DKL(P ∥ Q)=∑j=1qpjlogpjqj D_{\mathrm{KL}}(P \,\|\, Q) = \sum_{j=1}^q p_j \log \frac{p_j}{q_j} DKL(P∥Q)=j=1∑qpjlogqjpj
KL 散度可分解为:
DKL(P ∥ Q)=−∑jpjlogqj⏟H(P,Q)−(−∑jpjlogpj)⏟H(P) D_{\mathrm{KL}}(P \,\|\, Q) = \underbrace{-\sum_j p_j \log q_j}_{H(P, Q)}- \underbrace{(-\sum_j p_j \log p_j)}_{H(P)} DKL(P∥Q)=H(P,Q)
−j∑pjlogqj−H(P)
(−j∑pjlogpj)
即:
DKL(P ∥ Q)=H(P,Q)−H(P) D_{\mathrm{KL}}(P \,\|\, Q) = H(P, Q) - H(P) DKL(P∥Q)=H(P,Q)−H(P)
其中:
- H(P,Q)H(P, Q)H(P,Q):交叉熵
- H(P)H(P)H(P):真实分布熵(常数)
换句话说,最小化交叉熵损失 ≡\equiv≡ 最小化真实分布与预测分布之间的 KL 散度
4. 回顾:在高斯噪声假设下,最小化均方误差 ≡\equiv≡ 对线性模型的极大似然估计
假设数据集 {(x(i),y(i))}i=1n\{(\mathbf{x}^{(i)}, y^{(i)})\}_{i=1}^n{(x(i),y(i))}i=1n 满足如下线性模型:
y(i)=w⊤x(i)+ϵ(i),ϵ(i)∼N(0,σ2), y^{(i)} = \mathbf{w}^\top \mathbf{x}^{(i)} + \epsilon^{(i)}, \quad \epsilon^{(i)} \sim \mathcal{N}(0, \sigma^2), y(i)=w⊤x(i)+ϵ(i),ϵ(i)∼N(0,σ2),
其中噪声 ϵ(i)\epsilon^{(i)}ϵ(i) 服从均值为 0、方差为 σ2\sigma^2σ2 的高斯分布。
因为各样本独立同分布,有似然函数:
P(Y∣X,w)=∏i=1nP(y(i)∣x(i),w)=∏i=1n12πσ2exp (−(y(i)−w⊤x(i))22σ2) P(\mathbf{Y} \mid \mathbf{X}, \mathbf{w}) = \prod_{i=1}^n P(y^{(i)} \mid \mathbf{x}^{(i)}, \mathbf{w}) = \prod_{i=1}^n \frac{1}{\sqrt{2\pi\sigma^2}} \exp\!\left( -\frac{(y^{(i)} - \mathbf{w}^\top \mathbf{x}^{(i)})^2}{2\sigma^2} \right) P(Y∣X,w)=i=1∏nP(y(i)∣x(i),w)=i=1∏n2πσ21exp(−2σ2(y(i)−w⊤x(i))2)
取对数并去掉常数项:
logP(Y∣X,w)=−n2log(2πσ2)−12σ2∑i=1n(y(i)−w⊤x(i))2 \log P(\mathbf{Y} \mid \mathbf{X}, \mathbf{w}) = -\frac{n}{2}\log(2\pi\sigma^2) -\frac{1}{2\sigma^2}\sum_{i=1}^n (y^{(i)} - \mathbf{w}^\top \mathbf{x}^{(i)})^2 logP(Y∣X,w)=−2nlog(2πσ2)−2σ21i=1∑n(y(i)−w⊤x(i))2
由于前面的第一项与 w\mathbf{w}w 无关,最大化似然等价于最小化第二项:
maxwlogP(Y∣X,w) ⇔ minw∑i=1n(y(i)−w⊤x(i))2 \begin{aligned} \max_{\mathbf{w}} \log P(\mathbf{Y} \mid \mathbf{X}, \mathbf{w}) &\;\Leftrightarrow\; \min_{\mathbf{w}} \sum_{i=1}^n (y^{(i)} - \mathbf{w}^\top \mathbf{x}^{(i)})^2 \end{aligned} wmaxlogP(Y∣X,w)⇔wmini=1∑n(y(i)−w⊤x(i))2
在高斯噪声假设下,线性回归的最大似然估计 ≡\equiv≡ 最小化均方误差(MSE)损失
| 角度 | 含义 |
|---|---|
| 概率视角 | 高斯噪声使似然函数呈 e−(y−y^)2e^{-(y-\hat{y})^2}e−(y−y^)2 形式,取对数后自然得到平方误差项。 |
| 优化视角 | 平方误差对大偏差样本惩罚更强,符合高斯分布尾部快速衰减的特性。 |
| 统计视角 | 在高斯噪声假设下,最大似然估计(MLE)与最小二乘估计(OLS)完全等价。 |
(由chatgpt5辅助整理)
更多推荐


所有评论(0)