第9名方案 - Team JK
第9名方案 - Team JK
作者: tomo20180402 | 发布时间: 2023-03-05
我要感谢主办方举办了如此有趣的比赛!
我们在此分享 Team JK 的解决方案。
团队成员: @vostankovich, @tereka, @anonamename, @yururoi, @tomo20180402
概览

第一阶段 (1st stage)
yuki 部分
Vladislav 部分
- 图中的 (2) 部分。
- 特征主要从传感器数据中创建,但也使用了头盔边界框信息。
- 分别为 P2P(球员对球员)和 P2G(球员对地面)训练了 XGB 和 LGBM 模型。
- P2P 和 P2G 使用不同的特征。球员对接触有 133 个特征,地面接触有 119 个特征。
- 以下是部分特征解释:
- 排除了速度,因为它与距离相关。
- 步数(或帧号),这对分数提升很大。
- 球员在场上的位置(防守、进攻或特勤组)。
- 扭转特征(方向-朝向)。
- 同队特征。
- 是否为主队特征。
- (1、3、5米内)球员/对手的数量是非常好的特征。
- 相反朝向的球员数量。
- 球员加速度与每步所有球员平均加速度的比率。
- 同一球员特征的差值(时域上)。
- 时间特征(仅复制前几步和后几步的特征)。
- 两名球员之间的特征差异。
- 欧氏距离是主要特征,其他特征也基于此。
- 来自头盔数据框的特征(每个视角的边界框坐标、高度和宽度以及周长)。
- 头盔 IoU(交并比)特征。
- XGB/LGBM 模型使用了公共笔记本中常见的超参数进行训练。仅为两个模型添加了 reg_alpha = 0.1。
anonamename 部分 - 整合了团队成员的知识
- 图中的 (3) 部分。
- 2.5D/3D CNN 和 GBDT 的两阶段模型(5折交叉验证:0.778/公开榜:0.775/私榜:0.773)。
- 2.5D/3D CNN
- 基于 公共笔记本。
- 输入:
- 图像:15帧(±7帧,skip_frame=1),使用两个视角(Endzone 和 Sideline)。
- 追踪数据:64个特征(由 @vostankovich 创建)。
- 模型:
- 基于 DFL 比赛第1名方案。
- 流程:15帧 2.5D -> Residual3DBlock -> GeM(由 @tereka 创建)。
- 2.5D 主干网络:tf_mobilenetv3_small_minimal_100.in1k。
- 多标签分类(由 @anonamename 创建):num_classes=2(P2P 和 P2G)+ nn.BCEWithLogitsLoss。
- 折数:StratifiedGroupKFold(n_splits=5).split(y="contact_org", groups="game_id")(由 @tomo20180402 创建)。
- 为同队、不同队和地面之间的接触设置不同的标签。
- 训练数据欠采样:正:负 = 1:5(每个 epoch 更改欠采样数据