逻辑回归为什么能输出概率?从 sigmoid 到胜平负概率
足球预测模型实战

逻辑回归为什么能输出概率?从 sigmoid 到胜平负概率

逻辑回归不是简单分类器,它通过 sigmoid 或 Softmax 把特征组合转成概率,是足球模型里最重要的可解释基线之一。

2026-05-16浏览 2
正文:17px

很多人第一次听到“逻辑回归”,会有两个误解。

第一个误解是:

它叫“回归”,所以是不是用来预测连续数值?

第二个误解是:

逻辑回归太简单了,在足球预测里是不是已经没用了?

这两个理解都不准确。

逻辑回归虽然名字里有“回归”,但它最常见的用途是分类概率建模。

比如:

主队是否获胜;
主队是否不败;
比赛是否平局;
总进球是否进入某个区间;
某个结果是否发生。

更重要的是,逻辑回归输出的不是简单的“是”或“否”,而是概率。

比如:

主胜概率:58%

这和普通分类不同。

普通分类只告诉你:

预测主胜

逻辑回归更适合告诉你:

在当前赛前特征条件下,主胜概率大约是 58%。

这正是足球模型需要的东西。

足球比赛不是确定事件,模型最重要的输出也不是硬结果,而是概率。

所以,逻辑回归虽然简单,但在足球预测模型中非常重要。

它的价值主要有三个:

第一,它能输出概率;
第二,它足够可解释;
第三,它适合做复杂模型之前的基线模型。

这一章就把逻辑回归讲清楚。


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

先看一个最简单的二分类问题:

主队是否获胜?

我们把标签定义成:

y = 1 表示主胜
y = 0 表示非主胜

非主胜包括:

平局
客胜

模型输入是赛前特征,例如:

双方强弱差
主队近期进攻状态
客队近期防守状态
主队主场表现
客队客场表现
休息天数差
联赛环境

逻辑回归要做的事是:

根据这些特征,输出:

P(y = 1 | x)

也就是:

在赛前特征 x 已知的情况下,主队获胜的概率。

比如输出:

P(y = 1 | x) = 0.58

意思是:

模型认为这场比赛主胜概率约 58%。

这里的关键是:

逻辑回归不是只给一个类别,而是给一个概率。

这非常适合足球预测。


二、逻辑回归的第一步:把特征做线性组合

逻辑回归先做一件很简单的事:

把输入特征按权重加起来。

公式是:

z = b + w1*x1 + w2*x2 + ... + wn*xn

这里:

z = 线性组合后的分数
b = 截距
w1, w2, ..., wn = 每个特征的权重
x1, x2, ..., xn = 输入特征

举一个足球例子。

假设我们只用 4 个特征来预测主胜:

x1 = 双方强弱差
x2 = 主队近期进攻状态
x3 = 客队近期防守弱度
x4 = 主队休息天数优势

模型学到的权重是:

b = -0.20
w1 = 0.80
w2 = 0.50
w3 = 0.40
w4 = 0.10

那么:

z = -0.20 + 0.80*x1 + 0.50*x2 + 0.40*x3 + 0.10*x4

这个 z 还不是概率。

它只是一个分数。

z 越大,模型越倾向于认为主胜概率高。

z 越小,模型越倾向于认为主胜概率低。

接下来,逻辑回归会把这个 z 转成 0 到 1 之间的概率。


三、为什么线性分数不能直接当概率?

因为 z 可以是任意数字。

例如:

z = 2.4
z = -1.3
z = 0
z = 8.5
z = -6.2

但概率必须在 0 到 1 之间。

也就是:

0 <= p <= 1

不能出现:

概率 = 1.7
概率 = -0.4

所以逻辑回归需要一个函数,把任意实数 z 压缩到 0 到 1 之间。

这个函数就是 sigmoid 函数。

公式是:

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

其中:

p = 事件发生概率
z = 前面计算出来的线性分数
e = 自然常数,约等于 2.71828

sigmoid 函数有几个特点:

当 z 很大时,p 接近 1;
当 z 很小时,p 接近 0;
当 z = 0 时,p = 0.5。

所以它非常适合把线性分数转成概率。


四、用数字看 sigmoid 怎么工作

我们计算几个 z 对应的概率。

公式:

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

当 z = 0

p = 1 / (1 + e^0)

因为:

e^0 = 1

所以:

