Bearbeiten

Bereitstellen von KI- und ML-Computing – lokal und am Edge

Azure Container Registry
Azure IoT Edge
Azure Machine Learning
Azure Stack Edge

Diese Referenzarchitektur veranschaulicht, wie Azure Stack Edge verwendet werden kann, um schnelle Machine Learning-Rückschlüsse aus der Cloud auf lokale oder Edgeszenarien zu erweitern. Azure Stack Hub stellt Azure-Funktionen wie Compute, Speicher, Netzwerke und hardwarebeschleunigtes maschinelles Lernen an einem beliebigen Edgestandort bereit.

Aufbau

Architecture diagram: on-premises data training a model in Azure Machine Learning, with model deployed back to the edge for inference.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Workflow

Die Architektur umfasst die folgenden Schritte:

  • Azure Machine Learning . Mithilfe von Machine Learning können Sie Modelle für maschinelles Lernen in einer cloudbasierten Umgebung erstellen, trainieren, bereitstellen und verwalten. Diese Modelle können dann für Azure-Dienste bereitgestellt werden, einschließlich (aber nicht beschränkt auf) Azure Container Instances, Azure Kubernetes Service (AKS) und Azure Functions.
  • Azure Container Registry Container Registry ist ein Dienst, der die Docker-Registrierung erstellt und verwaltet. Container Registry erstellt, speichert und verwaltet Docker-Containerimages und kann containerisierte Machine Learning-Modelle speichern.
  • Azure Stack Edge Azure Stack Edge ist ein Edgecomputinggerät, das für ML-Rückschlüsse am Edge entwickelt wurde. Vor der Übertragung an Azure werden Daten am Edge vorverarbeitet. Azure Stack Edge umfasst Hardware zur Computebeschleunigung, die dazu dient, die Leistung von KI-Rückschlüssen am Edge zu verbessern.
  • Lokale Daten Lokale Daten verweisen auf alle Daten, die beim Trainieren des Machine Learning-Modells verwendet werden. Die Daten können in jeder lokalen Speicherlösung, einschließlich Azure Arc-Bereitstellungen, gespeichert werden.

Komponenten

Szenariodetails

Mögliche Anwendungsfälle

Diese Lösung eignet sich ideal für die Telekommunikationsbranche. Typische Verwendungsmöglichkeiten für die Erweiterung von Rückschlüssen:

  • Ausführen lokaler, schneller Machine Learning-Rückschlüsse anhand von Daten während der Erfassung, wenn ein beträchtlicher lokaler Hardwarebestand vorliegt
  • Erstellen langfristiger Forschungslösungen, bei denen vorhandene lokale Daten bereinigt und zum Generieren eines Modells verwendet werden. Das Modell wird dann sowohl lokal als auch in der Cloud verwendet. Es wird regelmäßig neu trainiert, wenn neue Daten eintreffen.
  • Erstellen von Softwareanwendungen, die sowohl an einem physischen Standort als auch online Rückschlüsse auf die Benutzer ziehen müssen.

Empfehlungen

Erfassen, Transformieren und Übertragen von lokal gespeicherten Daten

Mit Azure Stack Edge können Daten aus lokalem Speicher transformiert werden, bevor diese Daten zu Azure übertragen werden. Diese Transformation wird von einem Azure IoT Edge-Gerät durchgeführt, das auf dem Azure Stack Edge-Gerät bereitgestellt wird. Diese IoT Edge-Geräte sind mit einer Azure IoT Hub-Ressource auf der Azure-Cloudplattform verbunden.

Jedes IoT Edge-Modul ist ein Docker-Container, der eine bestimmte Aufgabe in einem Workflow zur Erfassung, Transformation und Übertragung ausführt. Ein IoT Edge-Modul kann z. B. Daten von einer lokalen Azure Stack Edge-Freigabe erfassen und die Daten in ein Format transformieren, das für das maschinelle Lernen geeignet ist. Anschließend überträgt das Modul die transformierten Daten an eine Azure Stack Edge-Cloudfreigabe. Sie können Ihrem IoT Edge-Gerät benutzerdefinierte oder integrierte Module hinzufügen oder benutzerdefinierte IoT Edge-Module entwickeln.

Hinweis

IoT Edge-Module werden als Docker-Containerimages in Container Registry registriert.

In der Azure Stack Edge-Ressource auf der Azure-Cloudplattform wird der Cloudanteil durch eine Azure Blob-Speicherkontoressource gesichert. Alle Daten in der Cloudfreigabe werden automatisch in das zugehörige Speicherkonto hochgeladen. Sie können die Datentransformation und -übertragung überprüfen, indem Sie entweder die lokale oder die Cloudfreigabe einbinden oder das Azure Storage-Konto durchlaufen.

Trainieren und Bereitstellen eines Modells

