当前位置:首页 > 科技  > 软件

一行 Python 代码搞定训练分类或回归模型

来源: 责编: 时间:2023-11-10 17:08:02 219观看
导读自动机器学习(Auto-ML)是指自动化数据科学模型开发流水线的组件。AutoML 减少了数据科学家的工作量,并加快了工作流程。AutoML 可用于自动化各种流水线组件,包括数据理解,EDA,数据处理,模型训练,超参数调整等。在本文中,我们

自动机器学习(Auto-ML)是指自动化数据科学模型开发流水线的组件。AutoML 减少了数据科学家的工作量,并加快了工作流程。AutoML 可用于自动化各种流水线组件,包括数据理解,EDA,数据处理,模型训练,超参数调整等。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

在本文中,我们将讨论如何使用开放源码的 Python 库 LazyPredict 来自动化模型训练过程。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

什么是 LazyPredict ?

qLV28资讯网——每日最新资讯28at.com

LazyPredict 是一个开源的 Python 库,它自动化了模型培训流水线并加快了工作流。LazyPredict 为一个分类数据集训练了大约30个分类模型,为一个回归数据集训练了大约40个回归模型。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

Lazypredicate 返回训练好的模型以及它的性能指标,而不需要编写很多代码。我们可以比较每个模型的性能指标,并优化最佳模型以进一步提高性能。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

安装

qLV28资讯网——每日最新资讯28at.com

可以通过以下方式从 PyPl 库安装 LazyPredict:qLV28资讯网——每日最新资讯28at.com

pip install lazypredict

安装完成后,可导入库进行分类和回归模型的自动训练。qLV28资讯网——每日最新资讯28at.com

from lazypredict.Supervised import LazyRegressor, LazyClassifier

用法

Lazypredicate 同时支持分类和回归问题,因此我们将进行这两个任务的演示:qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

波士顿住房(回归)和泰坦尼克号(分类)数据集用于演示 LazyPredict 库。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

() 分类任务:qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

LazyPredict 的使用非常直观,类似于 scikit-learn。首先,为分类任务创建一个估计器 LazyClassifier 的实例。可以通过自定义指标进行评估,默认情况下,每个模型都会根据准确度、ROC AUC 分数、F1 分数进行评估。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

在进行 lazypredict 预测模型训练之前,必须读取数据集并对其进行处理以使其适合训练。qLV28资讯网——每日最新资讯28at.com

import pandas as pdfrom sklearn.model_selection import train_test_split# Read the titanic datasetdf_cls = pd.read_csv("titanic.csv")df_cls = df_cls.drop(['PassengerId','Name','Ticket', 'Cabin'], axis=1)# Drop instances with null recordsdf_cls = df_cls.dropna()# feature processingdf_cls['Sex'] = df_cls['Sex'].replace({'male':1, 'female':0})df_cls['Embarked'] = df_cls['Embarked'].replace({'S':0, 'C':1, 'Q':2})# Creating train test splity = df_cls['Survived']X = df_cls.drop(columns=['Survived'], axis=1)# Call train test split on the data and capture the resultsX_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42, test_size=0.2)

经过处理将数据拆分为训练测试数据后,我们可以使用 LazyPredict 进行模型训练。qLV28资讯网——每日最新资讯28at.com

# LazyClassifier Instance and fiting datacls= LazyClassifier(ignore_warnings=False, custom_metric=None)models, predictions = cls.fit(X_train, X_test, y_train, y_test)

qLV28资讯网——每日最新资讯28at.com

(2)回归任务:qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

类似于分类模型训练,lazypredicate 提供了用于回归数据集的自动模型训练。实现类似于分类任务,只是对实例 LazyRegressor 进行了更改。qLV28资讯网——每日最新资讯28at.com

import pandas as pdfrom sklearn.model_selection import train_test_split# read the datacolumn_names = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']df_reg = pd.read_csv("housing.csv", header=None, delimiter=r"/s+", names=column_names)# Creating train test splity = df_reg['MEDV']X = df_reg.drop(columns=['MEDV'], axis=1)# Call train_test_split on the data and capture the resultsX_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42, test_size=0.2)
reg = LazyRegressor(ignore_warnings=False, custom_metric=None)models, predictions = reg.fit(X_train, X_test, y_train, y_test)

qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

从以上性能指标来看,AdaBoost 分类器是分类任务的最佳执行模型,而 GradientBoostingRegressor 模型是回归任务的最佳执行模型。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

总结

qLV28资讯网——每日最新资讯28at.com

在本文中,我们讨论了 LazyPredict 库的实现,该库可以在几行 Python 代码中训练大约70个分类和回归模型。这是一个非常方便的工具,因为它提供了模型执行情况的总体图像,并且可以比较每个模型的性能。qLV28资讯网——每日最新资讯28at.com

qLV28资讯网——每日最新资讯28at.com

每个模型都使用其默认参数进行训练,因为它不执行超参数调整。选择性能最佳的模型后,开发人员可以调整模型以进一步提高性能。qLV28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-20054-0.html一行 Python 代码搞定训练分类或回归模型

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python好用的可视化库(从低级到高级)

下一篇: Python文件读写实战:处理日常任务的终极工具!

标签:
  • 热门焦点
  • Redmi Pad评测:红米充满野心的一次尝试

    Redmi Pad评测:红米充满野心的一次尝试

    从Note系列到K系列,从蓝牙耳机到笔记本电脑,红米不知不觉之间也已经形成了自己颇有竞争力的产品体系,在中端和次旗舰市场上甚至要比小米新机的表现来得更好,正所谓“大丈夫生居
  • 6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    6月安卓手机性能榜:vivo/iQOO霸占旗舰排行榜前三

    2023年上半年已经正式过去了,我们也迎来了安兔兔V10版本,在新的骁龙8Gen3和天玑9300发布之前,性能榜的榜单大体会以骁龙8Gen2和天玑9200+为主,至于那颗3.36GHz的骁龙8Gen2领先
  • Raft算法:保障分布式系统共识的稳健之道

    Raft算法:保障分布式系统共识的稳健之道

    1. 什么是Raft算法?Raft 是英文”Reliable、Replicated、Redundant、And Fault-Tolerant”(“可靠、可复制、可冗余、可容错”)的首字母缩写。Raft算法是一种用于在分布式系统
  • 多线程开发带来的问题与解决方法

    多线程开发带来的问题与解决方法

    使用多线程主要会带来以下几个问题:(一)线程安全问题  线程安全问题指的是在某一线程从开始访问到结束访问某一数据期间,该数据被其他的线程所修改,那么对于当前线程而言,该线程
  • .NET 程序的 GDI 句柄泄露的再反思

    .NET 程序的 GDI 句柄泄露的再反思

    一、背景1. 讲故事上个月我写过一篇 如何洞察 C# 程序的 GDI 句柄泄露 文章,当时用的是 GDIView + WinDbg 把问题搞定,前者用来定位泄露资源,后者用来定位泄露代码,后面有朋友反
  • 2天涨粉255万,又一赛道在抖音爆火

    2天涨粉255万,又一赛道在抖音爆火

    来源:运营研究社作者 | 张知白编辑 | 杨佩汶设计 | 晏谈梦洁这个暑期,旅游赛道彻底火了:有的「地方」火了——贵州村超旅游收入 1 个月超过 12 亿;有的「博主」火了&m
  • 大厂卷向扁平化

    大厂卷向扁平化

    来源:新熵作者丨南枝 编辑丨月见大厂职级不香了。俗话说,兵无常势,水无常形,互联网企业调整职级体系并不稀奇。7月13日,淘宝天猫集团启动了近年来最大的人力制度改革,目前已形成一
  • 2299元起!iQOO Pad明晚首销:性能最强天玑平板

    2299元起!iQOO Pad明晚首销:性能最强天玑平板

    5月23日,iQOO如期举行了新品发布会,除了首发安卓最强旗舰处理器的iQOO Neo8系列新机外,还在发布会上推出了旗下首款平板电脑——iQOO Pad,其最大的卖点
  • 朋友圈可以修改可见范围了 苹果用户可率先体验

    朋友圈可以修改可见范围了 苹果用户可率先体验

    近日,iOS用户迎来微信8.0.27正式版更新,除了可更换二维码背景外,还新增了多项实用功能。在新版微信中,朋友圈终于可以修改可见范围,简单来说就是已发布的朋友圈
Top
Baidu
map