Machine Learning-Registrierungen für MLOps

In diesem Artikel wird beschrieben, wie Azure Machine Learning Registrierungen maschinelles Lernen von Arbeitsbereichen decoupieren, sodass Sie MLOps in Entwicklungs-, Test- und Produktionsumgebungen verwenden können. Ihre Umgebungen können je nach Komplexität Ihrer IT-Systeme variieren. Die folgenden Faktoren beeinflussen die Anzahl und Art der von Ihnen benötigten Umgebungen:

  • Sicherheits- und Compliancerichtlinien. Produktionsumgebungen müssen möglicherweise in Bezug auf Zugriffssteuerung, Netzwerkarchitektur und Datengefährdung von Entwicklungsumgebungen isoliert werden.
  • Abonnements. Entwicklungsumgebungen und Produktionsumgebungen verwenden häufig separate Abonnements für Abrechnungs-, Budgetierungs- und Kostenverwaltungszwecke.
  • Regionen. Möglicherweise müssen Sie in verschiedenen Azure-Regionen bereitstellen, um Wartezeit- und Redundanzanforderungen zu unterstützen.

In den vorstehenden Szenarien verwenden Sie möglicherweise verschiedene Azure Machine Learning-Arbeitsbereiche für Entwicklung, Test und Produktion. Diese Konfiguration birgt die folgenden potentiellen Herausforderungen für das Training und die Bereitstellung der Modelle:

  • Möglicherweise müssen Sie ein Modell in einem Entwicklungsarbeitsbereich trainieren, es aber für einen Endpunkt in einem Produktionsarbeitsbereich bereitstellen, möglicherweise in einem anderen Azure-Abonnement oder einer anderen Region. In diesem Fall müssen Sie in der Lage sein, den Trainingsauftrag zurückzuverfolgen. Wenn Sie beispielsweise Probleme mit der Genauigkeit oder Leistung bei der Produktionsbereitstellung haben, müssen Sie die Metriken, Protokolle, den Code, die Umgebung und die Daten analysieren, die Sie zum Trainieren des Modells verwendet haben.

  • Möglicherweise müssen Sie eine Trainingspipeline mit Testdaten oder anonymisierten Daten im Entwicklungsarbeitsbereich entwickeln, aber das Modell mit Produktionsdaten im Produktionsarbeitsbereich neu trainieren. In diesem Fall müssen Sie möglicherweise Schulungsmetriken für Stichproben- und Produktionsdaten vergleichen, um sicherzustellen, dass die Schulungsoptimierungen gut mit tatsächlichen Daten funktionieren.

Arbeitsbereichsübergreifende MLOps mit Registrys

Eine Registrierung, ähnlich wie ein Git-Repository, entkoppelt maschinelle Lernressourcen von Arbeitsbereichen und hostet die Objekte an einem zentralen Ort, damit alle Arbeitsbereiche in Ihrer Organisation darauf zugreifen können. Verwenden Sie Registrierungsstellen, um Objekte wie Modelle, Umgebungen, Komponenten und Datenressourcen zu speichern und zu teilen.

Um Modelle durch Entwicklungs-, Test- und Produktionsumgebungen zu fördern, beginnen Sie iterativ mit der Entwicklung eines Modells in der Entwicklungsumgebung. Wenn Sie über ein gutes Kandidatenmodell verfügen, veröffentlichen Sie es in einer Registrierung. Sie können das Modell dann von der Registrierung aus an Endpunkten in verschiedenen Arbeitsbereichen bereitstellen.

Tipp

Wenn Sie in einem Arbeitsbereich bereits Modelle registriert haben, können Sie diese Modelle in eine Registry überführen. Sie können ein Modell auch direkt aus der Ausgabe eines Trainingsauftrags in einer Registrierung registrieren.

Um eine Pipeline in einem Arbeitsbereich zu entwickeln und dann in anderen Arbeitsbereichen auszuführen, beginnen Sie mit der Registrierung der Komponenten und Umgebungen, welche die Bausteine der Pipeline bilden. Wenn Sie den Pipelineauftrag übermitteln, bestimmen die Compute- und Trainingsdaten, die für jeden Arbeitsbereich eindeutig sind, den Arbeitsbereich, in dem er ausgeführt wird.

Das folgende Diagramm zeigt die Schulungspipeline-Höherstufung zwischen explorativen und Entwicklungsarbeitsbereichen, dann die Höherstufung des trainierten Modells nach Test und Produktion.

Diagramm der Pipeline und des Modells, die umgebungsübergreifend verwendet werden.

Nächste Schritte