Praktische Tipps für FMCG-Unternehmen, die MLOPs einführen. Ein Leitfaden für Programmierer

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

Bedeutung von MLOPs in der FMCG

Machine Learning Operations (MLOps) ist für Fast-Moving Consumer Goods (FMCG) -Unternehmen unverzichtbar, um Modelle für maschinelles Lernen effektiv einzusetzen und zu verwalten. Durch die Integration von MLOp-Praktiken können FMCG-Unternehmen ihre Abläufe rationalisieren, die Entscheidungsfindung verbessern und das Kundenerlebnis verbessern. Dieser Leitfaden enthält praktische Tipps für Programmierer, um FMCG-Unternehmen bei der erfolgreichen Einführung von MLOps zu unterstützen.

Überblick über praktische Tipps für MLOPs in FMCG

Zu den wichtigsten praktischen Tipps für die Einführung von MLOps in FMCG gehören:

  • Fangen Sie klein an
  • Investieren Sie in Schulungen
  • Zusammenarbeit fördern
  • Nutzung von KI-Modellen für die Automatisierung

DS Stream hat erfolgreich den Betrieb für FMCG-Kunden auf GCP zentralisiert und MLOps eingesetzt, um die Kosteneffizienz zu verbessern und Entwicklungsprozesse zu rationalisieren. Dieser Ansatz hat sich bei der Reduzierung der Betriebskosten und der Verbesserung der Anwendungsqualität und -zuverlässigkeit als wirksam erwiesen.

Fangen Sie klein an mit MLOps

Auswahl des Pilotprojekts

Wenn Sie mit einem Pilotprojekt beginnen, können Sie den Wert von MLOPs demonstrieren und die Zustimmung der Interessengruppen gewinnen. Wählen Sie ein Projekt mit einem klaren, erreichbaren Ziel und messbaren Ergebnissen. Zu den Beispielen gehören:

Bestandsoptimierung: Verwenden Sie maschinelles Lernen, um den Bedarf an Lagerbeständen vorherzusagen und Überbestände und Fehlbestände zu reduzieren.

Beispiel für eine Implementierung:

importiere Pandas als PDF

importiere Tensorflow als tf

aus tensorflow.keras.models importieren Sequential

aus tensorflow.keras.layers importiere Dense, LSTM, Dropout

aus sklearn.preprocessing importiere MinMaxScaler

importiere matplotlib.pyplot als plt

# Generieren Sie synthetische Inventardaten

def generate_inventory_data ():

Zeit = pd.date_range (start='1/1/2020', Perioden=1000)

demand = PD.series (data= (20 + 0.5 * time.dayyofyear + (np.random.randn (len (time)) * 5)), index=time)

Nachfrage zurückgeben

Nachfrage = generate_inventory_data ()

# Bereite die Daten vor

Skalierer = MinMaxScaler (feature_range= (0, 1))

demand_scaled = scaler.fit_transform (demand.values.reshape (-1, 1))

def create_sequences (Daten, seq_length):

X, Y = [], []

für i im Bereich (len (data) - seq_length):

x.append (Daten [i:i + seq_length])

y.append (Daten [i + seq_length])

gib np.array (X), np.array (y) zurück

seq_length = 30

X, y = create_sequences (demand_scaled, seq_length)

# Daten für LSTM umformen [Stichproben, Zeitschritte, Merkmale]

X = x.Reshape ((x.Form [0], x.Form [1], 1))

# Definieren Sie das LSTM-Modell

Modell = Sequentiell ([

LSTM (128, return_sequences=true, input_shape= (seq_length, 1)),

Aussteiger (0,2),

LSTM (64),

Aussteiger (0,2),

Dicht (1)

])

model.compile (optimizer='adam', loss='mse')

# Trainiere das Modell

history = model.fit (X, Y, Epochen=50, Batch_Size=32, validation_split=0.2)

