Was sind Computeziele in Azure Machine Learning?

Ein Computeziel ist eine festgelegte Computeressource oder -Umgebung, in der Ihr Trainingsskript ausgeführt oder Ihre Dienstbereitstellung gehostet wird. Hierbei kann es sich um Ihren lokalen Computer oder eine cloudbasierte Computeressource handeln. Mithilfe von Computezielen können Sie Ihre Compute-Umgebung später problemlos ändern, ohne den Code anpassen zu müssen.

Azure Machine Learning bietet unterschiedliche Unterstützung für verschiedene Computeziele. In einem typischen Modellentwicklungslebenszyklus gehen Sie unter Umständen wie folgt vor:

  1. Sie entwickeln und experimentieren zunächst mit einer kleinen Datenmenge. In dieser Phase verwenden Sie Ihre lokale Umgebung, z. B. einen lokalen Computer oder einen cloudbasierten virtuellen Computer (VM), als Ihr Computeziel.
  2. Skalieren Sie Ihre Umgebung für größere Datenmengen hoch, oder führen Sie ein verteiltes Training mithilfe eines dieser Trainingscomputeziele durch.
  3. Wenn Ihr Modell bereit ist, stellen Sie es in einer Webhostingumgebung mit einem dieser Bereitstellungscomputeziele bereit.

Die Computeressourcen, die Sie für Ihre Computeziele verwenden, werden an einen Arbeitsbereich angefügt. Andere Computeressourcen als der lokale Computer werden von Benutzern des Arbeitsbereichs gemeinsam genutzt.

Trainieren von Computezielen

Wenn Sie Ihr Training zur Verwendung größerer Datasets hochskalieren oder sich für ein verteiltes Training entscheiden, verwenden Sie Azure Machine Learning Compute, um einen Cluster mit einem einzelnen oder mehreren Knoten zu erstellen, der bei jeder Übermittlung einer Ausführung automatisch skaliert wird. Sie können auch Ihre eigene Computeressource anfügen. Die Unterstützung für verschiedene Szenarien kann jedoch variieren.

Computeziele können für mehrere Trainingsaufträge wiederverwendet werden. Beispielsweise können Sie eine Remote-VM, die Sie an Ihren Arbeitsbereich angefügt haben, für mehrere Aufträge wiederverwenden. Verwenden Sie für Machine Learning-Pipelines den entsprechenden Pipelineschritt für jedes Computeziel.

Sie können für die meisten Aufträge eine beliebige der folgenden Ressourcen als Trainingscomputeziel verwenden. Allerdings können nicht alle Ressourcen für automatisiertes maschinelles Lernen, Machine Learning-Pipelines oder den Machine Learning-Designer verwendet werden. Azure Databricks kann als Trainingsressource für lokale Ausführungen und Machine Learning-Pipelines verwendet werden, jedoch nicht als Remoteziel für andere Trainings.

Trainingsziele Automatisiertes maschinelles Lernen Machine Learning-Pipelines Azure Machine Learning-Designer
Lokaler Computer Ja    
Azure Machine Learning Compute-Cluster Ja Ja Ja
Azure Machine Learning: Serverloses Computing Ja Ja Ja
Azure Machine Learning-Computeinstanz Ja (über SDK) Ja Ja
Azure Machine Learning Kubernetes Ja Ja
Remote-VM Ja Ja  
Apache Spark-Pools (Vorschauversion) Ja (nur lokaler SDK-Modus) Ja  
Azure Databricks Ja (nur lokaler SDK-Modus) Ja  
Azure Data Lake Analytics   Ja  
Azure HDInsight   Ja  
Azure Batch   Ja  

Tipp

Die Compute-Instanz verfügt über einen 120 GB Betriebssystemdatenträger. Wenn Ihnen der Speicherplatz ausgeht, verwenden Sie das Terminal, um mindestens 1–2 GB zu löschen, bevor Sie die Compute-Instanz beenden oder neu starten.

Computeziele für Rückschlüsse

Beim Durchführen von Rückschlüssen erstellt Azure Machine Learning einen Docker-Container, der das Modell und zugehörige Ressourcen hostet, die für die Verwendung erforderlich sind. Dieser Container wird dann in einem Computeziel verwendet.

Das Computeziel, das Sie zum Hosten Ihres Modells verwenden, wirkt sich auf die Kosten und die Verfügbarkeit Ihres bereitgestellten Endpunkts aus. Verwenden Sie die folgende Tabelle, um ein geeignetes Computeziel auszuwählen:

Computeziel Syntaxelemente GPU-Unterstützung Beschreibung
Azure Machine Learning-Endpunkte Echtzeitrückschluss

