Zum Inhalt springen

Ultralytics YOLOv5 🚀 auf AWS Deep Learning Instance: Ihr vollständiger Leitfaden

Die Einrichtung einer leistungsstarken Deep-Learning-Umgebung kann entmutigend wirken, vor allem für Neueinsteiger. Aber keine Angst! 🛠️ Dieser Leitfaden bietet eine schrittweise Anleitung für die Einrichtung von Ultralytics YOLOv5 auf einer AWS Deep Learning-Instanz zum Laufen zu bringen. Durch die Nutzung der Leistung von Amazon Web Services (AWS) können auch diejenigen, die neu im Bereich des maschinellen Lernens (ML) sind, schnell und kostengünstig beginnen. Die Skalierbarkeit der AWS-Plattform macht sie ideal für Experimente und den Produktionseinsatz.

Weitere Schnellstartoptionen für YOLOv5 sind unser Google Colab Notebook In Colab öffnen, Kaggle-Umgebungen In Kaggle öffnen, GCP Deep Learning VMund unser vorgefertigtes Docker-Image, das auf Docker-Hub Docker-Züge.

Schritt 1: Anmeldung in der AWS-Konsole

Erstellen Sie zunächst ein Konto oder melden Sie sich bei der AWS Management Console an. Sobald Sie angemeldet sind, navigieren Sie zum EC2-Service-Dashboard, wo Sie Ihre virtuellen Server (Instances) verwalten können.

Anmeldung bei der AWS-Konsole

Schritt 2: Starten Sie Ihre Instanz

Klicken Sie im EC2-Dashboard auf die Schaltfläche Launch Instance (Instanz starten). Dadurch wird der Prozess der Erstellung eines neuen virtuellen Servers eingeleitet, der auf Ihre Bedürfnisse zugeschnitten ist.

Schaltfläche "Instanz starten

Auswählen des richtigen Amazon Machine Image (AMI)

Die Wahl des richtigen AMI ist entscheidend. Dies bestimmt das Betriebssystem und die vorinstallierte Software für Ihre Instanz. Geben Sie in der Suchleiste"Deep Learning" ein und wählen Sie das neueste Ubuntu-basierte Deep Learning-AMI aus (es sei denn, Sie haben spezifische Anforderungen für ein anderes Betriebssystem). Amazons Deep Learning-AMIs sind mit gängigen Deep Learning-Frameworks vorkonfiguriert (wie PyTorch, das von YOLOv5 verwendet wird) und den erforderlichen GPU vorkonfiguriert, was den Einrichtungsprozess erheblich vereinfacht.

AMI wählen

Auswählen eines Instanztyps

Für anspruchsvolle Aufgaben wie das Training von Deep-Learning-Modellen ist die Auswahl eines GPU Instanztyps sehr empfehlenswert. GPUs können die für die Modellschulung erforderliche Zeit im Vergleich zu CPUs drastisch reduzieren. Achten Sie bei der Auswahl einer Instanzgröße darauf, dass die Speicherkapazität (RAM) für Ihr Modell und Ihren Datensatz ausreicht.

Hinweis: Die Größe Ihres Modells und Ihres Datensatzes sind entscheidende Faktoren. Wenn Ihre ML-Aufgabe mehr Speicher benötigt, als die ausgewählte Instanz bietet, müssen Sie einen größeren Instanztyp wählen, um Leistungsprobleme oder Fehler zu vermeiden.

Erkunden Sie die verfügbaren GPU auf der Seite EC2-Instance-Typen, insbesondere in der Kategorie Accelerated Computing.

Instanztyp wählen

Ausführliche Informationen zur Überwachung und Optimierung der GPU finden Sie im AWS-Leitfaden zur GPU und -Optimierung. Vergleichen Sie die Kosten mit On-Demand Pricing und erkunden Sie mögliche Einsparungen mit Spot Instance Pricing.

Konfigurieren Ihrer Instanz

Erwägen Sie die Verwendung von Amazon EC2 Spot-Instances für einen kostengünstigeren Ansatz. Mit Spot-Instances können Sie auf ungenutzte EC2-Kapazitäten bieten, oft mit einem erheblichen Rabatt im Vergleich zu On-Demand-Preisen. Wählen Sie für Aufgaben, die Persistenz erfordern (d. h. Daten werden auch dann gespeichert, wenn die Spot-Instance unterbrochen wird), eine persistente Anforderung. Dadurch wird sichergestellt, dass Ihr Speichervolumen erhalten bleibt.

Spot-Anfrage Konfiguration

Fahren Sie mit den Schritten 4-7 des Assistenten zum Starten der Instanz fort, um den Speicher zu konfigurieren, Tags hinzuzufügen, Sicherheitsgruppen einzurichten (stellen Sie sicher, dass SSH-Port 22 von Ihrer IP aus geöffnet ist) und Ihre Einstellungen zu überprüfen, bevor Sie auf Starten klicken. Außerdem müssen Sie ein Schlüsselpaar für den sicheren SSH-Zugang erstellen oder auswählen.

Schritt 3: Verbinden Sie sich mit Ihrer Instanz

Sobald der Status Ihrer Instanz als "laufend" angezeigt wird, wählen Sie sie auf dem EC2-Dashboard aus. Klicken Sie auf das Verbinden Sie um die Verbindungsoptionen anzuzeigen. Verwenden Sie das mitgelieferte SSH-Befehlsbeispiel in Ihrem lokalen Terminal (z. B. Terminal unter macOS/Linux oder PuTTY/WSL unter Windows), um eine sichere Verbindung herzustellen. Sie benötigen die Datei mit dem privaten Schlüssel (.pem), die Sie beim Start erstellt oder ausgewählt haben.

Mit der Instanz verbinden

Schritt 4: Ausführen von Ultralytics YOLOv5

Nun, da Sie über SSH verbunden sind, können Sie YOLOv5 einrichten und ausführen. Zuerst klonen Sie das offizielle YOLOv5 von GitHub und navigieren Sie in das Verzeichnis. Installieren Sie dann die erforderlichen Abhängigkeiten mit pip. Es wird empfohlen, eine Python 3.8 Umgebung oder höher. Die erforderlichen Modelle und Datensätze werden automatisch von der neuesten YOLOv5 heruntergeladen freigeben wenn Sie Befehle wie Training oder Erkennung ausführen.

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

# Install required packages
pip install -r requirements.txt

Wenn die Umgebung fertig ist, können Sie YOLOv5 für verschiedene Aufgaben verwenden:

# Train a YOLOv5 model on a custom dataset (e.g., coco128.yaml)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640

# Validate the performance (Precision, Recall, mAP) of a trained model (e.g., yolov5s.pt)
python val.py --weights yolov5s.pt --data coco128.yaml --img 640

# Run inference (object detection) on images or videos using a trained model
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos/ --img 640

# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
# See https://docs.ultralytics.com/modes/export/ for more details
python export.py --weights yolov5s.pt --include onnx coreml tflite --img 640

In der Ultralytics finden Sie ausführliche Anleitungen zu Training, Validierung, Vorhersage (Inferenz) und Export.

Optionale Extras: Erhöhung des Swap-Speichers

Wenn Sie mit sehr großen Datensätzen arbeiten oder während des Trainings auf Speicherbeschränkungen stoßen, kann es manchmal helfen, den Swap-Speicher Ihrer Instanz zu erhöhen. Der Swap-Speicher ermöglicht es dem System, Festplattenspeicher als virtuellen Arbeitsspeicher zu verwenden.

# Allocate a 64GB swap file (adjust size as needed)
sudo fallocate -l 64G /swapfile

# Set correct permissions
sudo chmod 600 /swapfile

# Set up the file as a Linux swap area
sudo mkswap /swapfile

# Enable the swap file
sudo swapon /swapfile

# Verify the swap memory is active
free -h

Herzlichen Glückwunsch! Sie haben erfolgreich eine AWS Deep Learning-Instanz eingerichtet, Ultralytics YOLOv5 installiert und sind bereit, Aufgaben zur Objekterkennung durchzuführen. Egal, ob Sie mit vorab trainierten Modellen experimentieren oder mit Ihren eigenen Daten trainieren, diese leistungsstarke Einrichtung bietet eine skalierbare Grundlage für Ihre Computer-Vision-Projekte. Sollten Sie auf Probleme stoßen, konsultieren Sie die umfangreiche AWS-Dokumentation und die hilfreichen Ultralytics wie die FAQ. Viel Spaß beim Erkennen!



📅 Erstellt vor 1 Jahr ✏️ Aktualisiert vor 1 Monat

Kommentare

OSZAR »