沿用 当 R² 好得过头 中的设定:在开球前预测每名球员的 Sofascore 评分,只使用主客场、对手实力和球员自己的历史数据。在 2025 年巴西甲级联赛的最后 80 场比赛上做前向滚动验证,共 2,494 人次出场。
| 模型 | MAE | R² |
|---|---|---|
| 球员近 5 场平均 | 0.412 | -0.06 |
| 位置平均 | 0.398 | 0.01 |
| 球员赛季平均 | 0.389 | 0.05 |
| 位置专用模型 | 0.375 | 0.10 |
| 通用随机森林 | 0.374 | 0.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。