667. NeurIPS - Open Polymer Prediction 2025 | neurips-open-polymer-prediction-2025
大家好,Kaggle 伙伴们!
以下是我解决方案的简要说明。
考虑到非常高数量的特征,我需要显著减少它,我的方法如下:
来自特征生成阶段的数据集 1-4 的顶部特征数量有所不同,但对于 Tg/Tc/FFV/Rg,通常选择了 50-90 个特征,其中约 50% 来自 mordred FP。对于 FFV,平均为 300-600 个。
我总共找到并清理了约 30 个针对不同目标的数据集,但是,除了已经发布的数据集外,只使用了其中的 3 个:2 个用于 Tc,1 个用于 Density。我怀疑它们的影响,因为 LB 只有 8%,但决定保留 RadonPy 数据集。
在最终提交中,我使用了通过这种方式选择的数据集
我认为这也可能带来一些提升,但对 Tg 没有效果,所以我放弃了这个想法
我决定分别估计每个目标的性能,并用均值填充其他目标,以确保我知道提升来自哪里。这种方法有一个显著的问题 - 测试单个模型你需要为 5 个目标花费所有 5 个每日提交名额,直到最后 2 天我还没有提交我最好的组合。在最后 2 天,不幸的是,我在组合最终解决方案时犯了一些愚蠢的错误,失去了 6/10 的提交名额,剩下的 2/4 失败是因为我用完了 GPU 配额,尽管我有 45 小时的 google 订阅。
我发现来自平均值提交的最显著提升是由 Rg 目标实现的,其他目标大致相同。有趣的部分是,如果没有 @dmitryuarov 提供的外部数据源,Tg 的得分只有 112,我本应该觉得可疑,但我没有。
我阅读了 POINT2 论文,决定使用他们列出的一些方法。
在最终提交中,我使用了:
我不会在这里深入细节,主要是因为进行了数百次实验,但我会提供每个目标的简要结果,从最好到最坏排序。
| 目标 | 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|---|
| Tg | XGB | TabPFN | MLP | GREA | GNN | ChemBERTa |
| FFV | GREA | XGB | TabPFN | GNN | MLP | ChemBERTa |
| Tc | TabPFN | GREA | GNN | XGB | MLP | ChemBERTa |
| Density | GREA | GNN | TabPFN | XGB | MLP | ChemBERTa |
| Rg | XGB | TabPFN | ChemBERTa | MLP | – | – |
Rg GREA/GNN 由于 CV 性能低未提交
增强方法在我的测试中对 Rg 和 Density 有效。
我想说,可能有很多不同的实验,我相信 TabPFN 和 boosting 可以做得更好,因为我没有提交名额来选择最佳特征子集。
Aug - 表示是否使用公开笔记本中提出的增强方法
high/mid/low w - 表示融合预测值的权重高低
| 目标 | Aug | boosting | TabPFN | GREA/GNN | MLP | ChemBERTa |
|---|---|---|---|---|---|---|
| Tg | - | + 高权重 | + 高权重 | + 低权重 | + 中权重 | - |
| Tc | - | + 中权重 | + 高权重 | + 高权重 | + 低权重 | - |
| FFV | +- | + 中权重 | + 中权重 | + 高权重 | + 中权重 | - |
| Density | + | + 中权重 | + 中权重 | + 高权重 | + 中权重 | - |
| RG | + | + | + 低权重 | - | - | - |
我在发现第一个测试数据问题时加入了这次竞赛,怀疑此后是否值得参与。出于某种原因,我在过去一年参加的 3/4 竞赛都有 major 数据/指标问题、指标黑客、数据泄露,现在是测试中不同的测量单位。
总的来说,对我来说,这是一个巨大的失望,甚至不是因为我竞争金牌却只得到了银牌,而是因为我不知道我的真实结果。一些花哨的技巧,比如预测乘法,并不能减轻这种挫败感。
非常强的解决方案可能会掉出金牌区,潜在地使主办方失去新的 SOTA 方法,但他们似乎完全不感兴趣。
我想感谢所有与社区分享并突出数据问题的人,@angantyr @dmitryuarov @oleggromov 和其他人。