逻辑回归:线性分类器
逻辑回归(Logistic Regression)本质上是一个线性模型:输入经过线性加权求和,再通过 Sigmoid 函数映射为概率,最后使用对数损失(Log Loss)进行训练。你可以把它看作单个逻辑神经元。
注意区分:它不是经典感知机(Perceptron)。感知机使用硬阈值判定和不同的更新规则,而逻辑回归输出的是连续概率值。
数学形式
给定输入 x1,…,xn、权重 w1,…,wn 和偏置 b,线性得分 z 为:
z=i=1∑nwixi+b
这是输入与权重的线性组合,加上偏置项以处理整体偏移。为了将 z 转换为 0 到 1 之间的概率,我们使用 Sigmoid 函数 σ(z) 作为激活函数:
σ(z)=1+e−z1
该函数将任意实数映射到 (0,1) 区间,天然适合二元分类任务。
Sigmoid 函数

Sigmoid 函数 σ(z) 在机器学习中至关重要,特别是在逻辑回归和神经网络中。它的核心能力是将任意实数压缩到 (0,1) 区间,从而用于概率建模。
σ(z)=1+e−z1
其中 z∈R。
关键性质
- 定义域与值域:定义域为全体实数 R,值域为开区间 (0,1)。
- 渐近线:存在两条水平渐近线 y=0 和 y=1。当 z→−∞ 时,σ(z)→0;当 z→∞ 时,σ(z)→1。
- 对称性:满足恒等式 σ(−z)=1−σ(z)。这意味着图像关于点 (0,21) 中心对称,而非关于原点对称。
- 极值行为:z 取较大正值时,输出趋近 1;取较大负值时,输出趋近 0。
Sigmoid 的导数
Sigmoid 的导数在优化算法中非常关键,因为它形式简洁,计算效率高。
推导过程
设 σ′(z) 为 σ(z) 对 z 的导数:
- 从定义出发:σ(z)=(1+e−z)−1。
- 应用链式法则:
σ′(z)=dzd(1+e−z)−1=−(1+e−z)−2⋅(−e−z)
- 化简得:
σ′(z)=(1+e−z)2e−z
- 分子分母同乘 ez 或进行代数变形(分子加 1 减 1):
σ′(z)=1+e−z1(1−1+e−z1)
- 识别出括号内的项分别为 σ(z) 和 1−σ(z),得到最终简洁形式:
σ′(z)=σ(z)(1−σ(z))
逻辑回归的梯度下降
梯度下降的目标是最小化预测概率与真实标签之间的误差。对于分类任务,我们使用对数损失(Log Loss):
L(y,y^)=−[ylog(y^)+(1−y)log(1−y^)]
其中 y 是真实标签(0 或 1),y^ 是模型输出的预测概率。只有当设定了决策阈值(如 0.5)后,概率才会被转换为具体的类别标签。
优化的目标是调整参数 w 和 b,使损失 L 最小化。为此,我们需要计算 L 对参数的偏导数。这涉及两步:先求 L 对 y^ 的导数,再求 y^ 对参数的导数。
链式法则应用
根据链式法则,梯度计算如下:
- ∂wi∂L=∂y^∂L⋅∂wi∂y^
- ∂b∂L=∂y^∂L⋅∂b∂y^
其中 ∂y^∂L 是公共项,决定了梯度的基本方向。
导数计算详解
1. L 对 y^ 的导数
对对数损失函数求导:
∂y^∂L=−y^y+1−y^1−y
这一项反映了损失函数如何随预测概率 y^ 的变化而变化。
2. y^ 对 w 和 b 的导数
预测概率 y^=σ(z),其中 z=∑wixi+b。利用 Sigmoid 的导数性质 σ′(z)=y^(1−y^):
- ∂wi∂y^=y^(1−y^)⋅∂wi∂z=y^(1−y^)xi
- ∂b∂y^=y^(1−y^)⋅∂b∂z=y^(1−y^)
3. 最终梯度表达式
将上述两部分相乘并化简,得到最终的梯度公式:
- ∂wi∂L=−(y−y^)xi
- ∂b∂L=−(y−y^)
这两个公式非常直观:梯度方向由预测误差 (y−y^) 决定,权重更新还乘以了对应的输入特征 xi。
梯度下降更新规则
设学习率为 α,参数更新规则如下:
- wi:=wi−α∂wi∂L
- b:=b−α∂b∂L
合适的步长能使这些更新降低损失;参数能否收敛到有限值还取决于数据,下文的可分情形就是反例。
逻辑回归由三部分组成:线性得分、Sigmoid 概率映射和对数损失。其梯度推导过程展示了链式法则如何简化计算,最终得到形式简洁的更新公式。保持逻辑回归与经典感知机的概念区分,有助于避免混淆这两种相关但机制不同的算法。
一次更新,以及最优解不存在的情况
取 x=(2,−1)、y=1,初始 (w1,w2,b)=(0,0,0),则得分 z=0,概率为 1/2,梯度为 (−1,1/2,−1/2)。用 α=0.1 同时更新全部参数,得到 (0.1,−0.05,0.05);此时 z=0.3、y^≈0.574443,损失从 log2≈0.693147 降至 0.554355。
多个样本时,先在当前参数处分别平均 (y^i−yi)xij 和 (y^i−yi),再更新。记 pi=y^i,并让 x~i 包含截距对应的坐标,损失 Hessian 为
H=N1i∑pi(1−pi)x~ix~iT⪰0.
因此,固定特征下的逻辑回归损失关于参数是凸的。但凸性不保证有限最小点存在:数据严格线性可分时,放大一个能正确分隔数据的得分,会使每个真实类别的概率趋近一、损失趋近零,同时权重不断增大。对所有参数加入二次惩罚,可使目标严格凸,且参数范数趋于无穷时目标也趋于无穷;实际使用时必须说明是否惩罚截距。损失变化很小可能只是权重继续增长,并不表示已经收敛到有限最优参数。
阈值为 0.5 时,z≥0 就预测类别 1;边界在输入特征空间中是线性的。若决策成本要求不同阈值,应调整决策阈值,而非修改梯度公式。使用对数损失中的稳定公式直接从 logit 计算损失,不要对已舍入为 0 或 1 的概率取对数。