Zing 论坛

正文

机器学习预测马拉松完赛时间:2023波士顿马拉松数据分析实践

本文介绍了一个基于2023年波士顿马拉松数据集(26,598名跑者)的机器学习项目,通过年龄组、性别和半程成绩预测全程完赛时间,对比了线性回归、神经网络和集成树模型,最终实现了RMSE仅9.42分钟的高精度预测。

机器学习马拉松预测回归分析波士顿马拉松数据清洗模型对比集成学习体育数据分析
发布时间 2026/05/03 06:12最近活动 2026/05/03 09:41预计阅读 3 分钟
机器学习预测马拉松完赛时间:2023波士顿马拉松数据分析实践
1

章节 01

【导读】机器学习预测波士顿马拉松完赛时间:高精度模型实践

本文基于2023年波士顿马拉松26,598名跑者的真实数据,通过年龄组、性别和半程成绩预测全程完赛时间,对比了基线比例法、线性回归、神经网络和Bagged Trees集成模型,最终Bagged Trees集成模型实现RMSE仅9.42分钟的高精度预测(R²=0.953),验证了简单模型在该任务中的优异表现。

2

章节 02

项目背景与数据来源

波士顿马拉松作为世界六大马拉松赛事之一,数据具有极高研究价值。本项目使用2023年赛事26,598名完赛跑者数据,核心特征包括:

  • 年龄组:11个年龄段(18-24至70+),分类编码
  • 性别:男/女二元分类
  • 半程时间:秒为单位的半程成绩(预测最强信号) 目标变量为净完赛时间(起跑至终点实际用时)。
3

章节 03

数据清洗与预处理流程

  1. 缺失值处理:用MATLAB rmmissing移除含缺失值记录
  2. 异常值过滤
    • 正向时间验证:排除退赛(DNF)零值
    • 配速比例约束:剔除全程/半程时间比值超出1.80-3.20的异常数据
  3. 特征工程
    • 分类变量独热编码(避免测试集未见类别)
    • 半程时间标准化(仅用训练集均值/标准差,防数据泄露)
  4. 数据集按80/20划分训练/测试集,随机种子42确保可复现。
4

章节 04

模型选择与训练策略

对比四模型:

  1. 基线比例法:假设全程=半程×平均系数,提供性能下限
  2. 线性回归:MATLAB fitlm,可解释性强,系数反映特征影响
  3. 神经网络:三层结构[64,32,16],ReLU激活,捕捉非线性交互
  4. Bagged Trees集成:MATLAB fitrensemble,150学习器+最小叶节点10,降低方差提升泛化。
5

章节 05

实验结果与关键发现

测试集表现(部分指标):

排名 模型 RMSE(分钟) ±10分钟准确率
1 Bagged Trees集成 9.42 0.953 78%
2 线性回归 9.70 0.951 77%
3 神经网络 9.75 0.950 77%
4 基线比例法 10.11 0.947 72%
关键发现:
  • 集成模型微弱领先,但线性模型简洁性更优
  • 半程时间是主导特征,单独解释大部分方差
  • 简单模型(线性回归)与复杂模型性能相当,问题信号本质线性。
6

章节 06

扩展应用与技术实现

二分类扩展:设定3:00/3:30等完赛阈值,转换为“能否在X小时内完赛”二元决策,准确率达94%-98%。 技术实现

  • MATLAB脚本:marathon_models.m端到端流水线
  • 开源资源:清洗后数据集、模型包、结果表
  • 交互式网站:可视化模型排行、精度带分析、残差图等。
7

章节 07

实践启示与项目总结

启示

  • 单位选择:分钟比秒更直观,±X分钟准确率更实用
  • 可复现性:固定随机种子+标准化流程是工程关键
  • 特征理解:深入分析半程与全程关系比调优模型更重要 总结:项目验证“简单模型优先”原则,线性/轻量级集成是性价比最高选择,开源资源为体育数据科学提供实践参考。