콘텐츠로 건너뛰기

Google Cloud Platform (GCP) Deep Learning VM에서 YOLOv5 배포 마스터하기

인공 지능(AI)머신 러닝(ML) 여정을 시작하는 것은 특히 클라우드 컴퓨팅 플랫폼의 강력한 기능과 유연성을 활용할 때 매우 즐거울 수 있습니다. Google Cloud Platform(GCP)은 ML 애호가와 전문가 모두를 위해 맞춤화된 강력한 도구를 제공합니다. 이러한 도구 중 하나는 데이터 과학 및 ML 작업을 위해 사전 구성된 Deep Learning VM입니다. 이 튜토리얼에서는 GCP Deep Learning VM에서 Ultralytics YOLOv5를 설정하는 과정을 안내합니다. ML을 처음 시작하든 숙련된 전문가이든 관계없이 이 가이드는 YOLOv5로 구동되는 객체 감지 모델을 구현하는 명확한 경로를 제공합니다.

🆓 또한, 신규 GCP 사용자는 프로젝트를 시작하는 데 도움이 되는 300달러 상당의 무료 크레딧 혜택을 받을 수 있습니다.

GCP 외에도 다음과 같은 YOLOv5용으로 액세스 가능한 다른 빠른 시작 옵션을 살펴보십시오. Google Colab 노트북 Colab에서 열기 브라우저 기반 환경 또는 확장성을 위해 Amazon AWS. 또한 컨테이너 애호가들은 다음에서 제공되는 공식 Docker 이미지를 활용할 수 있습니다. Docker Hub Docker Pulls 캡슐화된 환경을 위해 다음을 따르십시오. Docker 빠른 시작 가이드.

1단계: 딥러닝 VM 생성 및 구성

딥 러닝에 최적화된 가상 머신을 만들어 보겠습니다.

  1. GCP 마켓플레이스로 이동하여 Deep Learning VM을 선택합니다.
  2. n1-standard-8 인스턴스를 선택하세요. 8개의 vCPU와 30GB의 메모리 균형을 제공하므로 많은 ML 작업에 적합합니다.
  3. GPU를 선택합니다. 선택은 워크로드에 따라 다르며, 기본적인 T4 GPU만으로도 모델 학습 속도를 크게 향상시킬 수 있습니다.
  4. 원활한 설정을 위해 '처음 시작 시 NVIDIA GPU 드라이버 자동 설치' 상자를 선택하세요.
  5. I/O 병목 현상을 방지하려면 300GB SSD 영구 디스크를 할당하십시오.
  6. '배포'를 클릭하고 GCP가 사용자 지정 딥 러닝 VM을 프로비저닝하도록 허용합니다.

이 VM은 YOLOv5에 필요한 많은 종속성을 편리하게 묶는 Anaconda python 배포판을 포함하여 필수 도구 및 프레임워크가 미리 로드되어 제공됩니다.

Deep Learning VM 설정에 대한 GCP Marketplace 그림

2단계: YOLOv5용 VM 준비

환경을 설정한 후 YOLOv5를 설치하고 준비하십시오.

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

# Navigate into the cloned repository directory
cd yolov5

# Install the required Python packages listed in requirements.txt
pip install -r requirements.txt

이 설정 과정은 3.8.0 이상의 python 환경 버전과 1.8 이상의 PyTorch를 갖추도록 보장합니다. 스크립트는 최신 YOLOv5 릴리스에서 모델데이터 세트를 자동으로 다운로드하여 모델 학습 시작 과정을 간소화합니다.

3단계: YOLOv5 모델 학습 및 배포

설정이 완료되면 GCP VM에서 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를 사용하면 몇 가지 명령만으로 특정 요구 사항에 맞춘 사용자 정의 객체 감지 모델을 훈련하거나 다양한 작업에서 빠른 결과를 얻기 위해 사전 훈련된 가중치를 활용할 수 있습니다. 내보내기 후 다양한 모델 배포 옵션을 살펴보십시오.

GCP Deep Learning VM에서 모델 학습을 보여주는 터미널 명령어 이미지

스왑 공간 할당 (선택 사항)

VM의 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를 훈련하려면 다음 일반 단계를 따르세요.

  1. YOLOv5 형식(이미지 및 해당 레이블 파일)에 따라 데이터 세트를 준비합니다. 자세한 내용은 데이터 세트 개요를 참조하십시오.
  2. 다음을 사용하여 데이터 세트를 GCP VM에 업로드합니다. gcloud compute scp 또는 웹 콘솔의 SSH 기능을 사용할 수 있습니다.
  3. 데이터셋 구성 YAML 파일 생성 (custom_dataset.yaml) 훈련 및 검증 데이터 경로, 클래스 수 및 클래스 이름을 지정하는 파일입니다.
  4. 사용자 정의 데이터 세트 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
    

사용자 정의 데이터 세트로 데이터를 준비하고 학습하는 방법에 대한 자세한 내용은 Ultralytics YOLOv5 Train 설명서를 참조하십시오.

클라우드 스토리지 활용

특히 대규모 데이터 세트 또는 수많은 실험을 통해 효율적인 데이터 관리를 위해 Google Cloud Storage와 YOLOv5 워크플로를 통합하십시오.

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

이 접근 방식을 사용하면 VM 인스턴스의 스토리지 요구 사항을 최소화하면서 대규모 데이터 세트와 훈련된 모델을 클라우드에 안전하고 비용 효율적으로 저장할 수 있습니다.

결론

축하합니다! 이제 Google Cloud Platform의 컴퓨팅 성능과 결합된 Ultralytics YOLOv5의 기능을 활용할 수 있게 되었습니다. 이 설정은 객체 감지 프로젝트에 대한 확장성, 효율성 및 다재다능성을 제공합니다. 개인적인 탐구, 학술 연구 또는 산업용 솔루션 구축 등 클라우드에서 AI 및 ML의 세계로 나아가는 중요한 단계를 밟았습니다.

모델을 학습하고 관리하기 위한 간소화된 노코드 환경을 위해 Ultralytics HUB를 사용하는 것을 고려해 보세요.

진행 상황을 문서화하고 활발한 Ultralytics 커뮤니티와 통찰력을 공유하고 협업 및 지원을 위해 GitHub 토론과 같은 리소스를 활용하는 것을 잊지 마십시오. 이제 YOLOv5 및 GCP로 혁신을 이루십시오!

ML 기술을 계속 향상시키고 싶으십니까? Ultralytics 문서를 살펴보고 더 많은 튜토리얼과 통찰력을 얻으려면 Ultralytics 블로그를 탐색하십시오. AI 여정을 계속하십시오!



📅 1년 전에 생성됨 ✏️ 2개월 전에 업데이트됨

댓글