Grundlegendes zur Lösungsarchitektur

Abgeschlossen

Wenn Sie an kleineren Projekten mit kleineren Teams arbeiten, kann es sinnvoll sein, einen Azure Machine Learning-Arbeitsbereich zu haben. Der eine Arbeitsbereich kann für alles verwendet werden: Ihr Modell trainieren, testen und bereitstellen. Bei Proseware möchten Sie jedoch eine robuste und zukunftssichere Lösung haben, die einfach skaliert werden kann, wenn Sie mehrere Modelle erstellen und verwalten, die Sie mit unserer Webanwendung für Ärzte integrieren möchten.

Damit Sie schnell, aber sicher ein Modell von der Entwicklung in die Produktion verschieben können, haben Sie eine allgemeine MLOps-Architektur (Machine Learning-Vorgänge) vereinbart.

Diagramm: Architektur für Machine Learning Operations

Hinweis

Das Diagramm zeigt eine vereinfachte Darstellung einer MLOps-Architektur. Eine detailliertere Beschreibung der Architektur finden Sie in den Anwendungsfällen im Solution Accelerator für MLOps (v2).

Die Architektur umfasst:

  1. Setup: Erstellen aller erforderlichen Azure-Ressourcen für die Lösung.
  2. Modellentwicklung (innere Schleife): Untersuchen und Verarbeiten der Daten zum Trainieren und Auswerten des Modells.
  3. Continuous Integration: Packen und Registrieren des Modells.
  4. Modellbereitstellung (äußere Schleife): Bereitstellen des Modells.
  5. Continuous Deployment: Testen des Modells und Höherstufen in die Produktionsumgebung.
  6. Überwachung: Überwachen der Modell- und Endpunktleistung.

Für die Arbeit mit Machine Learning-Modellen in großem Maßstab möchte Proseware separate Umgebungen für verschiedene Phasen verwenden. Durch getrennte Umgebungen lässt sich der Zugriff auf Ressourcen leichter kontrollieren. Jede Umgebung kann dann einem separaten Azure Machine Learning-Arbeitsbereich zugeordnet werden.

Hinweis

In diesem Modul beziehen wir uns auf die DevOps-Interpretation von Umgebungen. Beachten Sie, dass Azure Machine Learning auch den Begriff „Umgebungen“ verwendet, um eine Sammlung von Python-Paketen zu beschreiben, die zum Ausführen eines Skripts benötigt werden. Diese beiden Konzepte von Umgebungen sind unabhängig voneinander. Erfahren Sie mehr über Azure Machine Learning-Umgebungen.

Damit Modelle vor der Bereitstellung getestet werden können, möchten Sie mit drei Umgebungen arbeiten:

Diagramm: Entwicklungs-, Staging- und Produktionsumgebung

Die Entwicklungsumgebung wird für die innere Schleife verwendet:

  1. Data Scientists trainieren das Modell.
  2. Das Modell wird gepackt und registriert.

Die Stagingumgebung wird für einen Teil der äußeren Schleife verwendet:

  1. Testen Sie den Code und das Modell mit Linten und Komponententests.
  2. Stellen Sie das Modell bereit, um den Endpunkt zu testen.

Die Produktionsumgebung wird für einen weiteren Teil der äußeren Schleife verwendet:

  1. Stellen Sie das Modell für den Produktionsendpunkt bereit. Der Produktionsendpunkt ist mit der Webanwendung integriert.
  2. Überwachen Sie die Modell- und Endpunktleistung, um bei Bedarf ein erneutes Training auszulösen.

Obwohl viele Machine Learning-Aufgaben automatisiert werden können und sollten, sollten Sie auch Punkte planen, an denen Sie eine überwachte Genehmigung wünschen. Wenn ein Modell trainiert und gepackt wurde, sollten Sie den leitenden Data Scientist benachrichtigen, um das Modell zu überprüfen, bevor es in die Stagingumgebung wechselt.

Ebenso sollten Sie nach dem intensiven Testen des Modells in der Stagingumgebung eine überwachte Genehmigung hinzufügen, um sicherzustellen, dass jemand aus dem Softwareentwicklungsteam überprüft, ob alle Tests erfolgreich waren, bevor Sie Ihr Modell in der Produktion bereitstellen.

Wenn Sie mit Umgebungen arbeiten, können Sie mit der überwachten Genehmigung Bereitstellungen von einer Umgebung in die nächste steuern.