p = 1 / (1 + 1) = 0.5

也就是:

50%

这表示模型没有明显倾向。


当 z = 1

p = 1 / (1 + e^(-1))
e^(-1) ≈ 0.3679

所以:

p = 1 / (1 + 0.3679)
p ≈ 0.731

也就是:

73.1%

当 z = -1

p = 1 / (1 + e^1)
e^1 ≈ 2.718

所以:

p = 1 / (1 + 2.718)
p ≈ 0.269

也就是:

26.9%

当 z = 2

p = 1 / (1 + e^(-2))
e^(-2) ≈ 0.1353

所以:

p = 1 / (1 + 0.1353)
p ≈ 0.881

也就是:

88.1%

你可以看到:

z 从 0 增加到 1,概率从 50% 到 73%。
z 从 1 增加到 2,概率从 73% 到 88%。
z 越大,概率越接近 1,但不会超过 1。
z 越小,概率越接近 0,但不会低于 0。

这就是 sigmoid 的作用。


五、逻辑回归如何理解“特征权重”?

逻辑回归的一个核心优点是可解释。

每个特征都有一个权重。

比如:

z = b + w1*x1 + w2*x2 + w3*x3

如果 w1 是正数,说明 x1 越大,z 越大,概率 p 越高。

如果 w1 是负数,说明 x1 越大,z 越小,概率 p 越低。

放到足球里就很好理解。

假设预测主胜。

如果“主队强弱优势”这个特征权重是正的,说明:

主队越强,主胜概率越高。

如果“客队近期状态”这个特征权重是负的,说明:

客队状态越好,主胜概率越低。

如果“主队休息天数优势”权重是正的,说明:

主队休息越充分,主胜概率可能越高。

这种解释性非常重要。

它能帮助你检查模型是否符合足球常识。

如果某个模型学到:

主队越强,主胜概率越低;

那就要检查:

特征是否写反;
标签是否错;
数据是否泄漏;
样本是否太小;
特征是否和其他变量强相关;
模型是否被异常数据影响。

逻辑回归很适合做这种检查。


六、逻辑回归权重不是简单“重要性排名”

这里要特别注意。

逻辑回归权重可以解释方向,但不能粗暴理解成绝对重要性排名。

原因有几个。

1. 特征尺度不同

如果一个特征范围是:

0 到 1

另一个特征范围是:

0 到 1000

权重大小不能直接比较。

所以逻辑回归通常需要做标准化或特征尺度处理。

2. 特征之间可能相关

例如:

球队排名;
Elo 差值;
赛季积分差;
近期胜率;

这些都可能表达强弱。

如果它们高度相关,权重会相互影响。

某个特征权重小,不一定说明它没用。

可能是它的信息被其他特征吸收了。

3. 足球特征可能非线性

逻辑回归给的是线性权重。

但真实关系可能不是线性的。

例如休息天数,不一定越多越好。

所以,逻辑回归权重适合帮助理解方向,但不应该过度解释。

它是诊断工具,不是最终真理。


七、逻辑回归为什么适合做基线模型?

基线模型的作用是:

给复杂模型一个参考标准。

逻辑回归很适合做足球模型的基线。

原因有四个。

第一,简单稳定

逻辑回归结构简单,不容易像复杂树模型那样过度记住历史噪音。

第二,可解释

你可以看特征方向是否合理。

第三,训练速度快

适合快速验证特征是否有用。

第四,概率输出自然

逻辑回归本身就是概率模型。

它输出:

P(y = 1 | x)

这和足球模型需要概率输出非常一致。

如果一个复杂模型比逻辑回归只好一点点,甚至不如逻辑回归,就说明复杂模型不一定带来价值。

在足球预测里,复杂不等于强。

能稳定超过简单基线,才说明模型真正学到了东西。


八、逻辑回归的局限:它更擅长线性关系

逻辑回归的核心是:

z = b + w1*x1 + w2*x2 + ... + wn*xn

也就是线性组合。

这意味着它天然更擅长线性关系。

比如:

主队强弱优势越大,主胜概率越高。

这种关系适合逻辑回归。

但足球里很多关系不是简单线性。

例如:

休息天数

休息 2 天和休息 5 天差异很大。
休息 8 天和休息 11 天差异可能没那么大。
休息太久甚至可能状态下降。

这不是简单线性。

强弱差距

