回归与分类是同一个问题

同样的 wx + b,接恒等映射就是回归,接 sigmoid 就是分类。输入输出维度不同、损失函数不同——但梯度形式完全一致。

线性基底:wx + b

给定特征向量

$$\mathbf{x} \in \mathbb{R}^d$$

,线性模型的核心是:

$$z = \mathbf{w}^\top \mathbf{x} + b$$

参数

$$\mathbf{w}$$

决定了每个特征的权重方向,

$$b$$

是偏置。这个基底在回归和分类中完全共享——不管最后输出什么,模型的第一层计算是一样的。

回归:恒等映射 + MSE

回归任务输出连续实数

$$y \in \mathbb{R}$$

。线性回归直接使用 z 作为预测值:

$$\hat{y} = z = \mathbf{w}^\top \mathbf{x} + b$$

损失函数采用均方误差(Mean Squared Error, MSE):

$$\mathcal{L}_{\text{MSE}} = \frac{1}{2}(\hat{y} - y)^2$$

对参数

$$\mathbf{w}$$

求梯度:

$$\frac{\partial \mathcal{L}}{\partial \mathbf{w}} = (\hat{y} - y) \cdot \mathbf{x}$$

梯度方向 = 预测减真实 × 输入向量

分类:sigmoid 映射 + CrossEntropy

二分类任务输出离散标签

$$y \in \{0, 1\}$$

。线性基底 z 经过 sigmoid 函数压缩到 (0, 1) 区间:

$$p = \sigma(z) = \frac{1}{1 + e^{-z}}$$

其中

$$p$$

解释为样本属于正类的概率。损失函数采用交叉熵(CrossEntropy):

$$\mathcal{L}_{\text{CE}} = -\big[y \log p + (1-y)\log(1-p)\big]$$

对参数

$$\mathbf{w}$$

求梯度。sigmoid 的导数是

$$p(1-p)$$

$$\frac{\partial p}{\partial z} = p(1-p)$$

链式法则展开:

$$\frac{\partial \mathcal{L}}{\partial \mathbf{w}} = \frac{\partial \mathcal{L}}{\partial p} \cdot \frac{\partial p}{\partial z} \cdot \frac{\partial z}{\partial \mathbf{w}}$$$$= \left[-\frac{y}{p} + \frac{1-y}{1-p}\right] \cdot p(1-p) \cdot \mathbf{x}$$$$= \bigg[-(1-p)y + p(1-y)\bigg] \cdot \mathbf{x}$$$$= (p - y) \cdot \mathbf{x}$$

关键发现:梯度形式统一

回归 (MSE) 分类 (CE + sigmoid)
输出映射 恒等: $$\hat{y} = z$$ sigmoid: $$p = \sigma(z)$$
损失函数 $$(\hat{y}-y)^2/2$$ $$-y\log p - (1-y)\log(1-p)$$
参数量 $$d+1$$ $$d+1$$
梯度形状 $$(\hat{y}-y) \cdot \mathbf{x}$$ $$(p-y) \cdot \mathbf{x}$$
梯度含义 预测 − 真实 预测 − 真实

梯度完全一致:(预测值 − 真实值)× 输入向量。MSE 的

$$\hat{y} - y​$$

和 CE+sigmoid 的

$$p - y$$

是同一个数学结构——sigmoid 的导数

$$p(1-p)$$

恰好约掉了 CE 分母中的

$$p$$

$$1-p$$

这不是巧合。这是**广义线性模型(GLM)**框架的必然:

  • 系统组件(线性预测器):$$\eta = \mathbf{w}^\top \mathbf{x}$$
  • 链接函数:回归用恒等 $$g(\mu) = \mu$$,二分类用 logit $$g(p) = \log\frac{p}{1-p}$$
  • 误差分布:回归假设高斯,分类假设伯努利

不同链接函数 + 不同误差分布 → 不同的损失函数。但梯度形状由 (预测−真实)×输入 统一。

多分类扩展:softmax

从二分类推广到

$$k$$

类分类,输出从单值

$$p$$

变成向量

$$\mathbf{p} \in \mathbb{R}^k$$

$$p_i = \text{softmax}(\mathbf{z})_i = \frac{e^{z_i}}{\sum_{j=1}^k e^{z_j}}$$

交叉熵损失:

$$\mathcal{L} = -\sum_{i=1}^k y_i \log p_i$$

$$z_i$$

求梯度:

$$\frac{\partial \mathcal{L}}{\partial z_i} = p_i - y_i$$

和二元分类完全一致——(softmax 概率 − one-hot 真实标签)。

从西瓜书到 WMT

NMT 的翻译训练就是这个对称结构的最大规模实例:

分类任务: 56K 词选一个
模型基底: Attention/Transformer 的 hidden state → Linear(56K)
输出映射: softmax
损失函数: CrossEntropy(label_smoothing=0.1)
梯度形状: (p - y_onehot) × hidden_state

我们的 WMT 系列(003-009)跑了 30+ 组实验,不管 RNN 还是 Attention 还是 Transformer,梯度始终是同一个形式:预测概率 − 真实分布,回传到 hidden 层。K_lang 限制 softmax 分母的研究正是建立在这个对称性之上的——你不需要理解"翻译"这个任务,你只需要理解 softmax 在 56K 维空间里的梯度稀释规律。

小结

  • 回归和分类共享同一个线性基底 $$wx+b$$
  • 差异只在链接函数(sigmoid/softmax)和损失函数(MSE/CE)
  • 梯度形式统一为 (prediction − truth) × input
  • 这个对称性是广义线性模型(GLM)的数学结论,不依赖具体任务
  • NMT 翻译只是这个结构在大规模分类上的应用

May the Code be with us.


License: GPLv3
本文《Watermelon》系列采用 GNU 通用公共许可证第三版 (GNU General Public License v3.0) 协议进行开源发布与分发。