如何在本地环境中成功进行ModelArts的测试?

ModelArts本地测试是指在本地环境中对ModelArts平台的功能进行验证和测试,以确保在部署到云端之前一切正常。

在AI开发过程中,调试是一个至关重要的环节,ModelArts作为华为云提供的一站式AI开发平台,提供了丰富的功能来支持开发者进行模型训练和推理,本文将详细介绍如何在本地环境中使用ModelArts SDK进行调试,帮助开发者快速验证模型的正确性并优化性能。

如何在本地环境中成功进行ModelArts的测试?

ModelArts SDK简介

ModelArts SDK是ModelArts平台提供的工具包,用于连接ModelArts的各个子服务,通过ModelArts SDK,用户可以方便地在本地环境中创建、管理和部署AI模型,以下是ModelArts SDK的主要功能:

1、Session初始化:包含认证鉴权信息,帮助SDK与OBS服务、ModelArts训练服务和推理服务进行交互。

2、训练脚本和数据准备:用户需要在本地保存训练脚本和数据集,以便进行本地训练。

3、虚拟环境定制:利用SDK可以方便地创建conda虚拟环境,满足不同的训练需求。

4、本地训练:在本地环境中启动训练作业,验证训练脚本和参数的正确性。

5、本地推理:在本地部署预测服务,进行模型推理测试。

本地训练的使用

优势和劣势

在线训练虽然拥有强大的计算资源和丰富的预置模型支持,但由于资源有限,任务往往需要排队等待,一个简单的代码错误或参数不当可能导致任务失败,本地训练的优势在于能够快速验证训练脚本和参数的正确性,避免在线训练中的长时间等待和资源浪费。

本地训练流程

1、Session初始化:使用以下代码进行session初始化:

   from modelarts.session import Session
   session = Session()

在华为云上使用notebook时,Session类初始化不需要任何信息,SDK会利用notebook创建时预先保存的AKSK信息完成认证鉴权。

2、准备训练脚本和训练数据:将训练脚本和数据保存在notebook容器中,训练脚本保存在目录/home/mauser/work/tensorflow_mlp_mnist_local_mode/train/中,启动脚本为tensorflow_mlp_mnist.py,数据通常保存在OBS上,需要下载到本地:

   source_file_path = "/home/mauser/work/tensorflow_mlp_mnist_local_mode"
   dataset_url = "https://modelartscnnorth1marketdataset.obs.cnnorth1.myhuaweicloud.com/datasetmarket/MnistDataSet/archiver/MnistDataSet.zip"
   dataset_file_names = ["trainimagesidx3ubyte.gz", "trainlabelsidx1ubyte.gz", "t10kimagesidx3ubyte.gz", "t10klabelsidx1ubyte.gz"]
   dataset_local_path = source_file_path + 'dataset/'
   dataset_local_name = dataset_local_path + 'MnistDataSet.zip' 
   if not os.path.exists(dataset_local_name):
       !wget {dataset_url} P {dataset_local_path}
       !unzip d {dataset_local_path} o {dataset_local_name}

3、训练环境准备:利用SDK创建conda虚拟环境:

   from modelarts.environment import Environment
   from modelarts.environment.conda_env import CondaDependencies
   env = Environment("tensorflow_mlp_mnist")
   cd = CondaDependencies.create(pip_packages=["tensorflow==1.13.1"], conda_packages=["python=3.6.2"])
   env.conda = cd

4、本地训练:在创建的conda虚拟环境中启动训练作业:

   from modelarts.environment import Environment
   from modelarts.environment.conda_env import CondaDependencies
   src_local_path = "/home/mauser/work/tensorflow_mlp_mnist_local_mode/train/"
   train_file = "tensorflow_mlp_mnist.py"
   estimator = Estimator(modelarts_session=session,
                         hyperparameters=["num_epochs", "30"],
                         code_dir=src_local_path,         # 本地训练脚本目录
                         boot_file=train_file)            # 本地训练脚本文件

在Pycharm中调用ModelArts平台

如何在本地环境中成功进行ModelArts的测试?

1、准备训练数据和代码并上传数据至OBS桶:进入“控制台”>“服务列表”>“存储”>“对象存储服务”,点击“创建桶”按钮进入创建页面,使用OBS Browser+工具将数据上传至华为云云端。

2、本地Pycharm中创建训练工程并配置环境:打开PyCharm工具,单击“File>Create Project”创建新工程,并在工程目录下创建“src”文件夹,将训练代码文件“dog_and_cat_train.py”拷贝到“src”文件夹下,在PyCharm工具栏中,选择“ModelArts>Edit Creden”,输入密钥并确保区域一致。

3、开始在本地调用ModelArts平台训练模型:配置训练参数,包括Job Name、Job Description、AI Engine等。

4、训练模型云端部署:在ModelArts管理控制台中,选择开发环境Notebook,点击创建并设置相关参数,第一次部署选择CPU 2核8GB规格,部署成功且熟悉部署过程后,再重新创建GPU实例执行训练作业。

5、在线测试训练模型:在JupyterLab中加载数据和代码,创建成功后,状态为运行中,通过指令开始训练模型。

本地Pytorch代码迁移至华为云ModelArts平台训练

1、修改数据集路径和模型权重保存路径:将原来的数据集路径用data_url变量代替,权重保存路径用train_url变量代替。

2、本地调试完后,将模型训练的相关代码和数据集上传至OBS文件夹下:登录华为云ModelArts控制台,选择开发环境Notebook,点击创建并设置相关参数。

3、在Notebook中加载数据和代码:创建成功后,状态为运行中,通过指令开始训练模型。

本地服务部署和调试

如果需要在个人PC或虚拟机上使用ModelArts SDK,则需要在本地环境中安装ModelArts SDK,安装后可直接调用ModelArts SDK轻松管理数据集、创建ModelArts训练作业及创建AI应用,并将其部署为在线服务,当前仅支持在Linux平台上部署本地服务Predictor,Windows平台不支持,推荐使用ModelArts Notebook部署本地服务。

步骤 描述
下载ModelArts SDK 获取最新版本的ModelArts SDK软件包
配置运行环境 确保本地环境已安装Python和pip
安装ModelArts SDK 使用pip命令安装SDK
Session鉴权 完成Session初始化,确保认证鉴权信息正确
本地服务配置 配置本地服务运行参数,如service_name、configs、model_id等
启动本地服务 在终端中输入指令启动本地服务

FAQs

Q1: ModelArts SDK在Windows上安装时遇到报错怎么办?

A1: 如果ModelArts SDK在Windows上安装时遇到报错,可能是因为缺少相应的依赖包,建议先安装3.1.1版本的futures依赖包,然后再重新安装SDK,确保Python版本≤3.10.x版本,推荐使用3.7.x版本。

Q2: 如何在本地环境中验证模型的正确性?

A2: 在本地环境中验证模型的正确性可以通过以下几个步骤实现:准备好训练脚本和数据集;利用ModelArts SDK创建conda虚拟环境,并在该环境中启动训练作业;通过本地推理服务进行模型推理测试,确保模型在本地环境中能够正常运行并得到预期结果。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1234154.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-23 10:55
下一篇 2024-03-24 11:40

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入