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, TabularPredictortrain_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, TabularPredictortrain_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 的自动化特性使得这些操作变得非常简单和高效。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/37741.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI风向标《AI与视频制作全攻略:从入门到精通实战课程》

课程信息 AI风向标《AI与视频制作全攻略:从入门到精通实战课程》,夸克网盘和百度网盘课程。 课程介绍 《AI与视频制作全攻略:从入门到精通实战课程》是一套全面融合AI技术与视频制作的实战课程,旨在帮助创作者从基础软件使用到高级视频剪辑…

Docker学习笔记(十)搭建Docker私有仓库

一、环境配置 1、宿主机系统:macOS Sequoia(版本15.2) 2、虚拟机VMware Fusion版本:专业版 13.6.2 (24409261) 3、虚拟机系统:AlmaLinux-9-latest-x86_64-boot.iso 二、安装Harbor开源企业级Docker镜像 Harbor 是一个开源的企业级 Docker…

Linux中基本命令

目录 ls pwd cd touch mkdir rm cp mv cat less head tail find grep ls 其实大部分命令都是可执行的文件,但有一些命令比如Shell内置命令,它没有对应的独立可执行文件,而是由Shell直接解释执行的。 功能:显示当前目…

IDEA导入jar包后提示无法解析jar包中的类,比如无法解析符号 ‘log4j‘

IDEA导入jar包后提示无法解析jar包中的类 问题描述解决方法 问题描述 IDEA导入jar包的Maven坐标后,使用jar中的类比如log4j,仍然提示比如无法解析符号 log4j。 解决方法 在添加了依赖和配置文件后,确保刷新你的IDE项目和任何缓存&#xff…

字节跳动实习生主导开发强化学习算法,助力大语言模型性能突破

目录 禹棋赢的背景与成就 主要成就 DAPO算法的技术细节 算法优势 禹棋赢的研究历程 关键时间节点 字节跳动的“Top Seed人才计划” 计划特点 小编总结 在大模型时代,经验不再是唯一的衡量标准,好奇心、执行力和对新技术的敏锐洞察力成为推动技术…

Mysql表的简单操作

🏝️专栏:Mysql_猫咪-9527的博客-CSDN博客 🌅主页:猫咪-9527-CSDN博客 “欲穷千里目,更上一层楼。会当凌绝顶,一览众山小。” 目录 3.1 创建表 3.2 查看表结构 3.3 修改表 1. 添加字段 2. 修改字段 …

【一起学Rust | Tauri2.0框架】基于 Rust 与 Tauri 2.0 框架实现全局状态管理

前言 在现代应用程序开发中,状态管理是构建复杂且可维护应用的关键。随着应用程序规模的增长,组件之间共享和同步状态变得越来越具有挑战性。如果处理不当,状态管理可能会导致代码混乱、难以调试,并最终影响应用程序的性能和可扩…

大模型的微调技术(高效微调原理篇)

背景 公司有需求做农业方向的大模型应用以及Agent助手,那么适配农业数据就非常重要。但众所周知,大模型的全量微调对算力资源要求巨大,在现实的限制条件下基本“玩不起”,那么高效微调技术就非常必要。为了更好地对微调技术选型和…

Java 大视界 -- Java 大数据在智能家居设备联动与场景自动化中的应用(140)

💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…

面试八股 —— Redis篇

重点:缓存 和 分布式锁 缓存(穿透,击穿,雪崩) 降级可作为系统的保底策略,适用于穿透,击穿,雪崩 1.缓存穿透 2.缓存击穿 3.缓存雪崩 缓存——双写一致性 1.强一致性业务&#xff08…

[网络安全] 滥用Azure内置Contributor角色横向移动至Azure VM

本文来源于团队的超辉老师,其系统分析了Azure RBAC角色模型及其在权限滥用场景下的攻击路径。通过利用AADInternals工具提升用户至Contributor角色,攻击者可在Azure VM中远程执行命令,创建后门账户,实现横向移动。文中详述了攻击步…

OO_Unit1

第一次作业 UML类图 代码复杂度分析 其中Expr中的toString方法认知复杂度比较高,主要源于多层条件嵌套和分散的字符串处理逻辑,重构时可重点关注这两部分的解耦。 代码量分析 1.”通用形式“ 我觉得我的设计的最大特点就是“通用形式”,具…

阿里云 AI 搜索产品荣获 Elastic Innovation Award 2024

阿里云AI搜索产品荣获Elastic Innovation Award 2024,该奖项于近日在新加坡ElasticON 2025的Elastic合作伙伴峰会上颁发,旨在表彰基于Elastic平台开发企业级生成式人工智能(GenAI)应用的顶尖合作伙伴,这些应用有效帮助…

网络原理之网络层、数据链路层

1. 网络层 1.1 IP协议 1.1.1 基本概念 主机: 配有IP地址,但是不进⾏路由控制的设备路由器: 即配有IP地址,⼜能进⾏路由控制节点: 主机和路由器的统称 1.1.2 协议头格式 说明: 4位版本号(version): 指定IP协议的版本,对于IPv4来说,就是4,对于IPv6来说,就是6 4位头…

炫酷的3D按钮效果实现 - CSS3高级特性应用

炫酷的3D按钮效果实现 - CSS3高级特性应用 这里写目录标题 炫酷的3D按钮效果实现 - CSS3高级特性应用项目介绍核心技术实现1. 基础结构设计2. 视觉效果实现2.1 背景渐变2.2 立体感营造 3. 交互动效设计3.1 悬停效果3.2 按压效果 技术要点分析1. 深度层次感2. 动画过渡3. 性能优…

Java定时任务的三重境界:从单机心跳到分布式协调

《Java定时任务的三重境界:从单机心跳到分布式协调》 本文将以生产级代码标准,揭秘Java定时任务从基础API到分布式调度的6种实现范式,深入剖析ScheduledThreadPoolExecutor与Quartz Scheduler的线程模型差异,并给出各方案的性能压…

鸿蒙Flutter开发故事:不,你不需要鸿蒙化

在华为牵头下,Flutter 鸿蒙化如火如荼进行,当第一次看到一份上百个插件的Excel 列表时,我也感到震惊,排名前 100 的插件赫然在列,这无疑是一次大规模的军团作战。 然后,参战团队鱼龙混杂,难免有…

PolyBench基准程序详解:编译器优化评测指标

PolyBench基准程序详解:编译器优化评测指标 PolyBench基本概念 PolyBench(Polyhedral Benchmark)是由UCLA(加州大学洛杉矶分校)的Louis-Nol Pouchet及其研究团队开发的基准测试套件,专门用于评估多面体编…

2025年渗透测试面试题总结-某四字大厂实习面试复盘 一面 二面 三面(题目+回答)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 一面 1. 数组和链表各自的优势和原因 2. 操作系统层面解析和进程 3. 线程和进程通信方式及数据安全问…

ruoyi-vue部署4

1.jdk-linux安装 2.tomcat-linux安装 3.ruoy后台部署 4.nginx-linux安装5.ruoyi前端部署​​​​​​​