Tools und Technologien in MLOps für FMCG: Ein technischer Leitfaden für Entwickler

Jakub Grabski
Jakub Grabski
May 27, 2025
24 min read
Loading the Elevenlabs Text to Speech AudioNative Player...

Einleitung
In der Fast-Moving Consumer Goods (FMCG) Branche ist Machine Learning Operations (MLOps) entscheidend für die Optimierung und Automatisierung des Deployments von Machine-Learning-Modellen. Dieser Artikel beleuchtet die technischen Aspekte der wichtigsten Tools und Technologien im MLOps-Bereich und zeigt, wie Entwickler diese nutzen können, um Prozesse im FMCG-Sektor zu optimieren.

Überblick über beliebte MLOps-Tools

TensorFlow
TensorFlow ist eine Open-Source-Plattform für Machine Learning, die ein umfassendes Ökosystem aus Bibliotheken, Tools und Community-Ressourcen bietet. Sie wird häufig für die Entwicklung, das Training und das Deployment von Machine-Learning-Modellen eingesetzt.

Kernkomponenten:

  • TensorFlow Core: Die primäre API zum Erstellen und Trainieren von Modellen.
  • TensorFlow Extended (TFX): Eine produktionsreife Plattform für das Deployment von Machine-Learning-Modellen.
  • TensorFlow Serving: Ein flexibles, leistungsstarkes Serving-System für Machine-Learning-Modelle, ausgelegt für Produktionsumgebungen.
  • TensorFlow Lite: Eine leichtgewichtige Lösung für mobile und Embedded-Geräte.

Wichtige Features:

  • Eager Execution: Eine imperative Programmierumgebung, die Operationen sofort ausführt.
  • Keras API: Eine High-Level-API zum Erstellen und Trainieren von Modellen.
  • Distribution Strategies: Unterstützung für Training auf mehreren GPUs und in verteilten Umgebungen.

python

import tensorflow as tf  from tensorflow import keras  # Einfaches Sequential-Modell definieren  model = keras.Sequential([      keras.layers.Dense(128, activation='relu', input_shape=(784,)),      keras.layers.Dropout(0.2),      keras.layers.Dense(10, activation='softmax')  ])  # Modell kompilieren  model.compile(optimizer='adam',                loss='sparse_categorical_crossentropy',                metrics=['accuracy'])  # Modell trainieren  model.fit(train_images, train_labels, epochs=5)  # Modell speichern  model.save('my_model')  

Kubernetes
Kubernetes ist ein Open-Source-System zur Automatisierung des Deployments, der Skalierung und Verwaltung von containerisierten Anwendungen. Es ist essenziell für das Management komplexer Microservices-Architekturen im MLOps-Bereich.

Kernkomponenten:

  • Pods: Die kleinsten deploybaren Einheiten, die einen oder mehrere Container enthalten können.
  • Services: Definiert eine logische Gruppe von Pods und eine Zugriffsrichtlinie.
  • Deployments: Verwalten das Deployment von Pods.
  • ConfigMaps und Secrets: Verwalten Konfigurationsdaten und sensible Informationen.

Wichtige Features:

  • Horizontal Pod Autoscaling: Passt die Anzahl der Pods automatisch basierend auf CPU-Auslastung oder anderen Metriken an.
  • Helm: Ein Paketmanager für Kubernetes, der das Definieren, Installieren und Upgraden komplexer Kubernetes-Anwendungen erleichtert.

Beispiel:

yaml

apiVersion: apps/v1  kind: Deployment  metadata:    name: my-ml-app  spec:    replicas: 3    selector:      matchLabels:        app: my-ml-app    template:      metadata:        labels:          app: my-ml-app      spec:        containers:        - name: ml-container          image: my-ml-image          ports:          - containerPort: 8080  ---  apiVersion: v1  kind: Service  metadata:    name: my-ml-service  spec:    selector:      app: my-ml-app    ports:    - protocol: TCP      port: 80      targetPort: 8080    type: LoadBalancer  

DS STREAM Implementation mit Kubernetes
Für einen Kunden aus dem FMCG-Sektor hat DS Stream eine Webanwendung auf Azure Kubernetes Service (AKS) eingerichtet, um Deep-Learning-Modelle einfach zugänglich zu machen. Kubernetes' horizontal pod autoscaling wurde genutzt, um die App bei hohem Traffic automatisch zu skalieren und Ressourcen dynamisch anzupassen.

In einem anderen Projekt nutzte DS Stream Kubernetes namespaces, um Umgebungen zu trennen und Ressourcen für Model-Inferencing-Aufgaben auf Azure effizient zuzuweisen. Diese Methode ermöglichte ein effizientes Ressourcenmanagement und Kosteneinsparungen durch geteilte Infrastruktur.

MLflow
MLflow ist eine Open-Source-Plattform zur Verwaltung des gesamten Machine-Learning-Lebenszyklus, einschließlich Experimentieren, Reproduzierbarkeit und Deployment.

Kernkomponenten:

  • MLflow Tracking: Protokolliert und fragt Experimente ab: Code, Daten, Konfiguration und Ergebnisse.
  • MLflow Projects: Ein Format zum Verpacken von Data-Science-Code für wiederverwendbare und reproduzierbare Workflows.
  • MLflow Models: Ein Format zum Verpacken von Machine-Learning-Modellen für einfaches Deployment.
  • MLflow Registry: Zentrale Modellablage zur kollaborativen Verwaltung des gesamten Lebenszyklus eines MLflow-Modells.

Wichtige Features:

  • Experiment Tracking: Protokolliert Parameter, Code-Versionen, Metriken und Output-Dateien.
  • Model Packaging: Verpackt Modelle in verschiedenen Formaten (z. B. Python, R, Java).
  • Deployment: Modelle können auf verschiedenen Plattformen bereitgestellt werden, einschließlich REST-APIs, Cloud-Services und Edge-Geräten.

unknown

python  

Kubeflow
Kubeflow ist eine Open-Source-Plattform, die das Deployment von Machine-Learning-Workflows auf Kubernetes einfach, portabel und skalierbar macht.

Kernkomponenten:

  • Kubeflow Pipelines: Plattform zum Erstellen und Deployen portabler, skalierbarer ML-Workflows auf Basis von Docker-Containern.
  • Katib: Kubernetes-natives Projekt für automatisiertes Hyperparameter-Tuning.
  • KFServing: System zum Bereitstellen von Machine-Learning-Modellen auf Kubernetes, optimiert für Inferenz-Workloads.

Wichtige Features:

  • Reproducible Pipelines: Erstellen und Verwalten portabler, skalierbarer ML-Workflows.
  • Hyperparameter Tuning: Automatisierte Suche nach den besten Hyperparametern.
  • Model Serving: Modelle mit hoher Performance und Skalierbarkeit bereitstellen und serven.

DS Stream banner with the text 'Make Accurate and Timely Decisions' and a 'Learn More' button, featuring an illustration of data analysis.

Demand side platforms rolle in der programmatischen werbung

Google cloud wie spart man infrastrukturkosten

Targeting first party daten verstehen

Share this post
DevOps
Jakub Grabski
MORE POSTS BY THIS AUTHOR
Jakub Grabski

Curious how we can support your business?

TALK TO US