强弱差距从小到中,概率变化明显。
但强弱差距非常大以后,再继续增大,边际变化可能下降。

也不是简单线性。

近期进球

最近进球多可能表示状态好。
但过高的近期进球也可能只是短期效率异常。

同样不是简单线性。

逻辑回归可以通过分箱、交互项、非线性变换来改善,但这样会增加特征工程复杂度。

这也是为什么后面需要 LightGBM。


九、二分类逻辑回归在足球里怎么用?

二分类逻辑回归可以用于很多足球目标。

例如:

1. 主队是否获胜

y = 1 表示主胜
y = 0 表示非主胜

模型输出:

P(主胜)

2. 主队是否不败

y = 1 表示主胜或平局
y = 0 表示客胜

模型输出:

P(主队不败)

3. 是否平局

y = 1 表示平局
y = 0 表示非平局

模型输出:

P(平局)

4. 总进球是否进入某个区间

例如:

y = 1 表示总进球为 2-3 球
y = 0 表示其他总进球

模型输出:

P(总进球为2-3球)

这些二分类模型可以作为辅助模型。

但要注意:

二分类会合并其他类别,信息会损失。

比如“主队不败”把主胜和平局合成一类。

但主胜和平局不是同一类比赛结构。

所以二分类模型适合辅助分析,不应该完全替代完整胜平负概率模型。


十、胜平负三分类为什么要用 Softmax?

胜平负有三类:

H = 主胜
D = 平局
A = 客胜

如果用三个独立二分类模型分别预测:

P(H)
P(D)
P(A)

可能会出现概率相加不等于 1 的问题。

比如:

P(H) = 55%
P(D) = 35%
P(A) = 30%

合计:

55% + 35% + 30% = 120%

这不是合法胜平负概率分布。

所以三分类任务更自然的方式是使用 Softmax。

Softmax 会把三个分数转成三个概率,并保证它们相加为 1。

假设模型先输出三个分数:

z_H = 主胜分数
z_D = 平局分数
z_A = 客胜分数

Softmax 公式:

P(H) = e^(z_H) / (e^(z_H) + e^(z_D) + e^(z_A))

P(D) = e^(z_D) / (e^(z_H) + e^(z_D) + e^(z_A))

P(A) = e^(z_A) / (e^(z_H) + e^(z_D) + e^(z_A))

这样一定满足:

P(H) + P(D) + P(A) = 1

这正好符合胜平负概率分布要求。


十一、用一个 Softmax 数字例子理解胜平负概率

假设模型对一场比赛算出三个分数:

z_H = 1.2
z_D = 0.4
z_A = -0.3

先计算指数:

e^(1.2) ≈ 3.320
e^(0.4) ≈ 1.492
e^(-0.3) ≈ 0.741

总和:

3.320 + 1.492 + 0.741 = 5.553

所以:

P(H) = 3.320 / 5.553 ≈ 0.598
P(D) = 1.492 / 5.553 ≈ 0.269
P(A) = 0.741 / 5.553 ≈ 0.133

也就是:

主胜:59.8%
平局:26.9%
客胜:13.3%

你可以看到,Softmax 把任意三个分数转换成了合法概率分布。

这就是多分类逻辑回归的基本思路。


十二、逻辑回归如何训练?

逻辑回归训练的目标是:

让模型给真实结果更高概率。

如果真实结果是主胜,模型应该提高 P(H)。
如果真实结果是平局,模型应该提高 P(D)。
如果真实结果是客胜,模型应该提高 P(A)。

常用损失函数是 LogLoss。

对于单场比赛,如果真实结果概率是 p,那么损失是:

Loss = -log(p)

例如真实结果是主胜。

模型 A 输出:

P(H) = 0.70

损失:

-log(0.70) ≈ 0.357

模型 B 输出:

P(H) = 0.30

损失:

-log(0.30) ≈ 1.204

模型 A 损失更小。

说明它给真实结果更高概率。

训练过程就是不断调整权重,让整体 LogLoss 尽量变小。

但不能只在训练集上变小。

还要在验证集、测试集上稳定。

否则就是过拟合。


十三、逻辑回归为什么不容易过拟合,但也不是完全不会过拟合?

相比 LightGBM,逻辑回归结构简单,过拟合风险较低。

但它不是完全不会过拟合。

如果你给它很多特征,而且样本量不够,它也会过拟合。

尤其是:

