Zum Inhalt springen

YOLOv8 🚀 auf AzureML

Was ist Azure?

Azure ist die Cloud-Computing-Plattform von Microsoft, die Unternehmen dabei hilft, ihre Arbeitslasten von lokalen Rechenzentren in die Cloud zu verlagern. Mit dem gesamten Spektrum an Cloud-Diensten, darunter Computing, Datenbanken, Analysen, maschinelles Lernen und Netzwerke, können Nutzer/innen aus diesen Diensten auswÀhlen, um neue Anwendungen zu entwickeln und zu skalieren oder bestehende Anwendungen in der öffentlichen Cloud zu betreiben.

Was ist Azure Machine Learning (AzureML)?

Azure Machine Learning, allgemein als AzureML bezeichnet, ist ein vollstĂ€ndig verwalteter Cloud-Dienst, der es Datenwissenschaftlern und Entwicklern ermöglicht, prĂ€diktive Analysen effizient in ihre Anwendungen einzubinden. So können Unternehmen große DatensĂ€tze nutzen und alle Vorteile der Cloud fĂŒr maschinelles Lernen nutzen. AzureML bietet eine Vielzahl von Diensten und Funktionen, die maschinelles Lernen zugĂ€nglich, einfach zu nutzen und skalierbar machen sollen. Es bietet Funktionen wie automatisiertes maschinelles Lernen, Modelltraining per Drag-and-Drop sowie ein robustes Python SDK, damit Entwickler das Beste aus ihren maschinellen Lernmodellen herausholen können.

Welchen Nutzen hat AzureML fĂŒr YOLO Nutzer?

FĂŒr Nutzer von YOLO (You Only Look Once) bietet AzureML eine robuste, skalierbare und effiziente Plattform, um Machine-Learning-Modelle zu trainieren und einzusetzen. Ganz gleich, ob du schnelle Prototypen erstellen oder grĂ¶ĂŸere Datenmengen verarbeiten willst, die flexible und benutzerfreundliche Umgebung von AzureML bietet verschiedene Tools und Dienste, die deinen BedĂŒrfnissen entsprechen. Du kannst AzureML nutzen, um:

  • Verwalte mĂŒhelos große DatensĂ€tze und Rechenressourcen fĂŒr das Training.
  • Nutze die integrierten Tools fĂŒr die Datenvorverarbeitung, die Merkmalsauswahl und das Modelltraining.
  • Effizientere Zusammenarbeit mit Funktionen fĂŒr MLOps (Machine Learning Operations), einschließlich, aber nicht beschrĂ€nkt auf die Überwachung, PrĂŒfung und Versionierung von Modellen und Daten.

In den folgenden Abschnitten findest du eine Schnellstart-Anleitung, in der du erfĂ€hrst, wie du YOLOv8 Objekterkennungsmodelle mit AzureML entweder von einem Compute-Terminal oder einem Notebook aus ausfĂŒhrst.

Voraussetzungen

Bevor du loslegen kannst, musst du sicherstellen, dass du Zugang zu einem AzureML-Arbeitsbereich hast. Wenn du noch keinen hast, kannst du einen neuen AzureML-Arbeitsbereich erstellen, indem du der offiziellen Azure-Dokumentation folgst. Dieser Arbeitsbereich dient als zentraler Ort, um alle AzureML-Ressourcen zu verwalten.

Eine Recheninstanz erstellen

WÀhle in deinem AzureML-Arbeitsbereich Compute > Compute-Instanzen > Neu und wÀhle die Instanz mit den benötigten Ressourcen.

Azure Compute Instanz erstellen

Schnellstart vom Terminal aus

Starte deinen Computer und öffne ein Terminal:

Terminal öffnen

Virtualenv erstellen

Erstelle deine conda virtualenv und installiere pip in ihr:

conda create --name yolov8env -y
conda activate yolov8env
conda install pip -y

Installiere die erforderlichen AbhÀngigkeiten:

cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx>=1.12.0

DurchfĂŒhren von YOLOv8 Aufgaben

Voraussagen:

yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

