Skip to content
清晨的一缕阳光
返回

机器学习速成·逻辑回归(1/2):简介与 S 型函数——让模型输出概率

机器学习速成·逻辑回归(1/2):简介与 S 型函数——让模型输出概率

本文参考 Google 机器学习速成课程 - 逻辑回归简介(Logistic Regression)使用 S 型函数计算概率(Sigmoid Function) 两个模块撰写,是线性回归系列的”进阶版”,讲清逻辑回归如何输出概率、以及 S 型函数背后的数学。


一、逻辑回归解决什么问题?

线性回归做的是连续的数值预测——例如预测汽车燃油效率。但现实中还有很多”要不要/会不会/是不是”类的问题:

这些问题的答案不是一个个具体数值,而是一个概率逻辑回归(Logistic Regression) 就是专为”预测某个结果发生的概率”而设计的一类回归模型。


二、概率输出怎么用?

逻辑回归的输出是一个概率(介于 0~1 之间),你可以用两种方式使用它:

用法说明例子
按原样应用直接把概率当置信度用垃圾邮件模型输出 0.932 → 有 93.2% 概率是垃圾邮件
转换为二元类别按阈值把概率切分成类别输出 Spam / Not SpamTrue / False

本模块重点讲的是”如何得到概率”;至于怎么把概率转成二分类结果,属于后面的分类模块


三、逻辑回归 vs 线性回归

维度线性回归逻辑回归
输出连续数值(如油耗 15.6)概率(0~1 之间)
决策面一条直线(线性)一条 S 形曲线
典型任务预测房价、预测油耗判断是否下雨、是否垃圾邮件
损失函数平方损失(L₂)对数损失(下一篇详讲)

两者都先算一个线性方程 z,但逻辑回归额外通过一个S 型函数把 z 压到 0~1 之间,从而得到概率。


四、S 型函数(Sigmoid Function):把任意值压到 0~1

要保证输出是一个概率,就必须让输出始终在 0 到 1 之间。有一族函数有这个性质,其中最标准的就是 S 型函数(sigmoid 意为”S 形”):

$$f(x)=\frac{1}{1 + e^{-x}}$$

其中:

4.1 关键特性

4.2 输入与输出对照

输入 xSigmoid 输出
-70.001
-50.007
-30.047
-20.119
-10.269
00.50
10.731
20.881
30.952
50.993
70.999

可以看到:负的输入让输出快速逼近 0,正的输入让输出快速逼近 1,且永不越界。


五、从线性输出到概率:z 与”对数几率”

逻辑回归对每个样本先算一个线性部分 z

$$z = b + w_1x_1 + w_2x_2 + \dots + w_Nx_N$$

其中 b 是偏差、w 是权重、x 是特征值。这个 z 有个专门名字叫对数几率(log-odds)

从 $y=\frac{1}{1+e^{-z}}$ 反解出 $z=\ln\left(\frac{y}{1-y}\right)$ ——即”两种可能结果 y 与 (1−y) 的概率之比的自然对数”,所以叫”对数几率”。

然后把 z 喂进 S 型函数,就得到逻辑回归的预测概率:

$$y’=\frac{1}{1+e^{-z}}$$

其中 y′ 是模型的概率输出,z 是上一步算出的线性值。

直观理解:线性方程可以输出极大或极小的值(比如 z=−10),但 S 型函数会把这个巨大的 z 映射回 0~1 之间。 比如 z=−10 → y′≈0.00004。


六、完整算例(动手走一遍)

一个具有 3 个特征的逻辑回归模型,参数如下:

b = 1,  w₁ = 2,  w₂ = −1,  w₃ = 5
输入值:x₁ = 0,  x₂ = 10,  x₃ = 2

第一步:算 z(对数几率)

$$z = 1 + (2)(0) − (1)(10) + (5)(2) = 1 + 0 − 10 + 10 = 1$$

第二步:把 z=1 代入 S 型函数求概率 y′

$$y’=\frac{1}{1+e^{-1}}=\frac{1}{1+0.367}=\frac{1}{1.367}\approx 0.731$$

所以这组输入下,模型预测某个结果发生的概率约为 73.1%

回忆对照表:输入=1 → 输出=0.731,与第 4.2 节表格完全一致。


七、关键术语速查


总结

核心要点关键结论
逻辑回归做什么输出”某结果发生的概率”,处理是否/会不会类问题
输出怎么用按原样当置信度,或转换成二元类别
vs 线性回归线性回归出数值、逻辑回归出概率,损失函数也不同
S 型函数$f(x)=\frac{1}{1+e^{-x}}$,把任意值压到 0~1 且永不越界
完整流程线性算 z(对数几率)→ S 型函数 → 概率 y′

一句话:逻辑回归 = 线性回归的输出 z,再套一个 S 型函数压成 0~1 的概率——所以它既能当”置信度”用,也能按阈值变成”是/否”;下一篇我们就讲它回归训练时最核心的两个差异。


分享这篇文章到:

上一篇文章
机器学习速成·逻辑回归(2/2):损失与正则化——为什么用对数损失
下一篇文章
机器学习速成·线性回归(4/4):超参数——学习速率、批次大小与周期