机器学习自动化 要学习什么_机器学习的引导式自动化

机器学习自动化 要学习什么

Paolo Tamagnini,Simon Schmid和Christian Dietz是Knime的数据科学家和软件工程师。

我们在这里提出一种用于机器学习生命周期自动化的蓝图解决方案。

自动化机器学习(又名AutoML )要付出的代价是黑匣子模型无法控制。 虽然对于定义明确的域的外接数据科学问题来说,这样的价格是可以接受的,但对于更广泛的域中的更复杂的问题,它可能会受到限制。 在这些情况下,实际上需要与最终用户进行一定量的交互。 这种较软的机器学习自动化方法(我们在Knime采取的方法)是通过指导自动化( 指导分析的特殊实例)获得的。

[InfoWorld的要点: 用于AI开发的5种最佳编程语言 为什么应该使用Python进行机器学习 Julia与Python的对决:Julia语言在数据科学方面的兴起五个 用于数据科学的 基本Python工具(现已改进)数据科学的Python发行版Anaconda入门 Python的Anaconda发行版中的新增功能 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

尽管最终应用程序看起来对最终用户来说很容易,但在后台运行的系统可能非常复杂,因此要完全从头开始创建也不容易。 为了帮助您完成此过程,我们创建了一个交互式应用程序的蓝图,用于自动创建和训练机器学习分类模型。

该蓝图是使用Knime Analytics Platform开发的,可以在我们的公共资源库中找到

Paolo Tamagnini,Simon Schmid和Christian Dietz是Knime的数据科学家和软件工程师。

我们在这里提出一种用于机器学习生命周期自动化的蓝图解决方案。

自动化机器学习(又名AutoML )要付出的代价是黑匣子模型无法控制。 虽然对于定义明确的域的外接数据科学问题来说,这样的价格是可以接受的,但对于更广泛的域中的更复杂的问题,它可能会受到限制。 在这些情况下,实际上需要与最终用户进行一定量的交互。 这种较软的机器学习自动化方法(我们在Knime采取的方法)是通过指导自动化( 指导分析的特殊实例)获得的。

[InfoWorld的要点: 用于AI开发的5种最佳编程语言 为什么应该使用Python进行机器学习 Julia与Python的对决:Julia语言在数据科学方面的兴起五个 用于数据科学的 基本Python工具(现已改进)数据科学的Python发行版Anaconda入门 Python的Anaconda发行版中的新增功能 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

尽管最终应用程序看起来对最终用户来说很容易,但在后台运行的系统可能非常复杂,因此要完全从头开始创建也不容易。 为了帮助您完成此过程,我们创建了一个交互式应用程序的蓝图,用于自动创建和训练机器学习分类模型。

该蓝图是使用Knime Analytics Platform开发的,可以在我们的公共资源库中找到

本文是我们关于“如何使机器学习自动化”主题的介绍性文章的后续 在第二篇文章中,我们将更详细地描述在执行Web浏览器应用程序期间幕后发生的技术和算法。

毫升2的knime导向自动化 尼姆

图1:指导性自动化蓝图背后的主要过程:数据上传,应用程序设置,自动化模型训练和优化,性能比较仪表板和模型下载。

Web浏览器引导的自动化

让我们看看通过Knime Server从Web浏览器获得的自动化制图指导

首先,我们将看到一系列交互点:

  • 上载资料
  • 选择目标变量
  • 删除不必要的功能
  • 选择一种或多种机器学习算法进行训练
  • (可选)自定义参数优化和功能工程设置
  • 选择执行平台。

这些步骤全部汇总在下面的图2中。

毫升2的knime引导自动化 尼姆

图2:此图遵循在Web浏览器上执行引导式自动化的蓝图的过程:(1)上传数据集文件,(2)选择目标变量,(3)过滤掉不需要的列,(4)选择算法以训练,(5)定义执行环境。 流程图的顶部是整个过程的导航栏。

在计算了数字之后(即,数据预处理,特征创建和转换,参数优化和特征选择以及最终模型的准确性和计算性能的再训练和评估),最终的摘要页面出现,显示了模型性能指标。 在最后一页的最后,我们将找到下载一个或多个受过训练的模型以供将来使用的链接,例如,将其作为生产中的RESTful API。

要查看完整的最终用户体验,您可以在此演示视频“机器学习自动化的指导分析”中观看实际操作中的引导式自动化应用程序

Knime分析平台

此机器学习自动化的蓝图是使用Knime Analytics Platform开发的。

Knime Analytics Platform是用于数据科学的开源软件,涵盖了您从数据摄取和数据混合到数据可视化,从机器学习算法到数据整理,从报告到部署等等的所有数据需求。 Knime Analytics Platform基于用于可视化编程的图形用户界面。 这使其非常直观且易于使用,从而大大减少了学习时间。 Knime Analytics Platform还被设计为对不同的数据格式,数据类型,数据源,数据平台和外部工具开放。

计算单元在Knime Analytics Platform的GUI中显示为彩色小块,称为“节点”。 在管道中一个接一个地组装节点,以实现数据处理应用程序。 管道称为“工作流”(图3)。

也可以通过Knime服务器从Web浏览器执行工作流程。 专用节点构建输入和输出Web组件,可以将其组装成网页。 将这些特殊节点插入工作流中可在执行流程中提供需要输入或显示输出的交互点。

鉴于其开放性,灵活性,可视化编程以及基于Web的可选执行,Knime Analytics Platform非常适合实施我们指导的自动化蓝图,以自动创建和训练分类模型。

机器学习自动化背后的工作流程

蓝图背后的工作流程可从Knime网站上的公共Knime示例服务器上获得,也可以通过Knime Analytics Platform在50_Applications / 36_Guided_Analytics_for_ML_Automation / 01_Guided_Analytics_for_ML_Automation下获得

您可以将工作流程导入Knime Analytics Platform,根据需要对其进行自定义,然后从Knime Server上的Web浏览器运行它。 在此视频中 ,您可以找到有关如何从Knime Examples Server访问工作流并将其导入Knime Analytics Platform的更多详细信息。 蓝图工作流程如下图3所示。

毫升2的knime引导自动化图3 尼姆

图3:引导的自动化工作流,实现所有必需的步骤和网页:设置配置,数据准备和模型训练以及最终的仪表板。

在工作流中,您可以识别基于Web的应用程序的三个阶段:

  • 设置配置:上载,选择,微调和执行自动化
  • 幕后:数据准备和模型训练
  • 最终仪表板:比较和下载模型

设置配置:上载,选择,微调和执行自动化

在工作流的第一部分中,每个浅灰色节点都会生成一个视图,即带有操作请求的网页。 通过Web浏览器运行工作流程到Knime Server时,这些网页会引入尽可能多的交互点,最终用户可以在其中设置首选项并指导分析过程。 您可以看到要上传数据集文件,选择目标变量并过滤某些特征的节点。

可以根据数据列的相关性或专家的知识来排除数据列。 相关性是衡量色谱柱质量的指标。 此度量基于列中缺失值的数量及其值分布; 缺失值太多或常数或分布值太高的列将受到处罚。 此外,可以手动移除列以防止数据泄漏

之后,您可以选择要训练的机器学习模型,可以选择引入参数优化和特征工程的设置,最后选择执行平台。 在执行这些特殊节点期间生成的网页序列如图2所示。

幕后:数据准备和模型训练

在接下来的阶段,号码处理在幕后进行。 这是导向自动化应用程序的核心。 它包括以下操作:

  • 缺失值估算和(可选)异常值检测
  • 模型参数优化
  • 功能选择
  • 最终优化的模型训练或再训练

定义所有设置后,应用程序将在后台执行所有选定的步骤。

数据分区 。 首先,将数据集分为训练集和测试集,使用80/20分割,对目标变量进行分层采样。 机器学习模型将在训练集上进行训练,并在测试集上进行评估。

数据预处理 。 在此,使用平均值或最频繁的值逐列估算缺失值。 如果先前选择了异常值,则使用四分位间距(IQR)技术检测异常值并将其限制为最接近的阈值。

参数优化参数优化过程对选定的一组超参数实施网格搜索。 网格搜索的粒度取决于超参数的模型和类型。 每个参数集均采用四重交叉验证方案进行测试,并按平均准确度进行排名。

特征工程和特征选择 。 对于特征工程 ,根据先前的设置创建了许多新的人工列。 可以应用四种列转换:

  • 在单列上进行简单转换(例如,x2,x3,tanh(x),ln(x))
  • 通过算术运算将成对的列组合在一起
  • 主成分分析( PCA
  • 聚类距离变换,其中数据按所选要素聚类,并为每个数据点计算到所选聚类中心的距离

在由所有原始功能和一些新创建的功能组成的新功能集上运行功能优化过程。 最佳功能集是通过按平均准确度排名的四重交叉验证方案通过随机搜索选择的。 可以自定义参数优化和特征工程。 实际上,对于小型数据集和简单问题,可以跳过模型优化以避免过度拟合。

模型再训练与评估 。 最后,使用最佳超参数和最佳输入特征集,最后一次在训练集上对所有选定的机器学习模型进行再训练,并在测试集上重新评估其最终精度。

最终仪表板:比较和下载模型

工作流的最后一部分在登录页面中生成视图。 名为“下载模型”的节点包含预先打包的基于JavaScript的视图,这些视图会生成图形,图表,按钮和描述,这些视图在最终的登录页面中可见。

在测试集上计算ROC曲线精度度量增益或提升图以及混淆矩阵 ,并显示在此最终目标页面中,以比较精度度量。

在训练和部署期间评估模型执行速度。 部署执行速度被衡量为运行一个输入的预测的平均速度。 因此,两个条形图分别以秒为单位显示模型训练时间,以毫秒为单位显示产生单个预测的平均时间。

所有仪表板视图都是交互式的。 可以更改绘图设置,并且可以即时探索数据可视化。

同一节点还将在页面末尾产生链接,以下载一个或多个训练有素的模型以供将来使用。

易于定制的工作流,用于引导式机器学习

在机器学习的导向自动化领域,我们已经走到了旅程的尽头。

我们已经展示了什么是机器学习的引导自动化,我们对半自动化(引导)机器学习应用程序的解释以及所需的步骤。

我们已经通过Knime Analytics Platform实施了一个蓝图,该蓝图可以免费下载,根据您的需求进行定制并可以免费重用。

在介绍了相关的GUI和分析步骤之后,我们在Web浏览器视图的后面展示了实现应用程序的工作流程。

该工作流已经可以用于二进制多类分类 ,并且可以轻松自定义并适应其他分析问题,例如,文档分类问题或时间序列分析。 其余的取决于您。

Knime的数据科学家Paolo Tamagnini拥有罗马萨皮恩扎大学的数据科学硕士学位,并拥有纽约大学在数据可视化技术方面的研究经验,这些数据用于机器学习的可解释性。

Simon Schmid目前正在德国康斯坦茨大学攻读计算机科学硕士学位。 他的研究兴趣是机器学习的自动化。 自2016年以来,他一直在Knime担任软件工程师。 他现在位于德克萨斯州的奥斯汀,完成了进一步的实习,更加深入地探索了机器学习的指导自动化。

克里斯蒂安·迪茨(Christian Dietz)拥有斯图加特商业与管理学院的商业信息学文凭,并获得了康斯坦茨大学计算机科学的硕士学位。 在康斯坦茨大学(University of Konstanz)担任研究程序员之后,他在该大学开发了生物图像分析和机器学习领域的框架和库,然后加入Knime担任软件工程师。 他最近的一些项目包括针对Knime Analytics Platform的深度学习,H2O机器学习和图像处理集成。  

有关Knime的更多信息,请访问www.knime.comKnime博客

-

新技术论坛提供了一个以前所未有的深度和广度探索和讨论新兴企业技术的场所。 选择是主观的,是基于我们选择的技术,我们认为这些技术对InfoWorld读者来说是重要的,也是他们最感兴趣的。 InfoWorld不接受发布的营销担保,并保留编辑所有贡献内容的权利。 将所有查询发送到 newtechforum@infoworld.com

这个故事“机器学习的指导自动化”最初由InfoWorld发布

翻译自: https://www.idginsiderpro.com/article/3334964/guided-automation-for-machine-learning.html

机器学习自动化 要学习什么

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值