fern://programming
← 日志

一场比赛的评分,大部分无法预测

按位置专门建模没有胜过单一的通用模型,近期状态还不如完全没有信息,而门将的评分谁也预测不了。论文的答案是否定的。

沿用 当 R² 好得过头 中的设定:在开球前预测每名球员的 Sofascore 评分,只使用主客场、对手实力和球员自己的历史数据。在 2025 年巴西甲级联赛的最后 80 场比赛上做前向滚动验证,共 2,494 人次出场。

模型MAER²
球员近 5 场平均0.412-0.06
位置平均0.3980.01
球员赛季平均0.3890.05
位置专用模型0.3750.10
通用随机森林0.3740.10

位置专用模型没有帮助

通用模型的 MAE 减去位置专用模型的 MAE 为 -0.0014,95% 置信区间为 -0.0036, 0.0008。这个区间来自 2,000 次 bootstrap 重抽样,每次抽取的是整场比赛而不是单行数据,因为同一场比赛中的球员并不相互独立。区间包含零,所以两者打平。决策规则在看到任何结果之前就已确定:如果打平,保留通用模型,因为一个模型比四个更简单。位置专用模型在任何一个位置上都没有胜出。

近期状态是噪声

球员近 5 场的平均评分,表现甚至不如完全不看这名球员、直接猜该位置的平均值。整个赛季的平均值则比两者都好。在五场比赛的尺度上,手感好或差大多只是噪声。置换重要性也印证了这一点:通用模型主要依赖两个特征,主客场和球员本赛季的平均评分。其余 61 项数据的历史几乎没有贡献。

门将

对门将来说,没有任何模型能明显胜过基线(通用模型和位置平均的 MAE 都是 0.559,R² 略低于零)。门将的评分取决于这场比赛中的扑救和失球,而在开球前,根本无法知道他会面对 2 次射门还是 12 次。

预测值紧贴平均值

测试集中真实评分的范围是 3.0 到 9.7,标准差为 0.54。通用模型的预测值范围是 6.63 到 7.41,标准差为 0.16。测试集中有 108 人次的评分在 8.0 或以上,模型的预测从来没有接近过其中任何一个。它会在主场比赛、以及本赛季表现好的球员身上把预测值往上调一点,但无法预见一场格外好或格外差的比赛。

答案

按位置专门建模并没有降低误差。通用模型比位置平均好 6.0%,比球员自己的赛季平均好 3.9%,而第二个差距是真实存在的(它的置信区间不包含零)。数字不大,但这就是信号的真实大小:一场比赛的评分,大部分是在比赛过程中决定的。

代码和完整方法:sofascore-rating-prediction。