使用 MLBox 探索 AutoML

使用 MLBox 探索 AutoML

作为数据科学家或机器学习工程师,有时我们想要自动化我们的一些任务。这就是 AutoML 的用武之地。AutoML 只是从 ML 过程开始到结束运行的过程,并使模型生产做好准备。

MLBox 是一个可用于 AutoML 的开源工具。它可以帮助处理、格式化、清洗、构建用于分类和回归的 SOTA 模型、精确优化高维空间中的超参数以及精确的特征选择。让我们探索如何将 MLBox 用于 AutoML。

安装

如果您使用 macOS,则需要先安装 OpenMP,然后才能使 MLBox 正常工作。为此,让我们使用以下命令:

我们有两个选项来安装 MLbox,首先,我们可以使用 pip 或直接从 GitHub 存储库安装,使用 pip 安装使用下面的命令。

要使用 GitHub 安装,我们首先必须克隆存储库。

完成后,下一步就是进入文件夹。

然后使用下面的命令安装。

我们将使用这个 UCI 构建一个简单的蘑菇分类模型 在 Kaggle 上找到的数据集 展示如何使用 MLBox 执行 AutolML。

数据预处理

首先,让我们导入 MLBox 和我们将使用的功能。

现在让我们导入我们的数据集。

MLBox 具有所谓的 读者班 它有助于准备数据,例如推断列类型、删除未命名的列、删除重复项等,还可以准备训练和测试拆分数据。我们将使用阅读器功能来准备我们的数据。

读取器功能完成后,它会创建一个名为 save 的文件夹,用于保存目标编码器以供将来使用,现在让我们看看新数据。

去除漂移

此功能是 MLBox 的独特之处之一,它的作用是自动检测训练集和测试集之间存在显着差异的分布,然后将其删除以避免数据集中的偏差。 MLBox 在幕后所做的是它构建了一个分类器,将训练与测试数据区分开来,然后使用 ROC 分数来测量漂移。

MLBox 有一个名为 Drift_thresholder 的类,它接收训练集、测试集和目标并为它们计算一个漂移分数,然后 Drift_thresholder 删除漂移分数高于阈值的变量。

我们上面所做的是首先创建一个 Drift_thresholder 类的对象,然后使用 fit_transform 去除漂移变量的对象。

想要自动记录您的实验参数以便您可以更快地迭代? 立即注册您的免费 Comet 帐户!

优化

优化功能创建所有要优化的参数的高维空间,然后选择验证分数最低的最佳参数。它执行从特征选择器、NA 编码器到堆叠估计器的各种优化。让我们启动优化类开始吧。

现在让我们定义我们选择的多个配置的空间。还有一个使用默认 MLBox 配置的选项,但我们今天不会使用它,因为我正在解决一个特定的问题。

  • ne_numeric/strategy:指定如何在数字特征中处理缺失数据。
  • ce_startegy:处理分类变量编码
  • fs:特征选择
  • stck:元特征堆叠器
  • est:最终估计量

现在我们可以评估模型了。

做出预测

我们现在可以拟合最佳管道,然后使用我们的测试数据集进行预测,我们首先创建一个类预测器对象,然后使用初始对象的 fit_predict 方法。

结论

在本教程之后,您可以看到 AutoML 是多么简单,MLBox 是如何变得更容易的,因此作为开发人员,我们可以在更短的时间内更高效地实现,您可以查看他们的文档并检查一些我们没有探索和尝试的更棒的用例和功能他们出去。

编者注: 心跳 是一个贡献者驱动的在线出版物和社区,致力于为数据科学、机器学习和深度学习从业者提供一流的教育资源。我们致力于支持和激励各行各业的开发人员和工程师。

编辑独立,心跳由赞助和出版 彗星, 一个 MLOps 平台,使数据科学家和 ML 团队能够跟踪、比较、解释和优化他们的实验。我们付钱给我们的贡献者,我们不卖广告。

如果您愿意贡献,请前往我们的 征集贡献者 .您还可以注册接收我们的每周通讯( 深度学习周刊 ),查看 彗星博客 ,加入我们 __松弛 ,然后跟随彗星 推特 领英 获取资源、事件等,以帮助您更快地构建更好的 ML 模型。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/39112/47122413

posted @ 2022-09-24 13:48  哈哈哈来了啊啊啊  阅读(151)  评论(0编辑  收藏  举报