← 返回题目列表

逻辑回归的原理是什么?为什么叫「回归」却用来分类?

高频 中等 第 1 / 25 题 更新于 2026/09/25
线性模型逻辑回归sigmoid分类
学习 AI 实战项目

简化版

逻辑回归(Logistic Regression) 是分类模型(尽管名字带「回归」)。它先算一个线性组合 z = w·x + b,再用 sigmoid 函数把 z 压到 (0,1) 当作正类概率 p = σ(z),超过阈值(默认 0.5)判为正类。之所以叫「回归」,是因为它回归的是「对数几率(log-odds)」——log(p/(1-p)) = w·x + b 是线性的,它本质是对数几率对特征做线性回归,只是最后套了 sigmoid 变成概率。训练用最大似然 / 交叉熵损失,不用 MSE。它简单、可解释、输出概率、工业界(风控、CTR)极常用。

详细版

三步走:

① 线性打分:   z = wᵀx + b
② sigmoid 转概率: p = σ(z) = 1 / (1 + e^(-z))   ∈ (0,1)
③ 阈值决策:   p ≥ 0.5 → 正类;否则负类

为什么叫「回归」——对数几率线性:

log( p / (1-p) ) = wᵀx + b
     ↑ 对数几率(log-odds / logit)对特征是线性的

所以逻辑回归 = 用线性回归拟合「对数几率」,再映射成概率。

损失函数(交叉熵 / 对数损失):

L = -(1/m) Σ [ yᵢ log(pᵢ) + (1-yᵢ) log(1-pᵢ) ]

由最大似然估计推出(伯努利分布),是凸函数、可梯度下降。不用 MSE(用 MSE 会非凸、梯度消失,详见专门问题)。

特点: 输出概率、可解释(系数=对数几率的变化)、线性决策边界、训练快、易加正则。

完整版教学

一、先解决名字困惑:分类模型为什么叫「回归」

这是最经典的追问。逻辑回归做的是分类,但名字里有「回归」,原因在于它回归的对象不是类别,而是「对数几率」。

推导一下就懂了。我们想要一个概率 p ∈ (0,1),但线性函数 wᵀx+b 的输出是整个实数轴 (-∞,+∞),范围对不上。怎么把 (0,1) 的概率和 (-∞,+∞) 的线性值连起来?

  • 先把概率转成几率(odds):p/(1-p),范围 (0, +∞)。
  • 再取对数变成对数几率(log-odds / logit):log(p/(1-p)),范围就变成了 (-∞, +∞)。

现在范围对上了,于是让对数几率等于线性组合:

log( p/(1-p) ) = wᵀx + b

看——这就是对「对数几率」做线性回归!所以叫逻辑「回归」。反解出 p,就得到 sigmoid:

p = 1 / (1 + e^(-(wᵀx+b))) = σ(wᵀx + b)

结论:逻辑回归 = 线性回归拟合对数几率 + sigmoid 映射成概率。名字来自「回归对数几率」,用途是分类。

二、sigmoid 函数:把实数压成概率

σ(z) = 1 / (1 + e^(-z))

性质:

  • 值域 (0,1):天然当概率用。
  • 单调递增、S 形:z→+∞ 趋近 1,z→-∞ 趋近 0,z=0 时为 0.5。
  • 以 0.5 为中心对称,σ(0)=0.5 正好对应决策边界。
  • 导数优美:σ'(z) = σ(z)(1-σ(z)),让梯度推导很简洁。

于是决策规则:p = σ(z) ≥ 0.5 ⟺ z = wᵀx+b ≥ 0 判为正类。决策边界 wᵀx+b=0 是线性的(一条直线/超平面)——所以逻辑回归是线性分类器。

三、为什么用交叉熵损失而不是 MSE

逻辑回归用交叉熵(对数损失):

L = -(1/m) Σ [ y·log(p) + (1-y)·log(1-p) ]

它由最大似然估计推出:把每个样本看作伯努利试验,正类概率 p、负类 1-p,样本似然是 p^y (1-p)^(1-y),取对数、取负、求和平均,就得到上式。最大化似然 = 最小化交叉熵。

为什么不用回归里的 MSE?两个原因(详见「逻辑回归为什么不用 MSE」专题):

  1. MSE + sigmoid 是非凸的,梯度下降可能陷入局部最优;交叉熵 + sigmoid 是凸的,保证全局最优。
  2. MSE 梯度多一个 sigmoid 导数因子:在饱和区可能非常小;伯努利交叉熵对 logit 的导数化简为 p-y,数值与统计解释都更自然。它仍是有界梯度,并非“错得越多就无限增大”。