特征太多;
特征高度相关;
样本太少;
类别不平衡;
某些特征只在少量样本里出现;
没有正则化。

逻辑回归通常会使用正则化来控制权重。

正则化可以理解成:

不要让某些权重变得过大。

常见正则化包括:

L1 正则
L2 正则

L2 正则更常见。

它会惩罚过大的权重,让模型更平滑。

公式不需要展开太复杂,只要理解:

正则化是防止模型过度依赖某些特征的一种约束。

在足球模型里,这很有用。

因为有些特征在历史上可能偶然有效,但未来未必稳定。


十四、逻辑回归为什么能帮助检查特征质量?

假设你构造了一批特征。

你先训练逻辑回归。

然后检查特征方向。

如果模型学到:

主队长期强弱优势越大,主胜概率越高;

这合理。

如果模型学到:

主队近期失球越多,主胜概率越高;

就要检查。

这可能是因为:

特征定义反了;
防守弱度方向和失球方向混淆;
样本被某类强队污染;
强队经常进攻激进,失球也多,但仍然赢球;
特征需要和对手强弱结合解释。

逻辑回归不会直接告诉你真相。

但它会暴露一些问题。

如果一个特征方向违背直觉,不一定马上删除。

但必须复盘它为什么这样。

这就是逻辑回归的诊断价值。

复杂模型如 LightGBM 更难解释。

所以在进入复杂模型前,逻辑回归非常适合作为特征体检工具。


十五、逻辑回归和泊松模型有什么区别?

泊松模型通常从进球数出发。

它先估计:

λ_home = 主队预期进球
λ_away = 客队预期进球

然后计算比分矩阵和总进球概率。

逻辑回归则直接从特征出发,预测某个结果概率。

例如:

P(主胜)
P(平局)
P(客胜)

它不一定经过比分矩阵。

两者思路不同。

泊松模型更适合解释进球和比分结构。

逻辑回归更适合做结果概率基线。

例如某场比赛:

泊松模型可能告诉你:

1-0、1-1、2-1 概率较高
总进球集中在2-3球

逻辑回归可能告诉你:

主胜 52%
平局 29%
客胜 19%

两者结合更有价值。

如果泊松和逻辑回归都比较谨慎,而 LightGBM 很激进,就要警惕复杂模型是否过度自信。


十六、逻辑回归和 LightGBM 有什么区别?

逻辑回归:

结构简单
可解释
适合做基线
更偏线性
过拟合风险相对低
表达能力有限

LightGBM:

表达能力强
能学习非线性
能学习特征交互
适合表格数据
可能提升效果
也更容易过拟合
解释难度更高

举例。

逻辑回归可能学到:

强弱差越大,主胜概率越高。

LightGBM 可能学到更复杂的关系:

强弱差较大 + 主队休息充足 + 客队客场防守差 => 主胜概率明显上升

但如果强队赛程密集 + 低比分联赛 + 对手防守收缩强 => 主胜优势要下调

这就是 LightGBM 的优势。

但如果数据少、特征脏、回测不严格,LightGBM 也更容易学到噪音。

所以,逻辑回归和 LightGBM 应该配合使用。

不是谁替代谁。


十七、逻辑回归在足球系统里的正确定位

逻辑回归不一定是最终最强模型。

但它非常适合做三件事。

第一,做基线

复杂模型必须超过它,才说明复杂模型有意义。

第二,检查特征方向

看模型是否符合足球常识。

第三,做概率参考

逻辑回归通常比复杂模型更保守。

如果 LightGBM 给出非常激进概率,而逻辑回归非常谨慎,这本身就是分歧信号。

例如:

逻辑回归:

主胜 51%
平局 29%
客胜 20%

LightGBM:

主胜 72%
平局 18%
客胜 10%

这种场次要仔细看。

可能是 LightGBM 捕捉到了复杂关系。

也可能是 LightGBM 过度自信。

逻辑回归能提供一个稳健参考。


十八、逻辑回归常见错误

错误一:把逻辑回归当成过时模型

简单模型不代表没价值。

足球数据噪音大,简单模型有时更稳。

错误二:不做特征尺度处理

不同尺度特征会影响权重解释和训练稳定性。

错误三:把权重当绝对重要性

权重方向有解释价值,但不能简单排序。

错误四:忽略共线性

很多足球特征表达相似信息,比如排名、积分、Elo、近期胜率。

