Azure-trainingsbronnen voor Model Builder
Hieronder vindt u een handleiding voor meer informatie over resources die worden gebruikt voor het trainen van modellen in Azure met Model Builder.
Wat is een Azure Machine Learning-experiment?
Een Azure Machine Learning-experiment is een resource die moet worden gemaakt voordat u Model Builder-training uitvoert in Azure.
Het experiment bevat de configuratie en resultaten voor een of meer uitvoeringen van machine learning-trainingen. Experimenten behoren tot een specifieke werkruimte. De eerste keer dat een experiment wordt gemaakt, wordt de naam ervan geregistreerd in de werkruimte. Eventuele volgende uitvoeringen, als dezelfde experimentnaam wordt gebruikt, worden geregistreerd als onderdeel van hetzelfde experiment. Anders wordt er een nieuw experiment gemaakt.
Wat is een Azure Machine Learning-werkruimte?
Een werkruimte is een Azure Machine Learning-resource die een centrale locatie biedt voor alle Azure Machine Learning-resources en artefacten die zijn gemaakt als onderdeel van de trainingsuitvoering.
Als u een Azure Machine Learning-werkruimte wilt maken, moet u het volgende doen:
- Naam: Een naam voor uw werkruimte tussen 3 en 33 tekens. Namen mogen alleen alfanumerieke tekens en afbreekstreepjes bevatten.
- Regio: De geografische locatie van het datacenter waar uw werkruimte en resources worden geïmplementeerd. Het wordt aanbevolen om een locatie dicht bij u of uw klanten te kiezen.
- Resourcegroep: een container die alle gerelateerde resources voor een Azure-oplossing bevat.
Wat is een Azure Machine Learning-rekenproces?
Een Azure Machine Learning-rekenproces is een linux-VM in de cloud die wordt gebruikt voor training.
Voor het maken van een Azure Machine Learning-rekenproces zijn de volgende waarden vereist:
Naam: Een naam voor uw berekening tussen 2 en 16 tekens. Namen mogen alleen alfanumerieke tekens en afbreekstreepjes bevatten.
Rekenkracht.
Model Builder kan een van de volgende voor GPU geoptimaliseerde rekentypen gebruiken:
Grootte vCPU Geheugen: GiB Tijdelijke opslag (SSD) GiB GPU GPU-geheugen: GiB Maximum aantal gegevensschijven Maximum aantal NIC's Standard_NC12 12 112 680 2 24 48 2 Standard_NC24 24 224 1440 4 48 64 4 Raadpleeg de documentatie van de NC-serie voor Linux-VM's voor meer informatie over voor GPU geoptimaliseerde rekentypen.
Rekenprioriteit.
- Lage prioriteit: Geschikt voor taken met kortere uitvoeringstijden. Taken kunnen worden beïnvloed door onderbrekingen en gebrek aan beschikbaarheid. Deze optie kost meestal minder omdat deze gebruikmaakt van overtollige capaciteit in Azure.
- Toegewezen: Geschikt voor taken van elke duur, maar met name langlopende taken. Taken worden niet beïnvloed door onderbrekingen of gebrek aan beschikbaarheid. Deze optie kost meestal meer omdat er een toegewezen set rekenresources in Azure wordt gereserveerd voor uw taken.
Opleiding
Training in Azure is alleen beschikbaar voor het scenario voor afbeeldingsclassificatie van Model Builder. Het algoritme dat wordt gebruikt om deze modellen te trainen, is een Deep Neural Network op basis van de ResNet50-architectuur. Het trainingsproces duurt enige tijd en de hoeveelheid tijd kan variëren, afhankelijk van de grootte van de geselecteerde rekenkracht en de hoeveelheid gegevens. U kunt de voortgang van uw uitvoeringen bijhouden door de koppeling Huidige uitvoering bewaken in Azure Portal te selecteren in Visual Studio.
Resultaten
Zodra de training is voltooid, worden er twee projecten aan uw oplossing toegevoegd met de volgende achtervoegsels:
ConsoleApp: een C#-console-app die starterscode biedt om de voorspellingspijplijn te bouwen en voorspellingen te doen.
Model: een C# .NET Standard-app die de gegevensmodellen bevat die het schema van invoer- en uitvoermodelgegevens en de volgende assets definiëren:
- bestModel.onnx: een geserialiseerde versie van het model in DE ONNX-indeling (Open Neural Network Exchange). ONNX is een opensource-indeling voor AI-modellen die interoperabiliteit ondersteunen tussen frameworks zoals ML.NET, PyTorch en TensorFlow.
- bestModelMap.json: een lijst met categorieën die worden gebruikt bij het maken van voorspellingen om de modeluitvoer toe te wijzen aan een tekstcategorie.
- MLModel.zip: een geserialiseerde versie van de ML.NET voorspellingspijplijn die gebruikmaakt van de geserialiseerde versie van het model bestModel.onnx om voorspellingen te doen en uitvoer toe te wijst met behulp van het
bestModelMap.json
bestand.
Het machine learning-model gebruiken
De klassen ModelInput
en ModelOutput
in het model project definiëren respectievelijk het schema van de verwachte invoer en uitvoer van het model.
In een afbeeldingsclassificatiescenario bevat de ModelInput
twee kolommen:
-
ImageSource
: het tekenreekspad van de afbeeldingslocatie. -
Label
: de werkelijke categorie waartoe de afbeelding behoort.Label
wordt alleen gebruikt als invoer bij het trainen en hoeft niet te worden opgegeven bij het maken van voorspellingen.
De ModelOutput
bevat twee kolommen:
-
Prediction
: de voorspelde categorie van de afbeelding. -
Score
: de lijst met waarschijnlijkheden voor alle categorieën (het hoogste behoort tot dePrediction
).
Probleemoplossing
Kan geen rekenproces maken
Als er een fout optreedt tijdens het maken van Azure Machine Learning-berekeningen, bestaat de rekenresource mogelijk nog steeds met een fout. Als u de rekenresource opnieuw probeert te maken met dezelfde naam, mislukt de bewerking. U kunt deze fout als volgt oplossen:
- De nieuwe berekening maken met een andere naam
- Ga naar Azure Portal en verwijder de oorspronkelijke rekenresource