Overslaan naar inhoud

YOLOv8 šŸš€ op AzureML

Wat is Azure?

Azure is Microsoft's cloud computing platform, ontworpen om organisaties te helpen bij het verplaatsen van hun werklasten naar de cloud vanuit datacenters op locatie. Met het volledige spectrum aan cloudservices, waaronder services voor computing, databases, analytics, machine learning en netwerken, kunnen gebruikers uit deze services kiezen om nieuwe applicaties te ontwikkelen en te schalen, of bestaande applicaties uit te voeren in de publieke cloud.

Wat is Azure Machine Learning (AzureML)?

Azure Machine Learning, beter bekend als AzureML, is een volledig beheerde cloudservice waarmee datawetenschappers en ontwikkelaars op efficiƫnte wijze voorspellende analyses kunnen opnemen in hun toepassingen, waardoor organisaties massale datasets kunnen gebruiken en alle voordelen van de cloud naar machine learning kunnen brengen. AzureML biedt een verscheidenheid aan diensten en mogelijkheden om machine learning toegankelijk, gebruiksvriendelijk en schaalbaar te maken. Het biedt mogelijkheden zoals geautomatiseerde machine learning, drag-and-drop modeltraining en een robuuste Python SDK zodat ontwikkelaars het maximale uit hun machine learning modellen kunnen halen.

Hoe biedt AzureML voordelen voor YOLO gebruikers?

Voor gebruikers van YOLO (You Only Look Once) biedt AzureML een robuust, schaalbaar en efficiƫnt platform om modellen voor machinaal leren te trainen en in te zetten. Of je nu snelle prototypes wilt uitvoeren of wilt opschalen om uitgebreidere gegevens te verwerken, de flexibele en gebruiksvriendelijke omgeving van AzureML biedt verschillende tools en services die aansluiten op jouw behoeften. Je kunt AzureML gebruiken om:

  • Eenvoudig beheren van grote datasets en rekenbronnen voor training.
  • Gebruik ingebouwde gereedschappen voor data preprocessing, feature selectie en modeltraining.
  • EfficiĆ«nter samenwerken met mogelijkheden voor MLOps (Machine Learning Operations), inclusief maar niet beperkt tot monitoring, auditing en versiebeheer van modellen en gegevens.

In de volgende secties vind je een snelstartgids die beschrijft hoe je YOLOv8 objectdetectiemodellen kunt uitvoeren met AzureML, vanaf een computerterminal of een notebook.

Vereisten

Voordat je aan de slag kunt, moet je ervoor zorgen dat je toegang hebt tot een AzureML workspace. Als je er geen hebt, kun je een nieuwe AzureML workspace aanmaken door de officiƫle documentatie van Azure te volgen. Deze workspace fungeert als een gecentraliseerde plek om alle AzureML resources te beheren.

Een computerinstantie maken

Selecteer in je AzureML werkruimte Compute > Compute instances > New en selecteer de instance met de resources die je nodig hebt.

Azure Compute Instance aanmaken

Snelstart vanaf terminal

Start je computer en open een Terminal:

Open terminal

Virtualenv aanmaken

Maak je conda virtualenv en installeer pip daarin:

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

Installeer de vereiste afhankelijkheden:

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

Voer YOLOv8 taken uit

Voorspellen:

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

Train een detectiemodel gedurende 10 epochs met een initiƫle leer_snelheid van 0,01:

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

Meer instructies voor het gebruik van de Ultralytics CLI vind je hier.

Snelstart vanuit een notitieblok

Maak een nieuwe IPython kernel

Open de compute Terminal.

Open terminal

Vanaf je computerminal moet je een nieuwe ipykernel maken die door je notebook zal worden gebruikt om je afhankelijkheden te beheren:

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"

Sluit je terminal en maak een nieuw notitieblok. Vanuit je notitieblok kun je de nieuwe kernel selecteren.

Vervolgens kun je een Notebook cel openen en de benodigde afhankelijkheden installeren:

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

Merk op dat we de source activate yolov8env voor alle %%bash cellen, om er zeker van te zijn dat de %%bash cel de omgeving gebruikt die we willen.

Voer enkele voorspellingen uit met de Ultralytics CLI:

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

Of met de Ultralytics Python interface, bijvoorbeeld om het model te trainen:

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

Je kunt de interface Ultralytics CLI of Python gebruiken voor het uitvoeren van YOLOv8 taken, zoals beschreven in de terminalsectie hierboven.

Door deze stappen te volgen, zou je in staat moeten zijn om YOLOv8 snel aan de gang te krijgen op AzureML voor snelle tests. Voor geavanceerder gebruik kun je de volledige AzureML documentatie raadplegen die aan het begin van deze handleiding is gelinkt.

Ontdek meer met AzureML

