Làm chủ triển khai YOLOv5 trên Google Cloud Platform (GCP) Deep Learning VM#
Bắt đầu hành trình với trí tuệ nhân tạo (AI) và machine learning (ML) có thể là một trải nghiệm đầy hứng khởi, đặc biệt khi bạn tận dụng sức mạnh và tính linh hoạt của nền tảng điện toán đám mây. Google Cloud Platform (GCP) cung cấp các công cụ mạnh mẽ, được thiết kế cho cả những người đam mê và chuyên gia ML. Một trong những công cụ đó là Deep Learning VM, được cấu hình sẵn cho các tác vụ khoa học dữ liệu và ML. Trong hướng dẫn này, chúng ta sẽ tìm hiểu quy trình thiết lập Ultralytics YOLOv5 trên GCP Deep Learning VM. Dù bạn mới bắt đầu làm quen với ML hay đã là một người thực hành giàu kinh nghiệm, hướng dẫn này cung cấp lộ trình rõ ràng để triển khai các model phát hiện đối tượng sử dụng YOLOv5.
🆓 Ngoài ra, nếu bạn là người dùng GCP mới, bạn có thể tận dụng ưu đãi tín dụng miễn phí trị giá $300 để khởi động các dự án của mình.
Ngoài GCP, hãy khám phá các tùy chọn khởi động nhanh khác dễ tiếp cận cho YOLOv5, chẳng hạn như Notebook Google Colab của chúng tôi để có trải nghiệm trên trình duyệt, hoặc khả năng mở rộng của Amazon AWS. Ngoài ra, những người dùng container có thể sử dụng image Docker chính thức của chúng tôi trên Docker Hub
để có một môi trường được đóng gói, theo Hướng dẫn Quickstart Docker.
Bước 1: Tạo và cấu hình Deep Learning VM của bạn#
Hãy bắt đầu bằng cách tạo một máy ảo được tối ưu hóa cho deep learning:
- Truy cập GCP marketplace và chọn Deep Learning VM.
- Chọn một instance n1-standard-8; instance này cung cấp sự cân bằng giữa 8 vCPU và 30 GB bộ nhớ, phù hợp với nhiều tác vụ ML.
- Chọn một GPU. Lựa chọn này phụ thuộc vào workload của bạn; ngay cả GPU T4 cơ bản cũng sẽ tăng tốc đáng kể quá trình training model.
- Đánh dấu vào tùy chọn 'Install NVIDIA GPU driver automatically on first startup?' để thiết lập liền mạch.
- Cấp phát một Persistent Disk SSD 300 GB để ngăn ngừa các nút thắt cổ chai I/O.
- Nhấp vào 'Deploy' và cho phép GCP provision Deep Learning VM tùy chỉnh của bạn.
VM này được cài sẵn các công cụ và framework thiết yếu, bao gồm bản phân phối Python Anaconda, trong đó tích hợp thuận tiện nhiều dependency cần thiết cho YOLOv5.

Bước 2: Chuẩn bị VM cho YOLOv5#
Sau khi thiết lập môi trường, hãy cài đặt và chuẩn bị YOLOv5:
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install dependencies
pip install -r requirements.txtQuy trình thiết lập này đảm bảo bạn có môi trường Python phiên bản 3.8.0 trở lên và PyTorch 1.8 trở lên. Các script của chúng tôi tự động tải model và dataset từ bản phát hành YOLOv5 mới nhất, giúp đơn giản hóa quy trình bắt đầu training model.
Bước 3: Training và triển khai các model YOLOv5 của bạn#
Sau khi hoàn tất thiết lập, bạn đã sẵn sàng train, validate, predict và export với YOLOv5 trên GCP VM của mình:
# Train a YOLOv5 model on your dataset (e.g., yolov5s)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
# Validate the trained model to check Precision, Recall, and mAP
python val.py --weights yolov5s.pt --data coco128.yaml
# Run inference using the trained model on images or videos
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos
# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
python export.py --weights yolov5s.pt --include onnx coreml tfliteChỉ với vài lệnh, YOLOv5 cho phép bạn training các model phát hiện đối tượng tùy chỉnh phù hợp với nhu cầu cụ thể, hoặc sử dụng pretrained weight để nhanh chóng đạt kết quả trên nhiều tác vụ khác nhau. Hãy khám phá các tùy chọn triển khai model khác nhau sau khi export.

