YOLO Vision 2026:

Ultralytics YOLOv5 🚀 trên AzureML: Hướng dẫn bắt đầu nhanh#

Chào mừng bạn đến với hướng dẫn bắt đầu nhanh YOLOv5 của Ultralytics dành cho Microsoft Azure Machine Learning (AzureML)! Hướng dẫn này sẽ hướng dẫn bạn thiết lập YOLOv5 trên một compute instance của AzureML, bao gồm mọi bước từ tạo môi trường ảo đến huấn luyện và chạy inference với model.

Azure là gì?#

Azure là nền tảng điện toán đám mây toàn diện của Microsoft. Nền tảng này cung cấp nhiều loại dịch vụ, bao gồm năng lực tính toán, cơ sở dữ liệu, công cụ phân tích, khả năng machine learning và các 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ý ứng dụng cũng như dịch vụ thông qua các trung tâm dữ liệu do Microsoft quản lý, hỗ trợ di chuyển workload từ hạ tầng tại chỗ lên cloud.

Azure Machine Learning (AzureML) là gì?#

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

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

Để làm theo hướng dẫn này, bạn cần một gói đăng ký Azure đang hoạt động và quyền truy cập vào một workspace AzureML. Nếu chưa thiết lập workspace, hãy tham khảo tài liệu Azure chính thức để tạo workspace.

Tạo Compute Instance#

Compute instance trong AzureML cung cấp một workstation trên cloud được quản lý dành cho data scientist.

  1. Đi đến workspace AzureML của bạn.
  2. Trong ngăn bên trái, chọn Compute.
  3. Chuyển đến tab Compute instances và nhấp vào New.
  4. Cấu hình instance bằng cách chọn tài nguyên CPU hoặc GPU phù hợp với nhu cầu huấn luyện hoặc inference của bạn.
Azure ML create compute instance interface

Mở Terminal#

Sau khi compute instance khởi chạy, bạn có thể truy cập trực tiếp vào terminal từ AzureML studio.

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

Vị trí nút mở terminal trong Azure ML

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#

Theo thông lệ tốt nhất, bạn nên sử dụng môi trường ảo để quản lý các dependency. Chúng ta sẽ sử dụng Conda, vốn được cài đặt sẵn trên compute instance của AzureML. Để xem hướng dẫn thiết lập Conda chi tiết, hãy tham khảo Hướng dẫn bắt đầu nhanh Conda của Ultralytics.

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

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 repository YOLOv5#

Clone repository YOLOv5 chính thức của Ultralytics từ GitHub bằ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 dependency#

Cài đặt các package Python cần thiết được liệt kê trong file requirements.txt. Chúng ta cũng cài đặt ONNX để hỗ trợ export 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#

Sau khi hoàn tất thiết lập, bạn có thể huấn luyện, validation, chạy inference và export model YOLOv5 của mình.

  • Huấn luyện model trên một dataset như COCO128. Xem 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
  • Validation hiệu năng của model đã huấn luyện bằng các metric như Precision, RecallmAP. Xem hướng dẫn Validation Mode để 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 hình ảnh hoặc video mới. Khám phá tài liệu Prediction Mode để tìm hiểu các nguồn inference 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 format khác nhau như ONNX, TensorRT hoặc CoreML để triển khai. Tham khảo hướng dẫn Export Mode và trang ONNX Integration.

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

Sử dụng Notebook#

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

Tạo IPython Kernel mới#

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

# 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. Khi mở hoặc tạo file notebook .ipynb, hãy chọn kernel mới của bạn ("Python (yolov5env)") từ menu thả xuống kernel ở góc trên bên phải.

Chạy lệnh trong các ô Notebook#

  • Các ô Python: Code trong các ô Python sẽ tự động thực thi bằng kernel yolov5env đã chọn.

  • Các ô Bash: Để chạy lệnh shell, hãy sử dụng magic command %%bash ở đầu ô. Hãy nhớ kích hoạt môi trường Conda trong từng ô bash, vì các ô này không tự động kế thừa context 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 các Tích hợp Ultralytics khác hoặc tài liệu YOLOv5 chi tiết. Bạn cũng có thể thấy tài liệu AzureML 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