Een Python-ontwikkelomgeving instellen voor Azure Machine Learning (v1)
Meer informatie over het configureren van een Python-ontwikkelomgeving voor Azure Machine Learning.
In de volgende tabel ziet u elke ontwikkelomgeving die in dit artikel wordt behandeld, samen met de voor- en nadelen.
Omgeving | Voordelen | Nadelen |
---|---|---|
Lokale omgeving | Volledig beheer van uw ontwikkelomgeving en afhankelijkheden. Voer uit met een buildhulpprogramma, omgeving of IDE van uw keuze. | Het duurt langer om aan de slag te gaan. De benodigde SDK-pakketten moeten worden geïnstalleerd en er moet ook een omgeving worden geïnstalleerd als u er nog geen hebt. |
De Data Science Virtual Machine (DSVM) | Vergelijkbaar met het cloudgebaseerd rekenproces (Python en de SDK zijn vooraf geïnstalleerd), maar met andere populaire hulpprogramma's voor gegevenswetenschap en machine learning vooraf geïnstalleerd. Eenvoudig te schalen en te combineren met andere aangepaste hulpprogramma's en werkstromen. | Een tragere ervaring om aan de slag te gaan in vergelijking met het cloudgebaseerde rekenproces. |
Azure Machine Learning-rekeninstantie | Eenvoudigste manier om aan de slag te gaan. De volledige SDK is al geïnstalleerd op uw werkruimte-VM en notebookzelfstudies zijn vooraf gekloond en klaar om te worden uitgevoerd. | Gebrek aan controle over uw ontwikkelomgeving en afhankelijkheden. Extra kosten voor linux-VM (VM kan worden gestopt wanneer deze niet wordt gebruikt om kosten te voorkomen). Zie prijsinformatie. |
Azure Databricks | Ideaal voor het uitvoeren van grootschalige intensieve machine learning-werkstromen op het schaalbare Apache Spark-platform. | Overkill voor experimentele machine learning of experimenten en werkstromen op kleinere schaal. Extra kosten voor Azure Databricks. Zie prijsinformatie. |
Dit artikel bevat ook gebruikstips voor de volgende hulpprogramma's:
Jupyter Notebooks: als u al Gebruikmaakt van Jupyter Notebooks, heeft de SDK enkele extra's die u moet installeren.
Visual Studio Code: als u Visual Studio Code gebruikt, bevat de Azure Machine Learning-extensie uitgebreide taalondersteuning voor Python en functies om het werken met Azure Machine Learning veel gemakkelijker en productiever te maken.
Vereisten
- Azure Machine Learning-werkruimte. Als u nog geen werkruimte hebt, kunt u een Azure Machine Learning-werkruimte maken via de Azure Portal, Azure CLI en Azure Resource Manager-sjablonen.
Alleen lokaal en DSVM: een werkruimteconfiguratiebestand maken
Het configuratiebestand voor de werkruimte is een JSON-bestand dat de SDK vertelt hoe deze moet communiceren met uw Azure Machine Learning-werkruimte. Het bestand heet config.json en heeft de volgende indeling:
{
"subscription_id": "<subscription-id>",
"resource_group": "<resource-group>",
"workspace_name": "<workspace-name>"
}
Dit JSON-bestand moet zich in de mapstructuur bevinden die uw Python-scripts of Jupyter Notebooks bevat. Deze kan zich in dezelfde map bevinden, een submap met de naam .azureml
, of in een bovenliggende map.
Als u dit bestand wilt gebruiken vanuit uw code, gebruikt u de Workspace.from_config
methode . Met deze code worden de gegevens uit het bestand geladen en wordt verbinding gemaakt met uw werkruimte.
Maak een werkruimteconfiguratiebestand op een van de volgende manieren:
Azure Portal
Het bestand downloaden: selecteer in de Azure Portalconfig.json downloaden in de sectie Overzicht van uw werkruimte.
Azure Machine Learning Python SDK
Maak een script om verbinding te maken met uw Azure Machine Learning-werkruimte en gebruik de
write_config
methode om uw bestand te genereren en op te slaan als .azureml/config.json. Zorg ervoor dat u ,resource_group
, enworkspace_name
vervangt doorsubscription_id
uw eigen.VAN TOEPASSING OP:Python SDK azureml v1
from azureml.core import Workspace subscription_id = '<subscription-id>' resource_group = '<resource-group>' workspace_name = '<workspace-name>' try: ws = Workspace(subscription_id = subscription_id, resource_group = resource_group, workspace_name = workspace_name) ws.write_config() print('Library configuration succeeded') except: print('Workspace not found')
Lokale computer of externe VM-omgeving
U kunt een omgeving instellen op een lokale computer of externe virtuele machine, zoals een Azure Machine Learning-rekenproces of Datawetenschap VM.
Een lokale ontwikkelomgeving of externe VM configureren:
Maak een virtuele Python-omgeving (virtualenv, conda).
Notitie
Hoewel dit niet vereist is, wordt u aangeraden Anaconda of Miniconda te gebruiken voor het beheren van virtuele Python-omgevingen en installatiepakketten.
Belangrijk
Als u Linux of macOS gebruikt en een andere shell dan bash gebruikt (bijvoorbeeld zsh), kunnen er fouten optreden wanneer u bepaalde opdrachten uitvoert. U kunt dit probleem omzeilen door de
bash
opdracht te gebruiken om een nieuwe bash-shell te starten en de opdrachten daar uit te voeren.Activeer uw zojuist gemaakte virtuele Python-omgeving.
Installeer de Azure Machine Learning Python SDK.
Als u uw lokale omgeving wilt configureren voor het gebruik van uw Azure Machine Learning-werkruimte, maakt u een werkruimteconfiguratiebestand of gebruikt u een bestaand configuratiebestand.
Nu u uw lokale omgeving hebt ingesteld, kunt u aan de slag met Azure Machine Learning. Zie de handleiding Aan de slag met Azure Machine Learning Python om aan de slag te gaan.
Jupyter Notebooks
Wanneer u een lokale Jupyter Notebook-server uitvoert, wordt u aangeraden een IPython-kernel te maken voor uw virtuele Python-omgeving. Dit zorgt ervoor dat het verwachte gedrag voor het importeren van kernels en pakketten wordt gegarandeerd.
Omgevingsspecifieke IPython-kernels inschakelen
conda install notebook ipykernel
Maak een kernel voor uw virtuele Python-omgeving. Zorg ervoor dat u vervangt door
<myenv>
de naam van uw virtuele Python-omgeving.ipython kernel install --user --name <myenv> --display-name "Python (myenv)"
De Jupyter Notebook-server starten
Zie de opslagplaats voor Azure Machine Learning-notebooks om aan de slag te gaan met Azure Machine Learning en Jupyter Notebooks. Zie ook de communitygestuurde opslagplaats AzureML-Examples.
Visual Studio Code
Visual Studio Code gebruiken voor ontwikkeling:
Installeer Visual Studio Code.
Installeer de Azure Machine Learning Visual Studio Code-extensie (preview).
Belangrijk
Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview-versie wordt geleverd zonder serviceovereenkomst en wordt niet aanbevolen voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt.
Zie Supplemental Terms of Use for Microsoft Azure Previews (Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews) voor meer informatie.
Zodra u de Visual Studio Code-extensie hebt geïnstalleerd, gebruikt u deze voor het volgende:
- Uw Azure Machine Learning-resources beheren
- Visual Studio Code starten die op afstand is verbonden met een rekenproces (preview)
- Experimenten uitvoeren en fouten opsporen
- Getrainde modellen implementeren (CLI v2).
Azure Machine Learning-rekeninstantie
Het Azure Machine Learning-rekenproces is een veilig, cloudgebaseerde Azure-werkstation dat gegevenswetenschappers een Jupyter Notebook-server, JupyterLab en een volledig beheerde machine learning-omgeving biedt.
Er is niets om te installeren of te configureren voor een rekenproces.
Maak er op elk gewenst moment een vanuit uw Azure Machine Learning-werkruimte. Geef alleen een naam op en geef een type Azure-VM op. Probeer het nu met Resources maken om aan de slag te gaan.
Zie Een Azure Machine Learning-rekenproces maken en beheren voor meer informatie over rekeninstanties, waaronder het installeren van pakketten.
Tip
Stop het rekenproces om te voorkomen dat er kosten in rekening worden gebracht voor een ongebruikt rekenproces. Of schakel niet-actief afsluiten in voor het rekenproces.
Naast een Jupyter Notebook-server en JupyterLab kunt u rekenprocessen gebruiken in de geïntegreerde notebookfunctie in Azure Machine Learning-studio.
U kunt ook de Azure Machine Learning Visual Studio Code-extensie gebruiken om verbinding te maken met een extern rekenproces met behulp van VS Code.
Data Science Virtual Machine
De Datawetenschap VM is een aangepaste vm-installatiekopieën (virtuele machine) die u als ontwikkelomgeving kunt gebruiken. Het is ontworpen voor data science-werk met vooraf geconfigureerde hulpprogramma's en software, zoals:
- Pakketten zoals TensorFlow, PyTorch, Scikit-learn, XGBoost en de Azure Machine Learning SDK
- Populaire hulpprogramma's voor data science, zoals Spark Standalone en Drill
- Azure-hulpprogramma's, zoals de Azure CLI, AzCopy en Storage Explorer
- Geïntegreerde ontwikkelomgevingen (IDE's), zoals Visual Studio Code en PyCharm
- Jupyter Notebook Server
Zie de handleiding Datawetenschap VM-hulpprogramma's voor een uitgebreidere lijst met hulpprogramma's.
Belangrijk
Als u van plan bent om de Datawetenschap-VM te gebruiken als rekendoel voor uw trainings- of deductietaken, wordt alleen Ubuntu ondersteund.
De Datawetenschap-VM gebruiken als een ontwikkelomgeving:
Maak een Datawetenschap VM met behulp van een van de volgende methoden:
Gebruik de Azure Portal om een Ubuntu- of Windows-DSVM te maken.
Azure CLI gebruiken
Gebruik de volgende opdracht om een Ubuntu Datawetenschap VM te maken:
# create a Ubuntu Data Science VM in your resource group # note you need to be at least a contributor to the resource group in order to execute this command successfully # If you need to create a new resource group use: "az group create --name YOUR-RESOURCE-GROUP-NAME --location YOUR-REGION (For example: westus2)" az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:linux-data-science-vm-ubuntu:linuxdsvmubuntu:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --generate-ssh-keys --authentication-type password
Gebruik de volgende opdracht om een Windows-DSVM te maken:
# create a Windows Server 2016 DSVM in your resource group # note you need to be at least a contributor to the resource group in order to execute this command successfully az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:dsvm-windows:server-2016:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --authentication-type password
Activeer de Conda-omgeving die de Azure Machine Learning SDK bevat.
Voor Ubuntu Datawetenschap VM:
conda activate py36
Voor Windows Datawetenschap-VM:
conda activate AzureML
Als u de Datawetenschap VM wilt configureren voor het gebruik van uw Azure Machine Learning-werkruimte, maakt u een werkruimteconfiguratiebestand of gebruikt u een bestaand configuratiebestand.
Net als bij lokale omgevingen kunt u Visual Studio Code en de Azure Machine Learning Visual Studio Code-extensie gebruiken om te communiceren met Azure Machine Learning.
Zie Datawetenschap Virtual Machines voor meer informatie.
Volgende stappen
- Een model trainen en implementeren in Azure Machine Learning met de MNIST-gegevensset.
- Zie de naslaginformatie over de Azure Machine Learning SDK voor Python.