405. Lyft Motion Prediction for Autonomous Vehicles | lyft-motion-prediction-autonomous-vehicles
非常感谢 Lyft 和 Kaggle 团队举办这次比赛。祝贺所有的获奖者。特别感谢我所有的队友能与我组队!!一起讨论的时光非常有见地,也是最令人愉快的。
我们解决方案的重点在于我们制作了自定义掩码。
同一场景中相隔一帧的智能体数据非常相似。因此,为了高效学习,我们创建了一个自定义掩码,每 N 帧加载一次数据。例如,通过每 5 帧采样一次数据,训练数据减少了 5 倍,从而实现了更快的学习。
为了进一步提高效率,我们根据目标距离对数据进行了平衡。大约 65% 的数据目标距离小于 6 米,这些属于简单任务。因此,为了高效训练困难数据,我们对 6 米以下的数据进行了下采样。这使数据减少了一半。最终,数据量大约为 80,000 次迭代 x 64 批量大小。

除了 CNN,我们还使用了 LSTM 编码器和 LSTM 解码器。
首先,我们使用目标距离平衡掩码训练模型。然后使用非平衡掩码进行额外学习。我们在额外训练时使用了 log10 缩放的损失函数,因为训练/验证损失会以大幅度反复上下波动。通过这种方法进行两天的模型训练,我们的公开得分降到了 13 以下,私有得分约为 12。
正如这个帖子中所讨论的,我们发现堆叠可以提高分数,但没时间将最佳模型集成到堆叠中了……
直到比赛中途,我错误地将 satellite_debug 用作了 3 通道地图信息,而不是 semantic_map。有趣的是,这个模型的公开得分为 13.3。
因为意识到这个错误后我就没有继续深入研究,但看来卫星地图在这个任务中也能取得不错的分数。如果你喜欢,可以尝试一下!!!
将栅格化图像数据处理成 RGB×T×H×W 的形式,然后输入到 R2+1D 中。
验证分数与 resnet18 相当,但栅格化过程和 3D-CNN 模型太重了,训练所需时间是原来的两到三倍。
我们训练了 Seq2seq 模型,不仅使用了目标智能体的历史位置,还使用了周围车辆的历史位置。尽管没有地图信息,该模型的验证得分仍达到了 24。我们将这个训练好的 seq2seq 模型集成到训练好的 resnet18 模型中,并对拼接后的模型进行了微调。遗憾的是,分数的提升微乎其微。