Batchrückschluss
Ja Vollständig verwaltete Compute-Instanzen für die Echtzeit- (verwaltete Online-Endpunkte) und Batchbewertung (Batch-Endpunkte) bei serverlosem Computing.
Azure Machine Learning Kubernetes Echtzeitrückschluss

Batchrückschluss
Ja Ausführen von Rückschlussworkloads in lokalen Clustern, Cloudclustern und Kubernetes-Edgeclustern
Computeziel Syntaxelemente GPU-Unterstützung BESCHREIBUNG
Lokaler Webdienst Testen/Debuggen   Für eingeschränkte Tests und Problembehandlung verwenden. Die Hardwarebeschleunigung hängt von der Verwendung von Bibliotheken im lokalen System ab.
Azure Machine Learning Kubernetes Echtzeitrückschluss Ja Ausführen von Rückschlussworkloads in der Cloud
Azure Container Instances Echtzeitrückschluss

Nur empfohlen für Entwicklungs-/Testzwecke.
  Für CPU-lastige Workloads im kleinen Maßstab verwenden, die weniger als 48 GB Arbeitsspeicher erfordern. Sie müssen keinen Cluster verwalten.

Nur geeignet für Modelle unter 1 GB.

Wird im Designer unterstützt.

Hinweis

Bei der Auswahl einer Cluster-SKU müssen Sie zuerst hochskalieren und dann aufskalieren. Beginnen Sie mit einem Computer, der über 150 % des für Ihr Modell erforderlichen RAM verfügt, erstellen Sie ein Profil für das Ergebnis, und suchen Sie nach einem Computer mit der benötigten Leistung. Nachdem Sie sich damit vertraut gemacht haben, erhöhen Sie die Anzahl der Computer, um Ihren Anforderungen an gleichzeitige Rückschlüsse zu genügen.

Azure Machine Learning-Computeressource (verwaltet)

Azure Machine Learning erstellt und verwaltet die verwalteten Computeressourcen. Diese Art von Compute ist für Machine Learning-Workloads optimiert. Azure Machine Learning-Computecluster, serverlose Compute- und Computeinstanzen sind die einzigen verwalteten Computes.

Es ist nicht erforderlich, serverlose Berechnungen zu erstellen. Sie können Azure Machine Learning-Compute-Instanzen oder -Computecluster erstellen mithilfe von:

Hinweis

Anstatt einen Computecluster zu erstellen, verwenden Sie serverloses Computing, um das Compute-Lifecycle-Management an Azure Machine Learning auszulagern.

Nach der Erstellung sind diese Computeressourcen im Gegensatz zu anderen Arten von Computezielen automatisch Teil Ihres Arbeitsbereichs.

Funktion Computecluster Compute-Instanz
Cluster mit einem oder mehreren Knoten Einzelknotencluster
Automatische Skalierung bei jeder Übermittlung der Einzelvorgänge
Automatische Clusterverwaltung und Auftragsplanung
Unterstützt CPU- und GPU-Ressourcen

Hinweis

So vermeiden Sie Gebühren, wenn sich die Compute-Instanz im Leerlauf befindet

Unterstützte VM-Serien und -Größen

Wichtig

Wenn Ihre Compute-Instanz oder Ihr Computecluster auf einer dieser Serien basiert, erstellen Sie die Instanz/den Cluster vor dem Datum der Außerbetriebnahme mit einer anderen VM-Größe neu, um Dienstunterbrechungen zu vermeiden.

Diese Serien werden am 31. August 2023 außer Betrieb genommen:

Diese Serien werden am 31. August 2024 außer Betrieb genommen:

Wenn Sie eine Knotengröße für eine verwaltete Computeressource in Azure Machine Learning auswählen, können Sie unter den in Azure verfügbaren VM-Größen auswählen. Azure bietet eine Reihe von Größen für Linux und Windows für verschiedene Workloads. Weitere Informationen finden Sie unter VM-Typen und -Größen.

Bei der Auswahl einer VM-Größe gelten einige Ausnahmen und Einschränkungen:

  • Einige VM-Serien werden in Azure Machine Learning nicht unterstützt.
  • Einige VM-Serien, z. B. GPUs und andere spezielle SKUs, werden möglicherweise nicht in Ihrer Liste der verfügbaren VMs angezeigt. Aber Sie können sie trotzdem nutzen, sobald Sie eine Kontingentänderung anfordern. Weitere Informationen zur Kontingentanforderung finden Sie unter Anfordern von Kontingent- und Grenzwerterhöhungen. In der folgenden Tabelle finden Sie weitere Informationen zu den unterstützten Serien.