# Speichern Sie das Modell

model.save ('inventory_optimization_model_v2.h5')

# Verlustwerte für Training und Validierung grafisch darstellen

plt.plot (history.history ['Verlust'])

plt.plot (history.history ['val_loss'])

plt.title ('Modellverlust')

plt.ylabel ('Verlust')

plt.xlabel ('Epoche')

plt.legend (['Zug', 'Validierung'], loc='oben rechts')

plt.show ()

Nachfrageprognose: Implementieren Sie Modelle zur Prognose der Produktnachfrage auf der Grundlage historischer Daten und Markttrends.

Beispiel für eine Implementierung:

importiere Pandas als PDF

importiere numpy als np

importiere Tensorflow als tf

aus tensorflow.keras.models importieren Sequential

aus tensorflow.keras.layers importiere Dense, Conv1D, Flatten, Dropout

aus sklearn.model_selection importiere train_test_split

von sklearn.preprocessing import StandardScaler

# Laden Sie historische Verkaufsdaten

daten = pd.read_csv ('historical_sales_data.csv')

# Feature-Engineering

data ['date'] = pd.to_datetime (Daten ['Datum'])

data ['month'] = data ['date'] .dt.month

data ['day_of_week'] = data ['date'] .dt.dayofweek

data ['year'] = data ['date'] .dt.year

# Angenommen, „Umsatz“ ist das Ziel und „Werbung“ ist ein binäres Merkmal

features = ['Monat', 'Wochentag', 'Aktion', 'Jahr']

X = Daten [Funktionen]

y = Daten ['Umsatz'] .Werte

# Standardisieren Sie die Funktionen

Skalierer = StandardScaler ()

x_skaliert = scaler.fit_transform (X)

# Zug-/Test-Split

x_train, x_test, y_train, y_test = train_test_split (x_skaliert, y, test_size=0,2, random_state=42)

# Reshape für Conv1D [Beispiele, Zeitschritte, Funktionen]

x_Zug = x_Train.Reshape ((x_Train.Shape [0], x_Train.Shape [1], 1))

x_Test = x_Test.Reshape ((x_Test.Shape [0], x_Test.Shape [1], 1))

# Definiere das Modell

Modell = Sequentiell ([

Conv1D (64, kernel_size=2, aktivierung='relu', input_shape= (x_train.shape [1], 1)),

Aussteiger (0,3),

Conv1D (32, kernel_size=2, aktivierung='relu'),

Abflachen (),

Dense (50, aktivierung='Relu'),

Dicht (1)

])

model.compile (optimizer='adam', loss='mse', metrics= [tf.keras.metrics.rootMeanSquaredError ()])

# Trainiere das Modell

history = model.fit (x_Train, y_train, epochen=50, Batch_Size=32, Validierungsdaten= (x_Test, y_test))

# Speichern Sie das Modell

model.save ('demand_forecasting_model_v2.h5')

# Evaluiere das Modell

Verlust, rmse = model.evaluate (X_Test, y_test)

print ('RMSE testen: {rmse} ')

# Verlustwerte für Training und Validierung grafisch darstellen

plt.plot (history.history ['Verlust'])

plt.plot (history.history ['val_loss'])

plt.title ('Modellverlust')

plt.ylabel ('Verlust')

plt.xlabel ('Epoche')

plt.legend (['Zug', 'Validierung'], loc='oben rechts')

plt.show ()

DS Stream führte ein Projekt für einen FMCG-Kunden durch, bei dem mehrere Anwendungsfälle auf eine zentrale GCP-Plattform migriert wurden, was zu Kosteneinsparungen und optimierten Abläufen führte. Dies wurde durch den strategischen Einsatz von Docker-, Kubernetes- und CI/CD-Pipelines erreicht.

Erfolgsmessung und Skalierung

Bewerten Sie den Erfolg des Pilotprojekts, indem Sie wichtige Leistungsindikatoren (KPIs) wie Genauigkeit, Effizienz und Kosteneinsparungen messen. Nutzen Sie die gewonnenen Erkenntnisse, um das Projekt auszuweiten und die MLOpS-Praktiken auf andere Geschäftsbereiche anzuwenden.

Im Fall von DS Stream wurde die Skalierung durch die effektive Implementierung von CI/CD-Pipelines mithilfe von GitHub Actions erleichtert, was eine schnelle und zuverlässige Bereitstellung neuer Funktionen ermöglichte und die Gesamtqualität und Zuverlässigkeit der Anwendungen verbesserte.

Investieren Sie in Schulungen für MLOps

Identifizierung des Schulungsbedarfs

Beurteilen Sie das aktuelle Qualifikationsniveau Ihres Teams und identifizieren Sie Wissenslücken in Bezug auf MLOps-Tools und -Praktiken. Konzentrieren Sie sich auf Bereiche wie maschinelles Lernen, Datentechnik und DevOps.

Schulungsprogramme und Ressourcen

Bieten Sie Zugang zu umfassenden Schulungsprogrammen und Ressourcen, um Ihr Team weiterzubilden:

  • Online-Kurse: Plattformen wie Coursera, Udacity und edX bieten Kurse zu MLOps, maschinellem Lernen und DevOps an.
  • Workshops und Bootcamps: Organisieren Sie praktische Workshops und Bootcamps, um praktische Erfahrungen mit MLOps-Tools zu sammeln.
  • Zertifizierungen: Ermutigen Sie die Teammitglieder, Zertifizierungen für relevante Technologien wie Kubernetes und TensorFlow zu erwerben.

Beispiel für einen Trainingsplan:

1. Einführung in MLOps

- Kurs: „Einführung in MLOps“ auf Coursera

2. Grundlagen des maschinellen Lernens

- Kurs: „Machine Learning“ von Andrew Ng auf Coursera

3. Datentechnik mit Apache Spark

- Kurs: „Big Data-Analyse mit Apache Spark“ auf edX

4. Kubernetes für Entwickler

- Kurs: „Kubernetes für Entwickler“ auf Udacity

5. Praktischer Workshop: Erstellen und Bereitstellen von ML-Modellen mit TensorFlow und Kubernetes

- Interner Workshop unter der Leitung von erfahrenen Fachleuten

Kontinuierliches Lernen und Entwicklung

Fördern Sie eine Kultur des kontinuierlichen Lernens, indem Sie fortlaufende Schulungsmöglichkeiten und den Zugang zu den neuesten Ressourcen anbieten. Bleiben Sie über Branchentrends und Fortschritte bei MLOps-Technologien auf dem Laufenden.

Zusammenarbeit fördern

Aufbau funktionsübergreifender Teams

Eine erfolgreiche MLOps-Implementierung erfordert die Zusammenarbeit zwischen Datenwissenschaftlern, IT-Fachleuten und Geschäftsbeteiligten. Stellen Sie funktionsübergreifende Teams zusammen, um unterschiedliche Perspektiven und Fachkenntnisse sicherzustellen.

Beispiel für eine Teamstruktur:

- Datenwissenschaftler: Verantwortlich für die Erstellung und das Training von Modellen für maschinelles Lernen.

- IT-Experten: Verwaltung der Infrastruktur, Bereitstellung und Überwachung.

- Stakeholder aus der Wirtschaft: Stellen Sie Fachwissen zur Verfügung und definieren Sie Projektziele.

Tools und Praktiken für die Zusammenarbeit

Verwenden Sie Tools und Praktiken für die Zusammenarbeit, um die Kommunikation und das Projektmanagement zu erleichtern:

  • Kommunikations-Tools: Slack, Microsoft Teams oder Zoom für Kommunikation in Echtzeit.
  • Tools für das Projektmanagement: Jira, Trello oder Asana zum Verfolgen von Aufgaben und Fortschritten.
  • Versionskontrolle: Git für die Versionierung von Code und Modellen, um Zusammenarbeit und Reproduzierbarkeit sicherzustellen.