四、参数怎么解释——系数的含义

逻辑回归的强项是可解释。由 log(odds) = wᵀx+b:

  • 特征 xⱼ 增加 1 个单位,对数几率增加 wⱼ,即几率(odds)乘以 e^(wⱼ)。
  • 在其他变量与编码固定时,wⱼ > 0 表示该特征增大使正类 odds 上升,wⱼ < 0 表示下降;系数绝对值受单位影响,不能跨不同尺度直接比较“影响强弱”。
  • e^(wⱼ) 就是几率比(odds ratio),在医学、风控里直接拿来解读「某因素让风险变为几倍」。

这种清晰的可解释性,是逻辑回归在金融风控、医疗、CTR等强监管/需解释场景长盛不衰的关键。

五、训练与正则化

  • 优化:交叉熵对 w 是凸函数,用梯度下降 / 牛顿法(如 IRLS) 求解,梯度形式简洁 ∂L/∂w = (1/m)Σ(pᵢ-yᵢ)xᵢ。
  • 正则化:可加 L1(产生稀疏、做特征选择)或 L2(防过拟合、缓解共线性),是工业标配。
  • 要特征缩放:用梯度下降优化 + 带正则时,需缩放让收敛快、正则公平。

六、多分类怎么办

原生逻辑回归是二分类,扩展到多分类两种方式:

  • Softmax 回归(多项逻辑回归):用 softmax 直接输出 K 个类别的概率,是逻辑回归的自然推广。
  • OvR(One-vs-Rest):训练 K 个二分类器,每个区分「某类 vs 其余」,取得分最高的。

(详见「逻辑回归如何做多分类」专题。)

七、优缺点与适用

优点:简单、训练快、输出概率(可排序、可卡阈值)、强可解释、易加正则、易上线、可增量训练——工业界二分类的默认 baseline(风控评分卡、CTR 预估)。

缺点:线性决策边界,表达力有限,复杂非线性关系需靠特征工程(分箱、交叉)或换模型;对特征工程依赖较重。

“输出概率”也不能直接等同于“概率一定校准”。正则强度、采样方式和分布漂移都会让预测概率偏离真实发生率,应在独立验证集检查可靠性曲线、Brier score 或 ECE;若业务依赖绝对概率,再考虑 Platt scaling 或 isotonic regression。

它适合大规模稀疏特征、需要排序与解释的二分类基线。若交互和非线性是主要信号,应先做有业务含义的特征交叉,或与树模型等非线性模型比较,而不是只凭训练速度决定。

八、用算例与工程边界复核

当 z=wᵀx+b 从 -2、0、2 变化时,sigmoid 概率约为 0.119、0.5、0.881。若某特征系数为 0.7,在其他变量不变时该特征增加 1 单位,odds 乘以 e^0.7≈2.01,不是“概率直接增加 70%”。

对象/方案核心机制选择或风险
线性预测子z=wᵀx+b决定 log-odds
Sigmoidp=1/(1+e^-z)映射到 0 与 1 之间
训练目标伯努利负对数似然凸问题但需迭代

把推导和选择压缩成执行路径:

features x
 -> log-odds z
 -> sigmoid probability p
 -> threshold chosen by business cost

系数解释在 odds 尺度上;概率改变量依赖当前基准概率,因此不能把系数直接读成概率百分点。

九、常见误区与追问

  • 误区:逻辑回归只能输出 0 或 1。 模型先输出概率或分数,类别由后续阈值决策产生。
  • 误区:阈值必须固定为 0.5。 阈值应结合误报漏报成本、类别分布与验证集选择。
  • 追问:为什么叫回归? 它对类别概率的对数几率建立线性回归关系。
  • 追问:完全分离会发生什么? 无正则 MLE 的系数可能趋向无穷,数值上不收敛;正则化可缓解。
  • 追问:输出概率一定校准好吗? 不一定,正则、采样和分布漂移都会影响校准,应检查可靠性曲线等指标。

十、加强记忆

逻辑回归假设 log[p/(1-p)]=wᵀx+b,因此 sigmoid 把线性 logit 映射到 (0,1)。训练目标来自伯努利负对数似然,对参数是凸的,但完全分离且无正则时有限解可能不存在。系数表示其他变量固定时 log-odds 的单位变化,exp(w_j) 是优势比;它不是概率百分点,大小也依赖特征单位。0.5 只是对称成本和已校准概率下的常见阈值,业务应按成本或容量选择。输出位于 0 到 1 不等于天然校准,重采样、正则和漂移后仍要检查可靠性。