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 Ultralytics YOLOv5 dành 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 compute instance AzureML, từ việc tạo môi trường ảo đến huấn luyện và chạy suy luận bằng 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 dịch vụ đa dạng, 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à 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 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 chuyển workload từ hạ tầng tại chỗ lên đám mây.
Azure Machine Learning (AzureML) là gì?#
Azure Machine Learning (AzureML) là dịch vụ đám mây 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ụ cung cấp môi trường cộng tác với các công cụ phù hợp cho nhà khoa học dữ liệu và developer ở mọi cấp độ kỹ năng. Các tính năng chính 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 có gói đăng ký Azure đang hoạt động và quyền truy cập vào 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 nền tảng đám mây được quản lý dành cho nhà khoa học dữ liệu.
- Truy cập workspace AzureML của bạn.
- Trong ngăn bên trái, chọn Compute.
- Chuyển đến tab Compute instances rồi nhấp vào New.
- 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 suy luận.
Mở Terminal#
Sau khi compute instance khởi chạy, bạn có thể truy cập terminal trực tiếp từ AzureML studio.
- Chuyển đến mục Notebooks trong ngăn bên trái.
- Tìm compute instance của bạn trong menu thả xuống ở phía trên.
- 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 trên instance.

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#
Bạn nên sử dụng môi trường ảo để quản lý các dependency. Chúng ta sẽ dùng Conda, được cài đặt sẵn trên compute instance 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ể rồi 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 installed2. Sao chép repository YOLOv5#
Sao chép 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 directory3. Cài đặt dependency#
Cài đặt các package Python cần thiết được liệt kê trong tệp 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 exporting4. 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, xác thực, chạy suy luận và export model YOLOv5.
-
Huấn luyện model trên tập dữ liệu như COCO128. Xem hướng dẫn Huấn luyện dữ liệu tùy chỉnh để 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 -
Xác thực hiệu năng của model đã huấn luyện bằng các metric như Precision, Recall và mAP. Chạy
python val.py --helpđể xem tất 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 suy luận trên hình ảnh hoặc video mới. Xem Hướng dẫn bắt đầu nhanh YOLOv5 để biết các nguồn suy luận được hỗ trợ.
# 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 Export model và trang Tích hợp ONNX.
# 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 cần tạo một kernel IPython tùy chỉnh được liên kết với môi trường Conda.
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 tệp notebook .ipynb, hãy chọn kernel mới của bạn ("Python (yolov5env)") trong menu thả xuống kernel ở góc trên bên phải.
Chạy lệnh trong các ô Notebook#
-
Ô Python: Mã trong ô Python sẽ tự động chạy bằng kernel
yolov5envđã chọn. -
Ô Bash: Để chạy lệnh shell, hãy 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 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
Xin chúc mừng! Bạn đã thiết lập và chạy thành công Ultralytics YOLOv5 trên AzureML. Để tìm hiểu 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ể tham khảo tài liệu AzureML để xử lý các trường hợp nâng cao như huấn luyện phân tán hoặc triển khai model dưới dạng endpoint.
Câu hỏi thường gặp#
Instance CPU đủ cho suy luận và các lượt chạy thử ngắn trên COCO128, nhưng huấn luyện thực tế cần cấu hình GPU. Chọn máy ảo GPU khi tạo compute instance và xác nhận PyTorch nhận diện được GPU bằng
python -c "import torch; print(torch.cuda.is_available())".Các ô bash không kế thừa môi trường của kernel notebook. Bắt đầu mỗi ô
%%bashbằngsource activate yolov5env, hoặc chạy các ô Python bằng kernelPython (yolov5env)mà bạn đã tạo.Các tệp trong workspace file share được mount tại
~/cloudfilessẽ được duy trì qua các lần dừng và hiển thị trên những compute instance khác. Mọi dữ liệu ở nơi khác trên disk của instance vẫn được giữ khi instance còn tồn tại, nhưng sẽ mất nếu instance bị xóa.Có.
pip install ultralyticscung cấp khả năng huấn luyện, xác thực và export YOLO26 bằng CLIyolotrong cùng môi trường Conda. Xem Hướng dẫn bắt đầu nhanh AzureML để biết quy trình thực hiện bằng package.