【机器学习】两行代码即可应用 40 个机器学习模型
新机器视觉
共 3013字,需浏览 7分钟
·
2024-07-09 21:00
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单独建立一个虚拟环境,因为它提供了一个单独的环境,避免与其他环境有版本冲突。
声明:部分内容来源于网络,仅供读者学习、交流之目的。文章版权归原作者所有。如有不妥,请联系删除。
评论