Jenseits des Hypes - die Realität eines Machine Learning Projekts

von Nitin Kumar

Machinelles Lernen
Machine Learning (ML) ist eine der grundlegenden Komponenten der Datenwissenschaft. Viele Datenprobleme können als ML-Probleme gerahmt werden.

Wenn du dich mit ML beschäftigt hast, bist du mit einigen seiner berühmtesten Erfolgsgeschichten vertraut, wie z.B. Abwanderungsvorhersage, Fehlererkennung, Betrugserkennung, Suchmaschinen und Empfehlungssysteme. Du weisst aber vielleicht noch nicht, was alles dahintersteckt, um ein ML-Projekt erfolgreich zu machen. 

In diesem Artikel werde ich den Schleier über einige der entscheidenden Bestandteile lüften, um maschinelles Lernen so effektiv wie möglich zu machen.
 

Ein Prozessmodell für ML-Projekte

Das Erlernen der Technologie beginnt typischerweise mit den grundlegenden Bausteinen: Wie konvertiert man ein Geschäftsproblem in Daten, die von einem ML-Algorithmus verarbeitet werden können; wie trainiert man den Algorithmus (mit Tools wie automl); wie füllt man die Rolle eines Analytics Translator (AT) aus, dessen Hauptaugenmerk auf der Operationalisierung von Tech zu Business liegt. Diese Schritte sind zwar wichtig, aber nur ein Teil eines viel grösseren ML-Lebenszyklusmodells. Das Modell ist unten abgebildet, und jeder ML-Anwender sollte es kennen.

Machine Learning Projektzyklus

Alle Schritte des Prozesses müssen von einer zentralisierten Governance-Abteilung verwaltet werden, die direkt einem Chief Analytics Officer oder Chief Data Officer unterstellt ist. Das Governance-Team besteht typischerweise aus Produktverantwortlichen, Datensicherheitsexperten, Datenschutzexperten, Compliance-Experten und Mitgliedern der Aufsichtsbehörden.
 

Wichtige Schritte für den Erfolg eines ML-Projekts

Im Folgenden sind die Teamrollen und die wesentlichen Details der einzelnen Schritte in der Abbildung dargestellt.

Anwendungsfall - Dies ist einer der wichtigsten Schritte im gesamten ML-Lebenszyklus. Sein Zweck ist es, grundlegende Fragen zu stellen, bevor du in die technischen Aufgaben von Daten und ML eintauchst (und zu entscheiden, ob du dies tun solltest!). Solche Fragen beinhalten:
 
  • Was ist das Problem, das wir zu lösen versuchen?
  • Ist es wirklich ein ML-Problem, oder werden Analytik oder klassische Statistik effektiver sein?
  • Wenn wir das Modell bekommen, wie wird es verwendet?
  • Was sind unsere KPIs für den Erfolg? (Es ist besser, sie im Voraus zu definieren, als sich um die Erfolgsindikatoren zu kümmern, nachdem die Anwendung geschrieben wurde; sie können während der Experimentierphase aktualisiert werden). 
  • Wer sind die Endbenutzer und wie werden sie mit der Anwendung interagieren?
 
In diesem Schritt erforderliche Rollen: Analytik-Übersetzer, Datenwissenschaftler (kann als Übersetzer dienen), Product Owner, Governance-Team.

Datenproblem - In diesem Schritt wird das Geschäft auf Daten abgebildet, indem die folgenden Fragen gestellt werden:
 
  • Was sind die Eingaben und Ausgaben? Wo sind die Daten gespeichert? 
  • Wie viele Daten benötigen wir? Haben wir genügend beschriftete Daten? Müssen wir Daten sammeln?
  • Was können wir über die Qualität der Daten annehmen?
  • Wie werden die Daten in ein solches System eingespeist (Batch vs. Stream, online vs. offline, on demand vs. forecast, statisch vs. dynamisch)?

