掌握在 Google Cloud Platform (GCP) 深度学习虚拟机上部署 YOLOv5#
开启人工智能 (AI)和机器学习 (ML)之旅令人振奋,尤其是在利用云计算平台的强大功能和灵活性时。谷歌云平台 (GCP) 为 ML 爱好者和专业人士提供了强大的工具。其中一种工具是深度学习虚拟机,它已针对数据科学和 ML 任务预先配置好。本教程将介绍Ultralytics YOLOv5在GCP 深度学习虚拟机上的配置流程。无论你是刚开始接触 ML,还是经验丰富的从业者,本指南都会清晰地介绍如何实现基于 YOLOv5 的目标检测模型。
🆓 此外,如果你是 GCP 新用户,还可以享受 $300 免费额度优惠,为你的项目起步助力。
除了 GCP,你还可以探索 YOLOv5 的其他便捷快速入门方式,例如适合在浏览器中使用的 Google Colab Notebook ,或具备可扩展性的 Amazon AWS。此外,容器爱好者可以使用我们在 Docker Hub 上提供的官方 Docker 镜像
,搭建独立的运行环境,并按照我们的 Docker 快速入门指南进行操作。
步骤 1:创建并配置深度学习虚拟机#
首先创建一台针对深度学习优化的虚拟机:
- 前往 GCP Marketplace,然后选择 Deep Learning VM。
- 选择 n1-standard-8 实例;它配备 8 个 vCPU 和 30 GB 内存,适用于许多 ML 任务。
- 选择一个 GPU。具体选择取决于你的工作负载;即使是基础款 T4 GPU,也能显著加快模型训练。
- 勾选“首次启动时自动安装 NVIDIA GPU 驱动程序?”复选框,即可简化配置流程。
- 分配一块 300 GB SSD 持久磁盘,以避免 I/O 瓶颈。
- 点击“Deploy”,等待 GCP 配置你的自定义深度学习虚拟机。
这台虚拟机预装了多种必要工具和框架,包括 Anaconda Python 发行版,其中集成了 YOLOv5 所需的许多依赖项。

步骤 2:为 YOLOv5 准备虚拟机#
环境配置完成后,接下来安装 YOLOv5 并做好运行准备:
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install dependencies
pip install -r requirements.txt此配置流程可确保你使用 Python 3.8.0 或更高版本,以及 PyTorch 1.8 或更高版本。我们的脚本会自动从最新的 YOLOv5 发布版本下载模型和数据集,简化模型训练的启动流程。
步骤 3:训练并部署 YOLOv5 模型#
配置完成后,你就可以在 GCP 虚拟机上使用 YOLOv5 进行训练、验证、预测和导出:
# 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只需几条命令,YOLOv5 就能根据你的具体需求训练自定义目标检测模型,也能使用预训练权重快速完成各种任务。导出后,还可以探索不同的模型部署选项。

分配交换空间(可选)#
如果你使用的数据集特别大,可能超出虚拟机的 RAM 容量,可以考虑添加交换空间,以避免内存错误:
# 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训练自定义数据集#
要在 GCP 上使用自定义数据集训练 YOLOv5,请按照以下一般步骤操作:
-
按照 YOLOv5 格式准备数据集(图像及其对应的标签文件)。如需指导,请参阅我们的数据集概览。
-
使用
gcloud compute scp或网页控制台的 SSH 功能,将数据集上传到 GCP 虚拟机。 -
创建数据集配置 YAML 文件(
custom_dataset.yaml),指定训练数据和验证数据的路径、类别数量以及类别名称。 -
使用自定义数据集 YAML 开始训练流程,也可以选择从预训练权重开始训练:
# 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
有关准备数据和使用自定义数据集进行训练的完整说明,请参阅训练自定义数据教程。
利用云存储#
为了高效管理数据,尤其是在处理大型数据集或大量实验时,可以将 YOLOv5 工作流与 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/这种方法可以让你在云端安全、经济高效地存储大型数据集和训练完成的模型,减少虚拟机实例所需的存储空间。
总结#
恭喜!现在,你已经能够将 Ultralytics YOLOv5 与 Google Cloud Platform 的计算能力结合起来使用。这套配置为你的目标检测项目提供了可扩展、高效且灵活的基础。无论是个人探索、学术研究,还是构建工业级解决方案,你都已在云端 AI 和 ML 领域迈出了重要一步。
你可以使用 Ultralytics Platform,以更精简、无需编写代码的方式训练和管理模型。
记得记录进展、与活跃的 Ultralytics 社区分享见解,并利用 GitHub 讨论区等资源进行协作和获取支持。现在就开始使用 YOLOv5 和 GCP,尽情创新吧!
想继续提升你的 ML 技能吗?深入阅读我们的文档,并浏览 Ultralytics Blog,获取更多教程和见解。继续你的 AI 探索之旅吧!
常见问题#
配备单块 T4 GPU 的
n1-standard-8机器足以满足大多数 YOLOv5 训练和推理需求。对于大型数据集或更大的模型,请升级到 L4 或 A100;并且务必勾选在首次启动时自动安装 NVIDIA 驱动程序的选项。VM 空闲时,请从 Compute Engine 控制台停止 VM。已挂载的磁盘仍会产生费用,因此项目完成且权重已安全复制到 Cloud Storage 后,请删除 VM 和磁盘。
小型数据集可使用
gcloud compute scp。对于更大的数据集,请上传到 Cloud Storage 存储桶,再使用gsutil cp -r gs://your-bucket/dataset ./datasets/拉取;在 Google 网络内部,这种方式快得多。可以。Deep Learning VM 已预装 PyTorch,因此
pip install ultralytics可通过yoloCLI 添加 YOLO26 训练和导出功能。详情请参阅快速入门。