很多人评估足球模型时,最容易犯的错误是:
用短期表现判断模型好坏。
模型最近 10 场表现不错,就觉得模型很强。
模型最近 20 场不理想,就觉得模型失效。
某一周连续命中,就觉得方法找到规律了。
某一段连续失误,就觉得模型不能用了。
这种判断方式非常危险。
因为足球比赛是典型的高波动事件。
即使一个模型长期概率是合理的,它在短期内也可能表现得很不稳定。
可能连续命中几场。
也可能连续错几场。
可能某个月表现很好。
也可能某个月明显回撤。
可能某个联赛短期很顺。
也可能某个联赛短期很差。
这不一定说明模型突然变强或变弱。
很多时候,这只是方差。
如果你不理解方差,就很容易把正常波动误认为模型能力变化。
这一章就把方差讲清楚:
方差是什么;
为什么足球模型一定会有方差;
为什么短期命中率很容易骗人;
为什么正期望模型也会经历低谷;
为什么最大回撤是模型评估里必须看的指标;
如何区分正常波动和模型真的失效。
一、方差是什么?
方差是一个用来衡量“波动大小”的数学概念。
更普通地说:
方差表示结果围绕平均水平上下波动得有多厉害。
如果一个过程很稳定,每次结果都差不多,方差就小。
如果一个过程忽高忽低,结果波动很大,方差就大。
举个生活例子。
有两个人每天收入如下。
A 的收入:
100, 100, 100, 100, 100
B 的收入:
0, 200, 50, 150, 100
两个人平均收入都是:
100
但 A 每天都稳定 100,波动很小。
B 有时 0,有时 200,波动很大。
所以 A 方差小,B 方差大。
平均值相同,不代表过程相同。
这就是方差的意义。
在足球模型里,也一样。
两个模型长期平均表现可能接近,但一个过程平滑,一个过程大起大落。
如果只看长期平均,你看不出差异。
必须看方差和回撤。
二、方差的数学定义
方差的基本公式是:
Variance = 平均值[(结果 - 平均结果)^2]
如果写成更常见形式:
Var(X) = E[(X - μ)^2]
其中:
Var(X) = 随机变量 X 的方差
X = 每次结果
μ = X 的平均值
E = 求长期平均
这个公式什么意思?
第一步,看每次结果和平均值差多少:
结果 - 平均结果
第二步,把差值平方:
(结果 - 平均结果)^2
为什么要平方?
因为差值有正有负。
比如比平均值高 10,差值是 +10。
比平均值低 10,差值是 -10。
如果直接相加,正负会抵消。
平方以后:
(+10)^2 = 100
(-10)^2 = 100
都变成正数。
第三步,对这些平方差取平均。
这个平均值越大,说明结果离平均值越远,波动越大。
这就是方差。
三、足球模型里的“结果”可以是什么?
在足球模型里,方差可以体现在很多层面。
比如:
模型单场是否命中;
模型一段时间的命中率;
模型的收益曲线;
模型的 LogLoss 波动;
模型的 Brier Score 波动;
模型在某个联赛上的阶段性表现;
模型在某类比赛上的表现。
如果我们只讨论最直观的单场结果,可以把每场结果简化成:
命中 = 1
未命中 = 0
例如某模型连续 10 场结果是:
1, 1, 0, 1, 0, 0, 1, 1, 1, 0
其中命中 6 场,命中率:
6 / 10 = 60%
但这 10 场的排列顺序也很重要。
如果是:
1, 1, 1, 1, 1, 1, 0, 0, 0, 0
也是 60%。
如果是:
1, 0, 1, 0, 1, 0, 1, 0, 1, 1
也是 60%。
命中率相同,但体验完全不同。
第一种先连续命中,再连续不理想。
第二种比较交替,波动感小一些。
方差和回撤就是用来理解这种过程差异的。
四、为什么足球模型天然高方差?
足球比赛和很多预测任务不同。
它天然有高方差。
原因有几个。
1. 足球进球少
很多比赛只有 0 到 3 个进球。
少数进球决定结果。
一个点球,就可能改变胜平负。
一个红牌,就可能改变全场节奏。
一次门将失误,就可能让模型判断失效。
一次补时进球,就可能把主胜变平局。
进球越少,单个事件影响越大。
这会提高结果波动。
2. 胜平负是三分类
足球不是只有赢和输。
还有平局。
平局让结果分布更复杂。
很多比赛并不是一边倒,而是:
主胜 45%
平局 30%
客胜 25%
这种比赛本身就很分散。
即使主胜最高,也不代表主胜很稳。
三分类任务天然比二分类更难稳定。
3. 比赛过程会动态变化
赛前模型只能基于赛前信息。
但比赛中会发生很多无法完全提前知道的事情。
比如:
早早进球;
战术调整;
换人;
球员受伤;
红牌;
VAR;
天气变化;
体能下降;
领先方降速;
落后一方压上。
这些都会改变原来的赛前概率结构。
赛前模型无法完全控制赛中变化。
所以短期结果波动很正常。
4. 样本短期很容易偏离长期概率
即使模型概率完全正确,短期样本也可能出现偏离。
如果模型给一批比赛主胜概率 60%,长期应该接近 60%。
但短期 10 场里,可能主胜 8 场,也可能主胜 4 场。
这不一定说明模型错。
可能只是短期方差。
五、一个 60% 概率事件,也会经常连续失败
这是最能帮助读者理解方差的例子。
假设某模型对一类比赛判断正确的概率是:
60%
失败概率就是:
40%
很多人会觉得,60% 还不错,应该比较稳。
但我们算一下连续失败的概率。
连续 2 场失败
0.40 × 0.40 = 0.16
也就是:
16%
16% 不低。
大约每 6 次类似的 2 场组合,就可能出现一次连续 2 场不理想。
连续 3 场失败
0.40 × 0.40 × 0.40 = 0.064
也就是:
6.4%
连续 4 场失败
0.40^4 = 0.0256
也就是:
2.56%
连续 5 场失败
0.40^5 = 0.01024
也就是:
1.024%
很多人看到 1.024%,觉得很低。
但问题是:
长期模型不是只跑 5 场。
如果你观察几百场比赛,连续 4 场、5 场不理想并不奇怪。
这就是方差。
即使模型真实命中率 60%,短期仍然会出现让人难受的低谷。
六、55% 命中率的模型,连续不理想更常见
足球胜平负模型如果能长期稳定达到 55%-60% 的硬分类命中率,已经不低。
但 55% 命中率意味着失败率是:
45%
连续失败概率:
连续 2 场失败
0.45^2 = 0.2025
约:
20.25%
连续 3 场失败
0.45^3 = 0.091125
约:
9.11%
连续 4 场失败
0.45^4 = 0.0410
约:
4.10%
连续 5 场失败
0.45^5 = 0.01845
约:
1.85%
如果你长期观察几百场,连续 5 场不理想完全可能出现。
所以,一个模型短期连错几场,不一定说明它失效。
它可能仍然在正常方差范围内。
关键要看:
这段低谷是否超过历史正常范围;
是否只发生在某个联赛;
是否概率校准开始失真;
是否特征或数据源出问题;
是否模型分布整体偏移。
不能只靠情绪判断。
七、短期高命中率也可能只是方差
方差不仅会带来低谷,也会带来高峰。
假设一个模型真实命中率是 55%。
它在长期样本里只是中等偏好。
但在某 10 场比赛里,它完全可能命中 7 场、8 场。
这不代表模型突然变神。
只是短期波动。
我们可以用直觉理解。
如果一个事件每次成功概率 55%,连续做很多组 10 场实验,有些组会:
10中4
10中5
10中6
10中7
10中8
都会出现。
所以“近10中8”不能证明模型长期有 80% 水平。
它可能只是方差带来的短期高峰。
同理,“近10中3”也不能直接证明模型废了。
它可能是短期低谷。
模型评估必须看长期,不要被短期高低带着走。
八、为什么短期命中率波动会这么大?
可以从样本量理解。
如果样本只有 10 场,一场比赛就占:
1 / 10 = 10%
也就是说,只要多中一场或少中一场,命中率就变化 10 个百分点。
如果样本是 20 场,一场占:
1 / 20 = 5%
如果样本是 100 场,一场占:
1 / 100 = 1%
如果样本是 1000 场,一场占:
1 / 1000 = 0.1%
样本越小,单场影响越大。
这就是为什么 10 场、20 场的表现很不稳定。
比如 10 场里:
6中 = 60%
7中 = 70%
8中 = 80%
差别看起来巨大,但其实只差 1、2 场。
所以不能用小样本判断模型水平。
这也是大数定律下一章会继续讲的内容。
九、方差和期望值是什么关系?
上一章讲了期望值。
期望值衡量长期平均结果。
方差衡量过程波动。
这两个概念必须一起看。
一个模型可以有正期望,但方差很大。
例如:
长期 EV > 0
但失败率较高
过程经常大起大落
这种模型长期可能有价值,但短期体验很差。
另一个模型可能 EV 较低,但方差较小。
例如:
命中率较高
回报较低
每次波动较小
它看起来平稳,但长期价值可能有限。
所以评估模型时不能只看 EV。
也不能只看命中率。
要同时看:
期望值;
方差;
最大回撤;
样本量;
概率校准;
模型分歧。
一个高 EV 高方差模型,不一定适合所有使用场景。
一个低 EV 低方差模型,也不一定有长期价值。
模型评估必须同时看平均和波动。
十、什么是最大回撤?
方差描述整体波动。
最大回撤描述最痛的一段下跌。
最大回撤可以理解为:
从历史高点到之后低点,最大下跌幅度是多少。
假设一个模型的累计表现是:
0 → +5 → +12 → +20 → +16 → +9 → +4 → +13
最高点是:
+20
之后最低跌到:
+4
最大回撤:
20 - 4 = 16
也就是说,虽然最后又回到 +13,但过程中曾经从 +20 跌到 +4,回撤了 16 个单位。
最大回撤很重要。
因为它告诉你:
模型最难受的时候,过程会有多糟糕。
很多模型最终结果看起来不错,但中间回撤很大。
如果只看最终结果,不看回撤,就会低估真实风险。
十一、为什么模型长期表现好,也可能让后来者体验很差?
假设一个模型从历史起点到现在累计结果是:
0 → +50
看起来不错。
但如果你是在模型达到 +50 时开始使用,接下来它正常回撤到 +30,你的体验是:
+50 → +30
也就是:
-20
从模型长期曲线看,它仍然是正的。
但从你的使用起点看,是亏的、是回撤的。
这说明:
进入时间点会影响体验。
很多人看到模型近期表现很好才开始关注。
但近期表现好,可能已经处于短期高点。
后面出现正常回撤,并不奇怪。
所以,评估模型不能只看过去累计结果。
还要看:
历史最大回撤;
回撤持续时间;
回撤恢复速度;
当前是否处于高点;
近期表现是否明显高于长期均值。
这些都和方差有关。
十二、方差大的模型,为什么更容易让人误判?
高方差模型会让人产生两种错觉。
第一种错觉:高峰时觉得模型很神
模型连续表现好时,人会觉得:
终于找到规律了。
这个模型非常强。
近期状态太好了。
但这可能只是高方差带来的上行波动。
第二种错觉:低谷时觉得模型失效
模型连续不理想时,人会觉得:
模型没用了。
规律变了。
是不是要马上换模型?
但这可能只是正常下行波动。
高方差模型最容易让人情绪化。
所以模型评估必须用长期统计,而不是短期感受。
十三、如何判断是正常方差,还是模型真的失效?
这是一个非常重要的实际问题。
模型短期变差后,不能马上下结论。
要按几个维度检查。
1. 样本量够不够?
如果只有最近 20 场表现差,可能只是波动。
如果最近 500 场持续变差,就更值得警惕。
2. 是否集中在某个联赛?
如果所有联赛都变差,可能是整体模型问题。
如果只有某个联赛变差,可能是联赛环境或数据源问题。
3. 概率校准是否偏离?
例如模型给 60%-70% 主胜概率的比赛,长期实际主胜明显下降。
这比单纯命中率下降更重要。
4. LogLoss 和 Brier Score 是否同时变差?
如果只是命中率短期下降,但概率指标还稳定,可能是波动。
如果概率指标也持续变差,问题更严重。
5. 特征分布是否变化?
比如某些重要特征均值、缺失率、范围突然变化。
可能是数据源或环境改变。
6. 模型分歧是否变大?
如果 LightGBM、泊松、逻辑回归之间分歧突然变大,可能说明模型环境不稳定。
这些检查比“最近准不准”重要得多。
十四、方差和模型置信度有什么关系?
如果模型输出概率很高,但实际过程波动很大,就说明模型可能过度自信。
例如模型经常输出:
主胜 80%
但这类比赛长期主胜只有:
65%
这说明模型没有正确反映方差。
它把不确定性压得太低了。
一个好的概率模型,不应该只是追求高概率输出。
它应该把不确定性表达出来。
如果比赛本身风险高,模型应该输出更分散的概率。
例如:
主胜 45%
平局 30%
客胜 25%
而不是硬给:
主胜 70%
平局 18%
客胜 12%
方差大的比赛,概率分布应该更分散。
如果模型在高方差场景里仍然非常自信,就需要检查校准。
十五、不同类型模型的方差可能不同
不同模型输出的波动特征不同。
1. 泊松模型
泊松模型通常比较结构化。
它会根据预期进球输出分布。
如果 λ 估计比较平稳,泊松输出也相对平稳。
但如果 λ 对近期进球过于敏感,泊松也会波动。
2. 逻辑回归
逻辑回归通常比较保守。
它不太容易输出极端概率。
因此方差可能相对小,但表达能力也有限。
3. LightGBM
LightGBM 表达能力强。
它可能捕捉复杂关系,也更可能输出较激进概率。
如果过拟合,短期波动会更明显。
所以,多模型融合可以降低单模型方差。
如果多个模型都一致,判断更稳。
如果模型分歧很大,就要提高不确定性。
十六、如何降低模型输出的方差?
不是让比赛本身变稳定,而是让模型更稳地表达概率。
可以从几个方向做。
1. 增加样本量
样本越多,模型越不容易被短期波动带偏。
2. 控制模型复杂度
复杂模型容易过拟合历史噪音。
3. 使用多窗口特征
不要只看最近 5 场。
同时看短期、中期、长期。
4. 概率校准
防止模型过度自信。
5. 多模型融合
不同模型互相校验,降低单一模型波动。
6. 分联赛建模或校准
不同联赛环境不同,混在一起可能增加不稳定。
7. 不对高不确定性比赛强行输出明确结论
模型分歧大时,应该降低表达强度。
这也是降低产品层面波动感的重要方式。
十七、方差不能被消灭,只能被管理
这句话非常重要。
很多人希望模型没有波动。
这不现实。
只要模型预测的是足球比赛,就一定会面对方差。
你无法消灭:
红牌;
点球;
补时;
门将失误;
低概率爆冷;
强队久攻不下;
平局;
临场轮换。
所以成熟模型系统不是承诺没有波动。
而是要管理波动。
包括:
长期评估;
概率校准;
最大回撤监控;
模型分歧识别;
不确定性提示;
数据质量监控;
赛后复盘。
理解方差之后,就不会因为短期好坏频繁否定或神化模型。
十八、方差在产品表达中应该怎么体现?
如果模型面对一场高不确定性比赛,产品表达应该更克制。
例如模型输出:
主胜 42%
平局 31%
客胜 27%
这场概率分布分散。
产品可以表达:
本场结果分布较分散,主队只是略占优势,不确定性偏高。
不要写:
主队方向明确。
再比如模型分歧很大:
泊松模型:
主胜 46%
平局 31%
客胜 23%
LightGBM:
主胜 67%
平局 20%
客胜 13%
这种情况可以表达:
复杂模型对主队更乐观,但基础模型相对谨慎,模型分歧较大。
产品语言应该让用户感知方差。
不是掩盖方差。
这也是数据产品区别于结果推荐的重要地方。
十九、一个完整例子:模型 60% 命中率下的短期波动
假设一个模型长期真实命中率是 60%。
我们观察 10 场。
理论上,平均应该中 6 场。
但实际可能出现:
10中4
10中5
10中6
10中7
10中8
都不奇怪。
如果某一组 10 场中 8 场,很多人会觉得模型很强。
但这只是短期样本。
如果下一组 10 场只中 4 场,也不一定说明模型突然变差。
长期看,很多组加起来可能才接近 60%。
比如 10 组,每组 10 场:
第1组:8中
第2组:5中
第3组:6中
第4组:4中
第5组:7中
第6组:6中
第7组:5中
第8组:7中
第9组:6中
第10组:6中
总命中:
8+5+6+4+7+6+5+7+6+6 = 60
总场次:
100
总命中率:
60 / 100 = 60%
你看,长期 60% 的模型,局部也会出现 10中8 和 10中4。
这就是方差。
二十、方差和大数定律的关系
方差解释短期波动。
大数定律解释长期收敛。
简单说:
短期样本里,结果可能偏离真实概率。
样本越大,平均结果越接近真实概率。
如果一个模型真实命中率是 60%,短期 10 场可能很不稳定。
但如果样本增加到 1000 场,整体命中率更可能接近 60%。
这就是下一章要讲的大数定律。
方差和大数定律是连在一起的。
方差告诉你:
短期不要太相信。
大数定律告诉你:
长期样本才有意义。
二十一、本章实操检查清单
评估模型方差时,可以检查:
1. 是否只看了最近10场、20场?
2. 是否统计长期样本?
3. 是否计算不同时间段表现?
4. 是否记录最大回撤?
5. 是否区分正常波动和模型失效?
6. 是否检查 LogLoss 和 Brier Score 是否同步变差?
7. 是否检查概率校准是否偏离?
8. 是否分联赛观察波动?
9. 是否观察模型高概率区间是否过度自信?
10. 是否把短期高命中误认为模型变强?
11. 是否把短期低命中误认为模型失效?
12. 是否用多模型一致性判断不确定性?
这份清单能帮助你避免被短期表现带偏。
本章小结
方差衡量的是结果波动。
足球比赛天然高方差。
因为它是低比分运动,单个事件影响大,平局比例不低,比赛过程动态变化,短期样本很容易偏离长期概率。
即使模型长期命中率达到 55%-60%,也会出现连续不理想。
短期连对不一定说明模型很强。
短期连错也不一定说明模型失效。
单看最近 10 场、20 场,很容易被方差骗。
评估足球模型,必须同时看:
期望值;
方差;
最大回撤;
样本量;
概率校准;
分联赛表现;
分时间段表现。
方差不能被消灭。
只能被理解、监控和管理。
下一章我们继续讲:
大数定律是什么?为什么足球模型必须看长期样本。
本文仅供足球数据研究和模型训练学习参考,不构成任何投注建议。