Deze gids dient als introductie om je op weg te helpen met YOLOv8 op AzureML. Het is echter slechts een tipje van de sluier van wat AzureML te bieden heeft. Om dieper te graven en het volledige potentieel van AzureML voor jouw machine learning projecten te ontsluiten, kun je overwegen om de volgende bronnen te verkennen:

  • CreĆ«er een Data Asset: Leer hoe je je data assets effectief kunt opzetten en beheren binnen de AzureML omgeving.
  • Een AzureML taak starten: Krijg een uitgebreid inzicht in hoe je machine learning trainingstaken op AzureML kunt starten.
  • Een model registreren: Maak jezelf vertrouwd met praktijken voor modelbeheer, waaronder registratie, versiebeheer en implementatie.
  • Train YOLOv8 met AzureML Python SDK: Verken een stap-voor-stap handleiding voor het gebruik van de AzureML Python SDK om je YOLOv8 modellen te trainen.
  • Train YOLOv8 met AzureML CLI: Ontdek hoe je de opdrachtregelinterface kunt gebruiken voor gestroomlijnde training en beheer van YOLOv8 modellen op AzureML.

FAQ

Hoe voer ik YOLOv8 uit op AzureML voor modeltraining?

Het uitvoeren van YOLOv8 op AzureML voor modeltraining omvat verschillende stappen:

  1. Maak een Compute instance: Navigeer vanuit je AzureML workspace naar Compute > Compute instances > New en selecteer de gewenste instance.

  2. Omgeving instellen: Start je compute instance, open een terminal en maak een conda-omgeving aan:

    conda create --name yolov8env -y
    conda activate yolov8env
    conda install pip -y
    pip install ultralytics onnx>=1.12.0
    
  3. Voer YOLOv8 taken uit: Gebruik de Ultralytics CLI om je model te trainen:

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

Voor meer details kun je de instructies voor het gebruik van de Ultralytics CLI raadplegen.

Wat zijn de voordelen van het gebruik van AzureML voor YOLOv8 training?

AzureML biedt een robuust en efficiƫnt ecosysteem voor het trainen van YOLOv8 modellen:

  • Schaalbaarheid: Schaal je computermiddelen eenvoudig mee als de complexiteit van je gegevens en modellen toeneemt.
  • MLOps integratie: Maak gebruik van functies zoals versiebeheer, monitoring en auditing om ML activiteiten te stroomlijnen.
  • Samenwerking: Deel en beheer bronnen binnen teams en verbeter samenwerkingsworkflows.

Deze voordelen maken AzureML een ideaal platform voor projecten variƫrend van snelle prototypes tot grootschalige implementaties. Kijk voor meer tips op AzureML Jobs.

Hoe los ik veelvoorkomende problemen op bij het uitvoeren van YOLOv8 op AzureML?

Het oplossen van veelvoorkomende problemen met YOLOv8 op AzureML kan de volgende stappen inhouden:

  • Afhankelijkheid: Zorg ervoor dat alle vereiste pakketten zijn geĆÆnstalleerd. Raadpleeg de requirements.txt bestand voor afhankelijkheden.
  • Omgeving instellen: Controleer of je conda-omgeving correct is geactiveerd voordat je commando's uitvoert.
  • Toewijzing van bronnen: Zorg ervoor dat je computerinstanties voldoende bronnen hebben om de trainingsbelasting aan te kunnen.

Raadpleeg voor aanvullende richtlijnen onze documentatie over YOLO Algemene problemen.

Kan ik zowel de Ultralytics CLI als de Python interface gebruiken op AzureML?

Ja, met AzureML kun je zowel de Ultralytics CLI als de Python interface naadloos gebruiken:

  • CLI: Ideaal voor snelle taken en het uitvoeren van standaard scripts direct vanaf de terminal.

    yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
    
  • Python Interface: Nuttig voor complexere taken die aangepaste codering en integratie binnen notitieblokken vereisen.

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.pt")
    model.train(data="coco8.yaml", epochs=3)
    

Raadpleeg de snelstartgidsen voor meer gedetailleerde instructies hier en hier.

Wat is het voordeel van het gebruik van Ultralytics YOLOv8 ten opzichte van andere objectdetectiemodellen?

Ultralytics YOLOv8 biedt een aantal unieke voordelen ten opzichte van concurrerende objectdetectiemodellen:

  • Snelheid: Snellere inferentie en trainingstijden vergeleken met modellen zoals Faster R-CNN en SSD.
  • Nauwkeurigheid: Hoge nauwkeurigheid in detectietaken met functies zoals ankerloos ontwerp en verbeterde augmentatiestrategieĆ«n.
  • Gebruiksgemak: IntuĆÆtieve API en CLI voor snelle installatie, waardoor het zowel voor beginners als experts toegankelijk is.

Als je meer wilt weten over de functies van YOLOv8, bezoek dan de Ultralytics YOLO pagina voor gedetailleerde inzichten.



Aangemaakt 2023-11-12, Bijgewerkt 2024-07-05
Auteurs: glenn-jocher (5), ouphi (1)

Reacties