Làm chủ việc 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à học máy (ML) có thể rất thú vị, đặc biệt khi bạn tận dụng sức mạnh và sự linh hoạt của một 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ế riêng cho cả người đam mê ML và các chuyên gia. 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ẽ điều hướng quy trình thiết lập Ultralytics YOLOv5 trên GCP Deep Learning VM. Cho dù bạn đang thực hiện những bước đầu tiên trong ML hay là một chuyên gia dày dạn kinh nghiệm, hướng dẫn này cung cấp một con đường rõ ràng để triển khai các mô hình nhận diện đối tượng được hỗ trợ bởi YOLOv5.
🆓 Ngoài ra, nếu bạn là người dùng GCP mới, bạn sẽ được nhận ưu đãi tín dụng miễn phí 300 đô la để bắt đầu 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 cho YOLOv5, như Google Colab Notebook để có trải nghiệm dựa trên trình duyệt, hoặc khả năng mở rộng của Amazon AWS. Hơn nữa, những người đam mê container có thể sử dụng image Docker chính thức của chúng tôi có sẵn trên Docker Hub
cho một môi trường đóng gói, 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 của bạn
Hãy bắt đầu bằng việc tạo một máy ảo được tối ưu hóa cho học sâu:
- Điều hướng đến GCP marketplace và chọn Deep Learning VM.
- Chọn instance n1-standard-8; nó cung cấp sự cân bằng giữa 8 vCPU và 30 GB bộ nhớ, phù hợp cho nhiều tác vụ ML.
- Chọn một GPU. Lựa chọn phụ thuộc vào khối lượng công việc của bạn; ngay cả một GPU T4 cơ bản cũng sẽ tăng tốc đáng kể quá trình huấn luyện mô hình.
- Đánh dấu vào ô 'Install NVIDIA GPU driver automatically on first startup?' để thiết lập liền mạch.
- Phân bổ 300 GB ổ cứng SSD Persistent Disk để tránh các nút thắt cổ chai về I/O.
- Nhấp 'Deploy' và để GCP cung cấp Deep Learning VM tùy chỉnh của bạn.
VM này được tải sẵn các công cụ và framework thiết yếu, bao gồm bản phân phối Anaconda Python, giúp kết hợp thuận tiện nhiều phụ thuộc 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à sẵn sàng 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 tập lệnh của chúng tôi tự động tải xuống các mô hình và tập dữ liệu từ bản phát hành YOLOv5 mới nhất, giúp đơn giản hóa quá trình bắt đầu huấn luyện mô hình.
Bước 3: Huấn luyện và triển khai các mô hình YOLOv5 của bạn
Khi quá trình thiết lập hoàn tất, bạn đã sẵn sàng để huấn luyện, xác thực, dự đoán và xuất với YOLOv5 trên GCP VM của bạn:
# 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 huấn luyện các mô hình nhận diện đối tượng tùy chỉnh phù hợp với nhu cầu cụ thể của bạn hoặc sử dụng trọng số được huấn luyện sẵn để có kết quả nhanh chóng trên nhiều tác vụ khác nhau. Khám phá các tùy chọn triển khai mô hình khác nhau sau khi xuất.

Phân bổ Swap Space (Tùy chọn)
Nếu bạn đang làm việc với các tập dữ liệu đặ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 các 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 -hHuấn luyện trên các tập dữ liệu tùy chỉnh
Để huấn luyện YOLOv5 trên tập dữ liệu tùy chỉnh của bạn trong GCP, hãy làm theo các bước chung sau:
-
Chuẩn bị tập dữ liệu của bạn theo định dạng YOLOv5 (hình ảnh và các tệp nhãn tương ứng). Xem tổng quan về tập dữ liệu của chúng tôi để được hướng dẫn.
-
Tải tập dữ liệu của bạn lên GCP VM bằng
gcloud compute scphoặc tính năng SSH của bảng điều khiển web. -
Tạo một tệp cấu hình tập dữ liệu YAML (
custom_dataset.yaml) chỉ định đường dẫn đến dữ liệu huấn luyện và xác thực của bạn, số lượng lớp và tên lớp. -
Bắt đầu quy trình huấn luyện sử dụng YAML tập dữ liệu tùy chỉnh của bạn và có khả năng bắt đầu từ các trọng số đã huấn luyện trước:
# 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
Để có hướng dẫn toàn diện về việc chuẩn bị dữ liệu và huấn luyện với các tập dữ liệu tùy chỉnh, hãy tham khảo tài liệu Huấn luyện Ultralytics YOLOv5.
Tận dụng Lưu trữ Đám mây (Cloud Storage)
Để quản lý dữ liệu hiệu quả, đặc biệt là với các tập dữ liệu lớn hoặc nhiều thử nghiệm, hãy tích hợp quy trình làm việc 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ữ các tập dữ liệu lớn và các mô hình đã huấn luyện một cách an toàn và tiết kiệm chi phí trên đám mây, giảm thiểu các yêu cầu lưu trữ trên instance VM của bạn.
Những suy nghĩ kết luận
Chúc mừng! Bây giờ bạn đã được trang bị để khai thác các khả năng của Ultralytics YOLOv5 kết hợp với sức mạnh tính toán của Google Cloud Platform. Thiết lập này cung cấp khả năng mở rộng, hiệu quả và tính linh hoạt cho các dự án nhận diện đối tượng của bạn. Dù là để khám phá cá nhân, nghiên cứu học thuật hay xây dựng các giải pháp công nghiệp, bạn đã thực hiện một bước quan trọng vào thế giới AI và ML trên đám mây.
Hãy cân nhắc sử dụng Nền tảng Ultralytics để có trải nghiệm tinh giản, không cần lập trình (no-code) nhằm huấn luyện và quản lý các mô hình của bạn.
Hãy nhớ ghi lại tiến trình của bạn, chia sẻ thông tin chi tiết với cộng đồng Ultralytics năng động và tận dụng các tài nguyên như các cuộc thảo luận trên GitHub để cộng tác và hỗ trợ. Bây giờ, hãy tiến lên và đổ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 đi sâu vào tài liệu của chúng tôi và khám phá Blog Ultralytics để biết thêm các hướng dẫn và thông tin chi tiết. Hãy để cuộc phiêu lưu AI của bạn tiếp tục!