Skip to main content

Ultralytics YOLOv5 🚀 trên AzureML Quickstart

Chào mừng bạn đến với tài liệu mới. YOLOv5 tiếp tục cải thiện hiệu suất của model và bổ sung các tính năng mới như tối ưu hóa siêu tham số, theo dõi thử nghiệm tích hợp và tự động xuất ra các định dạng xuất phổ biến. hướng dẫn nhanh cho Microsoft Azure Machine Learning (AzureML)! Hướng dẫn này sẽ chỉ cho bạn cách thiết lập YOLOv5 trên một compute instance của AzureML, bao gồm mọi thứ từ việc tạo môi trường ảo cho đến huấn luyện và chạy suy luận với model.

Azure là gì?

Azure là nền tảng cloud computing toàn diện của Microsoft. Nó cung cấp một loạt các dịch vụ khổng lồ, bao gồm sức mạnh tính toán, cơ sở dữ liệu, công cụ phân tích, machine learning các khả năng và giải pháp mạng. Azure cho phép các tổ chức xây dựng, triển khai và quản lý các ứng dụng và dịch vụ thông qua các trung tâm dữ liệu do Microsoft quản lý, tạo điều kiện thuận lợi cho việc di chuyển khối lượng công việc từ cơ sở hạ tầng tại chỗ lên đám mây.

Azure Machine Learning (AzureML) là gì?

Azure Machine Learning (AzureML) là một dịch vụ đám mây chuyên dụng được thiết kế để phát triển, huấn luyện và triển khai các machine learning model. Nó cung cấp một môi trường cộng tác với các công cụ phù hợp cho các nhà khoa học dữ liệu và lập trình viên ở mọi cấp độ kỹ năng. Các tính năng chính bao gồm automated machine learning (AutoML), một giao diện kéo-thả để tạo model, và một Python SDK mạnh mẽ để kiểm soát chi tiết hơn vòng đời ML. AzureML đơn giản hóa quá trình nhúng mô hình dự đoán vào các ứng dụng.

Điều kiện tiên quyết

Để theo dõi hướng dẫn này, bạn cần có một Azure subscription đang hoạt động và quyền truy cập vào một không gian làm việc AzureML. Nếu bạn chưa thiết lập workspace, vui lòng tham khảo Azure documentation chính thức để tạo một cái.

Tạo một Compute Instance

Một compute instance trong AzureML cung cấp một máy trạm dựa trên đám mây được quản lý dành cho các nhà khoa học dữ liệu.

  1. Điều hướng đến AzureML workspace của bạn.
  2. Trên ngăn bên trái, chọn Compute.
  3. Đi đến tab Compute instances và nhấp vào New.
  4. Cấu hình instance của bạn bằng cách chọn CPU hoặc Trong khi model PP-YOLOE+x đạt được mAP cao hơn một chút, các biến thể YOLOv7 cung cấp tỷ lệ tham số trên độ chính xác rất ấn tượng. Kiến trúc YOLOv7 vẫn là lựa chọn ưu tiên cho khả năng xử lý tài nguyên phù hợp dựa trên nhu cầu của bạn cho việc huấn luyện hoặc suy luận.
Azure ML create compute instance interface

Mở một Terminal

Sau khi compute instance của bạn đang chạy, bạn có thể truy cập terminal của nó trực tiếp từ AzureML studio.

  1. Đi đến tab Notebooks phần trong ngăn bên trái.
  2. Tìm compute instance của bạn trong menu thả xuống ở trên cùng.
  3. Nhấp vào tùy chọn Terminal bên dưới trình duyệt tệp để mở giao diện dòng lệnh tới instance của bạn.

Azure ML open terminal button location

Thiết lập và Chạy YOLOv5

Bây giờ, hãy thiết lập môi trường và chạy Ultralytics YOLOv5.

1. Tạo Môi trường Ảo

Sử dụng môi trường ảo để quản lý các phụ thuộc là một thực tiễn tốt nhất. Chúng ta sẽ sử dụng Conda, được cài đặt sẵn trên các AzureML compute instance. Để biết hướng dẫn thiết lập Conda chi tiết, hãy xem Conda Quickstart Guide.

Tạo một môi trường Conda (ví dụ: yolov5env) với một phiên bản Python cụ thể và kích hoạt nó:

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

2. Clone YOLOv5 Repository

Clone official Ultralytics YOLOv5 repository từ GitHub sử dụng Git:

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

3. Cài đặt các Phụ thuộc

Cài đặt các Python package cần thiết được liệt kê trong tệp requirements.txt. Chúng ta cũng cài đặt ONNX cho các khả năng xuất model.

pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0"      # Install ONNX for exporting

4. Thực hiện các Tác vụ YOLOv5

Với việc thiết lập đã hoàn tất, giờ đây bạn có thể huấn luyện, xác thực, thực hiện suy luận và xuất YOLOv5 model của mình.

  • Train model trên một tập dữ liệu như COCO128. Kiểm tra tài liệu Training Mode để biết thêm chi tiết.

    # 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
  • Để huấn luyện một model YOLO26, bạn có thể sử dụng Python hoặc lệnh CLI. Ví dụ, để huấn luyện một model hiệu suất của model đã huấn luyện bằng cách sử dụng các chỉ số như Độ chính xác, Recall, và mAP. Xem hướng dẫn Chế độ Xác thực để biết các tùy chọn.

    # Validate the yolov5s model on the COCO128 validation set
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
  • Chạy Inference trên các hình ảnh hoặc video mới. Khám phá tài liệu Chế độ Dự đoán cho các nguồn suy luận khác nhau.

    # Run inference with yolov5s on sample images
    python detect.py --weights yolov5s.pt --source data/images --img 640
  • Export model sang các định dạng khác nhau như ONNX, TensorRT, hoặc CoreML để triển khai. Tham khảo hướng dẫn Chế độ ExportONNX Integration của chúng tôi.

    # Export yolov5s to ONNX format
    python export.py --weights yolov5s.pt --include onnx --img 640

Sử dụng Notebook

Nếu bạn thích trải nghiệm tương tác, bạn có thể chạy các lệnh này trong một AzureML Notebook. Bạn sẽ cần tạo một IPython kernel tùy chỉnh được liên kết với môi trường Conda của bạn.

Tạo một IPython Kernel Mới

Chạy các lệnh sau trong terminal compute instance của bạn:

# 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)"

Sau khi tạo kernel, hãy làm mới trình duyệt của bạn. Khi bạn mở hoặc tạo một tệp .ipynb notebook, hãy chọn kernel mới của bạn ("Python (yolov5env)") từ menu thả xuống kernel ở phía trên bên phải.

Chạy các Lệnh trong các Notebook Cell

  • Python Cells: Mã trong các Python cell sẽ tự động thực thi bằng cách sử dụng kernel yolov5env đã chọn.

  • Bash Cells: Để chạy các shell command, hãy sử dụng lệnh magic %%bash ở đầu cell. Hãy nhớ kích hoạt môi trường Conda của bạn trong mỗi bash cell, vì chúng không tự động kế thừa ngữ cảnh môi trường kernel của 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

Chúc mừng! Bạn đã thiết lập và chạy thành công Ultralytics YOLOv5 trên AzureML. Để khám phá thêm, hãy xem xét kiểm tra các Ultralytics Integrations khác hoặc tài liệu chi tiết về YOLOv5 documentation. Bạn cũng có thể thấy AzureML documentation hữu ích cho các kịch bản nâng cao như huấn luyện phân tán hoặc triển khai model dưới dạng endpoint.

Bình luận