Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
4. Zuverlässige Pipelines und Werbung
Pipelines bieten viele Optionen für Hyperparameter-Tuning, AutoML und Verarbeitungsroutinen. Pipelines werden von Ende zu Ende protokolliert. Robuste Pipelines können Schulungen parallel über mehrere Instanzen und Frameworks hinweg durchführen und die Lastgrößen nach Bedarf skalieren. Robuste Pipelines können Modelle in die Produktion überführen und sie in Echtzeit, Streaming und Batch bereitstellen. Diese Bereitstellungen können Inferenz mit einem oder mehreren Modellen unterstützen.
4.1 Umfangreiches und verteiltes Training |
Ein ausgereiftes ML-System unterstützt die Möglichkeit, Schulungen auf großen, rechenoptimierten Instanzen parallel durchzuführen. Es verfügt über die erforderlichen Tools, um sicherzustellen, dass diese Ressourcen vollständig genutzt werden und dass das Training gleichmäßig auf den gesamten Rechencluster skaliert wird. |
4.2 Support für mehrere Frameworks |
Entwickler können verschiedene Plattform-Frameworks wie PyTorch Flax portieren, um Schulungs- und Inferenzjobs auszuführen. Ebenso werden verschiedene Sprachen und Versionen unterstützt und können verwendet werden. Der Wechsel zu einem anderen Framework wird das System nicht beschädigen. |
4.3 Hyperparameter-Tuning |
Ein Hyperparameter-Tuning-Schritt ist Teil der Trainingspipeline. Bei den eingesetzten Modellen sind die Hyperparameter optimiert. Für die Abstimmung von Hyperparametern stehen mehrere Optionen zur Verfügung. Zur Verbesserung der Genauigkeit sollte mindestens eine der Optimierungsoptionen auf einer Bayesschen Inferenz oder einem Bayesschen Ansatz basieren. |
4.4 AutoML-Option |
Um manuelle Experimente und Vergleiche zu reduzieren, unterstützt ein ausgereiftes ML-System die Ausführung von AutoML, das automatisch die beste Feature-Pipeline, die besten Hyperparameter und das beste Modell auswählt. Beachten Sie, dass AutoML eine Funktion ist, die pragmatisch verwendet werden kann, aber kein Allheilmittel ist. |
4.5 Inferenzunterstützung: Echtzeit |
Dies wird allgemein als Model as a Service (MaaS) bezeichnet. Das System unterstützt Echtzeit-Inferenzen mit REST-API-Operationen für Inferenzanfragen bei Bedarf. Es ist in der Lage, eine MaaS-Infrastruktur bereitzustellen, auf der das Modell sowohl horizontal als auch vertikal skaliert werden kann, als eigenständige API oder als Endpunkt, der mit anderen Anwendungen verknüpft ist. Alternativ ist die Bereitstellung mithilfe von serverloser Technologie möglich. |
4.6 Inferenzunterstützung: Streaming |
Modelle können auf ein Echtzeit-Inferenzformat wie Amazon Kinesis oder Amazon Managed Streaming for Apache Kafka umgestellt werden, wobei die Inferenz im Streaming-Modus auf dem Modell ausgeführt wird. Dazu muss die Checkliste zu mindestens 90 Prozent vollständig sein, da Leitplanken, Beobachtbarkeit und Überwachung für Inferenzen in Echtzeit unerlässlich sind. |
4.7 Unterstützung von Inferenzen: Batch |
Das System unterstützt die Batch-Bereitstellung von Modellen als geplante oder initiierte Jobs. Das System kann Modelle als Teil eines ETL-Prozesses (Extrahieren, Transformieren und Laden) oder isoliert ausführen. Batch-Jobs zeichnen den Status jedes Schritts auf und werden in einem geordneten Muster ausgeführt, z. B. in einem gerichteten azyklischen Graphen. Alternativ können Jobs in eine Datenbank schreiben, die als Server für die Modellinferenz fungiert. |
4.8 Routinen für die Vor- und Nachverarbeitung |
Bei Bedarf werden Daten als Teil der Modellaufnahme oder der Batch-Jobs bereitgestellt. Wenn mehrere Modelle oder mehrere Schritte im Spiel sind, kümmern sich Nachverarbeitungsroutinen um die Darstellung der Daten. |
4.9 Fähigkeit, hierarchische oder gleichzeitige Modelle aufzurufen |
Das ML-System kann viele Modelle zusammen bereitstellen oder sie sequentiell ausführen. Ersteres bedeutet, auf einem einzigen Modellendpunkt für eine ganze Flotte von Ressourcen zu hosten. Letzteres bedeutet, dass mehrere Modelle nacheinander verkettet ausgeführt werden müssen. Das System kann diese beiden Arten von Komplexität robust handhaben. |
4.10 Horizontale und vertikale Skalierungsstrategien |
Eine Pipeline sollte in der Lage sein, beide Arten von Skalierungsstrategien für Training und Inferenz zu unterstützen. Das ML-System kann seine Größe erhöhen und den Datenverkehr auf mehrere Computer verteilen, wenn entweder die Latenz oder der Durchsatz steigen. Richtlinien für diese Art von Verhalten sind festgelegt, und sie berücksichtigen eine optimale Ressourcenzuweisung. |
4.11 Protokollierung End-to-end |
Das Entwicklungsteam sollte die Protokollierung im gesamten Pipeline-Code so einrichten, dass die Protokollierung Eingaben, Ausgaben und Zwischenschritte im System erfassen kann. Die Protokollierung sollte die Ablaufverfolgung von Vorgängen in der Pipeline und das Debuggen von Fehlern unterstützen. |