Wat zijn compute-doelen in Azure Machine Learning?
Een rekendoel is een aangewezen rekenresource of -omgeving waarin u uw trainingsscript uitvoert of uw service-implementatie host. Deze locatie kan uw lokale computer of een cloudresource zijn. Door rekendoelen te gebruiken, kunt u uw rekenomgeving later eenvoudig wijzigen zonder dat u uw code hoeft te wijzigen.
Azure Machine Learning biedt verschillende ondersteuning voor verschillende rekendoelen. In een typische levenscyclus voor modelontwikkeling kunt u het volgende doen:
- Begin met het ontwikkelen en experimenteren met een kleine hoeveelheid gegevens. In deze fase gebruikt u uw lokale omgeving, zoals een lokale computer of een virtuele machine in de cloud (VM), als rekendoel.
- Schaal omhoog naar grotere gegevens of voer gedistribueerde training uit met behulp van een van deze trainingsrekendoelen.
- Nadat uw model klaar is, implementeert u het in een webhostingomgeving met een van deze rekendoelen voor implementatie.
De rekenresources die u voor uw rekendoelen gebruikt, worden gekoppeld aan een werkruimte. Andere rekenresources dan de lokale computer worden gedeeld door gebruikers van de werkruimte.
Rekendoelen voor training
Wanneer u uw training op grotere gegevenssets opschaalt of gedistribueerde training uitvoert, gebruikt u Azure Machine Learning-rekenkracht om een cluster met één of meerdere knooppunten te maken dat automatisch wordt geschaald wanneer u een taak verzendt. U kunt ook uw eigen rekenresource koppelen, hoewel de ondersteuning voor verschillende scenario's kan variëren.
Rekendoelen kunnen opnieuw worden gebruikt voor trainingstaken. Als u een externe VM koppelt aan uw werkruimte, kunt u die bijvoorbeeld voor meerdere taken gebruiken. Voor machine learning-pijplijn gebruikt u de juiste pijplijnstap voor elk rekendoel.
U kunt voor de meeste taken een van de volgende resources gebruiken voor een rekendoel voor trainingsdoeleinden. Niet alle resources kunnen worden gebruikt voor geautomatiseerde machine learning, pijplijnen voor machine learning of de ontwerpfunctie. Azure Databricks kan worden gebruikt als trainingsresource voor lokale uitvoeringen en machine learning-pijplijnen, maar niet als een extern doel voor andere training.
Trainingsdoelen | Geautomatiseerde machine learning | Machine learning-pijplijnen | Azure Machine Learning-ontwerpprogramma |
---|---|---|---|
Lokale computer | Ja | ||
Azure Machine Learning-rekenclusters | Ja | Ja | Ja |
Serverloze rekenkracht van Azure Machine Learning | Ja | Ja | Ja |
Azure Machine Learning-rekenproces | Ja (via de SDK) | Ja | Ja |
Azure Machine Learning Kubernetes | Ja | Ja | |
Externe VM | Ja | Ja | |
Apache Spark-pools (preview) | Ja (alleen lokale SDK-modus) | Ja | |
Azure Databricks | Ja (alleen lokale SDK-modus) | Ja | |
Azure Data Lake Analytics | Ja | ||
Azure HDInsight | Ja | ||
Azure Batch | Ja |
Tip
Het reken-exemplaar heeft een besturingssysteemschijf van 120 GB. Als u onvoldoende schijfruimte hebt, gebruikt u de terminal om ten minste 1-2 GB te wissen voordat u het rekenproces stopt of opnieuw start .
Rekendoelen voor deductie
Bij het uitvoeren van deductie maakt Azure Machine Learning een Docker-container die als host fungeert voor het model en de bijbehorende resources die nodig zijn om het te gebruiken. Deze container wordt vervolgens gebruikt in een rekendoel.
Het rekendoel dat u gebruikt om uw model te hosten, is van invloed op de kosten en beschikbaarheid van uw geïmplementeerde eindpunt. Gebruik deze tabel om een geschikt rekendoel te kiezen.
Rekendoel | Gebruikt voor | GPU-ondersteuning | Beschrijving |
---|---|---|---|
Azure Machine Learning-eindpunten | Realtime deductie Batchdeductie |
Ja | Volledig beheerde berekeningen voor realtime (beheerde online-eindpunten) en batchgewijs scoren (batcheindpunten) op serverloze berekeningen. |
Azure Machine Learning Kubernetes | Realtime deductie Batchdeductie |
Ja | Deductieworkloads uitvoeren op on-premises, cloud- en edge Kubernetes-clusters. |
Rekendoel | Gebruikt voor | GPU-ondersteuning | Beschrijving |
---|---|---|---|
Lokale webservice | Testen/fouten opsporen | Gebruiken voor testen en problemen oplossen. Hardwareversnelling is afhankelijk van het gebruik van bibliotheken in het lokale systeem. | |
Azure Machine Learning Kubernetes | Realtime deductie | Ja | Deductieworkloads uitvoeren in de cloud. |
Azure Container Instances | Realtime deductie Alleen aanbevolen voor ontwikkel-/testdoeleinden. |
Gebruiken voor lage CPU-werkbelastingen waarvoor minder dan 48 GB RAM-geheugen nodig is. U hoeft geen cluster te beheren. Alleen geschikt voor modellen die kleiner zijn dan 1 GB. Ondersteund in de ontwerpfunctie. |
Notitie
Wanneer u een cluster-SKU kiest, moet u eerst omhoog schalen en vervolgens uitschalen. Begin met een computer met 150% van het RAM-geheugen dat uw model nodig heeft, profileer het resultaat en zoek een machine met de prestaties die u nodig hebt. Zodra u dat weet, verhoogt u het aantal machines dat u nodig hebt voor gelijktijdige deductie.
Azure Machine Learning Compute (beheerd)
Azure Machine Learning maakt en beheert de beheerde rekenresources. Dit type rekenproces is geoptimaliseerd voor machine learning-workloads. Azure Machine Learning-rekenclusters, serverloze rekenprocessen en rekenprocessen zijn de enige beheerde berekeningen.
U hoeft geen serverloze berekeningen te maken. U kunt Azure Machine Learning-rekeninstanties of rekenclusters maken op basis van:
- Azure Machine Learning Studio
- De Python SDK en de Azure CLI:
- Een Azure Resource Manager-sjabloon. Zie Een Azure Machine Learning-rekencluster maken voor een voorbeeldsjabloon.
Notitie
In plaats van een rekencluster te maken, gebruikt u serverloze rekenkracht om het levenscyclusbeheer van rekenprocessen naar Azure Machine Learning te offloaden.
Wanneer deze rekenresources worden gemaakt, maken deze automatisch deel uit van uw werkruimte, in tegenstelling tot andere soorten rekendoelen.
Mogelijkheid | Rekencluster | Rekenproces |
---|---|---|
Cluster met één of meerdere knooppunten | ✓ | Cluster met één knooppunt |
Automatisch schalen telkens wanneer u een taak verzendt | ✓ | |
Automatisch clusterbeheer en taakplanning | ✓ | ✓ |
Ondersteuning voor zowel CPU- als GPU-resources | ✓ | ✓ |
Notitie
Om kosten te voorkomen wanneer de berekening niet actief is:
- Zorg ervoor dat voor een rekencluster het minimum aantal knooppunten is ingesteld op 0 of gebruik serverloze berekeningen.
- Schakel voor een rekenproces inactief afsluiten in.
Ondersteunde VM-serie en -grootten
Belangrijk
Als uw rekenproces of rekenclusters zijn gebaseerd op een van deze reeksen, maakt u deze opnieuw met een andere VM-grootte.
Deze reeks is op 31 augustus 2023 buiten gebruik gesteld:
Deze reeks is op 31 augustus 2024 buiten gebruik gesteld:
Wanneer u een knooppuntgrootte selecteert voor een beheerde rekenresource in Azure Machine Learning, kunt u kiezen uit de geselecteerde VM-grootten die beschikbaar zijn in Azure. Azure biedt verschillende grootten voor Linux en Windows voor verschillende workloads. Zie VM-typen en -grootten voor meer informatie.
Er zijn enkele uitzonderingen en beperkingen voor het kiezen van een VM-grootte:
- Sommige VM-reeksen worden niet ondersteund in Azure Machine Learning.
- Sommige VM-reeksen, zoals GPU's en andere speciale SKU's, worden mogelijk niet in eerste instantie weergegeven in de lijst met beschikbare VM's. Maar u kunt deze nog steeds gebruiken wanneer u een quotumwijziging aanvraagt. Zie Quotum- en limietverhogingen aanvragen voor meer informatie over het aanvragen van quota.
Zie de volgende tabel voor meer informatie over ondersteunde reeksen.
Ondersteunde VM-serie | Categorie | Ondersteund door |
---|---|---|
DDSv4 | Algemeen gebruik | Rekenclusters en exemplaren |
Dv2 | Algemeen gebruik | Rekenclusters en exemplaren |
Dv3 | Algemeen gebruik | Rekenclusters en exemplaren |
DSv2 | Algemeen gebruik | Rekenclusters en exemplaren |
DSv3 | Algemeen gebruik | Rekenclusters en exemplaren |
EAv4 | Geoptimaliseerd voor geheugen | Rekenclusters en exemplaren |
Ev3 | Geoptimaliseerd voor geheugen | Rekenclusters en exemplaren |
ESv3 | Geoptimaliseerd voor geheugen | Rekenclusters en exemplaren |
FSv2 | Geoptimaliseerde rekenkracht | Rekenclusters en exemplaren |
FX | Geoptimaliseerde rekenkracht | Rekenclusters |
H | Krachtig rekenvermogen | Rekenclusters en exemplaren |
HB | Krachtig rekenvermogen | Rekenclusters en exemplaren |
HBv2 | Krachtig rekenvermogen | Rekenclusters en exemplaren |
HBv3 | Krachtig rekenvermogen | Rekenclusters en exemplaren |
HC | Krachtig rekenvermogen | Rekenclusters en exemplaren |
LSv2 | Geoptimaliseerd voor opslag | Rekenclusters en exemplaren |
M | Geoptimaliseerd voor geheugen | Rekenclusters en exemplaren |
NC | GPU | Rekenclusters en exemplaren |
NC-promotie | GPU | Rekenclusters en exemplaren |
NCv2 | GPU | Rekenclusters en exemplaren |
NCv3 | GPU | Rekenclusters en exemplaren |
ND | GPU | Rekenclusters en exemplaren |
NDv2 | GPU | Rekenclusters en exemplaren |
NV | GPU | Rekenclusters en exemplaren |
NVv3 | GPU | Rekenclusters en exemplaren |
NCasT4_v3 | GPU | Rekenclusters en exemplaren |
NDasrA100_v4 | GPU | Rekenclusters en exemplaren |
Hoewel Azure Machine Learning deze VM-serie ondersteunt, zijn ze mogelijk niet beschikbaar in alle Azure-regio's. Als u wilt controleren of de VM-serie beschikbaar is, raadpleegt u Producten die beschikbaar zijn per regio.
Notitie
Azure Machine Learning biedt geen ondersteuning voor alle VM-grootten die door Azure Compute worden ondersteund. Gebruik de volgende methode om de beschikbare VM-grootten weer te geven:
Notitie
Azure Machine Learning biedt geen ondersteuning voor alle VM-grootten die door Azure Compute worden ondersteund. Gebruik een van de volgende methoden om de beschikbare VM-grootten weer te geven die worden ondersteund door specifieke typen reken-VM's:
Als u de rekendoelen met GPU gebruikt, is het belangrijk om ervoor te zorgen dat de juiste CUDA-stuurprogramma's zijn geïnstalleerd in de trainingsomgeving. Gebruik de volgende tabel om de juiste CUDA-versie te bepalen die u wilt gebruiken:
GPU-architectuur | Azure VM-serie | Ondersteunde CUDA-versies |
---|---|---|
Ampère | NDA100_v4 | 11.0+ |
Turijn | NCT4_v3 | 10.0+ |
Volta | NCv3, NDv2 | 9.0+ |
Pascal | NCv2, ND | 9.0+ |
Maxwell | NV, NVv3 | 9.0+ |
Kepler | NC, NC Promo | 9.0+ |
Zorg er niet alleen voor dat de CUDA-versie en -hardware compatibel zijn, maar ook dat de CUDA-versie compatibel is met de versie van het machine learning-framework dat u gebruikt:
- Voor PyTorch kunt u de compatibiliteit controleren door naar de pagina vorige versies van Pytorch te gaan.
- Voor Tensorflow kunt u de compatibiliteit controleren door naar de build van Tensorflow te gaan vanaf de bronpagina.
Rekenisolatie
Azure Machine Learning Compute biedt VM-grootten die zijn geïsoleerd voor een specifiek hardwaretype en toegewezen aan één klant. Geïsoleerde VM-grootten zijn het meest geschikt voor workloads die een hoge mate van isolatie van workloads van andere klanten vereisen om redenen die onder andere voldoen aan nalevings- en regelgevingsvereisten. Het gebruik van een geïsoleerde grootte garandeert dat uw VIRTUELE machine de enige is die wordt uitgevoerd op dat specifieke serverexemplaren.
De huidige geïsoleerde VM-aanbiedingen zijn onder andere:
- Standard_M128ms
- Standard_F72s_v2
- Standard_NC24s_v3
- Standard_NC24rs_v3 (RDMA- geschikt)
Zie Isolatie in de openbare Azure-cloud voor meer informatie over isolatie.
Onbeheerde rekenkracht
Azure Machine Learning beheert geen onbeheerd rekendoel. U maakt dit type rekendoel buiten Azure Machine Learning en koppelt het vervolgens aan uw werkruimte. Onbeheerde rekenresources kunnen extra stappen vereisen om de prestaties voor machine learning-workloads te onderhouden of te verbeteren.
Azure Machine Learning ondersteunt de volgende niet-beheerde rekentypen:
- Externe virtuele machines
- Azure HDInsight
- Azure Databricks
- Azure Data Lake Analytics
- Azure Kubernetes Service
- Azure Synapse Spark-pool (afgeschaft)
Zie Rekenresources beheren voor meer informatie.