Was ist eine Azure Machine Learning-Compute-Instanz?
Eine Azure Machine Learning-Compute-Instanz ist eine verwaltete cloudbasierte Arbeitsstation für Datenanalysten. Jede Compute-Instanz hat nur einen Besitzer, obwohl Sie Dateien für mehrere Compute-Instanzen freigeben können.
Compute-Instanzen vereinfachen den Einstieg in die Azure Machine Learning-Entwicklung und verhelfen IT-Administratoren zu Verwaltungs- und Unternehmensbereitschaftsfunktionen.
Nutzen Sie eine Compute-Instanz als Ihre vollständig konfigurierte und verwaltete Entwicklungsumgebung in der Cloud für maschinelles Lernen. Sie können auch als Computeziel für Entwicklungs- und Testzwecke für Training und Rückschluss verwendet werden.
Damit die Jupyter-Funktionen für Compute-Instanzen eingesetzt werden können, stellen Sie sicher, dass die WebSocket-Kommunikation nicht deaktiviert ist. Stellen Sie sicher, dass Ihr Netzwerk WebSocket-Verbindungen mit *.instances.azureml.net und *.instances.azureml.ms zulässt.
Wichtig
Die in diesem Artikel markierten Elemente (Vorschau) sind aktuell als öffentliche Vorschau verfügbar. Die Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.
Gründe für eine Compute-Instanz
Eine Compute-Instanz ist eine vollständig verwaltete cloudbasierte Arbeitsstation, die für Ihre Machine Learning-Entwicklungsumgebung optimiert ist. Ihnen bieten sich folgende Vorteile:
Hauptvorteile | BESCHREIBUNG |
---|---|
Produktivität | Sie können Modelle mit integrierten Notebooks und den folgenden Tools im Azure Machine Learning Studio erstellen und bereitstellen: – Jupyter – JupyterLab – VS Code (Vorschauversion) Die Compute-Instanz ist vollständig in den Arbeitsbereich und das Studio von Azure Machine Learning integriert. Sie können Notebooks und Daten mit anderen Datenanalysten im Arbeitsbereich gemeinsam nutzen. |
Verwaltet und sicher | Verringern Sie Ihren Sicherheitsaufwand, und gewinnen Sie Compliance mit Anforderungen der Unternehmenssicherheit. Compute-Instanzen bieten verlässliche Verwaltungsrichtlinien und sichere Netzwerkkonfigurationen wie die folgenden: – Automatisierte Bereitstellung über Resource Manager-Vorlagen oder das Azure Machine Learning SDK - Rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC) - Unterstützung virtueller Netzwerke – Azure-Richtlinie zum Deaktivieren des SSH-Zugriffs – Azure Policy zum Erzwingen der Erstellung in einem virtuellen Netzwerk – Automatisches Herunterfahren/automatisches Starten nach Zeitplan – Aktivierung von TLS 1.2 |
Vorkonfiguriert für ML | Sparen Sie Zeit bei der Einrichtung von Aufgaben mit vorkonfigurierten und aktuellen ML-Paketen, Deep Learning-Frameworks und GPU-Treibern. |
Vollständig anpassbar | Umfassende Unterstützung für Azure-VM-Typen einschließlich GPUs und durchweg einfache Anpassungen wie die Installation von Paketen und Treibern machen erweiterte Szenarien zu einem Kinderspiel. Sie können auch Setupskripts verwenden, um die Anpassung zu automatisieren. |
- Schützen Sie Ihre Compute-Instanz mit der Option Keine öffentliche IP-Adresse.
- Die Compute-Instanz ist auch ein sicheres Training-Computeziel, ähnlich wie Computecluster, es handelt sich aber um einen einzelnen Knoten.
- Sie können selbst eine Compute-Instanz erstellen oder ein Administrator kann eine Compute-Instanz für Sie erstellen .
- Sie können auch ein Setupskript verwenden, um die Compute-Instanz gemäß Ihren Anforderungen automatisch anzupassen und zu konfigurieren.
- Um Kosten zu sparen, erstellen Sie einen Zeitplan, um die Compute-Instanz automatisch zu starten und zu beenden, oder aktivieren Sie das Herunterfahren im Leerlauf.
Tools und Umgebungen
Eine Azure Machine Learning-Compute-Instanz ermöglicht Ihnen das Erstellen, Trainieren und Bereitstellen von Modellen in einer vollständig integrierten Notebookumgebung in Ihrem Arbeitsbereich.
Sie können Notebooks aus Ihrem Azure Machine Learning-Arbeitsbereich, Jupyter, JupyterLab oder Visual Studio Code ausführen. VS Code-Desktop kann für den Zugriff auf Ihre Compute-Instanz konfiguriert werden. Oder verwenden Sie VS Code für das Web, direkt aus dem Browser und ohne erforderliche Installationen oder Abhängigkeiten.
Wir empfehlen Ihnen, VS Code für das Web zu testen, um die Vorteile der einfachen Integration und der umfangreichen Entwicklungsumgebung zu nutzen, die es bietet. VS Code für das Web bietet Ihnen viele der Features von VS Code-Desktop, die Sie lieben, einschließlich Such- und Syntaxhervorhebungen beim Browsen und Bearbeiten. Weitere Informationen zur Verwendung von VS Code-Desktop und VS Code für das Web finden Sie unter Starten von Visual Studio Code integriert mit Azure Machine Learning (Vorschau) und Remotearbeiten in VS Code, verbunden mit einer Compute-Instanz (Vorschau).
Sie können Pakete installieren und Kernel zu Ihrer Compute-Instanz hinzufügen.
Die folgenden Tools und Umgebungen sind in der Compute-Instanz bereits installiert:
Allgemeine Tools und Umgebungen | Details |
---|---|
Treiber | CUDA cuDNN NVIDIA Blob FUSE |
Intel MPI Library | |
Azure CLI | |
Azure Machine Learning-Beispiele | |
Docker | |
nginx | |
NCCL 2.0 | |
Protobuf |
R-Tools und -Umgebungen | Details |
---|---|
R-Kernel |
Sie können RStudio oder Posit Workbench (früher RStudio Workbench) hinzufügen, wenn Sie die Instanz erstellen.
PYTHON-Tools und Umgebungen | Details |
---|---|
Anaconda Python | |
Jupyter und Erweiterungen | |
Jupyterlab und Erweiterungen | |
Azure Machine Learning-SDK für Python von PyPI |
Enthält das Paket „azure-ai-ml“ und viele gängige Azure-Zusatzpakete. Um die vollständige Liste zu sehen, öffnen Sie ein Terminalfenster in Ihrer Compute-Instanz und führen Sie folgendes aus conda list -n azureml_py310_sdkv2 ^azure |
Andere PyPi-Pakete | jupytext tensorboard nbconvert notebook Pillow |
Conda-Pakete | cython numpy ipykernel scikit-learn matplotlib tqdm joblib nodejs |
Deep Learning-Pakete | PyTorch TensorFlow Keras Horovod MLFlow pandas-ml scrapbook |
ONNX-Pakete | keras2onnx onnx onnxconverter-common skl2onnx onnxmltools |
Python-Beispiele für Azure Machine Learning |
Die Compute-Instanz verfügt über Ubuntu als Basisbetriebssystem.
Zugreifen auf Dateien
Notebooks und Python-Skripts werden im Standardspeicherkonto Ihres Arbeitsbereichs in der Azure-Dateifreigabe gespeichert. Diese Dateien befinden sich in Ihrem Verzeichnis „Benutzerdateien“. Dieser Speicher erleichtert die gemeinsame Nutzung von Notebooks zwischen Compute-Instanzen. Das Speicherkonto bewahrt auch Ihre Notebooks sicher auf, wenn Sie eine Compute-Instanz beenden oder löschen.
Das Azure-Dateifreigabekonto Ihres Arbeitsbereichs wird als Laufwerk in die Compute-Instanz eingebunden. Dieses Laufwerk ist das Standardarbeitsverzeichnis für Jupyter, Jupyter Labs, RStudio und Posit Workbench. Das bedeutet, dass die Notebooks und andere Dateien, die Sie in Jupyter, JupyterLab, VS Code für das Web, RStudio oder Posit erstellen, automatisch in der Dateifreigabe gespeichert werden und auch für die Verwendung in anderen Compute-Instanzen zur Verfügung stehen.
Auf die Dateien in der Dateifreigabe kann von allen Compute-Instanzen im gleichen Arbeitsbereich zugegriffen werden. Änderungen an diesen Dateien auf der Compute-Instanz werden zuverlässig dauerhaft in der Dateifreigabe zurückgespeichert.
Sie können auch die neuesten Azure Machine Learning-Beispiele in Ihren Ordner im Verzeichnis mit den Benutzerdateien in der Dateifreigabe des Arbeitsbereichs klonen.
Das Schreiben kleiner Dateien kann auf Netzlaufwerken langsamer sein als das Schreiben auf den lokalen Datenträger der Compute-Instanz selbst. Wenn Sie viele kleine Dateien schreiben, sollten Sie versuchen, ein Verzeichnis direkt auf der Compute-Instanz zu verwenden, z. B. ein /tmp
-Verzeichnis. Beachten Sie, dass auf Dateien in der Compute-Instanz von anderen Compute-Instanzen nicht zugegriffen werden kann.
Speichern Sie keine Trainingsdaten auf der Notebook-Dateifreigabe. Informationen zu den verschiedenen Optionen zum Speichern von Daten finden Sie unter Zugreifen auf Daten in einem Auftrag.
Sie können das Verzeichnis /tmp
auf der Compute-Instanz für Ihre temporären Daten verwenden. Schreiben Sie jedoch keine großen Dateien mit Daten auf den Betriebssystemdatenträger der Compute-Instanz. Der Betriebssystemdatenträger der Compute-Instanz verfügt über eine Kapazität von 120 GB. Sie können temporäre Trainingsdaten auch auf einem temporären Datenträger speichern, der auf /mnt eingebunden ist. Die Größe des temporären Datenträgers basiert auf der ausgewählten VM-Größe und kann größere Datenmengen speichern, wenn eine größere VM ausgewählt wird. Alle Softwarepakete, die Sie installieren, werden auf dem Betriebssystemdatenträger der Compute-Instanz gespeichert. Beachten Sie, dass die Verschlüsselung mit kundenseitig verwalteten Schlüsseln für Betriebssystemdatenträger derzeit nicht unterstützt wird. Der Betriebssystemdatenträger für die Compute-Instanz wird mit von Microsoft verwalteten Schlüsseln verschlüsselt.
Sie können auch Datenspeicher und Datasets einbinden.
Erstellen
Befolgen Sie die Schritte unter Erstellen von Ressourcen, die Sie für die ersten Schritte benötigen, um eine einfache Compute-Instanz zu erstellen.
Weitere Optionen finden Sie unter Erstellen einer neuen Compute-Instanz.
Als Administrator können Sie eine Compute-Instanz für andere Benutzer im Arbeitsbereich erstellen. SSO muss für eine solche Compute-Instanz deaktiviert werden.
Sie können auch ein Setupskript verwenden, um die Compute-Instanz gemäß Ihren Anforderungen automatisch anzupassen und zu konfigurieren.
Weitere Möglichkeiten zum Erstellen einer Compute-Instanz:
- direkt in der integrierten Notebookumgebung erstellen.
- Über eine Azure Resource Manager-Vorlage. Eine Beispielvorlage finden Sie unter Erstellen einer Azure Machine Learning Compute-Instanzvorlage.
- Mit dem Azure Machine Learning SDK
- Über die CLI-Erweiterung für Azure Machine Learning
Das Kontingent dedizierter Kerne pro Region pro VM-Familie und gesamte regionale Kontingent, das für die Erstellung von Compute-Instanzen gilt, ist einheitlich und wird mit dem Kontingent für Azure Machine Learning-Trainingcomputecluster gemeinsam genutzt. Das Beenden der Compute-Instanz gibt keine Kontingente frei. So wird sichergestellt, dass Sie die Compute-Instanz erneut starten können. Beenden Sie die Compute-Instanz nicht über das Betriebssystemterminal, indem Sie ein „sudo shutdown“ durchführen.
Die Compute-Instanz verfügt über einen P10-Betriebssystemdatenträger. Der Typ des temporären Datenträgers hängt von der ausgewählten VM-Größe ab. Derzeit ist es nicht möglich, den Betriebssystemdatenträgertyp zu ändern.
Computeziel
Compute-Instanzen können als Trainingscomputeziele verwendet werden, ähnlich wie Azure Machine Learning-Computetrainingscluster. Aber eine Compute-Instanz hat nur einen einzelnen Knoten, während ein Computecluster mehrere Knoten aufweisen kann.
Folgendes gilt für eine Compute-Instanz:
- Sie verfügt über eine Auftragswarteschlange.
- Sie führt Aufträge sicher in einer virtuellen Netzwerkumgebung aus, ohne dass Unternehmen hierfür SSH-Ports öffnen müssen. Der Auftrag wird in einer Containerumgebung ausgeführt und packt die Abhängigkeiten Ihres Modells in einen Docker-Container.
- Sie kann mehrere kleine Aufträge parallel ausführen. Ein Auftrag pro vCPU kann parallel ausgeführt werden, während die restlichen Aufträge in die Warteschlange eingereiht werden.
- Unterstützt verteilte Trainingsaufträge mit einem einzelnen Knoten mit mehreren GPUs
Sie können die Compute-Instanz als gefolgertes lokales Bereitstellungsziel für Test-/Debugszenarien verwenden.
Tipp
Die Compute-Instanz verfügt über einen 120 GB Betriebssystemdatenträger. Wenn kein Speicherplatz mehr verfügbar ist und Sie in einen nicht arbeitsfähigen Zustand geraten, löschen Sie mindestens 5 GB Speicherplatz auf dem Betriebssystemdatenträger (in „/“ eingebunden) über das Computeinstanz-Terminal, indem Sie Dateien bzw. Ordner entfernen und anschließend sudo reboot
ausführen. Der temporäre Datenträger wird nach dem Neustart freigegeben. Sie müssen den Speicherplatz auf einem temporären Datenträger nicht manuell freigeben. Um auf das Terminal zuzugreifen, wechseln Sie zur Seite „Computeliste“ oder zur Seite „Computeinstanz-Details“, und klicken Sie auf den Link Terminal. Sie können den verfügbaren Speicherplatz auf dem Datenträger überprüfen, indem Sie df -h
im Terminal ausführen. Löschen Sie mindestens 5 GB Speicherplatz, bevor Sie sudo reboot
ausführen. Beenden oder starten Sie die Computeinstanz erst dann über Studio neu, wenn 5 GB Speicherplatz gelöscht wurde. Automatisches Herunterfahren, einschließlich geplanter Aktionen zum Starten oder Beenden sowie Herunterfahren im Leerlauf, funktionieren nicht, wenn der CI-Datenträger voll ist.
Zugehöriger Inhalt
- Erstellen Sie Ressourcen, die Sie für den Einstieg benötigen.
- Tutorial: Trainieren Ihres ersten ML-Modells zeigt, wie eine Compute-Instanz mit einem integrierten Notebook verwendet wird.