356. NFL Big Data Bowl | nfl-big-data-bowl-2020
df['S'] = df['Dis']*10
主办方说明:
Dis measures time covered in the most recent window of player tracking data.
Given that tracking data roughly covers 10 frames per second,
Dis corresponds to distance traveled in the recent 0.1 seconds.
Note that speed and acceleration are directly calculated using Dis (this is done in the data pre-processing)
(译文:Dis 衡量的是最近窗口期内球员追踪数据所覆盖的时间。鉴于追踪数据大致覆盖每秒 10 帧,Dis 对应于最近 0.1 秒内行进的距离。注意,速度和加速度是直接使用 Dis 计算的(这是在数据预处理中完成的)。)
我创建了大约 300 个特征。
# N 秒后球员的位置
df['X_after_N_seconds'] = df['X'] + df['S'] * np.cos(np.deg2rad(df['Dir'])) * N
df['Y_after_N_seconds'] = df['Y'] + df['S'] * np.sin(np.deg2rad(df['Dir'])) * N
结构如下:
x = Concatenate(axis=1)([category_features_embedding, num_features])
x = Dense(150, activation='softplus')(x)
x = Dropout(0.5)(x)
x = Dense(100, activation='softplus')(x)
x = Dropout(0.25)(x)
predictions = Dense(num_classes, activation='softmax')(x)
使用保守的参数。
例如:'num_leaves': 10, 'max_depth': 3, 'min_data_in_leaf': 150, 'max_bin': 64
这在 LB(公开排行榜)上带来了 +0.00005 的提升。
例如,如果码线是 30,可能的推进码数在 -30 到 70 之间。
max_yard = 99 + 70
min_yard = 99 + -30
pred[max_yard-1] += pred[max_yard:].sum()
pred[max_yard:] = 0
pred[min_yard+1] += pred[:min_yard].sum()
pred[:min_yard] = 0
对 2 个神经网络和 1 个 LightGBM 模型的结果进行平均。
・预测异常值
我认为准确预测长码数会带来很大的提升。但我没能成功。
・使用 2017 赛季的 A 数据
这导致了我的模型过拟合。我该如何处理 2017 年的 A 数据呢...?