版本 1.1.0¶
我们很高兴宣布 AutoGluon 1.1 版本发布。
AutoGluon 1.1 版本包含时间序列模块的重大改进,通过添加 Chronos(一个用于时间序列预测的预训练模型)以及众多其他增强功能,相对于 AutoGluon 1.0 实现了 60% 的胜率。其他模块也通过新功能得到了增强,例如支持 Conv-LORA,并提高了大小在 5 - 30 GB 之间的大型表格数据集的性能。有关 AutoGluon 1.1 功能的完整细分,请参阅以下的功能亮点和详细增强功能。
此版本支持 Python 3.8、3.9、3.10 和 3.11 版本。不支持加载在旧版 AutoGluon 上训练的模型。请使用 AutoGluon 1.1 重新训练模型。
此版本包含来自 20 位贡献者的 121 次提交!
完整贡献者列表(按提交次数排序)
@shchur @prateekdesai04 @Innixma @canerturkmen @zhiqiangdon @tonyhoo @AnirudhDagar @Harry-zzh @suzhoum @FANGAreNotGnu @nimasteryang @lostella @dassaswat @afmkt @npepin-hub @mglowacki100 @ddelange @LennartPurucker @taoyang1122 @gradientsky
特别感谢 @ddelange 在 Python 3.11 支持和 Ray 版本升级方面的持续协助!
焦点¶
AutoGluon 在 ML 竞赛中取得靠前排名!¶
自 AutoGluon 1.0 发布以来,AutoGluon 在 Kaggle 上得到了广泛采用。在过去 90 天里,AutoGluon 已被用于超过 130 个 Kaggle notebook 中,并在超过 100 个讨论帖中被提及!最令人兴奋的是,自 2024 年初以来,AutoGluon 已被用于在数千名竞争对手参与的多个竞赛中取得靠前排名。
排名 |
竞赛 |
作者 |
日期 |
AutoGluon 详情 |
备注 |
---|---|---|---|---|---|
:3rd_place_medal: 排名 3/2303 (前 0.1%) |
2024/03/31 |
v1.0, 表格数据 |
Kaggle Playground 系列 S4E3 |
||
:2nd_place_medal: 排名 2/93 (前 2%) |
2024/03/21 |
v1.0, 表格数据 |
|||
:2nd_place_medal: 排名 2/1542 (前 0.1%) |
2024/03/01 |
v1.0, 表格数据 |
|||
:2nd_place_medal: 排名 2/3746 (前 0.1%) |
2024/02/29 |
v1.0, 表格数据 |
Kaggle Playground 系列 S4E2 |
||
:2nd_place_medal: 排名 2/3777 (前 0.1%) |
2024/01/31 |
v1.0, 表格数据 |
Kaggle Playground 系列 S4E1 |
||
排名 4/1718 (前 0.2%) |
2024/01/01 |
v1.0, 表格数据 |
Kaggle Playground 系列 S3E26 |
我们很高兴数据科学社区正在将 AutoGluon 作为他们快速有效地实现靠前排名机器学习解决方案的首选方法!有关使用 AutoGluon 的竞赛解决方案的最新列表,请参阅我们的 AWESOME.md,如果您在竞赛中使用了 AutoGluon,请随时告诉我们!
Chronos,一个用于时间序列预测的预训练模型¶
AutoGluon-TimeSeries 现在推出了 Chronos,这是一个在大型开源时间序列数据集集合上预训练的预测模型系列,可以为新的未见数据生成准确的零样本预测。请查阅新教程,了解如何通过熟悉的 TimeSeriesPredictor
API 使用 Chronos。
通用¶
PyTorch, CUDA, Lightning 版本升级。 @prateekdesai04 @canerturkmen @zhiqiangdon (#3982, #3984, #3991, #4006)
Scikit-learn 版本升级。 @prateekdesai04 (#3872, #3881, #3947)
时间序列¶
亮点¶
AutoGluon 1.1 版本为时间序列模块带来了许多新功能和改进。这些功能包括高度请求的功能,例如特征重要性、支持分类协变量、可视化预测能力以及日志记录增强。新版本还显著提高了预测准确性,与之前的 AutoGluon 版本相比,胜率达到 60%,平均错误率降低 3%。这些改进主要归因于 Chronos 的添加、改进的预处理逻辑以及缺失值的原生处理。
新功能¶
添加 Chronos 预训练预测模型(教程)。 @canerturkmen @shchur @lostella (#3978, #4013, #4052, #4055, #4056, #4061, #4092, #4098)
使用
TimeSeriesPredictor.feature_importance()
衡量特征和协变量对预测准确性的重要性。 @canerturkmen (#4033, #4087)使用
TimeSeriesPredictor.persist()
将模型持久化到内存中,提高推理速度。 @canerturkmen (#4005)添加
RMSLE
评估指标。 @canerturkmen (#3938)启用文件日志记录。 @canerturkmen (#3877)
添加在训练后保留 lightning 日志的选项,使用
keep_lightning_logs
超参数。 @shchur (#3937)
修复和改进¶
修复随机种子不一致的问题。 @canerturkmen @shchur (#3934, #4099)
微小修复。 @canerturkmen, @shchur, @AnirudhDagar (#4009, #4040, #4041, #4051, #4070, #4094)
AutoMM¶
亮点¶
AutoMM 1.1 引入了创新的 Conv-LoRA,这是一种参数高效微调 (PEFT) 方法,源自我们在 ICLR 2024 上发表的最新论文,题为“卷积遇上 LoRA:用于 Segment Anything Model 的参数高效微调”。Conv-LoRA 专为微调 Segment Anything Model 而设计,在自然图像、农业、遥感和医疗保健等不同领域的各种语义分割任务中,与之前的 PEFT 方法(如 LoRA 和视觉提示微调)相比,表现出卓越的性能。请查阅我们的 Conv-LoRA 示例。
新功能¶
添加了 Conv-LoRA,一种新的参数高效微调方法。 @Harry-zzh @zhiqiangdon (#3933, #3999, #4007, #4022, #4025)
添加了对新列类型 ‘image_base64_str’ 的支持。 @Harry-zzh @zhiqiangdon (#3867)
添加了在 FT-Transformer 中加载预训练权重的支持。 @taoyang1122 @zhiqiangdon (#3859)
修复和改进¶
修复了语义分割中的错误。 @Harry-zzh (#3801, #3812)
修复了 PEFT 方法中的错误。 @Harry-zzh (#3840)
对于 high_quality 和 best_quality 预设,目标检测训练速度提高了约 30%。 @FANGAreNotGnu (#3970)
弃用 Grounding-DINO @FANGAreNotGnu (#3974)
修复了 lightning 升级问题 @zhiqiangdon (#3991)
修复了在知识蒸馏中将 f1, f1_macro, f1_micro 用于二元分类的问题。 @nimasteryang (#3837)
由于许可问题,已从安装中移除 MyMuPDF。用户需要自行安装才能进行文档分类。 @zhiqiangdon (#4093)
表格数据¶
亮点¶
AutoGluon-Tabular 1.1 主要侧重于错误修复和稳定性改进。特别是,我们通过使用二次抽样进行决策阈值校准和将加权集成拟合到 100 万行,极大地提高了大小在 5 - 30 GB 之间的大型数据集的运行时性能,在保持相同质量的同时执行速度大大加快。我们还将默认的加权集成迭代次数从 100 次调整为 25 次,这将使所有加权集成拟合时间加快 4 倍。我们对 fit_pseudolabel
逻辑进行了大量重构,现在应该能取得显著更好的结果。
修复和改进¶
修复
predictor.fit_weighted_ensemble(refit_full=True)
中的返回值。 @Innixma (#1956)修复 LightGBM、CatBoost 和 XGBoost 在 HPO 期间内存检查崩溃的问题。 @Innixma (#3931)
LightGBM 版本升级。 @mglowacki100, @Innixma (#3427)
修复如果 Ray 未初始化,内存安全的子拟合会被跳过的问题。 @LennartPurucker (#3868)
日志记录改进。 @AnirudhDagar (#3873)
文档和 CI¶
添加自动基准测试报告生成。 @prateekdesai04 (#4038, #4039)
修复表格单元测试挂起的问题。 @prateekdesai04 (#4031)
添加 CI 运行之间的包版本比较 @prateekdesai04 (#3962, #3968, #3972)
更新 conf.py 以反映当前年份。 @dassaswat (#3932)
避免冗余的单元测试运行。 @prateekdesai04 (#3942)
修复 colab notebook 链接 @prateekdesai04 (#3926)