YOLO Vision 2026:

Ultralytics YOLOv5 🚀 auf einer AWS Deep Learning Instance: Dein vollständiger Leitfaden#

Das Einrichten einer hochleistungsfähigen Deep Learning-Umgebung kann einschüchternd wirken, besonders für Einsteiger. Aber keine Sorge! 🛠️ Diese Anleitung bietet eine Schritt-für-Schritt-Einführung, um Ultralytics YOLOv5 auf einer AWS Deep Learning-Instanz zum Laufen zu bringen. Durch die Nutzung der Leistung von Amazon Web Services (AWS) können selbst Neueinsteiger im Bereich Machine Learning (ML) schnell und kosteneffizient starten. Die Skalierbarkeit der AWS-Plattform macht sie ideal sowohl für Experimente als auch für den produktiven Einsatz.

Weitere Schnellstart-Optionen für YOLOv5 sind unser Google Colab Notebook Open In Colab, Kaggle-Umgebungen Open In Kaggle, die GCP Deep Learning VM und unser vorgefertigtes Docker-Image auf Docker Hub Docker Pulls.

Schritt 1: Anmeldung bei der AWS-Konsole#

Beginne damit, ein Konto zu erstellen oder dich bei der AWS Management Console anzumelden. Navigiere nach dem Anmelden zum EC2-Dienst-Dashboard, wo du deine virtuellen Server (Instanzen) verwalten kannst.

Anmeldeseite der AWS Management Console

Schritt 2: Starte deine Instance#

Klicke im EC2-Dashboard auf die Schaltfläche Launch Instance. Dies leitet den Prozess zur Erstellung eines neuen, auf deine Bedürfnisse zugeschnittenen virtuellen Servers ein.

Schaltfläche „Instanz starten“

Auswahl des richtigen Amazon Machine Image (AMI)#

Die Wahl des richtigen AMI ist entscheidend. Dies bestimmt das Betriebssystem und die vorinstallierte Software für deine Instanz. Gib in die Suchleiste 'Deep Learning' ein und wähle das neueste Ubuntu-basierte Deep Learning AMI aus (es sei denn, du hast spezielle Anforderungen an ein anderes Betriebssystem). Die Deep Learning-AMIs von Amazon sind bereits mit gängigen Deep-Learning-Frameworks (wie PyTorch, das von YOLOv5 verwendet wird) und den notwendigen GPU-Treibern vorkonfiguriert, was den Einrichtungsaufwand erheblich vereinfacht.

Auswahl des AWS EC2 Deep Learning AMI

Auswahl eines Instance-Typs#

Für anspruchsvolle Aufgaben wie das Training von Deep Learning-Modellen wird die Wahl eines GPU-beschleunigten Instance-Typs dringend empfohlen. GPUs können die für das Modelltraining benötigte Zeit im Vergleich zu CPUs drastisch reduzieren. Achte bei der Wahl der Instance-Größe darauf, dass deren Arbeitsspeicher (RAM) für dein Modell und deinen Datensatz ausreicht.

Hinweis: Die Größe deines Modells und Datensatzes sind kritische Faktoren. Wenn deine ML-Aufgabe mehr Arbeitsspeicher erfordert, als die ausgewählte Instance bietet, musst du einen größeren Instance-Typ wählen, um Leistungsprobleme oder Fehler zu vermeiden.

Erkunde die verfügbaren GPU-Instanztypen auf der Seite zu den EC2-Instanztypen, insbesondere in der Kategorie Accelerated Computing.

Auswahl des AWS EC2 GPU-Instanztyps

Detaillierte Informationen zur Überwachung und Optimierung der GPU-Auslastung findest du im AWS-Leitfaden zu GPU Monitoring and Optimization. Vergleiche die Kosten mit der On-Demand-Preisgestaltung und entdecke potenzielle Einsparungen mit der Spot-Instanz-Preisgestaltung.

Konfiguration deiner Instance#

Erwäge die Nutzung von Amazon EC2 Spot Instances für einen kosteneffizienteren Ansatz. Mit Spot Instances kannst du auf ungenutzte EC2-Kapazitäten bieten, oft mit einem erheblichen Rabatt gegenüber On-Demand-Preisen. Wähle für Aufgaben, die Persistenz erfordern (Speicherung von Daten, auch wenn die Spot Instance unterbrochen wird), eine persistente Anfrage. Dies stellt sicher, dass dein Speichervolumen erhalten bleibt.

Konfiguration der Spot-Anfrage

Gehe die Schritte 4-7 des Instance-Start-Assistenten durch, um den Speicher zu konfigurieren, Tags hinzuzufügen, Sicherheitsgruppen einzurichten (stelle sicher, dass der SSH-Port 22 für deine IP geöffnet ist) und deine Einstellungen zu überprüfen, bevor du auf Starten klickst. Du musst außerdem ein Schlüsselpaar für den sicheren SSH-Zugriff erstellen oder ein bestehendes auswählen.

Schritt 3: Verbindung zu deiner Instance herstellen#

Sobald der Status deiner Instanz als „running“ (ausgeführte) angezeigt wird, wähle sie im EC2-Dashboard aus. Klicke auf die Schaltfläche Connect, um die Verbindungsoptionen anzuzeigen. Verwende das bereitgestellte SSH-Befehlsbeispiel in deinem lokalen Terminal (wie Terminal unter macOS/Linux oder PuTTY/WSL unter Windows), um eine sichere Verbindung herzustellen. Du benötigst die private Schlüsseldatei (.pem), die du während des Startvorgangs erstellt oder ausgewählt hast.

Optionen für die SSH-Verbindung einer AWS EC2-Instanz

Schritt 4: Ausführen von Ultralytics YOLOv5#

Da du nun per SSH verbunden bist, kannst du YOLOv5 einrichten und ausführen. Klonen zunächst das offizielle YOLOv5-Repository von GitHub und wechsle in das Verzeichnis. Installiere dann die erforderlichen Abhängigkeiten mit pip. Es wird empfohlen, eine Python 3.8-Umgebung oder neuer zu verwenden. Die notwendigen Modelle und Datensätze werden automatisch aus dem neuesten YOLOv5-Release heruntergeladen, wenn du Befehle wie Training oder Erkennung ausführst.

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

# Install required packages
pip install -r requirements.txt

Sobald die Umgebung bereit ist, kannst du YOLOv5 für verschiedene Aufgaben nutzen:

# 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

Ausführliche Anleitungen zu Training, Validierung, Vorhersage (Inferenz) und Exportieren findest du in der Ultralytics-Dokumentation.

Optionale Extras: Erhöhung des Swap-Speichers#

Wenn du mit sehr großen Datensätzen arbeitest oder während des Trainings auf Speicherbegrenzungen stößt, kann eine Erhöhung des Swap-Speichers auf deiner Instance manchmal helfen. Swap-Speicher ermöglicht es dem System, Festplattenspeicher als virtuellen RAM zu nutzen.

# 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! 🎉 Du hast erfolgreich eine AWS Deep Learning-Instanz eingerichtet, Ultralytics YOLOv5 installiert und bist bereit, Objekterkennungsaufgaben durchzuführen. Egal, ob du mit vortrainierten Modellen experimentierst oder mit deinen eigenen Daten trainierst, dieses leistungsstarke Setup bietet eine skalierbare Grundlage für deine Computer-Vision-Projekte. Solltest du auf Probleme stoßen, ziehe die umfangreiche AWS-Dokumentation sowie die hilfreichen Community-Ressourcen von Ultralytics wie die FAQ zu Rate. Viel Spaß beim Erkennen!

Kommentare