Azure Machine Learning-hulpprogramma's en -interfaces

Voltooid

Azure Machine Learning biedt een cloudservice die flexibiliteit voor het gebruik ervan biedt. Er zijn specifieke gebruikersinterfaces ontworpen voor Azure Machine Learning, of u kunt een programmatische interface gebruiken om werkruimteresources te beheren en machine learning-bewerkingen uit te voeren.

Azure Machine Learning Studio

U kunt de assets in uw Azure Machine Learning-werkruimte in Azure Portal beheren, maar aangezien dit een algemene interface is voor het beheren van allerlei soorten resources in Azure, geven gegevenswetenschappers en andere gebruikers die betrokken zijn bij machine learning-bewerkingen, mogelijk de voorkeur aan een meer gerichte, specifieke interface.

Azure Machine Learning Studio

Azure Machine Learning Studio is een internethulpprogramma voor het beheren van een Azure Machine Learning-werkruimte. U kunt hiermee alle assets in uw werkruimte maken, beheren en weergeven en het programma biedt de volgende grafische hulpmiddelen:

  • Designer: Een slepen-en-neerzetten-interface om zonder code machine learning-modellen te ontwikkelen.
  • Geautomatiseerde machine learning: Een wizardinterface waarmee u een model kunt trainen met behulp van een combinatie van algoritmen en technieken voor het vooraf verwerken van gegevens om het beste model voor uw gegevens te bepalen.

Notitie

Een eerder uitgebracht hulpprogramma met de naam Azure Machine Learning Studio levert een gratis service voor het ontwikkelen van machine learning-modellen met slepen-en-neerzetten-functionaliteit. De Studio-interface voor de Azure Machine Learning-service bevat deze mogelijkheid in het hulpprogramma Designer, evenals andere mogelijkheden voor het beheer van werkruimte-assets.

Als u Azure Machine Learning Studio wilt gebruiken, gebruikt u een webbrowser om naar https://ml.azure.com te navigeren en meldt u zich aan met de referenties die zijn gekoppeld aan uw Azure-abonnement. U kunt vervolgens het abonnement en de werkruimte die u wilt beheren selecteren.

De Azure Machine Learning-SDK

Hoewel grafische interfaces zoals Azure Machine Learning Studio het maken en beheren van machine learning-assets vereenvoudigen, heeft het vaak voordelen om een op code gebaseerde benadering te gebruiken voor het beheren van resources. Door voor het maken en beheren van resources scripts te schrijven, kunt u het volgende doen:

  • Machine learning-bewerkingen uitvoeren vanuit de ontwikkelingsomgeving van uw voorkeur.
  • Het maken en configureren van assets automatiseren om dit te kunnen herhalen.
  • Zorgen voor consistentie voor resources die moeten worden gerepliceerd in meerdere omgevingen (bijvoorbeeld ontwikkeling, testen en productie)
  • Machine learning-assetconfiguratie opnemen in werkstromen voor ontwikkelaarsbewerkingen (DevOps), zoals pijplijnen voor continue integratie en continue implementatie (CI/CD).

