当前位置:首页 >百科 >LazyPredict:为你选择最佳ML模型! 选择几乎不需要任何代码

LazyPredict:为你选择最佳ML模型! 选择几乎不需要任何代码

2024-06-29 09:22:07 [百科] 来源:避面尹邢网

LazyPredict:为你选择最佳ML模型!选择

译文 精选 作者: 崔皓 人工智能 机器学习 开发 本文讨论使用LazyPredict来创建简单的最佳ML模型。LazyPredict创建机器学习模型的模型特点是不需要大量的代码,同时在不修改参数的选择情况下进行多模型拟合,从而在众多模型中选出性能最佳的最佳一个。

摘要

本文讨论使用LazyPredict来创建简单的模型ML模型。LazyPredict创建机器学习模型的选择特点是不需要大量的代码,同时在不修改参数的最佳情况下进行多模型拟合,从而在众多模型中选出性能最佳的模型一个。​

LazyPredict:为你选择最佳ML模型! 选择几乎不需要任何代码

本文包括的选择内容如下:​

LazyPredict:为你选择最佳ML模型! 选择几乎不需要任何代码

  • 简介​
  • LazyPredict模块的安装​
  • 在分类模型中实施LazyPredict​
  • 在回归模型中实施​
  • 总结​

简介

LazyPredict号称最先进的Python软件包,它的最佳诞生正在彻底改变机器学习模型的开发方式。通过使用LazyPredict,模型可以快速创建各种基本模型,选择几乎不需要任何代码,最佳从而腾出时间来选择最适合我们数据的模型模型。​

LazyPredict:为你选择最佳ML模型! 选择几乎不需要任何代码

LazyPredict的主要优点是可以使模型选择更加容易,而不需要对模型进行大量的参数调整。LazyPredict提供了一种快速有效的方法来寻找和适配数据的最佳模型。​

接下来,让我们通过这篇文章探索和学习更多关于LazyPredict的用法。​

LazyPredict模块的安装

LazyPredict库的安装是一项非常简单的任务。如同安装任何其他Python库一样,只需一行代码轻松搞定。​

!pip install lazypredict

在分类模型中实施LazyPredict

在这个例子中,我们将利用Sklearn包中的乳腺癌数据集。​

现在,让我们来加载数据。​

from sklearn.datasets import load_breast_cancer
from lazypredict.Supervised import LazyClassifier

data = load_breast_cancer()
X = data.data
y= data.target

为了选择最佳分类器模型,现在让我们部署"LazyClassifier "算法。这些特征和输入参数适用于该类。

LazyClassifier(
verbose=0,
ignore_warnings=True,
custom_metric=None,
predictions=False,
random_state=42,
classifiers='all',
)

接着把该模型应用于加载好的数据并进行拟合。​

from lazypredict.Supervised import LazyClassifier
from sklearn.model_selection import train_test_split

# split the data
X_train, X_test, y_train, y_test = train_test_split(X, y,test_size=0.3,random_state =0)

# build the lazyclassifier
clf = LazyClassifier(verbose=0,ignore_warnings=True, custom_metric=None)

# fit it
models, predictions = clf.fit(X_train, X_test, y_train, y_test)

# print the best models
print(models)

执行上述代码之后,得到下面结果:​

然后,我们可以进行以下工作,来看看模型的细节。​

model_dictionary = clf.provide_models(X_train,X_test,y_train,y_test)

接下来,设置模型的名称来显示详细的步骤信息。​

model_dictionary['LGBMClassifier']

在这里,我们可以看到SimpleImputer被用于整个数据集,然后是StandardScaler用于数字特征。在这个数据集中没有分类或序数特征,但如果有,就会分别使用OneHotEncoder和OrdinalEncoder。LGBMClassifier模型在转换和归类后接收数据。​

LazyClassifier的内部机器学习模型使用sci-kit-learn工具箱进行评估和拟合。LazyClassifier函数在被调用时,会在我们的数据上自动建立和拟合各种模型,包括决策树、随机森林、支持向量机等。你提供的一组性能标准,如准确率、召回率或F1得分,被用来评估这些模型。训练集用于拟合,而测试集则用于评估。​

在对模型进行评估和拟合后,LazyClassifier会提供一份评估结果总结(如上表),以及每个模型的顶级模型和性能指标列表。由于不需要手动调整或选择模型,你可以快速简单地评估许多模型的性能,并选择最适合数据的模型。

在回归模型中实施LazyPredict

使用"LazyRegressor "函数,可以再次为回归模型完成同样的工作。让我们导入一个适合回归任务的数据集(使用波士顿数据集)。

现在,让我们使用LazyRegressor来拟合我们的数据。​

from lazypredict.Supervised import LazyRegressor
from sklearn import datasets
from sklearn.utils import shuffle
import numpy as np

# load the data
boston = datasets.load_boston()
X, y = shuffle(boston.data, boston.target, random_state=0)
X = X.astype(np.float32)

# split the data
X_train, X_test, y_train, y_test = train_test_split(X, y,test_size=0.3,random_state =0)

# fit the lazy object
reg = LazyRegressor(verbose=0, ignore_warnings=False, custom_metric=None)
models, predictions = reg.fit(X_train, X_test, y_train, y_test)

# print the results in a table
print(models)

代码执行结果如下:​

以下是对最佳回归模型的详细描述:​

model_dictionary = reg.provide_models(X_train,X_test,y_train,y_test)
model_dictionary['ExtraTreesRegressor']

这里可以看到SimpleImputer被用于整个数据集,然后是StandardScaler用于数字特征。这个数据集中没有分类或序数特征,但如果有的话,会分别使用OneHotEncoder和OrdinalEncoder。ExtraTreesRegressor模型接收了转换和归类后的数据。​

结论

LazyPredict库对于任何从事机器学习行业的人来说都是一种有用的资源。LazyPredict通过自动创建和评估模型的过程来节省选择模型的时间和精力,这大大提高了模型选择过程的有效性。LazyPredict提供了一种快速而简单的方法来比较几个模型的有效性,并确定哪个模型系列最适合我们的数据和问题,因为它能够同时拟合和评估众多模型。​

阅读本文之后希望你现在对LazyPredict库有了直观的了解,这些概念将帮助你建立一些真正有价值的项目。​

译者介绍

崔皓,51CTO社区编辑,资深架构师,拥有18年的软件开发和架构经验,10年分布式架构经验。

原文标题:​​LazyPredict: A Utilitarian Python Library to Shortlist the Best ML Models for a Given Use Case​​,作者:Sanjay Kumar

责任编辑:华轩 来源: 51CTO LazyPredic机器学习ML模型

(责任编辑:娱乐)

    推荐文章
    热点阅读