PyCaret和Streamlit:快速创建和部署数据科学应用

建立和部署机器学习模型从未如此简单。现在,有许多框架和库帮助我们仅用几行代码来构建机器学习模型,PyCaret是最好的工具之一,而最近非常流行的Streamlit可用于快速创建和部署Web应用程序。

在本文中,我们将使用这两个库来创建一个数据科学Web应用程序。我们将使用PyCaret构建葡萄酒质量分类器。接下来,使用Streamlit创建和部署葡萄酒分类器。您将惊讶于构建分类器并部署Web应用是如此简单和快捷。让我们开始吧!

本文来自《数据黑客》,登录官网可阅读更多精彩资讯和文章。

加载和预处理数据

我们使用的数据是“葡萄酒质量(Wine Quality)”数据集,可以在此处免费下载。该数据集包含1599个实例和12个特征。先用Pandas加载数据集。

在这里插入图片描述

如上所示,数据集包含很多不同的特征,例如fixed aciditycitric acidpH等。我们分类器的任务是预测葡萄酒质量的好坏。但是,quality特征的值不是我们期望的,我们需要将特征的值转换为“好”或“坏”。

为此,我们需要设置某些规则。如果葡萄酒的质量等于或大于6,则可以将葡萄酒的质量分类为好,否则质量不好。

在这里插入图片描述

现在,我们有了所需的数据!请注意,您还可以检查有855种葡萄酒归类为“好”和744种葡萄酒归类为“差”。这个比例似乎相当均衡,可以肯定地说我们没有数据集不均衡的问题。

数据集也很干净,这意味着没有缺失值,没有重复值,并且数据类型都是正确的。

接下来,使用PyCaret构建分类器模型。

使用PyCaret建立分类器模型

PyCaret是一个低代码的机器学习库,可自动执行所有机器学习工作流程。它的作用是为流行的机器学习库(例如scikit-learn,XGBoost,LightGBM,CatBoost等)提供包装。

借助PyCaret,我们可以在几行代码中构建用于分类,回归,聚类,异常检测或NLP问题的机器学习模型。

如果您尚未安装PyCaret,可以通过键入以下pip命令轻松地进行安装。

pip install pycaret

由于要解决分类问题,因此我们使用pycaret.classification模块。

实验1:默认设置

首先,我们需要使用setup()函数设置PyCaret环境。在我们调用PyCaret的其他函数之前,需要先调用此函数。

from pycaret.classification import *

exp_clf01 = setup(data = wine_df, target = 'quality', session_id = 123)

我们传递了两个参数作为setup()函数的参数:

  • data - 输入数据。
  • target - 要预测的特征的名称(因变量)。
  • session_id - 安装环境的标识符。

如果运行上面的代码段,获得以下输出:

在这里插入图片描述

从上面的输出中,您可以看到setup()函数将自动将数据拆分为训练集和测试集。

另外,它将自动推断特征的数据类型:特征是数值变量还是分类变量。您需要仔细查看输出,因为有时函数会错误地推断数据类型。如果发现其中一项特征被错误推断,可以通过以下操作来更正它:

exp_clf01 = setup(data = wine_df, target = 'quality', session_id = 123, categorical_features = ['feature1', 'feature2'], numerical_features = ['feature3', 'feature4'])

接下来,让我们构建分类器模型。

建立机器学习模型时,大多数时候我们都不知道哪种模型可以提供最佳性能。使用PyCaret,可以使用单行代码来比较各种分类器的性能。

best = compare_models()

在这里插入图片描述

如上图所示,随机森林分类器在7个指标中有5个表现最佳。假设我们使用F1评分指标,随机森林分类器是最优模型。

实验2:调整设置

在继续之前,让我们看看是否可以通过调整setup()函数来改善模型的性能。

exp_clf102 = setup(data = train_data, t
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值