494. Tabular Playground Series - May 2022 | tabular-playground-series-may-2022
我们的解决方案是以下双分支网络的一些变体的融合:

我们是如何得出这个解决方案的?比赛的介绍文字给出了一个提示:“……包含许多不同的特征交互。这次比赛是一个探索各种方法来识别和利用这些特征交互的机会。” 很少有人知道如何处理这个提示。幸运的是,@sudalairajkumar 向我们展示了如何使用 Xgbfir 识别特征交互。他甚至制作了一个数据集,列出了该工具发现的所有交互。
我在信封背面画了这些交互关系的图。这个图有两个连通分量:

当时的关键想法是,我们需要一个网络,将特征交互限制在图的连通分量内(其他交互会产生噪声)。双分支网络实现了这个想法。左分支学习 ['f_00', 'f_01', 'f_02', 'f_03', 'f_04', 'f_05', 'f_06', 'f_19', 'f_20', 'f_21', 'f_22', 'f_23', 'f_24', 'f_25', 'f_26', 'f_28', 'f_30', 'ch7'] 之间的交互,右分支处理 ['f_07', 'f_08', 'f_09', 'f_10', 'f_11', 'f_12', 'f_13', 'f_14', 'f_15', 'f_16', 'f_17', 'f_18', 'f_29', 'ch0', 'ch1', 'ch2', 'ch3', 'ch4', 'ch5', 'ch6', 'ch8', 'ch9', 'unique_characters', 'i_02_21', 'i_05_22', 'i_00_01_26']。除了双分支架构外,我们的最终实现与 Advanced Keras notebook 没有什么不同。
我们也研究了决策树模型。使用超参数 interaction_constraints=[features_left, features_right] 限制特征交互帮助 LightGBM 达到了 0.99778 的 LB 分数,但这还不足以被包含在融合模型中。
特别感谢 @cabaxiom 引入了 unique_characters 特征,感谢 @wti200 展示了如何分析特征交互,感谢 @sudalairajkumar 发布了 Xgbfir 的输出结果,当然还要感谢 @pourchot,他以极大的毅力优化了我们的网络架构。