本文来源公众号**"机器学习算法与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)
要记住的要点:
-
这个库仅用于测试目的,为提供有关哪种模型在您的数据集上表现良好的信息。
-
建议使用conda单独建立一个虚拟环境,因为它提供了一个单独的环境,避免与其他环境有版本冲突。
THE END !
文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。