在 AzureML 上运行 YOLO26 🚀

什么是 Azure?

Azure 是微软的云计算平台,旨在帮助组织将其工作负载从本地数据中心迁移到云端。通过包括计算、数据库、分析、机器学习和网络在内的全方位云服务,用户可以挑选并使用这些服务来开发和扩展新应用程序,或者在公有云中运行现有应用程序。

什么是 Azure Machine Learning (AzureML)?

Azure Machine Learning(通常称为 AzureML)是一项全托管的云服务,使数据科学家和开发人员能够高效地将预测分析嵌入到应用程序中,帮助组织利用海量数据集,并将云的全部优势引入机器学习。AzureML 提供各种服务和功能,旨在使机器学习变得易于访问、易于使用且可扩展。它提供了自动机器学习、拖放式模型训练以及强大的 Python SDK 等功能,以便开发人员能够充分利用其机器学习模型。

AzureML 如何使 YOLO 用户受益?

对于 YOLO (You Only Look Once) 用户,AzureML 提供了一个强大、可扩展且高效的平台来训练和部署机器学习模型。无论你是想运行快速原型还是扩展以处理更广泛的数据,AzureML 灵活且用户友好的环境都提供了各种工具和服务来满足你的需求。你可以利用 AzureML 来:

  • 轻松管理用于训练的大型数据集和计算资源。
  • 利用内置工具进行数据预处理、特征选择和模型训练。
  • 通过 MLOps(机器学习运维)功能更高效地协作,包括但不限于模型的监控、审计和版本控制,以及数据的管理。

在随后的章节中,你将找到一份快速入门指南,详细说明如何从计算终端或笔记本(Notebook)运行 YOLO26 对象检测模型。

先决条件

在开始之前,请确保你有权访问 AzureML 工作区。如果你还没有工作区,可以按照 Azure 官方文档创建一个新的 AzureML 工作区。此工作区作为集中管理所有 AzureML 资源的场所。

创建计算实例

从你的 AzureML 工作区中,选择 Compute(计算) > Compute instances(计算实例) > New(新建),选择拥有你所需资源的实例。

Create Azure Compute Instance

从终端快速入门

启动你的计算实例并打开一个终端:

Open Terminal

创建虚拟环境

使用你偏好的 Python 版本创建一个 conda 虚拟环境并在其中安装 pip。目前 Python 3.13.1 在 AzureML 中存在依赖问题,因此请改用 Python 3.12。

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y

安装所需的依赖项:

cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

执行 YOLO26 任务

预测:

yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

以 0.01 的初始 learning_rate 训练一个检测模型,进行 10 个 epoch 的训练:

yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

你可以在此处找到更多关于使用 Ultralytics CLI 的说明。

从 Notebook 快速入门

创建一个新的 IPython 内核

打开计算终端。

Open Terminal

从计算终端中,使用 Python 3.12 创建一个新的 ipykernel,该内核将供你的 notebook 使用以管理依赖项:

conda create --name yolo26env -y python=3.12
conda activate yolo26env
conda install pip -y
conda install ipykernel -y
python -m ipykernel install --user --name yolo26env --display-name "yolo26env"

关闭终端并创建一个新的 notebook。从 notebook 中,选择刚刚创建的内核。

然后打开一个 notebook 单元格并安装所需的依赖项:

%%bash
source activate yolo26env
cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx

Note that you need to run source activate yolo26env in every %%bash cell to ensure the cell uses the intended environment.

使用 Ultralytics CLI 运行一些预测:

%%bash
source activate yolo26env
yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'

或者使用 Ultralytics Python 接口,例如用于训练模型:

from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")  # load an official YOLO26n model

# Use the model
model.train(data="coco8.yaml", epochs=3)  # train the model
metrics = model.val()  # evaluate model performance on the validation set
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image
path = model.export(format="onnx")  # export the model to ONNX format

正如上述终端部分所述,你可以使用 Ultralytics CLI 或 Python 接口来运行 YOLO26 任务。

按照这些步骤,你应该能够快速在 AzureML 上运行 YOLO26 进行快速试验。对于更高级的用法,你可以参考本指南开头链接的完整 AzureML 文档。

使用 AzureML 探索更多

本指南旨在介绍如何开始在 AzureML 上使用 YOLO26。然而,这仅仅是 AzureML 功能的冰山一角。要深入了解并充分挖掘 AzureML 在机器学习项目中的潜力,请考虑探索以下资源:

常见问题 (FAQ)

如何在 AzureML 上运行 YOLO26 进行模型训练?

在 AzureML 上运行 YOLO26 进行模型训练涉及几个步骤:

  1. 创建计算实例:从你的 AzureML 工作区导航至 Compute(计算) > Compute instances(计算实例) > New(新建),并选择所需的实例。

  2. 设置环境:启动计算实例,打开终端并创建一个 Conda 环境。设置你的 Python 版本(目前不支持 Python 3.13.1):

    conda create --name yolo26env -y python=3.12
    conda activate yolo26env
    conda install pip -y
    pip install ultralytics onnx
  3. 运行 YOLO26 任务:使用 Ultralytics CLI 来训练你的模型:

    yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01

有关更多详细信息,你可以参考使用 Ultralytics CLI 的说明

使用 AzureML 进行 YOLO26 训练有什么好处?

AzureML 为训练 YOLO26 模型提供了一个强大且高效的生态系统:

  • 可扩展性:随着数据和模型复杂性的增长,轻松扩展你的计算资源。
  • MLOps 集成:利用版本控制、监控和审计等功能来简化机器学习运维。
  • 协作:在团队内共享和管理资源,增强协作工作流。

这些优势使 AzureML 成为从快速原型到大规模部署等各种项目的理想平台。如需更多提示,请查看 AzureML 作业

如何在 AzureML 上运行 YOLO26 时排查常见问题?

排查在 AzureML 上运行 YOLO26 时遇到的常见问题可能涉及以下步骤:

  • 依赖问题:确保安装了所有必需的包。参考 requirements.txt 文件获取依赖项。
  • 环境设置:在运行命令之前,请验证你的 conda 环境是否已正确激活。
  • 资源分配:确保你的计算实例拥有足够的资源来处理训练工作负载。

如需额外指导,请查阅我们的 YOLO 常见问题文档。

我可以在 AzureML 上同时使用 Ultralytics CLI 和 Python 接口吗?

可以,AzureML 允许你无缝使用 Ultralytics CLI 和 Python 接口:

  • CLI:非常适合快速任务和直接从终端运行标准脚本。

    yolo predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'
  • Python 接口:对于需要自定义编码和在 notebook 中进行集成的更复杂任务非常有用。

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    model.train(data="coco8.yaml", epochs=3)

有关分步说明,请参考 CLI 快速入门指南Python 快速入门指南

使用 Ultralytics YOLO26 相比其他目标检测模型有什么优势?

Ultralytics YOLO26 相比竞争的目标检测模型具有几个独特的优势:

  • 速度:与 Faster R-CNN 和 SSD 等模型相比,推理和训练时间更快。
  • 准确性:在检测任务中具有高准确性,并具备无锚点设计和增强的数据增强策略等功能。
  • 易用性:直观的 API 和 CLI 可实现快速设置,使初学者和专家都能轻松使用。

要探索更多关于 YOLO26 功能的信息,请访问 Ultralytics YOLO 页面以获取详细见解。

评论