Nach der Vorbereitung und Speicherung von Daten im Blobspeicher können Sie ein Machine Learning-Dataset erstellen, das eine Verbindung mit Azure Storage herstellt. Ein Dataset stellt eine einzelne Kopie Ihrer Daten im Speicher dar, die direkt von Machine Learning referenziert wird.

Sie können mithilfe der Machine Learning-Befehlszeilenschnittstelle (CLI), des R SDKs, des Python SDKs, dem Designer oder von Visual Studio Code die Skripts erstellen, die für das Training Ihres Modells erforderlich sind.

Nachdem Sie das bereitzustellende Modell trainiert und vorbereitet haben, können Sie es für eine Vielzahl von Azure-Diensten bereitstellen. Beispiele:

Hinweis

Für diese Referenzarchitektur wird das Modell auf Azure Stack Edge bereitgestellt, um das Modell lokal für Rückschlüsse verfügbar zu machen. Das Modell wird auch in Container Registry bereitgestellt, um sicherzustellen, dass das Modell für Rückschlüsse in den verschiedensten Azure-Dienste zur Verfügung steht.

Rückschlüsse mit einem neu bereitgestellten Modell

Mithilfe der integrierten Hardware zur Computebeschleunigung kann Azure Stack Edge Machine Learning-Modelle schnell anhand von lokalen Daten ausführen. Diese Berechnung erfolgt vollständig am Edge. Als Ergebnis erhalten Sie schnelle Erkenntnisse aus Daten mithilfe von Hardware, die sich näher an der Datenquelle befindet als eine öffentliche Cloudregion.

Darüber hinaus werden die Daten weiterhin von Azure Stack Edge an Machine Learning übertragen, um mithilfe einer Machine Learning-Pipeline ein kontinuierliches erneutes Training und eine fortlaufende Verbesserung zu ermöglichen. Die Pipeline ist dem Modell zugeordnet, das bereits anhand von lokal gespeicherten Daten ausgeführt wird.

Überlegungen

Diese Überlegungen beruhen auf den Säulen des Azure Well-Architected Frameworks, d. h. einer Reihe von Grundsätzen, mit denen die Qualität von Workloads verbessert werden kann. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

Verfügbarkeit

  • Ziehen Sie in Betracht, Ihre Azure Stack Edge-Ressource in derselben Azure-Region zu platzieren, in der andere Azure-Dienste darauf zugreifen sollen. Um die Leistung beim Hochladen zu optimieren, sollten Sie in Erwägung ziehen, Ihr Azure-Blobspeicherkonto in der Region zu platzieren, in der Ihre Appliance die beste Netzwerkverbindung aufweist.
  • Erwägen Sie Azure ExpressRoute für eine stabile, redundante Verbindung zwischen Ihrem Gerät und Azure.

Verwaltbarkeit

  • Administratoren können überprüfen, ob die Datenquelle aus dem lokalen Speicher ordnungsgemäß an die Azure Stack Edge-Ressource übertragen wurde. Hierzu können sie über Azure Storage Explorer die SMB- (Server Message Block)/NFS-Dateifreigabe (Network File System) einbinden oder eine Verbindung mit dem zugehörigen Blobspeicherkonto herstellen.
  • Verwenden Sie Machine Learning-Datasets, um beim Training Ihres Modells auf Ihre Daten im Blobspeicher zu verweisen. Durch Speicherverweise ist es nicht mehr erforderlich, Geheimnisse, Datenpfade oder Verbindungszeichenfolgen in Ihre Trainingsskripts einzubetten.
  • Registrieren Sie ML-Modelle in Ihrem Machine Learning-Arbeitsbereich, und verfolgen Sie sie, um Unterschiede zwischen Ihren Modellen zu verschiedenen Zeitpunkten nachzuverfolgen. Auf ähnliche Weise können Sie die Metadaten zur Versionsverwaltung und Nachverfolgung in den Tags spiegeln, die Sie mithilfe der Docker-Containerimages für die Bereitstellung in Container Registry verwenden.

DevOps

  • Überprüfen Sie den Ansatz zur MLOps-Lebenszyklusverwaltung für Machine Learning. Verwenden Sie beispielsweise GitHub oder Azure Pipelines, um einen Continuous Integration-Prozess zu erstellen, der ein Modell automatisch und wiederholt trainiert. Das Training kann ausgelöst werden, wenn das Dataset durch neue Daten aufgefüllt oder eine Änderung an den Trainingsskripts vorgenommen wird.
  • Der Azure Machine Learning-Arbeitsbereich registriert und verwaltet automatisch Docker-Containerimages für Machine Learning-Modelle und IoT Edge-Module.

Kostenoptimierung

Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Nächste Schritte

Produktdokumentation

Microsoft Learn-Module: