Anzeige

Machine Learning

Durch die Zusammenarbeit mit globalen Unternehmen konnte Data Reply über viele Jahre hinweg wertvolle Erfahrungen im Umgang mit Machine Learning-Projekten sammeln – von der ersten Idee bis zum produktiven Deployment.

Dabei fallen bestimmte Muster auf. Sie machen solche Projekte erfolgreich und können den maximalen Business Value herausholen.

Herausforderungen von Machine Learning-Projekten

In der strategischen Planung von großen Unternehmen spielen Machine Learning-Projekte eine immer wichtigere Rolle. Mittlerweile zeichnet sich ein klares Bild von den Herausforderungen ab, die den Erfolg am stärksten beeinflussen. Eine reine Machine Learning-Logik lässt sich zwar oft sehr schnell und kostengünstig entwickeln. Doch die Integration in bereits bestehende Geschäftsprozesse und die allgemeine Software-Bereitstellung und -Wartung ist eine aufwändige und oft teure Angelegenheit.

Drei Faktoren sind für die erfolgreiche Umsetzung maßgeblich: Erstens können traditionelle Softwareentwicklungsparadigmen den Projekterfolg nicht mehr garantieren, sobald große Datenmengen ins Spiel kommen. Zweitens ist ein hohes Maß an Koordination und Kooperation vonnöten, da häufig viele Teams in die Projekte eingebunden sind. Neben Data-Science- und Data-Engineering-Teams sind auch Infrastruktur- und Applikationsentwicklungs-Teams involviert. Drittens bauen ML-Entwicklungsprojekte zu Beginn oft nicht direkt auf den Daten auf – sondern auf einmaligen Daten-Exporten. Dies führt dazu, dass die Projektteams weder nicht-funktionale noch Skalierungsanforderungen einbeziehen können. Beispiele hierfür sind unterschiedliche Datenformate, aber auch die Größe von Datenmengen oder die Geschwindigkeit, mit der Daten bereitgestellt werden, sowie erwartete Antwortzeiten.

Sieben Learnings für die erfolgreiche Umsetzung von Machine Learning-Projekten 

Die folgenden Erkenntnisse zeigen, wie typische Fallstricke mit dem richtigen Mindset und den richtigen Tools vermieden werden können. Wichtig ist, zu Projektbeginn das richtige Setup für eine hohe Entwicklungsgeschwindigkeit zu wählen. Darüber hinaus soll das schlussendliche Ziel – das produktive Deployment – so unkompliziert wie möglich erreicht werden. Die folgenden Erkenntnisse sollen einen Beitrag leisten, um ML-Projekte erfolgreicher zu gestalten sowie schneller und kostengünstiger echten Business Value zu erzeugen. 

Es ist üblich, lokal gespeicherte Beispieldaten, lokale Skripts und unstrukturierte Entwicklungsumgebungen für die Arbeit mit Daten und die Ergebnisanalyse zu nutzen. Dies sorgt anfangs für einen Zuwachs an Geschwindigkeit, weil die Daten vorhanden und beherrschbar sind. Sobald die Ressourcenanforderungen steigen, stößt dies jedoch schnell an Grenzen. Vor allem der Anspruch, die Entwicklungen universal nutzen zu können, leidet darunter: Der stark lokal getriebene Entwicklungsansatz macht es schwer, reproduzierbare Ergebnisse zu liefern, kollaborativ zu arbeiten und Aufgaben wie Parsen, Prozessierung, Training oder Inferenz unabhängig voneinander zu bearbeiten. Das ist fatal, sobald es um das Deployment in Produktivumgebungen geht, in denen sich Datenschemata, Speicher- und Prozessierungstechnologien sowie weitere Faktoren ständig ändern. Kurz gesagt: je früher an das produktive Deployment gedacht wird, desto besser. 

Best Practices umfassen:

  • einen gut strukturierten Code in Verbindung mit Tests, Fehlerbehandlung, Logging und Verwaltung von Abhängigkeiten

  •  eine Unterteilung der Prozessschritte in logische, voneinander unabhängige Abläufe

  • gleiche Datenquellen wie sie später in der Produktivumgebung genutzt werden

2. Bei der initialen Auswahl der ML-Algorithmen an die späteren Skalierbarkeits-Anforderungen denken 

Das Training von ML-Modellen kann sehr lange dauern. In Verbindung mit großen Datenmengen ist dies bei vielen Projekten eine erhebliche technische Herausforderung. Solche Erwägungen sollten bereits in der Experimentierphase einfließen. So lassen sich Skalierbarkeitsprobleme und ein hierdurch verursachter Neuentwicklungsaufwand in späteren Projektphasen verhindern. Eine von vornherein effiziente Trainings-Pipeline liefert zudem einen Produktivitätszuwachs für das Entwicklungsteam und reduziert die Kosten für das Training der Modelle.

Ein MVP ist eine Produktversion, die gerade genug Features aufweist, um bereits zu einem frühen Zeitpunkt von Kunden genutzt werden zu können. MVPs reduzieren die Markteinführungszeit und helfen dabei, frühzeitig direktes Nutzerfeedback einzuholen. Letzteres kann damit von Beginn an in die Produktentwicklung einfließen. In der MVP-Entwicklung sollte rechtzeitig mit Produktivanforderungen gearbeitet werden. Das ermöglicht die spätere Erweiterung zu einem Vollprodukt. Sowohl der Code als auch die Infrastruktur sollten dementsprechend gestaltet sein.

Continuous Integration/Continuous Delivery (CI/CD) ist eine Methodik, die das strukturierte Bereitstellen von Bugfixes und neuen Funktionalitäten ermöglicht. Der CI/CD-Prozess sorgt dafür, dass die Arbeit von vielen Teammitgliedern effizient kombiniert wird. Dabei bewahrt er die lokale und globale Integrität des Codes. Continuous Delivery macht Verbesserungen und Erweiterungen der Funktionalität schnellstmöglich für die Nutzer zugänglich.

Machine Learning-Projekte gehen zu Beginn häufig durch eine längere lokale Experimentierphase und sind aufgrund dessen oft sehr skriptlastig. Das steht im Gegensatz zur traditionellen Softwareentwicklung, bei der sich CI/CD-Prozesse flächendeckend durchgesetzt haben. CI/CD ist der einzige Ansatz, der die Betriebssicherheit der ML-Lösung im speziellen und der Applikation im Allgemeinen sicherstellt, denn dadurch können sicherheitskritische Updates zu jeder Zeit eingearbeitet werden.

Die Software in eine Reihe von Pre-Production-Umgebungen auszurollen, hat sich in der Mainstream-Software-Entwicklung längt als Best Practice durchgesetzt. Im Zuge dessen wird die Software unter algorithmischen, infrastrukturellen und kommerziellen Gesichtspunkten geprüft, bevor eine produktive Bereitstellung erfolgt. Bei ML-Produkten ist das Endziel oft nicht klar und Entscheidungen über Maßnahmen zur Einrichtung entsprechender Umgebungen werden verzögert. Das frühzeitige Einrichten von DEV-, QA- und PROD-Umgebungen ist grundlegend für die reibungslose Entwicklung eines Machine Learning-Produkts.

Das Training von Machine-Learning-Modellen kann selten direkt mit Rohdaten erfolgen. Im Vorfeld muss eine Datenbereinigung und -vorbereitung stattfinden. Das stellt Unternehmen mit großen Datenmengen vor eine komplexe Aufgabe. Damit tatsächlich alle notwendigen Schritte in der richtigen Reihenfolge ausgeführt werden, ist es empfehlenswert, ein Orchestrierungs-Framework wie zum Beispiel Kubernetes zu nutzen. Das sorgt für einen Überblick über alle Abläufe.

