返回列表

2nd Place Solution

453. MLB Player Digital Engagement Forecasting | mlb-player-digital-engagement-forecasting

开始: 2021-06-10 结束: 2021-09-09 体育商业 数据算法赛
第二名解决方案

第二名解决方案

作者: Branden Murray, mlandry, JohnM, KazAnova
发布时间: 2021-09-27

我们的最终模型是6个GBM模型的融合(5个LightGBM,1个Xgboost),所有模型都在相同的特征上进行训练。我们在数据的最后一个月进行验证,然后在完整的数据集上重新训练模型。

模型配置

  • LightGBM - objective=”regression_l1”
  • LightGBM - objective=”regression_l2” - 目标值经过双重平方根缩放
  • LightGBM - objective=”regression_l1” - boost_from_average=True
  • LightGBM - objective=”regression_l1”, 'max_depth': -1
  • LightGBM DART - object=’regression_l1’, boosting=’dart’
  • Xgboost - 目标值经过双重平方根缩放

特征工程

我们的最终特征集包含超过1000个特征,主要分为以下3类:

  • 目标聚合 - 每位球员的目标值历史全量和滚动12个月的均值/方差。
  • 近期数据 - 每位球员过去20天/比赛的各种统计数据。例如,每位球员的 strikeouts_1_day_ago(1天前的三振数)、strikeouts_2_days_ago(2天前的三振数)……一直到 strikeouts_20_days_ago(20天前的三振数)。
  • 领域知识特征 - 基于我们的棒球知识以及引发人们推特互动的因素构建的特征。例如,再见安打/全垒打通常会引发互动。其他特征包括无安打比赛、球员的胜利概率增加值(WPA,用于判断他们是否打了一场好比赛或参与了“高杠杆”时刻)、全垒打竞赛排名、球员是否被驱逐、防御率(ERA)及其排名等。

最重要的特征

以下是我们最重要的部分特征:

  • numberOfFollowers - 球员推特关注者数量的最新值。
  • numberOfFollower_delta - 最近两个月之间推特关注者的变化量。
  • monthday - 表示当前月份和日期的整数值,例如6月4日的值为 604
  • {target}_p_var - 球员 {target} 的历史方差。
  • {target}_p_gameday_mean - 球员在比赛日 {target} 的历史均值。
  • roll12_{target}_p_mean - 球员过去12个月 {target} 的均值。
  • roll12_{target}_p_var - 球员过去12个月 {target} 的方差。
  • wpa_daily_max - 联盟每日最大胜利概率增加值。这是为每位球员计算的近似WPA值(由于无法获取精确的垒包-出局状态,计算为近似值)。
  • homeRuns_rank - 球员的全垒打排名。
  • walk_off_league - 当天联盟中是否有再见安打?
  • days_since_last_start - 球员上次投球以来的天数。这有助于模型学习球员是否可能在衡量互动的那天投球。
同比赛其他方案