返回列表

#4 solution | Beating a dead horse: blending works, but "blending" doesn't

624. Playground Series - Season 4, Episode 9 | playground-series-s4e9

开始: 2024-09-01 结束: 2024-09-30 定价与促销 数据算法赛
#4 解决方案 | 徒劳无功:融合有效,但“伪融合”无效

#4 解决方案 | 徒劳无功:融合有效,但“伪融合”无效

作者: Tilii (Grandmaster)
发布日期: 2024-10-01
竞赛排名: 第 4 名
得票数: 39

截止前几小时这里有一个讨论,询问融合是否有效。我将总结在该帖子中的讨论要点,并概述我的解决方案。

正确的集成学习(包括融合)已经使用了很长时间,应用于各种数据集和问题。它是有效的。这不是我说的,而是一个已知的事实。

猜测权重来组合公开解决方案并不是原本意义上的融合,所以我称之为“伪融合”。这种方法可能有效也可能无效,很大程度上取决于数据集和运气。在这个数据集上运气并不在我们这边,我在处理这个数据集约 3 天后就认为会是这种情况——见这里。这种“伪融合”方法偶尔会有效,但通常不行。也许这对我们中的一些人来说已经足够了,但在经过大约 3 次竞赛后,我了解到这不适合我。

我选择了得分第 1 和第 3 的提交进行评分,所以对此非常满意。它们都是由 32 个模型组成的爬山集成。两个集成中较好的那个(相差 8 个 RMSE 点)完全由我的模型组成。第二个集成约一半是我的模型,另一半来自我认为做得很好的公开 Notebook,最重要的是那些有折外预测(OOF)的 Notebook。没有那些就无法进行正确的集成!

编辑: 感谢 @roberthatch这里提醒我,我没有适当感谢那些 OOF 模型被我用于第二个集成的团队。我还使用了 LAMA 的 OOF 模型(来源这里)、@cdeotte 的模型(来源这里)和 @ravaghi 的模型(来源这里)。

集成必须多样化才能生效,所以我的两个集成都包含了 Keras 因子分解机 (FMs)、xLearn FMs、Lasso、CatBoost、LAMA 神经网络、AutoGluon 集成,以及从 AutoGluon 目录中提取的大量独立树模型(混合了 RandomForest、ExtraTrees、XGBoost 和 LightGBM 模型)。还提取了几个 FastAI 神经网络模型,我甚至不知道如何制作这些模型,它们也是从 AutoGluon 模型的缓存中提取的。前四种方法将所有特征建模为类别特征,通常效果最好。我还使用了 AugoGluon 编码的数据集(带有一些 NLP 生成的特征)进行单独的因子分解机建模,这带来了一点提升。

尝试了特征工程,CV 分数略有提高,但 LB 分数没有。最后没有使用任何特征工程,因为我怀疑过拟合。我确实感到遗憾的一件事是太晚添加原始数据集,因为它似乎提高了整体分数。我只有 2 天的时间来整合那些使用原始二手车数据的模型,它们将我的集成提高了约 20 分。我怀疑如果更早开始,成效会更大。

同比赛其他方案