当前位置: 首页 > news >正文

AutoGluon快速上手

  我叫不三不四,很高兴见到大家,欢迎一起学习交流和进步

今天来讲一讲机器学习包

AutoGluon简介:

AutoGluon 提供了多种模型来处理不同类型的数据和任务,是由 亚马逊 AWS 团队 开发的一款开源 AutoML 框架,旨在简化机器学习任务的实现过程。它支持多种数据类型,包括 结构化数据、文本、图像 和 时间序列,具有简单易用的特点。

以下是一些常见的 AutoGluon 模型:


1. LGBModel:基于 LightGBM 的模型,适用于处理结构化数据。

2. CatBoostModel:基于 CatBoost 的模型,同样适用于结构化数据。

3. XGBoostModel:基于 XGBoost 的模型,广泛用于分类和回归任务。

4. RFModel:基于随机森林的模型,使用 scikit-learn 库实现。

5. XTModel:基于 Extra Trees 的模型,也是 scikit-learn 库的一部分。

6. KNNModel:K-最近邻模型,适用于分类和回归任务。

7. LinearModel:线性模型,适用于逻辑回归等任务。

8. TabularNeuralNetTorchModel:基于 PyTorch 的神经网络模型,适用于分类和回归。

9. NNFastAiTabularModel:基于 fastai 的神经网络模型,适用于表格数据。

10. VowpalWabbitModel:基于 VowpalWabbit 的模型,适用于大规模数据集。

11. MultiModalPredictorModel:用于处理多模态数据的模型。

12. TextPredictorModel:专门用于文本数据的预测模型。

13. ImagePredictorModel:专门用于图像数据的预测模型。

自动化功能

在使用 AutoGluon 时,你可以选择其中一个模型进行训练和预测,也可以让 AutoGluon 自动为你选择和组合多个模型。AutoGluon 的一个主要优势是它的自动化特性,它可以自动进行模型选择、超参数调优和模型集成,以提高预测性能。

以下是两种使用 AutoGluon 模型的方法:


1.手动选择模型


如果你对某个特定模型有偏好,或者想要对模型进行更精细的控制,你可以选择特定的模型进行训练。例如,如果你想要使用 LightGBM 模型,可以这样做:
 

from autogluon.tabular import TabularDataset, TabularPredictor

train_data = TabularDataset('train.csv')
test_data = TabularDataset('test.csv')

predictor = TabularPredictor(label='target').fit(train_data=train_data, model='lightgbm')
predictions = predictor.predict(test_data)

2.自动模型选择和集成


AutoGluon 可以自动为你选择和组合多个模型,以提高预测性能。你只需要调用`fit`方法,AutoGluon 会自动进行模型选择和超参数调优:

from autogluon.tabular import TabularDataset, TabularPredictor

train_data = TabularDataset('train.csv')
test_data = TabularDataset('test.csv')

predictor = TabularPredictor(label='target').fit(train_data=train_data)
predictions = predictor.predict(test_data)

在这种情况下,AutoGluon 会尝试多种模型,并自动选择表现最好的模型或模型组合。

3.查看模型性能


无论选择哪种方法,你都可以查看模型的性能指标,如准确率、召回率、F1 分数等:

leaderboard = predictor.leaderboard(test_data)
print(leaderboard)


这将显示所有尝试的模型及其性能指标,帮助你了解哪个模型表现最好。

通过fit方法选择模型

一些常见的`fit`方法参数及其用途:


1.指定模型


你可以通过`model`参数指定要使用的模型。例如,如果你想要使用 LightGBM 模型,可以这样设置:

predictor = TabularPredictor(label='target').fit(train_data=train_data, model='lightgbm')


你也可以指定多个模型,AutoGluon 会尝试这些模型并选择表现最好的:

predictor = TabularPredictor(label='target').fit(train_data=train_data, model=['lightgbm', 'xgboost', 'knn'])

2.自动模型选择


如果你不指定`model`参数,AutoGluon 会自动尝试多种模型,并选择表现最好的模型或模型组合:
 

predictor = TabularPredictor(label='target').fit(train_data=train_data)

3.超参数调优


你可以通过`hyperparameters`参数指定超参数调优的策略。例如,你可以指定 LightGBM 的超参数:
 

hyperparameters = {'lightgbm': {'num_leaves': [31, 50], 'learning_rate': [0.05, 0.1]}}
predictor = TabularPredictor(label='target').fit(train_data=train_data, hyperparameters=hyperparameters)

4.训练时间限制


你可以通过`time_limit`参数限制训练时间,例如限制为 1 小时:

predictor = TabularPredictor(label='target').fit(train_data=train_data, time_limit=3600)

5.模型集成


你可以通过`presets`参数指定模型集成的策略。例如,你可以使用`best_quality`预设,AutoGluon 会尝试多种模型并选择表现最好的模型:
 

predictor = TabularPredictor(label='target').fit(train_data=train_data, presets='best_quality')

6.查看模型性能


无论选择哪种方法,你都可以查看模型的性能指标,如准确率、召回率、F1 分数等:

 

leaderboard = predictor.leaderboard(test_data)
print(leaderboard)


这将显示所有尝试的模型及其性能指标,帮助你了解哪个模型表现最好。

通过修改`fit`方法中的参数,你可以灵活地指定使用哪些模型、如何进行训练以及如何评估模型性能。AutoGluon 的自动化特性使得这些操作变得非常简单和高效。

 

相关文章:

  • 如何在Linux环境下编译文件
  • git管理时keil项目忽略文件列表
  • 试验一 mybatis 入门操作
  • 基于 NOMOTO 模型的船舶操纵性指数研究
  • DeepSeek生成测试用例的常用Prompt
  • 边缘计算革命:重构软件架构的范式与未来
  • 钉钉机器人
  • C 语 言 --- 扫 雷 游 戏(初 阶 版)
  • 计算机网络——通信基础和传输介质
  • 学习记录-bootstrap-弹性盒子
  • 常⻅CMS漏洞 -DeDeCMS 获取webshell
  • TISAX认证注意事项的详细介绍
  • Floyd 算法——97. 小明逛公园
  • 30天搭建消防安全培训小程序
  • python条件判断数据(解析、筛选)
  • 《AI幻觉:完美智能的幻象与真实世界的纠错指南》
  • 10、binlog
  • 实用工具--OfficeAI 助手 v0.3.20(长期免费,2025-03-18 本地支持WPSWord联动)
  • Cyberchef实用功能之-json line格式文件美化和查询
  • 数据治理之数据仓库
  • 经济日报整版聚焦:上海构建法治化营商环境,交出高分答卷
  • 秦洪看盘|交易新逻辑,银行股成A股稳定器
  • 西王食品连亏三年:主业齐“崩”,研发人员多为专科生
  • 科创板年内第3家!健信超导IPO获受理,拟募资8.65亿
  • “海豚音”依旧,玛丽亚·凯莉本周来沪开唱
  • 国家主席习近平同普京总统共见记者