Wat zijn compute-doelen in Azure Machine Learning?
Een rekendoel is een aangewezen rekenresource of -omgeving waarin u uw trainingsscript of service-implementatie host. Deze locatie kan uw lokale computer of een cloudgebaseerde rekenresource zijn. Door rekendoelen te gebruiken, kunt u uw rekenomgeving later eenvoudig wijzigen zonder dat u uw code moet wijzigen.
In een typische levenscyclus voor modelontwikkeling kunt u het volgende doen:
- Begin met het ontwikkelen en experimenteren met een kleine hoeveelheid gegevens. Gebruik in deze fase uw lokale omgeving, zoals een lokale computer of virtuele machine (VM) in de cloud, als uw rekendoel.
- Schaal omhoog naar grotere gegevens of doe gedistribueerde training met behulp van een van deze rekendoelen voor training.
- Nadat uw model gereed is, implementeert u het in een webhostingomgeving met een van deze rekendoelen voor implementatie.
De rekenbronnen die u voor uw rekendoelen gebruikt, zijn gekoppeld aan een werkruimte. Andere rekenbronnen dan de lokale computer worden gedeeld door gebruikers van de werkruimte.
Rekendoelen trainen
Azure Machine Learning biedt verschillende ondersteuning voor verschillende rekendoelen. Een typische levenscyclus voor modelontwikkeling begint met ontwikkeling of experimenten op een kleine hoeveelheid gegevens. Gebruik in deze fase een lokale omgeving, zoals uw lokale computer of een VM in de cloud. Wanneer u uw training opschaalt voor grotere gegevenssets of gedistribueerde training, gebruikt u Azure Machine Learning Compute om een cluster met één of meer knooppunt te maken dat automatisch wordt geschaald telkens wanneer u een uitvoering indient. 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 kunnen worden gebruikt als trainingsresource voor lokale runs en machine learning pijplijnen, maar niet als 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 |
| Azure Machine Learning-rekeninstantie | Ja (via de SDK) | 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 | ||
| Azure Kubernetes Service (preview) | Ja | Ja | Ja |
| Azure Arc Kubernetes met ingeschakelde functie (preview) | Ja | Ja | Ja |
Tip
De reken-instantie heeft een besturingssysteemschijf van 120 GB. Als u geen schijfruimte meer hebt, gebruikt u de terminal om ten minste 1-2 GB te leeg te maken voordat u de reken-instantie stopt of opnieuw opstart.
Meer informatie over het verzenden van een trainingsrun naar een rekendoel.
Rekendoelen voor de deferentie
Bij het uitvoeren van de deferentie maakt Azure Machine Learning Docker-container die als host voor het model wordt gebruikt en de bijbehorende resources die nodig zijn om het te gebruiken. Deze container wordt vervolgens gebruikt in een rekendoel.
Het rekendoel dat u gebruikt als host voor uw model, is van invloed op de kosten en beschikbaarheid van het geïmplementeerde eindpunt. Gebruik deze tabel om een geschikt rekendoel te kiezen.
| Rekendoel | Gebruikt voor | GPU-ondersteuning | FPGA-ondersteuning | Beschrijving |
|---|---|---|---|---|
| Lokale web service | Testen/fouten opsporen | Gebruiken voor testen en problemen oplossen. Hardwareversnelling is afhankelijk van het gebruik van bibliotheken in het lokale systeem. | ||
| Azure Kubernetes Service (AKS) | Realtime deductie Aanbevolen voor productieworkloads. |
Ja (webservice-implementatie) | Ja | Gebruiken voor grootschalige productie-implementaties. Biedt een snelle reactietijd en automatische schaalaanpassing van de geïmplementeerde service. Automatische schaalaanpassing van clusters wordt niet ondersteund via de Azure Machine Learning SDK. Als u de knooppunten in het AKS-cluster wilt wijzigen, gebruikt u de gebruikersinterface voor uw AKS-cluster in de Azure-portal. Ondersteund in de ontwerpfunctie. |
| Azure Container Instances | Realtime deductie Alleen aanbevolen voor dev/test-doeleinden. |
Gebruiken voor lage CPU-werkbelastingen waarvoor minder dan 48 GB RAM-geheugen nodig is. U hoeft geen cluster te beheren. Ondersteund in de ontwerpfunctie. |
||
| Azure Machine Learning-rekenclusters | Batch deductie | Ja (machine learning-pijplijn) | Batchscoreberekening uitvoeren op serverloze berekening. Ondersteunt VM's met normale en lage prioriteit. Er is geen ondersteuning voor realtime de deference. | |
| Kubernetes met Azure Arc | Realtime deductie Batchdeferentie |
Yes | N.v.t. | Deferencing-workloads uitvoeren op on-premises Kubernetes-clusters, cloud- en edge-clusters die worden beheerd in Azure Arc |
Notitie
Hoewel rekendoelen zoals lokale en Azure Machine Learning compute-clusters GPU ondersteunen voor training en experimenten, wordt het gebruik van GPU voor de deferentie bij de geïmplementeerd als een webservice alleen ondersteund in AKS.
Het gebruik van een GPU voor deductie bij scoreberekening met een machine learning-pijplijn wordt alleen ondersteund in Azure Machine Learning Compute.
Bij het kiezen van een cluster-SKU moet u eerst omhoog schalen en vervolgens uitbreiden. Begin met een machine met 150% van het RAM-geheugen dat voor uw model is vereist, 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.
Notitie
- Containerinstanties zijn alleen geschikt voor kleine modellen met een grootte van minder dan 1 GB.
- Gebruik AKS clusters met één knooppunt voor het ontwikkelen en testen van grotere modellen.
Meer informatie over waar en hoe u uw model implementeert in een rekendoel.
Azure Machine Learning compute (beheerd)
Een beheerde rekenresource wordt gemaakt en beheerd door Azure Machine Learning. Deze berekening is geoptimaliseerd voor machine learning workloads. Azure Machine Learning rekenclusters en reken-exemplaren zijn de enige beheerde berekeningen.
U kunt een Azure Machine Learning of rekenclusters maken van:
- Azure Machine Learning studio.
- De Python-SDK en de Azure CLI:
- Een Azure Resource Manager sjabloon. Zie Create an Azure Machine Learning compute cluster (Een rekencluster Azure Machine Learning maken) voor een voorbeeldsjabloon.
- Een machine learning-extensie voor de Azure CLI.
Wanneer deze rekenbronnen worden gemaakt, maken ze automatisch deel uit van uw werkruimte, in tegenstelling tot andere soorten rekendoelen.
| Mogelijkheid | Rekencluster | Rekenproces |
|---|---|---|
| Cluster met één of meerdere knooppunt | ✓ | Cluster met één knooppunt |
| Automatisch schalen telkens wanneer u een run indient | ✓ | |
| Automatisch clusterbeheer en taakplanning | ✓ | ✓ |
| Ondersteuning voor CPU- en GPU-resources | ✓ | ✓ |
Notitie
Wanneer een rekencluster niet actief is, wordt het automatisch geschaald naar 0 knooppunten, zodat u niet betaalt wanneer het niet in gebruik is. Een reken-exemplaar is altijd aan en wordt niet automatisch geschaald. U moet de reken-instantie stoppen wanneer u deze niet gebruikt om extra kosten te voorkomen.
Ondersteunde VM-serie en -grootten
Wanneer u een knooppuntgrootte selecteert voor een beheerde rekenresource in Azure Machine Learning, kunt u kiezen uit een van de 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 zijn beperkt. Als u een beperkte reeks wilt gebruiken, neem dan contact op met de ondersteuning en vraag een quotumverhoging voor de reeks aan. Zie voor meer informatie over het contact opnemen met ondersteuning voor Azure ondersteuning.
Zie de volgende tabel voor meer informatie over ondersteunde reeksen en beperkingen.
| Ondersteunde VM-serie | Beperkingen | Categorie | Ondersteund door |
|---|---|---|---|
| DDSv4 | Geen. | Algemeen doel | Rekenclusters en -exemplaren |
| Dv2 | Geen. | Algemeen doel | Rekenclusters en -exemplaren |
| Dv3 | Geen. | Algemeen doel | Rekenclusters en -exemplaren |
| DSv2 | Geen. | Algemeen doel | Rekenclusters en -exemplaren |
| DSv3 | Geen. | Algemeen doel | Rekenclusters en -exemplaren |
| EAv4 | Geen. | Geoptimaliseerd geheugen | Rekenclusters en -exemplaren |
| Ev3 | Geen. | Geoptimaliseerd geheugen | Rekenclusters en -exemplaren |
| FSv2 | Geen. | Geoptimaliseerde rekenkracht | Rekenclusters en -exemplaren |
| FX | Goedkeuring vereist. | Geoptimaliseerde rekenkracht | Rekenclusters |
| H | Geen. | Krachtig rekenvermogen | Rekenclusters en -exemplaren |
| HB | Goedkeuring is vereist. | Krachtig rekenvermogen | Rekenclusters en -exemplaren |
| HBv2 | Goedkeuring is vereist. | Krachtig rekenvermogen | Rekenclusters en -exemplaren |
| HBv3 | Goedkeuring is vereist. | Krachtig rekenvermogen | Rekenclusters en -exemplaren |
| HC | Goedkeuring is vereist. | Krachtig rekenvermogen | Rekenclusters en -exemplaren |
| LSv2 | Geen. | Geoptimaliseerde opslag | Rekenclusters en -exemplaren |
| M | Goedkeuring is vereist. | Geoptimaliseerd geheugen | Rekenclusters en -exemplaren |
| NC | Geen. | GPU | Rekenclusters en -exemplaren |
| NC-promotie | Geen. | GPU | Rekenclusters en -exemplaren |
| NCv2 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| NCv3 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| ND | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| NDv2 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| NV | Geen. | GPU | Rekenclusters en -exemplaren |
| NVv3 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| NCasT4_v3 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
| NDasrA100_v4 | Goedkeuring is vereist. | GPU | Rekenclusters en -exemplaren |
Hoewel Azure Machine Learning deze VM-serie ondersteunt, zijn ze mogelijk niet in alle Azure-regio's beschikbaar. Zie Beschikbare producten per regio om te controleren of de VM-serie beschikbaar is.
Notitie
Azure Machine Learning ondersteunt niet alle VM-grootten die Azure Compute ondersteunen. Gebruik een van de volgende methoden om de beschikbare VM-grootten weer te bieden:
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 te bepalen welke CUDA-versie u moet gebruiken:
| GPU-architectuur | Azure VM-serie | Ondersteunde CUDA-versies |
|---|---|---|
| Ampere | NDA100_v4 | 11.0+ |
| Turing | 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 hier de compatibiliteit controleren.
- Voor Tensorflow kunt u de compatibiliteit hier controleren.
Rekenisolatie
Azure Machine Learning compute biedt VM-grootten die zijn geïsoleerd voor een specifiek hardwaretype en die zijn toegewezen aan één klant. Geïsoleerde VM-grootten zijn het meest geschikt voor workloads waarvoor een hoge mate van isolatie van de workloads van andere klanten is vereist, om redenen die onder andere voldoen aan de nalevings- en regelgevingsvereisten. Door gebruik te maken van een geïsoleerde grootte, is uw VM de enige die wordt uitgevoerd op dat specifieke server-exemplaar.
De huidige geïsoleerde VM-aanbiedingen zijn onder andere:
- Standard_M128ms
- Standard_F72s_v2
- Standard_NC24s_v3
- Standard_NC24rs_v3*
*RDMA-compatibel
Zie Isolatie in de openbare Azure-cloudvoor meer informatie over isolatie.
Onmanaged rekenkracht
Een niet-beheerd rekendoel wordt niet beheerd door Azure Machine Learning. U maakt dit type rekendoel buiten Azure Machine Learning koppelt dit vervolgens aan uw werkruimte. Voor niet-beherende rekenbronnen kunnen extra stappen nodig zijn voor het onderhouden of verbeteren van de prestaties van machine learning workloads.
Azure Machine Learning ondersteunt de volgende niet-managede rekentypen:
- Uw lokale computer
- Externe virtuele machines
- Azure HDInsight
- Azure Batch
- Azure Databricks
- Azure Data Lake Analytics
- Azure Container Instance
- Azure Kubernetes Service & Azure Arc Kubernetes (preview)
Zie Rekendoelen instellen voor modeltraining en -implementatie voor meer informatie
Volgende stappen
Leer hoe u het volgende doet: