logo

无需代码经验的机器学习入门第一天 - 训练AutoML 分类模型

作者:皮皮的皮2021.07.04 21:02浏览量:302

简介:在本章所有的训练都无需写任何的代码,这对于非程序是非常友好的,即便是程序员也能使用

来源:AzureDeveloper AzureDeveloper

开始之前,请点击这里下载我们需要的实例数据:https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_train.csv

使用Studio进行AutoML分类模型训练使用Studio进行AutoML分类模型训练

在本章所有的训练都无需写任何的代码,这对于非程序是非常友好的,即便是程序员也能使用Studio提供的便利功能大大介绍项目的开发成本,我们在本节中即将做如下的事情:

  • 创建一个Azure Machine Learning的workspace

  • 运行一个Auto ML的experiment

  • 查看experiment运行细节。

  • 部署模型

在开始之前,你至少需要有一个Azure订阅,以及从这里下载一个预先准备好的数据文件https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_train.csv

创建Azure Machine Learning的workspace

创建Azure Machine Learning的workspace非常直观,只需要登录到Azure的portal, 然后在marketplace里搜索Machine Lerning, 然后按照提示一步一步操作就可以了。

关于如何创建一个workspace, 你可以参考文档https://docs.azure.cn/zh-cn/machine-learning/how-to-manage-workspace?tabs=python

创建完成后,进入到Azure Machine Learning的概要页面,点击Launch Studio启动Azure Machine Learning Studio工具,
1625402131317.jpg
启动后,studio的全貌如下图:
1625402147758.jpg
下面我们将使用Studio工具进行Auto ML 分类模型训练

创建数据集(DataSet)

在之前的文章中我们已经学习过了Azure ML基本的数据处理概念和工具,在Azure ML中使用Store和DataSet来表示数据处理概念和工具。在我们使用Python SDK的时候,可以使用代码来创建数据存储(store)和数据集(dataset),然后将dataset 挂载(mount)到用于训练的机器上,代码可以像使用本地文件系统一样来使用存储在Azure Storage Blob里的数据, 关于这个部分,您可以从这篇文章来复习一下。本章中我们使用Studio来可视化的创建store和dataset,并应用于Auto ML。

启动Studio之后,选择左侧的菜单数据集,如下图:
1625402229946.jpg

然后选择创建数据集,并选择从本地文件
1625402245754.jpg
在出现的第一个界面,开始创建数据集,需要注意的是Azure Auto ML仅仅支持表格形式的数据:

1625402261147.jpg
给数据集起一个名字,然后数据集类型选择表格, 添加描述,然后下一步:
1625402275216.jpg

注意:

  • 数据存储和文件选择,选择默认的workspaceblobstore, 这是workspace创建时默认会创建一个storage

  • 选择上传文件选择刚刚下载的文件bankmarketing_train.csv, 然后下一步:
    1625402518698.jpg

请注意按照上图所示设置,特别需要注意文件格式, 分隔符, 编码, 列标题等等设置,然后下一步
1625402679801.jpg
开始进入了数据Schema预览和设置的部分,例如本例中我们不需要列数据day_of_week, 即可以通过开关不包含该列数据,设置后下一步:
1625402713392.jpg

最后一步,预览一下数据集的配置,然后点击创建,完成数据集创建。

创建计算群集

创建了数据集之后,我们需要再创建用于模型训练的数据群集。

打开studio之后,选择左侧的菜单:计算, 然后选择计算群集, 如下图:

点击新建之后图片
1625402741494.jpg
点击新建之后
1625402760349.jpg
在出现的界面之后,选择位置, 虚拟机优先级选择专用, 虚拟机类型选择CPU, 虚拟机大小可以选择Standard_DS2_v2, 然后选择下一步
1625402787249.jpg
输入集群名称,节点数下限选择0, 节点数上限4,然后选择下一步。

1625402807673.jpg

计算集群创建完成。

创建Auto ML任务
创建完数据集和计算集群之后,可以开始正式的使用studio来创建Auto ML experiment任务。

回到studio首页之后,选择左侧菜单的自动化ML, 然后选择新建自动化ML运行
1625402838451.jpg
在出现的界面里选择刚刚创建的数据集:

1625402852320.jpg
然后下一步,选择数据集之后,创建用于运行计算任务的Experiment和计算集群
1625402890959.jpg

这里输入experiment的名字my-1st-automl-experiment, 然后最需要注意的是:选择我们需要预测的数据列, 我们这里选择数据列y(string), 选择用于计算的群集为刚刚创建的群集,然后下一步

1625402912681.jpg
在本部我们需要选择算法类型,本例中我们选择分类, 然后选择查看其他配置设置, 在出现的对话框里按照对话框里进行分类的参数设置:
1625402942642.jpg
然后点击下一步:
1625402953285.jpg
至此,Azure Auto ML类型开始进行了训练,一切全部自动,在出现的界面里可以查看各种信息,如下图:
1625402972341.jpg

部署

等候训练完成后,进入左侧菜单试验(experiment), 找到刚刚创建的试验: my-1st-automl-experiment, 点击进入后,如下图:
1625402995340.jpg
选择运行的ID, 进入该运行的概要, 然后选择模型,如下图:
1625403010110.jpg
在上图选择查看解释,如下图:
1625403025852.jpg
点击部署, 根据提示即可将已经训练好的模型部署到Azure AKS或者Azure容器实例, 同时你可以将自己的自建的k8s继承进来,如下图:
1625403049319.jpg
至此我们已经使用Studio工具完成了一个Auto ML的分类模型训练以及部署,可以看到整个过程中,没有写一行代码,完全只需要在图形界面上配置就可以了,这个大大降低了模型开发的难度。

我们总结一下使用Studio 进行AutoML模型训练的基本步骤:

  • 数据载入和处理

  • 选择用于计算的计算集群

  • 选择计算的模型类型,需要注意的是Azure AutoML 仅仅支持:分类,基于时序数据预测,回归

  • 运行experiment

  • 查看训练模型

  • 部署模型

相关文章推荐

发表评论