DS Stream nutzte funktionsübergreifende Teams in einem Projekt, das darauf abzielte, das Training und die Inferenzierung von Deep-Learning-Modellen für einen FMCG-Kunden zu skalieren. Dieses Projekt beinhaltete eine enge Zusammenarbeit zwischen IT-Experten, die Infrastruktur und Bereitstellung verwalteten, und Datenwissenschaftlern, die sich auf die Modellentwicklung konzentrierten. Die gemeinsamen Anstrengungen sorgten für die erfolgreiche Bereitstellung einer skalierbaren, kostengünstigen Plattform auf Azure Kubernetes Service (AKS), die auf die effiziente Verarbeitung von hohem Datenverkehr und großen Datensätzen zugeschnitten war.

DS Stream optimiert die teamübergreifende Zusammenarbeit, indem es MS Teams für die Kommunikation und Git für eine nahtlose Versionskontrolle verwendet.

Beispiel-Workflow mit Git und GitHub:

# Initialisiere ein Git-Repository

git init

# Dateien hinzufügen und übertragen

git hinzufügen.

git commit -m „Erster Commit“

# Erstelle einen neuen Branch für das Projekt

git checkout -b mlops-projekt

# Arbeiten Sie mit Teammitgliedern zusammen

# Änderungen auf GitHub übertragen

Git Push Origin MLOPS-Projekt

Kommunikationsstrategien

Richten Sie klare Kommunikationsstrategien ein, um sicherzustellen, dass alle Beteiligten auf dem Laufenden sind:

  • Reguläre Treffen: Halten Sie regelmäßige Treffen ab, um Fortschritte, Herausforderungen und Aktualisierungen zu besprechen.
  • Dokumentation: Pflegen Sie eine umfassende Dokumentation von Prozessen, Modellen und Entscheidungen.
  • Feedback-Schleifen: Ermutigen Sie alle Teammitglieder zum Feedback, um Arbeitsabläufe und Praktiken kontinuierlich zu verbessern.

Nutzung von KI-Modellen für die Automatisierung

Verbesserung der Datenqualitätssicherung

KI-Modelle können Datenvalidierungs- und Bereinigungsprozesse automatisieren und so die Genauigkeit und Vollständigkeit der Daten sicherstellen. Die Modelle von OpenAI können verwendet werden, um Anomalien zu identifizieren, fehlende Werte zu füllen und Datentypen zu korrigieren.

Beispiel: Datenvalidierung mit GPT-4o von OpenAI

openai importieren

# OpenAI API-Schlüssel einrichten

openai.api_key = 'dein-API-Schlüssel'

# Funktion zur Validierung von Daten mit GPT-4o

def validate_data (Daten):

prompt = f"Überprüfe die folgenden Daten auf Anomalien und fehlende Werte und stelle sicher, dass die Datentypen korrekt sind: {data}“

