Освоение развертывания YOLOv5 на виртуальной машине глубокого обучения Google Cloud Platform (GCP)
Путешествие по пути искусственного интеллекта и машинного обучения может быть захватывающим, особенно если вы используете мощь и гибкость облачной платформы. Google Cloud Platform (GCP) предлагает надежные инструменты, предназначенные как для энтузиастов машинного обучения, так и для профессионалов. Одним из таких инструментов является Deep Learning VM, который предварительно настроен для решения задач науки о данных и ML. В этом руководстве мы рассмотрим процесс настройки YOLOv5 на GCP Deep Learning VM. Независимо от того, делаете ли вы первые шаги в ML или являетесь опытным практиком, это руководство призвано предоставить вам четкий путь к реализации моделей обнаружения объектов на основе YOLOv5.
🆓 Кроме того, если вы только что стали пользователем GCP, вам повезло: вы можете получить бесплатный кредит в размере 300 долларов США, чтобы начать работу над своими проектами.
Помимо GCP, изучите другие доступные варианты быстрого старта для YOLOv5, например, наши Блокнот Google Colab для работы в браузере, или масштабируемость Amazon AWS. Кроме того, любители контейнеров могут использовать наш официальный образ Docker по адресу Docker Hub
для инкапсулированной среды.
Шаг 1: Создание и настройка виртуальной машины Deep Learning VM
Для начала создадим виртуальную машину, настроенную на глубокое обучение:
- Перейдите на торговую площадку GCP и выберите Deep Learning VM.
- Выберите экземпляр n1-standard-8; он предлагает баланс из 8 vCPU и 30 ГБ памяти, идеально подходящий для наших нужд.
- Затем выберите GPU. Это зависит от объема работы; даже такой базовый вариант, как T4, заметно ускорит обучение модели.
- Поставьте галочку в поле "Установить драйвер NVIDIA GPU автоматически при первом запуске?" для упрощения установки.
- Выделите постоянный диск SSD емкостью 300 ГБ, чтобы не допустить узких мест при операциях ввода-вывода.
- Нажмите кнопку "Развернуть", и пусть GCP займется созданием вашей пользовательской виртуальной машины Deep Learning.
Эта ВМ поставляется с сокровищницей предустановленных инструментов и фреймворков, включая дистрибутив Anaconda Python , в котором удобно собраны все необходимые зависимости для YOLOv5.
Шаг 2: Подготовка виртуальной машины к работе YOLOv5
После настройки окружения давайте запустим YOLOv5 :
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
# Change the directory to the cloned repository
cd yolov5
# Install the necessary Python packages from requirements.txt
pip install -r requirements.txt
Этот процесс установки гарантирует, что вы работаете со средой Python версии 3.8.0 или новее и PyTorch 1.8 или выше. Наши скрипты плавно загружают модели и наборы данных непосредственно из последнегорелиза YOLOv5 , что позволяет без труда начать обучение модели.
Шаг 3: Обучение и развертывание моделей YOLOv5
После завершения настройки вы можете приступить к обучению и выводам с помощью YOLOv5 на вашей виртуальной машине GCP:
# Train a model on your data
python train.py
# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt
# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images
# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite
С помощью всего нескольких команд YOLOv5 можно обучить пользовательские модели обнаружения объектов, отвечающие вашим конкретным потребностям, или использовать предварительно обученные веса для получения быстрых результатов при решении различных задач.
Распределение пространства подкачки (необязательно)
Для тех, кто работает с большими массивами данных, стоит увеличить объем экземпляра GCP за счет дополнительных 64 ГБ памяти подкачки:
sudo fallocate -l 64G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free -h # confirm the memory increment
Обучение пользовательским наборам данных
Чтобы обучить YOLOv5 на пользовательском наборе данных в GCP, выполните следующие действия:
- Подготовьте набор данных в формате YOLOv5 (изображения и метки).
- Загрузите набор данных на вашу виртуальную машину GCP с помощью
gcloud
или SCP - Создайте YAML-файл набора данных с указанием путей и классов
- Начните тренировку с соответствующими параметрами:
Более подробные инструкции по обучению с использованием пользовательских наборов данных см. в документацииUltralytics YOLOv5 .
Использование облачных хранилищ
Для эффективного управления данными интегрируйте рабочий процесс YOLOv5 с облачным хранилищем Google :
# Install Google Cloud SDK if not already installed
curl https://sdk.cloud.google.com | bash
gcloud init
# Copy data to/from Cloud Storage
gsutil cp -r gs://your-bucket/dataset ./
gsutil cp -r ./runs/train/exp/weights gs://your-bucket/models/
Такой подход позволяет надежно хранить большие массивы данных и обученные модели в облаке, при этом требования к хранению виртуальных машин минимальны.
Заключительные размышления
Поздравляем! Теперь вы можете использовать возможности YOLOv5 и вычислительную мощь Google Cloud Platform. Это сочетание обеспечивает масштабируемость, эффективность и универсальность для решения задач обнаружения объектов. Будь то личные проекты, академические исследования или промышленные приложения, вы сделали решающий шаг в мир искусственного интеллекта и машинного обучения в облаке.
Не забывайте документировать свой путь, делиться впечатлениями с сообществом Ultralytics и использовать такие площадки для совместной работы, как обсуждения на GitHub, для дальнейшего развития. А теперь вперед, к инновациям с YOLOv5 и GCP!
Хотите постоянно совершенствовать свои навыки и знания в области ML? Погрузитесь в нашу документацию и учебники, чтобы найти больше ресурсов. Пусть ваши приключения в области ИИ продолжаются!