Trainiere ein Erkennungsmodell fĂŒr 10 Epochen mit einer anfĂ€nglichen learning_rate von 0,01:

yolo train data=coco8.yaml model=yolov8n.pt epochs=10 lr0=0.01

Weitere Anleitungen zur Verwendung von Ultralytics CLI findest du hier.

Schnellstart aus einem Notebook

Einen neuen IPython-Kernel erstellen

Öffne das Compute Terminal.

Terminal öffnen

In deinem Compute-Terminal musst du einen neuen ipykernel erstellen, der von deinem Notebook verwendet wird, um deine AbhÀngigkeiten zu verwalten:

conda create --name yolov8env -y
conda activate yolov8env
conda install pip -y
conda install ipykernel -y
python -m ipykernel install --user --name yolov8env --display-name "yolov8env"

Schließe dein Terminal und erstelle ein neues Notizbuch. In deinem Notizbuch kannst du den neuen Kernel auswĂ€hlen.

Dann kannst du eine Notebook-Zelle öffnen und die erforderlichen AbhÀngigkeiten installieren:

%%bash
source activate yolov8env
cd ultralytics
pip install -r requirements.txt
pip install ultralytics
pip install onnx>=1.12.0

Beachte, dass wir die source activate yolov8env fĂŒr alle %%bash-Zellen, um sicherzustellen, dass die %%bash-Zelle die von uns gewĂŒnschte Umgebung verwendet.

FĂŒhren Sie einige Vorhersagen durch, indem Sie die Ultralytics CLI:

%%bash
source activate yolov8env
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

Oder mit der SchnittstelleUltralytics Python , zum Beispiel, um das Modell zu trainieren:

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.pt")  # load an official YOLOv8n model

# Use the model
model.train(data="coco8.yaml", epochs=3)  # train the model
metrics = model.val()  # evaluate model performance on the validation set
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image
path = model.export(format="onnx")  # export the model to ONNX format

Du kannst entweder die Schnittstelle Ultralytics CLI oder Python verwenden, um YOLOv8 Aufgaben auszufĂŒhren, wie oben im Abschnitt ĂŒber das Terminal beschrieben.

Wenn du diese Schritte befolgst, solltest du in der Lage sein, YOLOv8 fĂŒr schnelle Versuche auf AzureML zum Laufen zu bringen. FĂŒr fortgeschrittene Anwendungen kannst du die vollstĂ€ndige AzureML-Dokumentation lesen, die am Anfang dieses Leitfadens verlinkt ist.

Entdecke mehr mit AzureML

Dieser Leitfaden dient als EinfĂŒhrung, damit du mit YOLOv8 auf AzureML loslegen kannst. Er kratzt jedoch nur an der OberflĂ€che dessen, was AzureML bieten kann. Wenn du tiefer einsteigen und das volle Potenzial von AzureML fĂŒr deine Machine-Learning-Projekte ausschöpfen willst, solltest du dir die folgenden Ressourcen ansehen:

  • DatenbestĂ€nde erstellen: Lerne, wie du deine DatenbestĂ€nde in der AzureML-Umgebung effektiv einrichtest und verwaltest.
  • Initiiere einen AzureML-Job: Erhalte ein umfassendes VerstĂ€ndnis dafĂŒr, wie du deine Trainingsjobs fĂŒr maschinelles Lernen auf AzureML startest.
  • Ein Modell registrieren: Mache dich mit den Praktiken der Modellverwaltung vertraut, einschließlich Registrierung, Versionierung und Bereitstellung.
  • Trainiere YOLOv8 mit dem AzureML Python SDK: Erkunde eine Schritt-fĂŒr-Schritt-Anleitung zur Verwendung des AzureML Python SDK, um deine YOLOv8 Modelle zu trainieren.
  • Trainiere YOLOv8 mit AzureML CLI: Entdecke, wie du die Befehlszeilenschnittstelle fĂŒr ein optimiertes Training und Management von YOLOv8 Modellen auf AzureML nutzen kannst.


Erstellt am 2023-11-12, Aktualisiert am 2024-04-18
Autoren: glenn-jocher (3), ouphi (1)

Kommentare