Antwort = openai.chatCompletion.create (

modell = „gpt-4o“,

Nachrichten= [

{"role“: „system“, „content“: „Sie sind ein Assistent zur Datenvalidierung. „},

{"role“: „Benutzer“, „Inhalt“: Eingabeaufforderung}

],

max_tokens=150

)

Antwort zurückgeben ['Optionen'] [0] ['Nachricht'] ['Inhalt'] .strip ()

# Zu validierende Beispieldaten

daten = {

„Alter“: [25, 30, Keine, 45, 50],

„Einkommen“: [50000, 60000, 70000, Keine, 90000]

}

# Daten validieren

validation_result = validate_data (Daten)

drucken (validation_result)

Aufbau skalierbarer Datenpipelines

KI-Modelle können bei der Gestaltung skalierbarer Datenpipelines helfen, indem sie Empfehlungen zu Tools und Praktiken für die Datenaufnahme, -verarbeitung und -speicherung geben. OpenAI kann Codefragmente und Konfigurationen für Tools wie Apache Kafka und Apache Spark generieren.

Beispiel: Entwerfen einer Datenpipeline mit GPT-4o von OpenAI

# Funktion zur Generierung eines Datenpipeline-Designs mit GPT-4o

def generate_pipeline_design (Anforderungen):

prompt = f"Entwerfen Sie eine skalierbare Datenpipeline, die auf den folgenden Anforderungen basiert: {requirements}“

Antwort = openai.chatCompletion.create (

modell = „gpt-4o“,

Nachrichten= [

{"role“: „system“, „content“: „Sie sind Experte für Datentechnik. „},

{"role“: „Benutzer“, „Inhalt“: Eingabeaufforderung}

],

max_token=300

)

Antwort zurückgeben ['Optionen'] [0] ['Nachricht'] ['Inhalt'] .strip ()

# Beispielanforderungen für die Pipeline

Anforderungen = „"“

Die Pipeline sollte die Datenaufnahme in Echtzeit aus mehreren Quellen verarbeiten, die Daten mit Apache Spark verarbeiten und die verarbeiteten Daten in einem Data Warehouse speichern. Sie sollte auch Fehlertoleranz beinhalten und leicht skalierbar sein.

„“

# Pipeline-Design generieren

pipeline_design = generate_pipeline_design (Anforderungen)

drucken (pipeline_design)

Implementierung der Versionskontrolle

KI-Modelle können bei der Verwaltung der Versionskontrolle für Daten und Modelle helfen, indem sie Skripte zur Nachverfolgung von Änderungen generieren und so Reproduzierbarkeit und Zusammenarbeit sicherstellen.

Beispiel: Verwaltung von Datenversionen mit GPT-4o von OpenAI

# Funktion zur Generierung von Versionskontrollskripten für Daten mit GPT-4o

def generate_version_control_script (Datenbeschreibung):

prompt = f"Generieren Sie ein Versionskontrollskript für die folgenden Daten: {data_description}“ response = openai.chatCompletion.create (model="gpt-4o“, messages= [{"role“: „system“, „content“: „prompt}], max_tokens=200) return response ['choices'] [0] ['message'] ['content'] .strip () # Beispiel für eine Datenbeschreibung data_description = „"“ Die Daten enthalten Spalten: date (date), sales (float). Das Skript sollte Änderungen verfolgen, Versionen in einem Remote-Repository speichern und Zusammenführungskonflikte behandeln.

„“

# Versionskontrollskript generieren

version_control_script = generate_version_control_script (Datenbeschreibung)

drucken (version_control_script)

DS Stream hat die Bereitstellung und Skalierung von Datenpipelines in verschiedenen Projekten automatisiert, darunter eine wichtige Initiative, bei der die Ressourcenzuweisung und die Skalierung von Worker-Pods für den Umgang mit hohem Traffic und großen Datensätzen in der FMCG-Branche optimiert wurden. Durch die Anpassung der Kubernetes-Autoskalierung und die Implementierung von CI/CD-Praktiken (Continuous Integration and Deployment) stellte DS Stream sicher, dass die Deep-Learning-Modelle effizient und in großem Maßstab bereitgestellt und verwaltet werden konnten.

Fazit

Zusammenfassung der wichtigsten Punkte

Die Einführung von MLOps in FMCG-Unternehmen erfordert, mit kleinen, überschaubaren Pilotprojekten zu beginnen, in umfassende Schulungsprogramme zu investieren, die Zusammenarbeit zwischen verschiedenen Teams zu fördern und KI-Modelle für die Automatisierung zu nutzen. Diese praktischen Tipps tragen dazu bei, eine reibungslose und erfolgreiche Umsetzung der MLOp-Praktiken sicherzustellen.

Letzte Gedanken

Da sich die FMCG-Branche ständig weiterentwickelt, kann die Einführung von MLOps erhebliche Vorteile in Bezug auf Effizienz, Skalierbarkeit und Innovation bieten. Wenn FMCG-Unternehmen diese praktischen Tipps befolgen und sich auf kontinuierliche Verbesserungen konzentrieren, können sie das volle Potenzial des maschinellen Lernens nutzen, um den Geschäftserfolg zu steigern.

Durch die Integration von KI-Modellen in MLOps-Workflows können Unternehmen die Automatisierung weiter verbessern und so eine höhere Genauigkeit und Effizienz beim Datenmanagement, skalierbaren Pipelines und Versionskontrolle sicherstellen. Diese Integration wird es FMCG-Unternehmen ermöglichen, in einer sich schnell verändernden Marktlandschaft wettbewerbsfähig zu bleiben.

SEO-Titel:

„Praktische Tipps für FMCG-Unternehmen, die MLOps einführen: Ein Leitfaden für Programmierer“

SEO-Beschreibung:

„Entdecken Sie praktische Tipps für FMCG-Unternehmen, die MLOps einführen. Erfahren Sie, wie Sie mit Pilotprojekten klein anfangen, in Schulungen investieren, die Zusammenarbeit fördern und KI-Modelle nutzen können, um Prozesse für eine erfolgreiche MLOps-Implementierung zu automatisieren.“

FAQ

1. Wie können FMCG-Unternehmen mit MLOps klein anfangen?

  • Beginnen Sie mit Pilotprojekten, die klare, erreichbare Ziele und messbare Ergebnisse haben. Beispiele hierfür sind Bestandsoptimierung und Nachfrageprognosen. Implementieren Sie diese Projekte mithilfe strukturierter Schritte und evaluieren Sie ihren Erfolg, bevor Sie sie skalieren.

2. Was sind die besten Ressourcen für die Schulung von Mitarbeitern in MLOps?

  • Online-Kurse auf Plattformen wie Coursera, Udacity und edX bieten umfassende Schulungen zu MLOps, maschinellem Lernen und DevOps. Workshops und Zertifizierungen in relevanten Technologien wie Kubernetes und TensorFlow sind ebenfalls von Vorteil.

3. Wie können funktionsübergreifende Teams für die MLOps-Implementierung aufgebaut werden?

  • Bilden Sie Teams, die sich aus Datenwissenschaftlern, IT-Fachleuten und Interessenvertretern aus der Wirtschaft zusammensetzen. Jedes Teammitglied bringt einzigartiges Fachwissen mit und gewährleistet so vielfältige Perspektiven und eine effektive Zusammenarbeit.

4. Welche Tools erleichtern die Zusammenarbeit in MLOps-Projekten?

  • Verwenden Sie Kommunikationstools wie Slack oder Microsoft Teams, Projektmanagement-Tools wie Jira oder Trello und Versionskontrollsysteme wie Git, um die Zusammenarbeit zu erleichtern und ein reibungsloses Projektmanagement zu gewährleisten.

5. Wie können KI-Modelle genutzt werden, um MLOps-Prozesse zu automatisieren?

  • KI-Modelle können die Datenvalidierung und -bereinigung automatisieren, beim Entwurf skalierbarer Datenpipelines helfen und die Versionskontrolle für Daten und Modelle verwalten, wodurch die Gesamteffizienz und Genauigkeit der MLOps-Workflows verbessert werden.
Illustration showcasing data pipeline optimization with the slogan 'Make Your Data Pipelines More Efficient' and a 'Learn More' button.

MLOPs

Anwendungen von MLOps in der FMCG: Optimierung der Lieferkette

Share this post
Data Science
Jakub Grabski
MORE POSTS BY THIS AUTHOR
Jakub Grabski

Curious how we can support your business?

TALK TO US