435. Indoor Location & Navigation | indoor-location-navigation
这是一场漫长而艰难的比赛!我想祝贺所有坚持到最后的团队。我很期待看到获胜方案的分享。
我参加这次比赛的主要目的是实验 Rapids.ai 工具,以加速深度学习模型的预处理和后处理过程。
dask 处理原始数据,将其转换为数据帧并保存为 parquets 格式。dask-cudf 从许多小的 parquets 文件中构建特征。cuml LabelEncoder、TargetEncoder、Nearest Neighbor 和 Xgboost 创建简单的模型并探索数据集。我使用 PyTorch Lightning 构建了两个 RNN 模型:
delta x & y),类似于 Olaf 的方法。该方法交替使用 代价最小化、吸附到走廊 和 吸附到网格 并迭代运行。针对每次迭代调整了超参数,例如 cost minimization 中的 alpha 和 snap grid 中的 threshold。
我用 cupy 和 cudf 重写了这些函数,速度非常快。我最好的提交结果进行了 30 次迭代,总共使用了 90 个后处理函数,耗时不到 10 分钟。虽然我没有进行精确测量,但这可能比原始实现快 100 倍。这种加速对于寻找最佳超参数非常重要。后处理使分数提高了 1.1~1.2,这是相当显著的。
我没有使用起点/终点泄露数据,也没有使用手工标注的航点。我花了很多时间构建一个端到端的神经网络,试图在训练过程中结合 cost minimization 和 snap to grids,但最终没有成功。我很期待看到成功构建了端到端模型的第 1 名团队的方法。
很遗憾,我的其他工作积压太多,所以很抱歉我的解决方案和源代码将在稍后我有时间时再分享。完成后我会更新这个帖子。