我是靠谱客的博主 细心太阳,最近开发中收集的这篇文章主要介绍利用Azure云上的GPU Cluster来跑EfficientDet的注意事项,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

首先导入azureml.core

其次从azureml.core导入Environment,Experiment,ScriptRunConfig,Workspace

获取workspace

用Environment.form_conda_specification来获取运行环境,我在这里停留了很长时间,因为例子中用的是Environment.get(workspace=ws,name="AzureML-PyTorch-1.4-GPU").clone("mlflow-env"),env.Python.conda_dependencies.add_pip_package("azureml-mlflow"),env.Python.conda_dependencies.add_pip_package("pillow==6.0.0");无论如何修改,得到的环境和自己运行的环境都不一致,导致各种报错如不支持Cuda等。把name改为配置好的环境如AzureML-pytorch-1.9-ubuntu18.04-py37-cuda11-gpu,发现也有许多问题,如pytorch版本最高只到1.9,支持不到1.9.1,无法再添加packages.

用ScriptRunConfig来配置源文件夹和训练脚本

设置好脚本运行环境和目标机器(带GPU)

获取实验(如果没有,则创建)

提交实验

注意点:

  1. 安装包里要包含mlflow和azureml-mlflow
  2. 源文件夹里不要放大量数据,超出300M就麻烦了,但可以用azureml._restclient.snapshots_client.SNAPSHOT_MAX_SIZE_BYTES=zijieshu来加大限制,如果文件超过2000个,少放点,因为最少一个脚本文件就可以运行了

训练用coco数据用文件形式的dataset存储,读取,Azure上有现成的读取代码,直接用就可以了

在把训练放到Azure云上训练之前,要先在本地跑成功,本地训练注意:

  1. 如果你没有专业显卡,把gpus=1改为gpus=0(或Cuda=1改为Cuda=0)
  2. 工作空间的获取方式不一样,按官方教程设置
  3. 提交实验之前添加:mlflow.set_tracking_url(ws.get_mlflow_tracking_uri());mlflow.set_experiment(experiment_name)就可以在azure中的log中查看log刷新

最后

以上就是细心太阳为你收集整理的利用Azure云上的GPU Cluster来跑EfficientDet的注意事项的全部内容,希望文章能够帮你解决利用Azure云上的GPU Cluster来跑EfficientDet的注意事项所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部