Ultralytics YOLO27: Tham gia danh sách chờ.
Bắt đầu

Làm chủ quy trình triển khai YOLOv5 trên Google Cloud Platform (GCP) Deep Learning VM

Google Cloud Platform (GCP) là nền tảng điện toán đám mây có máy ảo Deep Learning được cấu hình sẵn cho các tác vụ khoa học dữ liệu và học máy (ML). Hướng dẫn này trình bày cách thiết lập Ultralytics YOLOv5 trên máy ảo GCP Deep Learning. Dù bạn mới bắt đầu tìm hiểu ML hay đã có kinh nghiệm, hướng dẫn này đều cung cấp lộ trình rõ ràng để huấn luyện và chạy model phát hiện đối tượng với YOLOv5.

Người dùng GCP mới cũng có thể nhận ưu đãi tín dụng miễn phí trị giá 300 USD để bắt đầu.

Các tùy chọn bắt đầu nhanh khác cho YOLOv5 gồm Google Colab Notebook Open In Colab để trải nghiệm trên trình duyệt, hoặc nền tảng có khả năng mở rộng Amazon AWS. Bạn cũng có thể dùng image Docker chính thức trên Docker Hub Docker Pulls để có môi trường đóng gói độc lập, theo Hướng dẫn bắt đầu nhanh với Docker của chúng tôi.

Bước 1: Tạo và cấu hình Deep Learning VM#

Bắt đầu bằng cách tạo máy ảo được tối ưu cho học sâu:

  1. Truy cập GCP Marketplace và chọn Deep Learning VM.
  2. Chọn 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.
  3. Chọn một GPU. Lựa chọn tùy thuộc vào khối lượng công việc; ngay cả GPU T4 cơ bản cũng giúp tăng tốc đáng kể quá trình huấn luyện model.
  4. Đánh dấu vào ô 'Tự động cài đặt trình điều khiển NVIDIA GPU khi khởi động lần đầu?'.
  5. Cấp phát Persistent Disk SSD 300 GB để tránh tình trạng nghẽn I/O.
  6. Nhấp vào 'Deploy' và chờ GCP cấp phát Deep Learning VM tùy chỉnh.

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, đi kèm nhiều dependency cần thiết cho YOLOv5.

Hình minh họa GCP Marketplace về thiết lập Deep Learning VM

Bước 2: Chuẩn bị VM cho YOLOv5#

Tiếp theo, cài đặt YOLOv5 và các gói phụ thuộc:

# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5

# Install dependencies
pip install -r requirements.txt

YOLOv5 yêu cầu Python 3.8.0 trở lên và PyTorch 1.8 trở lên. Các script 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 việc bắt đầu huấn luyện model.

Bước 3: Huấn luyện và triển khai model YOLOv5#

Sau khi hoàn tất thiết lập, bạn đã sẵn sàng huấn luyện, xác thực, dự đoán và xuất bằng YOLOv5 trên GCP VM:

# 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 tflite

Chỉ với vài lệnh, bạn có thể huấn luyện các model phát hiện đối tượng tùy chỉnh theo nhu cầu hoặc bắt đầu từ pretrained weight để có kết quả nhanh chóng.

Huấn luyện model YOLOv5 trên GCP VM

Cấp phát swap space (tùy chọn)#

Nếu bạn làm việc với dataset đặc biệt lớn có thể vượt quá RAM của VM, hãy cân nhắc thêm 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 -h

Huấn luyện dataset tùy chỉnh#

Để huấn luyện YOLOv5 trên dataset tùy chỉnh trong GCP, hãy làm theo các bước chung sau:

  1. Chuẩn bị dataset theo định dạng YOLO (hình ảnh và các file nhãn tương ứng). Xem tổng quan về dataset của chúng tôi để được hướng dẫn.

  2. Tải dataset lên GCP VM bằng gcloud compute scp hoặc tính năng SSH trên web console.

  3. Tạo file YAML cấu hình dataset (custom_dataset.yaml) để chỉ định đường dẫn đến dữ liệu huấn luyện và xác thực, số lượng class và tên class.

  4. Bắt đầu quá trình huấn luyện bằng YAML của dataset tùy chỉnh và có thể khởi đầu từ weights pretrained:

    # 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

Để biết hướng dẫn đầy đủ về cách chuẩn bị dữ liệu và huấn luyện với dataset tùy chỉnh, hãy tham khảo hướng dẫn Huấn luyện dữ liệu tùy chỉnh.

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 thử nghiệm, hãy tích hợp quy trình 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/

Cách tiếp cận 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 và model đã huấn luyện trên cloud, giảm thiểu nhu cầu lưu trữ trên VM instance.

Lời kết#

Giờ đây, Ultralytics YOLOv5 đã chạy trên máy ảo Google Cloud Platform Deep Learning, sẵn sàng cho các dự án phát hiện đối tượng, từ thử nghiệm cá nhân và nghiên cứu học thuật đến giải pháp công nghiệp.

Hãy cân nhắc dùng Ultralytics Platform để huấn luyện và quản lý model mà không cần viết code.

Để đặt câu hỏi và cộng tác, hãy tham gia thảo luận trên GitHub.

Câu hỏi thường gặp#

  • Máy n1-standard-8 có một GPU T4 là đủ cho hầu hết các tác vụ huấn luyện và suy luận YOLOv5. Chuyển sang L4 hoặc A100 nếu dùng tập dữ liệu lớn hoặc model lớn hơn, đồng thời luôn chọn tùy chọn tự động cài đặt driver NVIDIA khi khởi động lần đầu.

  • Dừng VM từ bảng điều khiển Compute Engine khi máy không hoạt động. Bạn vẫn bị tính phí cho disk đính kèm, vì vậy hãy xóa VM và disk sau khi hoàn tất dự án và đã sao chép an toàn các trọng số lên Cloud Storage.

  • Với tập dữ liệu nhỏ, hãy dùng gcloud compute scp. Với tập dữ liệu lớn hơn, hãy tải lên bucket Cloud Storage rồi lấy xuống bằng gsutil cp -r gs://your-bucket/dataset ./datasets/; cách này nhanh hơn nhiều khi thực hiện trong mạng của Google.

  • Có. Deep Learning VM đã có PyTorch, vì vậy pip install ultralytics bổ sung khả năng huấn luyện và xuất YOLO26 bằng CLI yolo.

Người đóng góp

Bình luận

Đặt câu hỏi, chia sẻ kết quả hoặc giúp đỡ người khác.