Skip to content

Latest commit

 

History

History
109 lines (60 loc) · 6.54 KB

implementing-automated-machine-learning-open-source-path.md

File metadata and controls

109 lines (60 loc) · 6.54 KB

使用开源工具实现自动化机器学习系统

原文:www.kdnuggets.com/2018/10/implementing-automated-machine-learning-open-source-path.html

c 评论

我之前写过一些关于自动化机器学习的内容。我不会重复已经涵盖的介绍性材料,但如果有兴趣了解主要点,以及实际操作的尝试,请随意浏览这些文章,然后再继续。

  • 自动化机器学习的当前状态

  • 自动化机器学习与自动化数据科学

  • 使用 AutoML 与 TPOT 生成机器学习管道

在我看来,机器学习的实践归结为两个主要的任务,因此在一个有限的实际定义中,我们可以将自动化机器学习的核心视为:

  1. 自动化特征工程和/或选择

  2. 自动化超参数调优和架构搜索

从语义上讲,机器学习模型的训练,虽然这些自动化步骤的结果,但在自动化机器学习过程中是偶然的,而自动化步骤如模型评估和模型选择则是辅助的。见图 1。

Image

图 1. 自动化机器学习过程(核心自动化过程用红色标出,辅助过程用黄色标出)

理论上讲,这一切都很好。但如果你想实现自己的自动化机器学习管道,或在上述两个主要任务方面自动化机器学习管道的特定方面怎么办?

请放心,不需要重新发明轮子;自动化机器学习作为一个学科,可能尚未完全形成,但也绝非完全未开发。请参见下面的开源工具样本,它们可以帮助你完善自己的自动化机器学习管道。

请记住,下面的第一组(超参数调优和架构搜索)通常被广泛认为是“自动化机器学习工具”。但是,请注意,超参数调优和架构搜索工具可以且经常执行某种类型的特征选择。有一套强大的工具只提供自动化特征工程和/或选择(注意你对自动化的定义在这些特定情况下可能不完全一致),因此也提供了这些工具的样本。

自动化超参数调优与架构搜索

Auto-Keras

Auto-Keras 是一个用于自动化机器学习(AutoML)的开源软件库。它由德克萨斯 A&M 大学的 DATA Lab 和社区贡献者开发。AutoML 的最终目标是为数据科学或机器学习背景有限的领域专家提供易于访问的深度学习工具。Auto-Keras 提供了自动搜索深度学习模型架构和超参数的功能。

auto-sklearn

auto-sklearn 是一个自动化机器学习工具包,是 scikit-learn 估计器的直接替代品。auto-sklearn 使机器学习用户摆脱算法选择和超参数调优的困扰。它利用了贝叶斯优化、元学习和集成构建方面的最新优势。通过阅读我们在 NIPS 2015 上发表的论文,可以进一步了解 auto-sklearn 背后的技术。

MLBox

MLBox 是一个强大的自动化机器学习 Python 库。它提供了以下功能:

  • 快速阅读和分布式数据预处理/清理/格式化
  • 高度可靠的特征选择和泄漏检测
  • 高维空间中准确的超参数优化
  • 最先进的分类和回归预测模型(深度学习、堆叠、LightGBM 等)
  • 带有模型解释的预测

TPOT

一个优化机器学习管道的 Python 自动化机器学习工具,使用遗传编程。将 TPOT 视为你的数据科学助手。TPOT 是一个使用遗传编程优化机器学习管道的 Python 自动化机器学习工具。TPOT 通过智能探索数千个可能的管道,来自动化机器学习中最繁琐的部分,以找到最适合你数据的管道。

自动化特征工程/选择

Featuretools

Featuretools 是一个用于自动化特征工程的 Python 库。Featuretools 可以与你已经使用的工具一起工作来构建机器学习管道。你可以加载 pandas 数据框,并在手动操作所需时间的一小部分内自动创建有意义的特征。

mlxtend

一个用于 Python 数据分析和机器学习库的扩展和辅助模块库。

进一步了解:

那么,我们如何在 Python 中执行前向特征选择呢?Sebastian Raschka 的 mlxtend 库包括一个实现(Sequential Feature Selector),因此我们将使用它来演示。无需多言,你应该在继续之前安装 mlxtend(检查 Github 仓库)。

请注意,这仅仅是可用 Python 自动化机器学习工具的一个样本。除了这里列出的开源工具(以及 Python 生态系统之外),还有许多专有和托管选项可供使用,这些可能在不久的将来需要自己独立的调查文章。

相关:


我们的前三个课程推荐

1. Google 网络安全证书 - 快速进入网络安全职业生涯。

2. Google 数据分析专业证书 - 提升你的数据分析技能

3. Google IT 支持专业证书 - 支持你的组织 IT


更多相关话题