Skip to main content

Azure机器学习一天教程 - 在云平台上运行您的Hello World 脚本

分类:  Azure机器学习 标签:  #Azure #人工智能 #机器学习 #Python 发布于: 2023-06-10 22:40:13

我们前面详细的讲述了如何构建Azure机器学习的环境,包括云环境和本地环境,您可以通过下述的链接来回顾一下如何构建一个基于Azure机器学习平台的环境:

创建Azure机器学习的本地环境和云环境

我们现在通过一天的教程带领大家来完成一次机器学习的完整过程。本教程分成三个部分:

  • 在机器学习平台运行一个Hello World, 给大家展示一个机器学习项目的基本的步骤和脚本。
  • 在机器学习平台上训练一个模型。
  • 使用自己的数据在机器学习平台上训练一个模型。

本教程让一个Hello World在Azure 机器学习平台上跑起来。

先决条件

  • 你有一个Azure订阅,并且创建了一个Azure机器学习的workspace.
  • 配置了用于机器学习的环境,参考前面的文章完成机器学习的环境配置

Hello, Azure Machine Learning World!

我们先来创建一个hello World的脚本。这是国际管理

编写Hello world脚本

在你的机器上创建一个目录tutorial

mkdir tutorial
cd tutorial
mkdir src

在目录tutorial\src\里创建一个Python脚本文件hello.py, 文件内容如下:

# src/hello.py
print("Hello, Azure Machine Learning!")

保存该文件。

启动Anaconda的命令行,激活你已经创建的Python环境。

conda activate myml
//进入到你的项目目录中,运行hello.py
python hello.py

结果如下:

(myml) D:\MyProjects\MLProjects\tutorial\src>python hello.py
Hello, World

注意
一定要记得已经从第一篇文章的环境准备中,从Azure Machine Learning上下载回来了config.js 并放在了项目根目录里,而且也已经安装了Azure Cli, 同时也设定了默认的Cloud环境,并且设定了默认的订阅,同时使用az login登录了。

编写控制脚本

在使用Python SDK进行开发的过程中,一个非常简单的逻辑就是,使用Python脚本训练模型,处理数据等工作,这些都准备好了之后,我们仍然需要使用一个控制脚本来为这个训练脚本准备环境:例如创建可以使用的机器,安装必须的软件包,准备数据环境等等,然后该控制脚本将这些项目提交到Azure 机器学习平台,平台就会自动完成模型的训练,处理数据,日志记录等等工作。

在项目的根目录创建一个Python脚本:run-hello.py, 该脚本的内容如下:

# run-hello.py
# 导入Azure ML SDK必要的包
# workspace 对应Azure 机器学习的workspace
# Experiment 对应 Experiment资源
# Environment 对应 Environment
# ScriptRunConfig 为脚本的运行配置必要的参数
from azureml.core import Workspace, Experiment, Environment, ScriptRunConfig

# 确保从workspace下载回来的配置文件`config.js`放在了根目录
ws = Workspace.from_config()
#创建一个新的Experiment
experiment = Experiment(workspace=ws, name='day1-experiment-hello')

#指定脚本的源目录,训练的脚本,以及需要用来训练脚本的机器。需要注意该机器`cpu-cluster`要事先在workspace里创建好
config = ScriptRunConfig(source_directory='./src', script='hello.py', compute_target='cpu-cluster')

#向workspace 提交训练的任务
run = experiment.submit(config)
#返回该运行的url
aml_url = run.get_portal_url()
print(aml_url)

保存该脚本之后,在已经启用的Anaconda环境里运行该脚本:

(myml) D:\MyProjects\MLProjects\tutorial>python 03-run-hello.py
https://studio.ml.azure.cn/runs/day1-experiment-hello_1623404010_f4adae66?wsid=/subscriptions/<Your Subscription id>/resourcegroups/mlgroup/workspaces/hongweiml&tid=<TID>

(myml) D:\MyProjects\MLProjects\tutorial>

使用浏览器打开该运行的监控URL:


点击旁边的Outputs + logs即可观察到日志的输出,如下图:

至此一个简单的基于Azure Machine Learning的Hello World项目就完成了,虽然这个项目非常简单,但是该项目非常明晰的介绍了使用Python SDK如何在Azure机器学习平台上进行模型训练的一般步骤。


下一篇我们来训练模型。