ML-Problem - Wenn die obigen Schritte gut definiert sind, ist dieser Teil recht einfach zu lösen. Die meisten ML-Probleme fallen in eine von zwei Kategorien: Überwachtes (Regression oder Klassifikation) und unüberwachtes Lernen. Für einen ML-Praktiker ist es hilfreich, über neue ML-Ansätze wie semi-supervised learning und active learning Bescheid zu wissen. Ein ML-Praktiker muss wissen, wie ML-Algorithmen funktionieren. Spezifische Fragen, die man sich stellen sollte, sind:
 
  • Welche Art von ML-Problem haben wir? 
  • Wie definieren wir KPIs für den Erfolg in jedem Schritt des Prozesses (einschliesslich: Datenqualität, ML-Metriken, Geschäftsmetriken, Vorhersageergebnisse, Fehlerspannen)?
  • Wird erklärbare ML benötigt?
  • Wie wird die Ausgabe an den Endanwender gelangen?
  • Ist es uns wichtig, welche Art von Algorithmus wir verwenden?
  • Welche Tools werden wir verwenden?

Während die meisten ML-Praktiker Datenwissenschaftler sind, erfordern die meisten ML-Probleme nur Wissen über angewandtes maschinelles Lernen. Zu den allgemeinen Fähigkeiten, die in diesem Schritt benötigt werden, gehören Programmierkenntnisse, Erfahrung mit Statistik, Verständnis für verschiedene ML-Modelle, Kenntnisse über Experimentier-Frameworks wie mlops, Erfahrung mit Cloud Computing und Erfahrung mit automl.

In diesem Schritt erforderliche Rollen: Applied Machine Learning-Praktiker, Datenwissenschaftler, Web-/Mobile-App-Entwickler und vorzugsweise ein Statistiker.

ML-Experimentierung - Dies ist ein klassischer Experimentierschritt, der Datenexploration, Bereinigung, Feature-Engineering, Modellentwicklung und Experimentverfolgung umfasst (AutoML-Plattformen wie modulos [2] helfen hier). Hier gilt eine 80-20-Regel: 80% Bereinigung plus Feature Engineering, 20% Modellbildung.

Modellauswahl, Erklärbarkeit und Bias - Die meisten Teile der Modellentwicklung und -auswahl können mit Hilfe von Standard-Python-Bibliotheken (darunter wieder automl) automatisiert werden. Open-Source-Bibliotheken sind bereits verfügbar, um die Erklärbarkeit und Bias-Analyse zu unterstützen, und es kommen ständig neue hinzu. Cloud-Anbieter versuchen, die Führung im Rennen um die Automatisierung des gesamten Prozesses zu übernehmen.

Proof of Concept Context und Endbenutzertests - Bevor du in die Produktion gehst, erstellt man oft einen Proof of Concept, der aus dem Testen der Integration der Modellausgabe in das System bestehen kann, oder einfach aus dem Erstellen einer einfachen Webanwendung um das Modell herum, damit die Endbenutzer die Ergebnisse ausführen und Feedback geben können. Bei einer voll funktionsfähigen und produktiven Benutzer-App muss man auch UX/UI-Designer hinzuziehen. Für diesen Schritt musst du über A/B- und A/A-Testing-Kenntnisse verfügen.

"Pionier"-KI-Organisationen [1] mit gut etablierten Datenprozessen haben Frameworks und dokumentierte Anweisungen für die meisten der oben genannten Schritte eingerichtet. Obwohl Cloud-Service-Anbieter versuchen, standardisierte Pipelines bereitzustellen, um Unternehmen in diesem Stadium anzulocken, verwenden die meisten Organisationen eine Form von Hybrid-Cloud-Modell und benötigen Zugang zu Plattformen von Drittanbietern wie omega|ml [3].

ML Operations - Ein Machine Learning Projekt ist nicht nur ein technisches IT-Vorhaben. Insbesondere wenn es den Schritt der Bereitstellung und des Betriebs erreicht, beinhaltet es auch geschäftliche Aspekte. Die Komplexität des ML-Betriebs hängt von solchen Faktoren ab wie: Wie oft soll das ML-Modell trainiert werden? Wie soll das ML-Modell im Endprodukt verwendet werden? Wie viele Endbenutzer wird das Produkt bedienen?

In diesem Schritt erforderliche Rollen: Dateningenieure, Datenwissenschaftler, Business-Analysten, Analytik-Übersetzer, ML-Ingenieure, Datenproduktbesitzer, Endbenutzer.

Modell-Engineering - Dieser Schritt erfordert gute Engineering-Kenntnisse und den Umgang mit technologischen Stacks, die CI/CD-Pipelines, DataOps, MLOps, Data Engineering und Daten-Containerisierungs-Engines umfassen. In diesem dynamischen Bereich, in dem regelmässig neue Möglichkeiten zur Automatisierung des Prozesses auftauchen, benötigen Sie wiederum eine Mischung aus technischen und geschäftlichen Fähigkeiten. Die erfolgreichsten KI-Organisationen organisieren alle Projekte um eine gut definierte ML-Engineering-Pipeline herum.

