机器学习算法与Python实战 | 两行代码即可应用 40 个机器学习模型--lazypredict 库!

本文来源公众号**"机器学习算法与Python实战"**,仅用于学术分享,侵权删,干货满满。

原文链接:两行代码即可应用 40 个机器学习模型

今天和大家一起学习使用**lazypredict 库**,我们可以用一行代码在我们的数据集上实现许多 ML 模型,这样我们就可以简要了解哪些模型适合我们的数据集。

第1步

使用以下方法安装 lazypredict 库:

复制代码
pip install lazypredict

第2步

导入 pandas 来加载我们的数据集。

复制代码
import pandas as pd

第3步

加载数据集。

复制代码
df = pd.read_csv('Mal_Customers.csv')

第4步

打印数据集的前几行

这里 Y 变量是支出分数列,而其余列是 X 变量。

现在,在确定了 X 和 Y 变量之后,我们将它们分成训练和测试数据集。

复制代码
# 导入 train_test_split,用于分割数据集
from sklearn.model_selection import train_test_split
# 定义 X 和 y 变量
X = df.loc[:, df.columns != 'Spending Score (1-100)']
y = df['Spending Score (1-100)'] # 对数据进行分区。
# 分割数据
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)

第5步

我们导入之前安装的lazypredict库,lazypredict里面有两个类,一个用于分类,一个用于回归。

复制代码
# 导入 lazypredict
导入 lazypredict
# 从 lazypredict 导入回归类
from lazypredict.Supervised import LazyRegressor
# 从 lazypredict.Supervised 中导入分类类
from lazypredict.Supervised import LazyClassifier

导入后,我们将使用 LazyRegressor,因为我们正在处理回归问题,如果你正在处理分类问题,则这两种类型的问题都需要相同的步骤。

复制代码
# 使用 LazyRegressor 定义模型
multiple_ML_model = lazyRegressor(verbose=0, ignore_warnings=True, predictions=True)
# 对模型进行拟合,同时预测每个模型的输出结果
models, predictions = multiple_ML_model.fit(X_train, X_test, y_train, y_test)

这里,prediction = True 表示你想要获得每个模型的准确性并想要每个模型的预测值。

模型的变量包含每个模型精度以及一些其他重要信息。

它在我的回归问题上实现了**42 个 ML 模型,**因为本指南更侧重于如何测试许多模型,而不是提高其准确性。所以我对每个模型的准确性不感兴趣。

查看每个模型的预测。

你可以利用这些预测来创建一个混淆矩阵。

如果正在处理分类问题,这就是使用 lazypredict 库的方法。

复制代码
# 使用 LazyRegressor 定义模型
multiple_ML_model = lazyClassifier(verbose=0,
          ignore_warnings=True,
          predictions=True)
# 对模型进行拟合,并预测每个模型的输出结果
models, predictions = multiple_ML_model.fit(
          X_train, X_test, y_train, y_test)

要记住的要点:

  1. 这个库仅用于测试目的,为提供有关哪种模型在您的数据集上表现良好的信息。

  2. 建议使用conda单独建立一个虚拟环境,因为它提供了一个单独的环境,避免与其他环境有版本冲突。

THE END !

文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。

相关推荐
輕華6 小时前
LSTM实战(上篇):微博情感分析——词表构建与数据集加载
人工智能·机器学习·lstm
2301_815279526 小时前
SQL如何利用聚合函数生成业务分析指标_KPI计算基础教程
jvm·数据库·python
qq_330037996 小时前
mysql如何排查Out of memory错误_mysql内存分配调优
jvm·数据库·python
好家伙VCC6 小时前
**发散创新:用Rust实现基于RAFT共识算法的轻量级分布式日志系统**在分布式系统中,**一致性协议**是保障数据可靠
java·分布式·python·rust·共识算法
小江的记录本6 小时前
【分布式】分布式核心组件——分布式ID生成:雪花算法、号段模式、美团Leaf、百度UidGenerator、时钟回拨解决方案
分布式·后端·算法·缓存·性能优化·架构·系统架构
大江东去浪淘尽千古风流人物7 小时前
【cuVSLAM】GPU 加速、多相机、实时视觉/视觉惯性 SLAM设计优势
c++·人工智能·数码相机·ubuntu·计算机视觉·augmented reality
weixin_458580127 小时前
如何在 Go 中直接将 AST 编译为可执行二进制文件?
jvm·数据库·python
晔子yy7 小时前
【JAVA探索之路】从头开始讲透、实现单例模式
java·开发语言·单例模式
阿正的梦工坊12 小时前
JavaScript 微任务与宏任务完全指南
开发语言·javascript·ecmascript
Elastic 中国社区官方博客12 小时前
Elasticsearch:使用 Agent Builder 的 A2A 实现 - 开发者的圣诞颂歌
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索