它们会互相影响。

错误五:用逻辑回归处理复杂非线性,却不做分箱或交互

例如休息天数、强弱差距、近期状态极端值,可能不是线性关系。

错误六:只看命中率

逻辑回归输出概率,也应该看 LogLoss、Brier Score 和校准。

错误七:用二分类模型替代完整胜平负分布

二分类有用,但不能完全替代三分类概率。


十九、如何判断逻辑回归模型是否合格?

一个合格的逻辑回归基线,至少要满足:

1. 使用赛前可得特征。
2. 标签定义清楚。
3. 按时间切分训练和测试。
4. 输出概率而不是只输出类别。
5. 特征方向大体符合足球常识。
6. LogLoss 和 Brier Score 优于简单固定概率基线。
7. 概率校准不过度失真。
8. 平局概率没有被严重低估。
9. 在不同时间段表现相对稳定。
10. 作为基线能用于对比 LightGBM。

如果逻辑回归都跑不稳,不要急着上复杂模型。

先检查数据、标签和特征。

很多时候,复杂模型只是把基础问题掩盖起来。


二十、一个完整例子:用逻辑回归理解主胜概率

假设我们有一场比赛。

模型使用几个标准化后的特征:

x1 = 强弱差
x2 = 主队近期进攻
x3 = 客队近期防守弱度
x4 = 主队休息优势

逻辑回归学到:

b = -0.10
w1 = 0.90
w2 = 0.35
w3 = 0.40
w4 = 0.15

某场比赛特征:

x1 = 0.80
x2 = 0.50
x3 = 0.40
x4 = 0.20

计算 z:

z = -0.10 + 0.90×0.80 + 0.35×0.50 + 0.40×0.40 + 0.15×0.20

逐项计算:

0.90×0.80 = 0.72
0.35×0.50 = 0.175
0.40×0.40 = 0.16
0.15×0.20 = 0.03

所以:

z = -0.10 + 0.72 + 0.175 + 0.16 + 0.03
z = 0.985

转成概率:

p = 1 / (1 + e^(-0.985))
e^(-0.985) ≈ 0.373

所以:

p = 1 / (1 + 0.373)
p ≈ 0.728

主胜概率约:

72.8%

这个例子说明逻辑回归如何从特征一步步得到概率。

当然,真实模型不会只用这几个特征。

但原理一样:

特征先线性组合成 z,再通过 sigmoid 或 Softmax 转成概率。


二十一、本章实操检查清单

理解或使用逻辑回归时,可以检查:

1. 当前任务是二分类还是三分类?
2. 二分类是否使用 sigmoid?
3. 三分类是否使用 Softmax?
4. 模型输出是否是概率?
5. 胜平负三类概率是否相加为1?
6. 特征是否全部赛前可得?
7. 特征是否做了必要的尺度处理?
8. 特征方向是否符合足球常识?
9. 是否使用时间切分评估?
10. 是否和固定概率基线比较?
11. 是否检查 LogLoss 和 Brier Score?
12. 是否检查概率校准?
13. 是否检查平局是否被低估?
14. 是否把逻辑回归作为 LightGBM 的基线?
15. 是否避免过度解释单个权重?

本章小结

逻辑回归是足球预测模型里非常重要的基础模型。

它通过线性组合:

z = b + w1*x1 + w2*x2 + ... + wn*xn

再用 sigmoid 函数:

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

把分数转成二分类概率。

对于胜平负三分类,可以用 Softmax:

P(H) = e^(z_H) / (e^(z_H) + e^(z_D) + e^(z_A))
P(D) = e^(z_D) / (e^(z_H) + e^(z_D) + e^(z_A))
P(A) = e^(z_A) / (e^(z_H) + e^(z_D) + e^(z_A))

逻辑回归的优点是简单、稳定、可解释。

它非常适合做足球模型的 baseline。

它能帮助你检查特征方向、概率输出和模型基本合理性。

但它也有局限。

它更擅长线性关系,不擅长复杂非线性和特征交互。

所以,在足球预测系统里,逻辑回归不应该被轻视,也不应该被神化。

它最适合做基线、诊断和概率参考。

下一章我们继续讲:

LightGBM 背后的数学直觉是什么?不用复杂公式也能理解梯度提升。

本文仅供足球数据研究和模型训练学习参考,不构成任何投注建议。