Unterstützte VM-Serie Kategorie Unterstützt von
DDSv4 Allgemeiner Zweck Computecluster und -instanzen
Dv2 Allgemeiner Zweck Computecluster und -instanzen
Dv3 Allgemeiner Zweck Computecluster und -instanzen
DSv2 Allgemeiner Zweck Computecluster und -instanzen
DSv3 Allgemeiner Zweck Computecluster und -instanzen
EAv4 Arbeitsspeicheroptimiert Computecluster und -instanzen
Ev3 Arbeitsspeicheroptimiert Computecluster und -instanzen
ESv3 Arbeitsspeicheroptimiert Computecluster und -instanzen
FSv2 Computeoptimiert Computecluster und -instanzen
FX Für Compute optimiert Computecluster
H High Performance Computing Computecluster und -instanzen
HB High Performance Computing Computecluster und -instanzen
HBv2 High Performance Computing Computecluster und -instanzen
HBv3 High Performance Computing Computecluster und -instanzen
HC High Performance Computing Computecluster und -instanzen
LSv2 Speicheroptimiert Computecluster und -instanzen
M Arbeitsspeicheroptimiert Computecluster und -instanzen
NC GPU Computecluster und -instanzen
NC Promo GPU Computecluster und -instanzen
NCv2 GPU Computecluster und -instanzen
NCv3 GPU Computecluster und -instanzen
ND GPU Computecluster und -instanzen
NDv2 GPU Computecluster und -instanzen
SH GPU Computecluster und -instanzen
NVv3 GPU Computecluster und -instanzen
NCasT4_v3 GPU Computecluster und -instanzen
NDasrA100_v4 GPU Computecluster und -instanzen

Obwohl Azure Machine Learning diese VM-Serien unterstützt, sind sie möglicherweise nicht in allen Azure-Regionen verfügbar. Informationen zum Überprüfen, ob VM-Serien verfügbar sind, finden Sie unter Verfügbare Produkte nach Region.

Hinweis

Azure Machine Learning unterstützt nicht alle VM-Größen, die von Azure Compute unterstützt werden. Verwenden Sie die folgende Methode, um die verfügbaren VM-Größen aufzulisten:

Hinweis

Azure Machine Learning unterstützt nicht alle VM-Größen, die von Azure Compute unterstützt werden. Um alle verfügbaren VM-Größen aufzulisten, verwenden Sie eine der folgenden Methoden:

Bei der Verwendung GPU-fähiger Computeziele ist es wichtig, sicherzustellen, dass die richtigen CUDA-Treiber in der Trainingsumgebung installiert sind. Bestimmen Sie anhand der folgenden Tabelle die richtige CUDA-Version, die verwendet werden soll:

GPU-Architektur Azure-VM-Serie Unterstützte CUDA-Versionen
Ampere NDA100_v4 11.0+
Turing NCT4_v3 10.0 und höher
Volta NCv3, NDv2 9.0+
Pascal NCv2, ND 9.0+
Maxwell NV, NVv3 9.0+
Kepler NC, NC Promo 9.0+

Stellen Sie nicht nur sicher, dass die CUDA-Version und -Hardware kompatibel sind, sondern auch, dass die CUDA-Version mit der Version des verwendeten Machine-Learning-Frameworks kompatibel ist:

Computeisolation

Azure Machine Learning Compute bietet VM-Größen, die für einen bestimmten Hardwaretyp isoliert und für einen einzelnen Kunden bestimmt sind. Die Größen isolierter VMs eignen sich am besten für Workloads, die ein hohes Maß an Isolation von den Workloads anderer Kunden erfordern, beispielsweise um Compliance zu erzielen und gesetzliche Anforderungen zu erfüllen. Durch die Verwendung einer isolierten Größe wird gewährleistet, dass ausschließlich Ihre VM auf dieser bestimmten Serverinstanz ausgeführt wird.

Die aktuellen Angebote für isolierte VMs umfassen Folgendes:

  • Standard_M128ms
  • Standard_F72s_v2
  • Standard_NC24s_v3
  • Standard_NC24rs_v3 (RDMA-fähig)

Weitere Informationen zur Isolation finden Sie unter Isolation in der öffentlichen Azure-Cloud.

Nicht verwaltete Computeressourcen

Azure Machine Learning verwaltet keine nicht verwalteten Computeziele. Sie erstellen diese Art von Computeziel außerhalb von Azure Machine Learning und fügen es anschließend an Ihren Arbeitsbereich an. Nicht verwaltete Computeressourcen können zusätzliche Schritte erfordern, damit Sie die Leistung für Machine-Learning-Workloads beibehalten oder verbessern können.

Azure Machine Learning unterstützt die folgenden nicht verwalteten Computetypen:

  • Virtuelle Remotecomputer
  • Azure HDInsight
  • Azure Databricks
  • Azure Data Lake Analytics

Weitere Informationen finden Sie unter Verwalten von Computeressourcen.

Nächster Schritt