Py学习  »  机器学习算法

两行代码即可应用 40 个机器学习模型

数据STUDIO • 4 月前 • 170 次点击  


今天云朵君和大家一起学习使用 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单独建立一个虚拟环境,因为它提供了一个单独的环境,避免与其他环境有版本冲突。

🏴‍☠️宝藏级🏴‍☠️ 原创公众号『数据STUDIO』内容超级硬核。公众号以Python为核心语言,垂直于数据科学领域,包括可戳👉 PythonMySQL数据分析数据可视化机器学习与数据挖掘爬虫 等,从入门到进阶!

长按👇关注- 数据STUDIO -设为星标,干货速递

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/171898
 
170 次点击