线性回归做回归,但如果我们把分类问题当回归来做——把标签 yi∈{0,1} 作为连续值拟合——会出问题:预测值可能落在 [0,1] 区间之外,失去概率意义。逻辑回归(Logistic Regression)在保持线性模型框架的同时,通过一个简单的非线性变换解决了这个问题。
从回归到分类#
线性回归的输出是 wTx,值域 (−∞,+∞)。要把它映射到概率 [0,1],需要一个单调可微的链接函数。最常用的选择是 Sigmoid 函数:
σ(z)=1+e−z1Sigmoid 将实数映射到 (0,1),且 σ(0)=0.5,z→+∞ 时趋近 1,z→−∞ 时趋近 0。
逻辑回归的模型由此定义为:
P(y=1∣x)=σ(wTx)=1+e−wTx1P(y=0∣x)=1−σ(wTx)=1+e−wTxe−wTxTIP对比 Bayes 分类器:Bayes 先建模 p(x∣ωi) 再反推 P(ωi∣x)(生成式);逻辑回归直接建模 P(y∣x)(判别式)。前者需要对特征分布做假设,后者只需要找到一组 w。
损失函数:从 MLE 到交叉熵#
参数 w 的估计沿用 Estimation 章的最大似然框架。对于数据集 {(xi,yi)}i=1N,yi∈{0,1},似然函数为:
L(w)=i=1∏NP(yi∣xi)=i=1∏Nσ(wTxi)yi[1−σ(wTxi)]1−yi取负对数(习惯上最小化负对数似然):
J(w)=−lnL(w)=−i=1∑N[yilnσ(wTxi)+(1−yi)ln(1−σ(wTxi))]这称为交叉熵损失(cross-entropy loss)。它的形式与 MLE 估计高斯分布时的均方误差不同——对于伯努利分布,MLE 自然导出交叉熵。
TIP对比 MLE 在不同分布下的损失函数:
| 分布 | MLE 导出的损失 | 适用场景 |
|---|
| 高斯分布 N(μ,σ2) | 均方误差 21(y−y^)2 | 回归 |
| 伯努利分布 Bern(p) | 交叉熵 −ylnp−(1−y)ln(1−p) | 二分类 |
这说明选择损失函数不是任意的——它应该由数据的分布假设决定。
梯度下降求解#
逻辑回归没有闭式解,需要用梯度下降迭代求解。先对单个样本的损失求梯度:
记 pi=σ(wTxi)。利用 Sigmoid 的导数性质 σ′(z)=σ(z)(1−σ(z)):
∂w∂Ji=−∂w∂[yilnpi+(1−yi)ln(1−pi)]=−piyi⋅pi(1−pi)xi+1−pi1−yi⋅pi(1−pi)xi=[−yi(1−pi)+(1−yi)pi]xi=(pi−yi)xi全数据集的梯度是所有样本梯度之和:
∇J(w)=i=1∑N(pi−yi)xi梯度下降的更新规则:
w(t+1)=w(t)−ηi=1∑N(pi−yi)xi这个形式有一个非常简洁的解释:当预测 pi 大于真实 yi 时,梯度为正,w 向减小 wTxi 的方向移动;反之亦然。
与感知机的对比#
感知机的更新规则是 w←w+η∑i∈Xxi(X 为错分样本集)。逻辑回归则对所有样本加权更新:
| 感知机 | 逻辑回归 |
|---|
| 更新触发条件 | 仅错分样本 | 所有样本 |
| 更新幅度 | 固定 η | 正比于预测误差 ∥pi−yi∥ |
| 输出 | 硬标签 {+1,−1} | 概率 (0,1) |
| 损失函数 | 感知机准则(错分距离和) | 交叉熵(MLE 导出) |
| 线性可分时收敛性 | 保证收敛于某个分界面 | 保证收敛于唯一的极大似然解 |
决策边界#
逻辑回归的决策边界由 P(y=1∣x)=0.5 定义:
σ(wTx)=0.5⟺wTx=0这是一个线性超平面,与 Bayes 分类器中 Σi=Σ 时的 LDA 决策边界形式相同。但 LDA 假设了高斯类条件密度,而逻辑回归不做这个假设——它的”线性”是从 Sigmoid + 线性参数化直接导出的。
正则化#
与线性回归一样,逻辑回归也可以加入正则化项:
- L2 正则化(逻辑回归的默认做法):J(w)=−lnL(w)+2λ∥w∥22
- L1 正则化:J(w)=−lnL(w)+λ∥w∥1
梯度更新中每一项多出一个 −λw(L2)或符号项(L1)。
多类推广#
逻辑回归自然地推广到多类——在输出层使用 Softmax 函数替代 Sigmoid,得到 P(ωk∣x)=∑j=1Cexp(wjTx)exp(wkTx)。这将在多分类一节中详细展开。
逻辑回归是连接”概率视角”和”优化视角”的枢纽。它的损失函数来自 MLE(回连 Bayes-Estimation),而求解使用梯度下降(接线性回归的优化框架)。它的输出是概率(接 Bayes 决策),但直接建模 P(y∣x) 而非 p(x∣y)(走向判别式)。如果整个线性模型章只能留下一个模型,逻辑回归是最值得深入理解的那个。