Business Productization - Dieser Schritt widmet sich der Sicherstellung, dass die Machine-Learning-Lösung eng mit den geschäftlichen Aspekten integriert ist. Daher erfordert auch dieser Schritt eine Mischung aus betriebswirtschaftlichen und technischen Kenntnissen sowie einige Benutzertests. An diesem Schritt sollten Personen mit Fachwissen von beiden Seiten beteiligt sein, insbesondere die Geschäftsfachleute, die die Ausgabe der ML-Algorithmen verwenden werden.

Leistungsüberwachung - Der Zweck dieses Schritts, der auch als Post-Production-Monitoring bezeichnet wird, ist die Beurteilung, wie die ML-Lösung tatsächlich funktioniert. Er beinhaltet die Verfolgung der Entwicklung einer Reihe von Parametern im Laufe der Zeit: Modellierungs- und Geschäfts-KPIs sowie datenbezogene Aspekte, insbesondere Daten-, Konzept- und Kovariatendrift. Ohne diesen Schritt besteht die Gefahr, dass ein anfänglich adäquates ML-System nach und nach an Qualität verliert, weil das Trainingsset nicht mehr die aktuellen Daten widerspiegelt. Eine effektive Leistungsüberwachung ermöglicht es dem Dateneigentümer, entsprechende Rekalibrierungsprozesse auszulösen, wenn dieses Phänomen einen bestimmten statistischen Schwellenwert überschreitet.

Governance - Jedes ML-basierte System muss während der Entwicklung und nach dem Einsatz ein starkes Governance-System beinhalten, das KPIs und Aktionspläne als Reaktion auf mögliche Probleme definiert. Die Governance sollte in einem Gremium angesiedelt sein, das direkt dem Chief Data Officer oder Chief Analytics Officer untersteht.
 

Auf dem Weg zu einer ganzheitlichen Betrachtung des ML-Prozesses und seiner Integration in den Geschäftsprozess

Trotz des ganzen Hypes um KI tun sich viele Unternehmen immer noch schwer, von KI zu profitieren. Warum ist das so und was kann man dagegen tun? Ein Hauptgrund ist der gravierende Mangel an Mitarbeitern, die den gesamten Prozess verstehen, wie er oben skizziert wurde - und der in den Constructor Academy-Kursen in aller Tiefe vermittelt wird.

Wir haben den ML-Kurs von Constructor Academy [4] entwickelt, indem wir die Erfahrungen aus über 60 ML-Projekten genutzt haben, die in den letzten vier Jahren in einer Vielzahl von Schweizer Unternehmen und Branchen durchgeführt wurden. Der Kurs stützt sich auch auf umfangreiche Marktforschung, um Bereiche zu identifizieren, die zu ML-Fehlern in Unternehmen führen.

Das Ergebnis ist ein Kurs, der nicht nur die neuesten und besten ML-Tools und -Techniken integriert, die an der Spitze der sich schnell entwickelnden ML-Technologie von heute stehen, sondern auch zahlreiche Elemente, die man durch das Studium der Technologie allein nicht bekommen kann: Alle geschäftlichen Aspekte, die in einem tiefgreifenden Verständnis dessen verwurzelt sind, was ML in einem Unternehmen zum Erfolg oder Misserfolg führt.

Dies ist die Art von Fähigkeit, die Unternehmen heute dringend benötigen. Wenn du daran interessiert bist, dir diese Fähigkeit anzueignen, damit die ML-Projekte deines zukünftigen Arbeitgebers zu den Erfolgsgeschichten gehören, freuen wir uns auf deine Bewerbung. Wenn dir dieser Artikel (und die anderen in diesem Blog) gefallen, teile ihn bitte in deinem Netzwerk!

[1]. Wen sollten Organisationen umschulen oder einstellen, um im Zeitalter der Künstlichen Intelligenz erfolgreich zu sein, und wie wird man zum KI-Pionier?
[2]. modulos
[3]. omega|ml
[4]. Constructor Academy Kurs: Angewandtes Maschinelles Lernen

Möchtest du mehr über die Constructor Academy und technikbezogene Themen lesen? Dann finde hier weitere spannende Blogbeiträge.

Mehr Infos
Blog