Azure Machine Learning biedt Software Development Kits (SDK's) voor Python en R, die u kunt gebruiken om assets te maken, te beheren en te gebruiken in een Azure Machine Learning-werkruimte.

Notitie

Deze cursus is gericht op de Python-SDK omdat deze uitgebreidere mogelijkheden heeft dan de R-SDK die op het moment van schrijven als preview-versie beschikbaar is.

De Azure Machine Learning-SDK voor Python installeren

U kunt de Azure Machine Learning-SDK voor Python installeren met behulp van het pip-hulpprogramma voor pakketbeheer, zoals wordt weergegeven in het volgende codevoorbeeld:

pip install azureml-sdk

De SDK wordt geïnstalleerd met behulp van het python pip-hulpprogramma en bestaat uit het hoofdpakket azureml-sdk, evenals talloze andere aanvullende pakketten die gespecialiseerde functionaliteit bevatten. Het pakket azureml-widgets biedt bijvoorbeeld ondersteuning voor interactieve widgets in een Jupyter Notebook-omgeving. Als u extra pakketten wilt installeren, moet u deze opnemen in de pip install opdracht :

pip install azureml-sdk azureml-widgets

Meer informatie: Zie de SDK-documentatie voor meer informatie over het installeren van de Azure Machine Learning-SDK voor Python. Houd er ook rekening mee dat de SDK regelmatig wordt bijgewerkt en lees de opmerkingen bij de release voor de meest recente versie.

Verbinding maken met een werkruimte

Nadat u het SDK-pakket in uw Python-omgeving hebt geïnstalleerd, kunt u code schrijven om verbinding te maken met uw werkruimte en machine learning-bewerkingen uit te voeren. De eenvoudigste manier om verbinding te maken met een werkruimte is het gebruik van een werkruimteconfiguratiebestand dat de volgende gegevens over het Azure-abonnement, de resourcegroep en de werkruimte bevat:

{
    "subscription_id": "1234567-abcde-890-fgh...",
    "resource_group": "aml-resources",
    "workspace_name": "aml-workspace"
}

Tip

U kunt een configuratiebestand voor een werkruimte downloaden op de pagina Overzicht van de betreffende blade in Azure Portal of uit de Azure Machine Learning-studio.

Als u verbinding wilt maken met de werkruimte met behulp van het configuratiebestand, kunt u de methode from_config van de klasse Workspace in de SDK gebruiken, zoals hier wordt weergegeven:

from azureml.core import Workspace

ws = Workspace.from_config()

De methode from_config zoekt standaard een bestand met de naam config.json in de map die het Python-codebestand bevat, maar u kunt indien nodig een ander pad opgeven.

Als alternatief voor het gebruik van een configuratiebestand kunt u de methode get van de klasse Workspace gebruiken met expliciet opgegeven gegevens voor abonnement, resourcegroep en werkruimte, zoals hier wordt weergegeven. De methode met het configuratiebestand heeft echter in het algemeen de voorkeur vanwege de grotere flexibiliteit bij het gebruik van meerdere scripts:

from azureml.core import Workspace

ws = Workspace.get(name='aml-workspace',
                   subscription_id='1234567-abcde-890-fgh...',
                   resource_group='aml-resources')

Bij beide methoden moet u zich verifiëren als er geen huidige actieve sessie voor uw Azure-abonnement is.

Werken met de klasse Workspace

De klasse Workspace is het startpunt voor de meeste codebewerkingen. U kunt bijvoorbeeld het kenmerk compute_targets ervan gebruiken om een woordenboekobject op te halen dat de rekendoelen bevat die in de werkruimte zijn gedefinieerd, zoals:

for compute_name in ws.compute_targets:
    compute = ws.compute_targets[compute_name]
    print(compute.name, ":", compute.type)

De SDK bevat een uitgebreide bibliotheek met klassen die u kunt gebruiken om veel soorten assets in een Azure Machine Learning-werkruimte te maken, te beheren en te gebruiken.

Meer informatie: Zie de SDK-documentatie voor meer informatie over de Azure Machine Learning-SDK.

De Azure Machine Learning CLI-extensie

De Azure-opdrachtregelinterface (CLI) is het platformoverschrijdende opdrachtregelprogramma voor het beheren van Azure-resources. De Azure Machine Learning CLI-extensie is een extra pakket dat opdrachten biedt voor het werken met Azure Machine Learning.

Als u de Azure Machine Learning CLI-extensie wilt installeren, moet u eerst Azure CLI installeren. Zie de volledige installatie-instructies voor alle ondersteunde platformen voor meer informatie.

Nadat u Azure CLI hebt geïnstalleerd, kunt u de Azure Machine Learning CLI-extensie toevoegen door de volgende opdracht uit te voeren:

az extension add -n azure-cli-ml

Als u de Azure Machine Learning CLI-extensie wilt gebruiken, voert u de opdracht az ml uit met de juiste parameters voor de actie die u wilt uitvoeren. Als u bijvoorbeeld de rekendoelen in een werkruimte wilt weergeven, voert u de volgende opdracht uit:

az ml computetarget list -g 'aml-resources' -w 'aml-workspace'

Notitie

In het bovenstaande codevoorbeeld wordt met de parameter -g de naam opgegeven van de resourcegroep waarin de Azure Machine Learning-werkruimte die is opgegeven met de parameter -w is gedefinieerd. Deze parameters zijn korte aliassen voor --resource-group en --workspace-name.

Meer informatie: Zie de documentatie voor meer informatie over de Azure Machine Learning CLI-extensie.

Rekeninstanties

Azure Machine Learning bevat de mogelijkheid om rekeninstanties in een werkruimte te maken om een ontwikkelomgeving te bieden die wordt beheerd met alle andere assets in de werkruimte.

Notebook-VM

Rekeninstanties bevatten Jupyter Notebook- en JupyterLab-installaties die u kunt gebruiken om code te schrijven en uit te voeren die de Azure Machine Learning-SDK gebruikt om met assets in uw werkruimte te werken.

U kunt een installatiekopie van een rekenproces kiezen die de berekeningsspecificatie biedt die u nodig hebt, van kleine CPU-VM's naar grote GPU-werkstations. Omdat rekenprocessen worden gehost in Azure, betaalt u alleen voor de rekenresources wanneer ze worden uitgevoerd. U kunt dus een rekenproces maken die aan uw behoeften voldoet en deze stoppen wanneer uw workload is voltooid om de kosten te minimaliseren.

U kunt notebooks afzonderlijk opslaan in werkruimteopslag en deze openen in elk rekenproces.

Visual Studio Code

Visual Studio Code is een compacte omgeving voor het bewerken van code voor Microsoft Windows, Apple macOS en Linux. U beschikt hiermee over een visuele interface voor veel soorten code, waaronder Microsoft C#, JavaScript en Python, evenals IntelliSense en syntaxisopmaak voor algemene gegevensindelingen, zoals JSON en XML.

De flexibiliteit van Visual Studio Code is gebaseerd op de mogelijkheid om modulaire extensies te installeren waarmee syntaxiscontrole, foutopsporing en visuele beheerinterfaces voor specifieke workloads worden toegevoegd. De Microsoft Python-extensie voor Visual Studio Code bijvoorbeeld voegt ondersteuning toe voor het schrijven en uitvoeren van Python-code in scripts of notebooks binnen de Visual Studio Code-interface.

Visual Studio Code

De Azure Machine Learning-extensie voor Visual Studio Code biedt een grafische interface voor het werken met assets in een Azure Machine Learning-werkruimte. U kunt de mogelijkheden van de Azure Machine Learning- en Python-extensies combineren voor het beheer van een volledige end-to-end machine learning-workload in Azure Machine Learning vanuit de Visual Studio Code-omgeving.

Meer informatie: Zie de documentatie voor meer informatie over het gebruik van de Azure Machine Learning-extensie voor Visual Studio Code.