Cấp phát Swap Space (Tùy chọn)#
Nếu bạn làm việc với các dataset đặc biệt lớn có thể vượt quá RAM của VM, hãy cân nhắc bổ sung swap space để tránh lỗi bộ nhớ:
# Allocate a 64GB swap file
sudo fallocate -l 64G /swapfile
# Set the correct permissions for the swap file
sudo chmod 600 /swapfile
# Set up the Linux swap area
sudo mkswap /swapfile
# Enable the swap file
sudo swapon /swapfile
# Verify the swap space allocation (should show increased swap memory)
free -hTraining Dataset Tùy chỉnh#
Để training YOLOv5 trên dataset tùy chỉnh trong GCP, hãy thực hiện các bước tổng quát sau:
-
Chuẩn bị dataset theo format YOLOv5 (image và các file label tương ứng). Tham khảo tổng quan về dataset của chúng tôi để được hướng dẫn.
-
Upload dataset lên GCP VM bằng
gcloud compute scphoặc tính năng SSH của web console. -
Tạo file YAML cấu hình dataset (
custom_dataset.yaml) chỉ định các path đến dữ liệu training và validation, số lượng class và tên class. -
Bắt đầu quy trình training bằng YAML của dataset tùy chỉnh và có thể bắt đầu từ pretrained weight:
# Example: Train YOLOv5s on a custom dataset for 100 epochs python train.py --img 640 --batch 16 --epochs 100 --data custom_dataset.yaml --weights yolov5s.pt
Để xem hướng dẫn toàn diện về cách chuẩn bị dữ liệu và training với dataset tùy chỉnh, hãy tham khảo tài liệu Ultralytics YOLOv5 Train.
Tận dụng Cloud Storage#
Để quản lý dữ liệu hiệu quả, đặc biệt với dataset lớn hoặc nhiều experiment, hãy tích hợp workflow YOLOv5 của bạn với Google Cloud Storage:
# Ensure Google Cloud SDK is installed and initialized
# If not installed: curl https://sdk.cloud.google.com/ | bash
# Then initialize: gcloud init
# Example: Copy your dataset from a GCS bucket to your VM
gsutil cp -r gs://your-data-bucket/my_dataset ./datasets/
# Example: Copy trained model weights from your VM to a GCS bucket
gsutil cp -r ./runs/train/exp/weights gs://your-models-bucket/yolov5_custom_weights/Phương pháp này cho phép bạn lưu trữ an toàn và tiết kiệm chi phí các dataset lớn cùng model đã training trên cloud, đồng thời giảm yêu cầu lưu trữ trên instance VM.
Kết luận#
Xin chúc mừng! Giờ đây bạn đã sẵn sàng khai thác các khả năng của Ultralytics YOLOv5 kết hợp với năng lực tính toán của Google Cloud Platform. Thiết lập này mang lại khả năng mở rộng, hiệu quả và tính linh hoạt cho các dự án phát hiện đối tượng của bạn. Dù phục vụ mục đích khám phá cá nhân, nghiên cứu học thuật hay xây dựng giải pháp công nghiệp, bạn đã tiến một bước quan trọng vào thế giới AI và ML trên cloud.
Hãy cân nhắc sử dụng Ultralytics Platform để có trải nghiệm không cần code, tinh gọn hơn trong việc training và quản lý model.
Hãy nhớ ghi lại tiến trình của bạn, chia sẻ thông tin hữu ích với cộng đồng Ultralytics sôi nổi và sử dụng các tài nguyên như thảo luận trên GitHub để cộng tác và nhận hỗ trợ. Giờ thì hãy tiếp tục đổi mới với YOLOv5 và GCP!
Bạn muốn tiếp tục nâng cao kỹ năng ML của mình? Hãy tìm hiểu tài liệu của chúng tôi và khám phá Ultralytics Blog để xem thêm tutorial và thông tin chuyên sâu. Hãy tiếp tục hành trình AI của bạn!