Es gibt Anforderungen an Monitoring und Betrieb, die speziell Machine Learning-Deployments, so genannte MLOps betreffen. Darunter fallen beispielsweise das Performance-Monitoring für Machine Learning-Modelle und die Wahl des richtigen Zeitpunkts für sein erneutes Training. Solche Monitoring-Operationen und Entscheidungen erfordern das effektive Sammeln, Zusammenführen und Speichern von Metriken zur Beschreibung der Performance von Machine Learning-Algorithmen. Die Wahl der richtigen Frameworks und der Infrastruktur für diese Aufgaben sind wichtige Bausteine der Systemarchitektur.

Fazit

Können die die beschriebenen Fehler vermieden werden, hat das eine erhebliche Wirkung auf den Ertrag von Machine Learning-Projekten. Zumeist entstehen Fehlentwicklungen bereits in der Anfangsphase, wenn es um die Verwendung der richtigen Datenquellen geht. In späteren Phasen können Projekte scheitern, wenn wichtige Anforderungen wie Monitoring und Betrieb nicht frühzeitig in die Architektur einbezogen wurden. Gerade bei Machine Learning-Projekten ist es elementar, mit produktionsähnlichen Daten, einer geeigneten Umgebung und einem Monitoring-Setup zu arbeiten. 


Sadik Bakiu, Manager Data Reply, Darren Smyth, Senior Consultant Data Reply und Patrick Bornikoel, Partner Data Reply, www.reply.com 

 


Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!

 

Artikel zu diesem Thema

DevOps
Jan 15, 2021

Bei der Implementierung von DevOps gilt: Der Weg ist das Ziel

Die Erwartungen an Softwareentwickler sind in den letzten Jahren rasant gestiegen: Immer…
WP_IT_Resilience_Kubernetes_Zerto_Titel
Nov 21, 2020

IT-Resilienz für Kubernetes

In diesem Wegweiser erhalten Sie Einblicke in die Container-Technologien, ihre Vorteile…
eBook Big Data und Analytics
Nov 02, 2020

Big Data und Analytics - KI und ML auf dem Vormarsch

Die Datenmenge schwillt rasant an und Prognosen werden immer schwieriger. Hinzu kommen…

Weitere Artikel

Mobilität

Deutschlands Landbevölkerung will neue Mobilitätsdienste

In der Corona-Pandemie sind viele Menschen auf den eigenen Pkw und vor allem auf das Fahrrad umgestiegen – auch in Ermangelung alternativer Mobilitätsangebote gerade in ländlichen Regionen oder am Stadtrand. Über die Corona-Zeit hinaus gibt es dabei einen…
Asset Management

IT-Asset Management
: Fünf Leitsätze für 2021

Um den Schockwellen von COVID-19 Stand zu halten, haben Unternehmen in Sachen digitale Transformation und Cloud einen Gang höher geschalten. Die Folge: Die Budgettöpfe sind deutlich kleiner, die Herausforderungen bleiben. Zeit, sich fünf Maxime & Trends für…
Smart City

Wie Daten die Mobilität von morgen revolutionieren

Eine Smart City soll das Leben ihrer Bewohner verbessern und gleichzeitig den ökologischen Fußabdruck verkleinern. Ein Baustein sind intelligente Mobilitätslösungen, die datengetrieben einen nachhaltigen und bezahlbaren öffentlichen Nahverkehr unter…
KI

KI für jeden? Transfer Learning ist ein erster Schritt

Transfer Learning wird oft als Wundermittel gepriesen, um Künstliche Intelligenz zur Marktreife zu bringen. Die Lernmethode nutzt bereits trainierte Modelle als Ausgangspunkt und kann somit schneller Ergebnisse liefern. Damit hat Transfer Learning das…
Prozesse

Neue Studie verdeutlicht Notwendigkeit der Prozessautomatisierung

Wenn Menschen, die zusammen arbeiten dies von unterschiedlichen Orten aus tun, kommt der nahtlosen Interaktion und der Abstimmung einzelner Aufgaben eine zentrale Bedeutung zu. Das wissen die Verantwortlichen in den Unternehmen zwar schon lange, aber die…

Anzeige

Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!