MLOps-Plattform zur Skalierung von Deep-Learning-Modelltraining und Inferenzierung

Challenge
Der Kunde stand vor der Herausforderung, Deep-Learning-Modelle zu skalieren, um hohen Traffic und große Bilddatensätze effizient zu verwalten. Sie benötigten eine Lösung, die den Zugriff auf diese Modelle vereinfacht und es Datenwissenschaftlern ermöglicht, sie schnell zu testen und bereitzustellen und gleichzeitig die Komplexität des Infrastrukturmanagements zu vermeiden.


Our approach
Unser Team führte ein MLOps-Projekt durch, das sich auf die Bereitstellung einer Webanwendung auf Azure Kubernetes Service (AKS) konzentrierte, um den Zugriff auf Deep-Learning-Modelle zu demokratisieren. Wir nutzten die leistungsstarke Infrastruktur von Azure und entwickelten eine Lösung, die Datenwissenschaftlern Skalierbarkeit, Kosteneffizienz und Benutzerfreundlichkeit bot.
Zu den wichtigsten Komponenten der Lösung gehörten:
- Automatisierte CI/CD-Prozesse, die den organisatorischen Standards und Best Practices entsprechen.
- Horizontale und vertikale automatische Ressourcenskalierung zur Optimierung der Worker- und GPU-Auslastung.
- Modellversionierung, Überwachung und Umschulung von Pipelines, um sicherzustellen, dass sich Modelle an Daten- und Konzeptänderungen anpassen.
- Containerisierung trainierter ML-Modelle als Microservices zur Optimierung der Modellinferenz sowohl für Online- als auch für Batch-Vorhersagen.
The outcome
Die Bereitstellung der Webanwendung auf AKS bot erhebliche Vorteile, darunter kostengünstige Skalierbarkeit und effiziente Handhabung von hohem Traffic und großen Datensätzen. Die Anpassung der automatischen Skalierung von Kubernetes bot eine kostengünstigere und flexiblere Alternative zu von Azure Machine Learning (AML) verwalteten Endpunkten. Durch die Optimierung der GPU-Nutzung konnten die Kosten weiter minimiert werden, da die Unterauslastung durch gemeinsame Nutzung des Speichers zwischen den Mitarbeitern reduziert wurde.
Darüber hinaus ermöglichte die Implementierung von CI/CD-Pipelines mit GitHub Actions ein nahtloses Testen, Validieren und Bereitstellen, sodass der Kunde schnell iterieren und seinen Benutzern einen Mehrwert bieten konnte.