Ultralytics YOLOv5 🚀 on AzureML 快速入门#
欢迎阅读适用于微软 Azure 机器学习(AzureML)的 Ultralytics YOLOv5 快速入门指南!本指南将带你了解如何在 AzureML 计算实例上设置 YOLOv5,涵盖从创建虚拟环境到使用模型进行训练和运行推理的各个方面。
什么是 Azure?#
Azure 是微软全面的云计算平台。它提供广泛的服务,包括计算能力、数据库、分析工具、机器学习功能以及网络解决方案。Azure 使组织能够通过微软托管的数据中心构建、部署和管理应用程序和服务,从而促进工作负载从本地基础设施向云端的迁移。
什么是 Azure Machine Learning (AzureML)?#
Azure Machine Learning (AzureML) 是一项专门的云服务,旨在开发、训练和部署机器学习模型。它提供了一个协作环境,其中的工具适用于各种技能水平的数据科学家和开发者。关键功能包括自动机器学习 (AutoML)、用于模型创建的拖放界面,以及用于更精细地控制 ML 生命周期的强大 Python SDK。AzureML 简化了将预测建模嵌入应用程序的过程。
前提条件#
要按照本指南操作,你需要一个有效的 Azure 订阅并访问 AzureML 工作区。如果你尚未设置工作区,请参考官方的 Azure 文档进行创建。
创建计算实例#
AzureML 中的计算实例为数据科学家提供了一个托管的云端工作站。
- 导航到你的 AzureML 工作区。
- 在左侧窗格中,选择 Compute(计算)。
- 转到 Compute instances(计算实例)选项卡,然后点击 New(新建)。
- 根据你的训练或推理需求,通过选择适当的 CPU 或 GPU 资源来配置你的实例。
打开终端#
计算实例运行后,你可以直接从 AzureML 工作室访问其终端。
- 转到左侧窗格中的 Notebooks(笔记本)部分。
- 在顶部的下拉菜单中找到你的计算实例。
- 点击文件浏览器下方的 Terminal(终端)选项,打开通往你实例的命令行界面。

设置并运行 YOLOv5#
现在,让我们设置环境并运行 Ultralytics YOLOv5。
创建虚拟环境#
使用虚拟环境来管理依赖项是最佳实践。我们将使用预安装在 AzureML 计算实例上的 Conda。有关详细的 Conda 设置指南,请参阅 Ultralytics Conda 快速入门指南。
创建一个包含特定 Python 版本的 Conda 环境(例如 yolov5env)并激活它:
conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env # Activate the environment
conda install pip -y # Ensure pip is installed克隆 YOLOv5 存储库#
使用 Git 从 GitHub 克隆官方的 Ultralytics YOLOv5 仓库:
git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5 # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursive安装依赖项#
安装 requirements.txt 文件中列出的必要 Python 包。我们还安装了 ONNX 以实现模型导出功能。
pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0" # Install ONNX for exporting执行 YOLOv5 任务#
设置完成后,你现在可以训练、验证、执行推理并导出你的 YOLOv5 模型。
-
在诸如 COCO128 的数据集上训练模型。查看训练模式文档了解更多详情。
# Start training using yolov5s pretrained weights on the COCO128 dataset python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16 -
使用 Precision、Recall 和 mAP 等指标验证训练后的模型性能。有关选项,请参见验证模式指南。
# Validate the yolov5s model on the COCO128 validation set python val.py --weights yolov5s.pt --data coco128.yaml --img 640 -
对新图像或视频运行推理。浏览预测模式文档以了解各种推理来源。
# Run inference with yolov5s on sample images python detect.py --weights yolov5s.pt --source data/images --img 640 -
将模型导出为诸如 ONNX、TensorRT 或 CoreML 等不同格式以便部署。请参考导出模式指南和 ONNX 集成页面。
# Export yolov5s to ONNX format python export.py --weights yolov5s.pt --include onnx --img 640
使用笔记本#
如果你更喜欢交互式体验,可以在 AzureML Notebook 中运行这些命令。你需要创建一个链接到你的 Conda 环境的自定义 IPython 内核。
创建一个新的 IPython 内核#
在你的计算实例终端中运行以下命令:
# Ensure your Conda environment is active
# conda activate yolov5env
# Install ipykernel if not already present
conda install ipykernel -y
# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"创建内核后,刷新你的浏览器。当你打开或创建一个 .ipynb notebook 文件时,从右上角的内核下拉菜单中选择你的新内核("Python (yolov5env)")。
在笔记本单元格中运行命令#
-
Python 单元格: Python 单元格中的代码将使用所选的
yolov5env内核自动执行。 -
Bash 单元格: 要运行 shell 命令,请在单元格开头使用
%%bash魔术命令。请记住在每个 bash 单元格内激活你的 Conda 环境,因为它们不会自动继承 notebook 的内核环境上下文。%%bash source activate yolov5env # Activate environment within the cell # Example: Run validation using the activated environment python val.py --weights yolov5s.pt --data coco128.yaml --img 640
恭喜!你已成功在 AzureML 上设置并运行了 Ultralytics YOLOv5。如需进一步探索,请考虑查看其他Ultralytics 集成或详细的 YOLOv5 文档。你可能还会发现 AzureML 文档对于诸如分布式训练或将模型部署为端点等高级场景非常有用。