版本 0.8.0¶
我们很高兴宣布 AutoGluon 0.8 版本发布。
注意:不支持加载在不同版本的 AutoGluon 中训练的模型。
此版本包含来自 20 位贡献者的 196 次提交!
查看完整的提交更改日志:https://github.com/autogluon/autogluon/compare/0.7.0…0.8.0
特别感谢 @geoalgo 在本次版本中共同生成实验性的表格 Zeroshot-HPO 组合!
全部贡献者列表(按提交次数排序)
@shchur, @Innixma, @yinweisu, @gradientsky, @FANGAreNotGnu, @zhiqiangdon, @gidler, @liangfu, @tonyhoo, @cheungdaven, @cnpgs, @giswqs, @suzhoum, @yongxinw, @isunli, @jjaeyeon, @xiaochenbin9527, @yzhliu, @jsharpna, @sxjscience
AutoGluon 0.8 支持 Python 版本 3.8、3.9 和 3.10。
变更¶
亮点¶
AutoGluon TimeSeries 引入了多项重大改进,包括新模型、提升预测准确性的升级预设,以及加速训练和推理的优化。
AutoGluon Tabular 现在支持**二元分类中的决策阈值校准** (API),这极大地提升了
f1
和balanced_accuracy
等评估指标。例如,f1
分数从0.70
提升到0.73
并非罕见。我们**强烈**建议所有使用这些指标的用户尝试新的决策阈值校准逻辑。AutoGluon MultiModal 引入了两项新功能:1) **PDF 文档分类**,以及 2) **开放词汇目标检测**。
AutoGluon MultiModal 升级了目标检测的预设,现在提供
medium_quality
、high_quality
和best_quality
选项。经验结果表明,在使用相同预设的情况下,mAP(平均精度均值)指标相对提升了约 20%。AutoGluon Tabular 添加了一个实验性的 **Zeroshot HPO 配置**,在提供至少一小时训练时间的情况下,该配置在小于 10000 行的小型数据集上表现良好(相对于
best_quality
,胜率约为 60%)。要尝试此配置,请在调用fit()
时指定presets="experimental_zeroshot_hpo_hybrid"
。AutoGluon EDA 添加了对**异常检测**和**局部依赖图**的支持。
AutoGluon Tabular 添加了对预训练的表格 Transformer 模型 **TabPFN** 的实验性支持。当推理速度不是主要考虑因素且训练数据行数小于 10000 时,TabPFN 是一个可行的模型选项。通过
pip install autogluon.tabular[all,tabpfn]
来尝试(超参数键为“TABPFN”)!
通用¶
通用文档改进 @tonyhoo @Innixma @yinweisu @gidler @cnpgs @isunli @giswqs (#2940, #2953, #2963, #3007, #3027, #3059, #3068, #3083, #3128, #3129, #3130, #3147, #3174, #3187, #3256, #3258, #3280, #3306, #3307, #3311, #3313)
通用代码修复和改进 @yinweisu @Innixma (#2921, #3078, #3113, #3140, #3206)
CI 改进 @yinweisu @gidler @yzhliu @liangfu @gradientsky (#2965, #3008, #3013, #3020, #3046, #3053, #3108, #3135, #3159, #3283, #3185)
更新命名空间包以兼容 PEP420 @gradientsky (#3228)
多模态¶
AutoGluon MultiModal(也称为 AutoMM)引入了两项新功能:1) PDF 文档分类,以及 2) 开放词汇目标检测。此外,我们升级了目标检测的预设,现在提供 medium_quality
、high_quality
和 best_quality
选项。经验结果表明,在使用相同预设的情况下,mAP(平均精度均值)指标相对提升了约 20%。
新功能¶
PDF 文档分类。参阅教程 @cheungdaven (#2864, #3043)
开放词汇目标检测。参阅教程 @FANGAreNotGnu (#3164)
性能改进¶
将检测引擎从 mmdet 2.x 升级到 mmdet 3.x,并升级我们的预设 @FANGAreNotGnu (#3262)
medium_quality
: yolo-s -> yolox-lhigh_quality
: yolox-l -> DINO-Res50best_quality
: yolox-x -> DINO-Swin_l
启用检测骨干网络冻结以提高微调速度并节省 GPU 使用 @FANGAreNotGnu (#3220)
其他增强功能¶
支持将数据路径传递给 fit() API @zhiqiangdon (#3006)
将 TIMM 升级到最新版本 v0.9.* @zhiqiangdon (#3282)
支持目标检测的 xywh 输出格式 @FANGAreNotGnu (#2948)
支持自定义高级图像数据增强。用户可以传递 torchvision transform 对象列表作为图像增强。 @zhiqiangdon (#3022)
添加 yoloxm 和 yoloxtiny @FangAreNotGnu (#3038)
添加用于目标检测的 MultiImageMix 数据集 @FangAreNotGnu (#3094)
支持加载特定检查点。用户可以加载除 model.ckpt 和 last.ckpt 之外的中间检查点。 @zhiqiangdon (#3244)
添加一些用于模型统计的预测器属性 @zhiqiangdon (#3289)
trainable_parameters
返回可训练参数的数量。total_parameters
返回总参数的数量。model_size
返回以兆字节为单位的模型大小。
Bug 修复 / 代码和文档改进¶
通用 bug 修复和改进 @zhiqiangdon @liangfu @cheungdaven @xiaochenbin9527 @Innixma @FANGAreNotGnu @gradientsky @yinweisu @yongxinw (#2939, #2989, #2983, #2998, #3001, #3004, #3006, #3025, #3026, #3048, #3055, #3064, #3070, #3081, #3090, #3103, #3106, #3119, #3155, #3158, #3167, #3180, #3188, #3222, #3261, #3266, #3277, #3279, #3261, #3267)
重构问题类型和输出形状推断 @zhiqiangdon (#3227)
在训练期间记录 GPU 信息,包括 GPU 总内存、可用内存、GPU 卡名称和 CUDA 版本 @zhiqaingdon (#3291)
表格数据¶
新功能¶
添加了
calibrate_decision_threshold
(教程),允许优化给定评估指标的预测决策阈值,从而显著提高指标分数。 @Innixma (#3298)我们添加了一个实验性的 Zeroshot HPO 配置,在提供至少一小时训练时间的情况下,该配置在小于 10000 行的小型数据集上表现良好(相对于
best_quality
,胜率约为 60%)。要尝试此配置,请在调用fit()
时指定presets="experimental_zeroshot_hpo_hybrid"
@Innixma @geoalgo (#3312)通过
pip install autogluon.tabular[all,tabpfn]
来尝试(超参数键为“TABPFN”)! @Innixma (#3270)分布式训练的后端支持,将在下一个 Cloud 模块发布时提供。 @yinweisu (#3054, #3110, #3115, #3131, #3142, #3179, #3216)
性能改进¶
其他增强功能¶
Bug 修复 / 代码和文档改进¶
时间序列¶
在 v0.8 版本中,我们对时间序列模块引入了多项重大改进,包括新模型、提升预测准确性的升级预设,以及加速训练和推理的优化。
亮点¶
新功能¶
增强功能¶
次要改进 / 文档 / Bug 修复¶
探索性数据分析 (EDA) 工具¶
在 0.8 版本中,我们引入了一些新工具来帮助进行数据探索和特征工程
异常检测 @gradientsky (#3124, #3137) - 帮助识别数据中显著偏离常规的异常模式或行为。最适用于查找异常值、罕见事件或可能表明欺诈、缺陷或系统故障的可疑活动。请查看异常检测教程以探索其功能。
局部依赖图 @gradientsky (#3071, #3079) - 可视化数据集中每个个体实例的特征与模型输出之间的关系。双向变体可以可视化任意两个特征之间的潜在交互。有关更多详细信息,请参阅此教程:使用交互图了解数据信息
Bug 修复 / 代码和文档改进¶
将
quick_fit
中的回归分析切换为使用残差图 @gradientsky (#3039)向
autogluon.eda.auto
添加了explain_rows
方法 - Kernel SHAP 可视化 @gradientsky (#3014)