3. Januar 2023

Was Sie vom automatisierten maschinellen Lernen erwarten können: Vergrößerung der technischen Aspekte und Verkleinerung des Gesamtbildes

Mitwirkende
Julien Schuermans
Machine Learning Engineer
Keine Artikel gefunden.
Newsletter abonnieren
Diesen Beitrag teilen

Einführung

In diesem Blogbeitrag wird die Leistung von Tools für automatisiertes maschinelles Lernen (AutoML) erörtert, die darauf abzielen, die Anwendung von maschinellem Lernen auf reale Probleme ohne Expertenwissen zu automatisieren. Der Blog argumentiert, dass die heute verfügbaren Tools diese Versprechen nicht einhalten, und verwendet zwei verschiedene Ansätze, um die Frage "Was kann man von Automated Machine Learning erwarten?" zu beantworten. Im ersten Ansatz werden die technischen Aspekte von AutoML näher beleuchtet, im zweiten Ansatz wird das Gesamtbild betrachtet. Die technischen Aspekte zeigen, dass es keinen Konsens über die genauen Komponenten gibt, die automatisiert werden sollten, und dass verschiedene AutoML-Tools eine große Vielfalt an Funktionen bieten. Das größere Bild zeigt, dass AutoML nur ein einzelner Schritt in einer größeren Problemlösungsgeschichte ist. Ohne Fachwissen riskieren die Menschen in dieser Geschichte, an den Schnittstellen Fehler zu machen. Daher benötigen AutoML-Benutzer zumindest ein gewisses Maß an Expertenwissen, um effektiv mit AutoML arbeiten zu können.

Das Wichtigste zuerst

Viele Anbieter behaupten, dass sie die AutoML-Lösung anbieten, die Sie suchen. Der aktuelle AutoML-Benchmark versucht, einen objektiven Überblick über die Leistung einiger dieser Tools zu geben.

Aber was ist AutoML? Die meisten Erklärungen beinhalten

etwas Technisches, wie

... die Automatisierung der Anwendung des maschinellen Lernens auf reale Probleme -wikipedia

als auch einen menschlichen Aspekt:

... handelsübliche Methoden des maschinellen Lernens, die einfach und ohne Expertenwissen angewendet werden können" -automl.org

Für bare Münze genommen, sind das gewaltige Ansprüche. In diesem Blogpost werden wir argumentieren, dass die heute verfügbaren Tools diese Versprechen nicht einhalten können. Wir konzentrieren uns dabei insbesondere auf AutoML für strukturierte (tabellarische) Daten und versuchen, die Frage zu beantworten: "Was können Sie von Automated Machine Learning erwarten?"

Eine romantisierte Version dessen, was die Menschen von AutoML erwarten, könnte in etwa so aussehen:

Sieht ganz einfach aus, nicht wahr?
Sieht ganz einfach aus, nicht wahr?

In diesem Blogpost wird das obige Schema anhand von 2 verschiedenen Ansätzen genauer betrachtet:

  1. indem wir die technischen Aspekte von AutoML näher beleuchten : Es ist nicht immer klar, welche ML-Aufgaben dieser "blaue Block" automatisieren soll, um einen Datensatz in ein Modell zu verwandeln.
  2. durch Herauszoomen , um das Gesamtbild zu verdeutlichen: Für die Arbeit mit AutoML ist zumindest ein gewisses Maß an Fachwissen erforderlich.

1. Heranzoomen

"Was genau soll AutoML automatisieren?"

Auf diese Frage gibt es keine eindeutige Antwort, auf die sich alle Frameworks/Entwickler/Nutzer einigen können. Dieser Mangel an Klarheit hat dazu geführt, dass sich verschiedene Werkzeughersteller auf die Automatisierung unterschiedlicher Teilmengen von Aufgaben in ML-Projekten konzentrieren. Das Ergebnis ist, dass die verfügbaren Werkzeuge oft überlappende, aber unterschiedliche Funktionssets haben. Für einen Endbenutzer, der "ML-Aufgaben automatisieren" möchte, kann es sehr schwierig sein, Werkzeuge zu vergleichen.

Im Folgenden finden Sie 4 Beispiele, die dies verdeutlichen. (Diese Liste ist nicht erschöpfend - Sie können diese Übung auch für andere Werkzeuge durchführen).

Auto-Sklearn automatisiert das absolute Minimum. Beachten Sie, dass der Datensatz manuell bereinigt und die Merkmale vorverarbeitet werden müssen. (In diesen Skizzen sind die farbigen Komponenten diejenigen, die von dem jeweiligen Tool abgedeckt werden):

auto-slearn

TPOT (ein weiterer Klassiker) umfasst zusätzlich die Merkmalsvorverarbeitung, Merkmalskonstruktion und -auswahl:

TPOT

Die Schöpfer von MLJAR (und ähnlichen Werkzeugen) zielen auf etwas Größeres ab. Diese Open-Source-Pakete enthalten Funktionen für z. B. Erklärbarkeit, Ensembling, Dokumentationserstellung, Experimentverfolgung und Modellvalidierung. Das bedeutet, dass die Benutzer nicht nur ein ML-Modell erstellen, sondern auch viele nützliche Metadaten erfassen.

MLJAR

Im Jahr 2022 hat Google Cloud die Entwicklung und Einführung von "Vertex AI AutoML Tabular" wirklich vorangetrieben . Es führt eine Datenbereinigung durch (im Gegensatz zu den vorherigen Tools) - das heißt, Sie können ihm Ihren Rohdatensatz geben, wenn Sie das möchten. Die Erstellung von Statistiken und die Erkennung von Datendrifts wird über TFX implementiert. Trainierte Modelle können als Endpunkt bereitgestellt werden: All diese Schritte lassen sich gut in Vertex AI-Pipelines integrieren. GCP bietet auch Erklärungsmöglichkeiten nach der Bereitstellung und nicht während der Modellentwicklung/-auswahl. Allerdings ist keine echte Dokumentationserstellung zu sehen...

AutoML-Tabellen in der Google Cloud

Nachdem ich mir die Interna einiger beliebter AutoML-Tools näher angesehen habe, wird es ziemlich klar:

Es besteht kein Konsens über die genauen Komponenten, die automatisiert werden sollten. Die verschiedenen AutoML-Tools bieten eine Vielzahl von Funktionen.

2. Herauszoomen

(Auto)ML ist nur ein einzelner Schritt in einer größeren Problemlösungsgeschichte. Ohne Fachwissen laufen die Menschen in dieser Geschichte Gefahr, an den Schnittstellen Fehler zu machen :

AN DER EINGABE: Die Eingabe von Daten in jedes ML-System erfordert eine gewisse Entscheidungsfindung.

Wie entscheiden Sie, welche Daten Sie in Ihr AutoML-System einspeisen?

Manche Dinge lassen sich einfach nicht automatisieren. Bevor ein Datensatz an ein AutoML-System (oder an eine Gruppe von ML-Ingenieuren) übergeben werden kann, muss jemand, der sich mit den Daten auskennt, gründlich und tiefgründig nachdenken:

  • Welche anderen Datensätze kann ich nutzen, um dieses Problem zu lösen?
  • Wie aggregiere ich die Daten, um zu gewährleisten, dass das resultierende Modell verwertbare Ergebnisse liefert?
  • Welche Annahmen trifft dieses ML-Tool über die Daten, mit denen ich es füttere?
  • Ist dieser Datensatz repräsentativ für die Umgebung, in der das Modell eingesetzt werden soll?
  • Wie kann ich ein Datenleck und/oder ein Zielleck vermeiden?
  • Woher kommen all diese NULL-Werte? Kann ich etwas dagegen tun?

Ich bin mir ziemlich sicher, dass dies nicht die einzigen Probleme sind - aber Sie verstehen, worum es geht.

AN DER AUSGABE: Die Interpretation der Ergebnisse von ML-Trainingsaufgaben ist nicht einfach.

Wann entscheiden Sie sich für den Einsatz eines Modells?

Sobald Sie ein Modell trainiert haben - Juhu!- wollen Sie wahrscheinlich einen Blick auf die technischen Daten werfen, bevor Sie es einsetzen. Woher wollen Sie sonst wissen, ob es gut genug ist? Braucht es mehr Training? Mehr Daten? Eine andere Problemformulierung? Um diese Fragen zu beantworten, müssen Sie wahrscheinlich etwas tiefer in die Ergebnisse eindringen:

  • Was wissen Sie über das Innenleben dieses "besten" Modells, das von der AutoML-Suite erstellt wurde? Hat es 100 Parameter? 100M? Ist es ein GBDT oder ein Ensemble von MLPs? Ist es deterministisch?
  • Können Sie den Geschäftsleuten erklären, wie das funktioniert?
  • Können Sie es in ONNX oder TFLite exportieren? Wie ist die Latenzzeit bei der Inferenz?
  • Was halten Sie von der ROC-AUC-Kurve? Können Sie erklären, warum der RMSE-Wert in diesem Fall dem R2-Maß vorgezogen werden sollte?
  • Können Sie die Diagramme mit den SHAP-Werten interpretieren, ohne Korrelation und Kausalität zu verwechseln?

Wir sind nicht nur Fans von Abkürzungen - dies sind alles Beispiele für Fragen, die bei ML-Projekten auftauchen. Selbst wenn Sie einige oder alle technischen Teile der Modellerstellung automatisieren können, bedeutet das nicht, dass Ihr Modell nach dem Training einsatzbereit ist.

Durch Herauszoomen haben wir das erkannt:

Es ist unrealistisch, "ML-Projekte von Nichtfachleuten durchführen zu lassen", denn damit Menschen mit ML-Systemen interagieren können, ist auf jeden Fall Fachwissen über die Eingabedaten und die Auswertung des Modells erforderlich.

3. Schlussfolgerung

AutoML ist ein weiteres Werkzeug: eine Komponente in einem iterativen Rahmen, der es Ihnen ermöglicht, nach den bestmöglichen Daten zu suchen, um nützliche Vorhersagen zu treffen, ohne zu viel Zeit in die Modellentwicklung zu investieren.

Werkzeuge müssen auf eine bestimmte Weise verwendet werden. Wenn Sie die richtigen Erwartungen an ein Werkzeug haben, ist es wahrscheinlicher, dass Sie das richtige Werkzeug für die richtige Aufgabe verwenden. Erwarten Sie nicht, dass ein einziges Werkzeug Ihre Probleme auf magische Weise löst.

(Bonus-Gedankenexperiment)

  • AutoML kann wegen der vielen Hyperparameter, die Sie einstellen müssen, kostspielig sein.
  • ML-Projekte sind iterativ
  • Möchten Sie Hunderte von Dollar für langsame Trainingsaufträge in einer exzessiven Rastersuche mit den falschen Daten ausgeben? Oder würden Sie lieber ein effizientes, einfaches Basismodell verwenden und schnell iterieren, um herauszufinden, welche Merkmale wertvoll sind? Vielleicht ist AutoML besser geeignet, um "die letzten paar Prozentpunkte herauszuholen", als schnell zu experimentieren?

Verwandte Beiträge

Alle anzeigen
Keine Ergebnisse gefunden.
Es gibt keine Ergebnisse mit diesen Kriterien. Versuchen Sie, Ihre Suche zu ändern.
Stiftung Modelle
Unternehmen
Unser Team
Verantwortungsvolle und ethische KI
Strukturierte Daten
Chat GPT
Nachhaltigkeit
Stimme und Ton
Front-End-Entwicklung
Schutz und Sicherheit von Daten
Verantwortungsvolle/ethische KI
Infrastruktur
Hardware und Sensoren
MLOps
Generative KI
Verarbeitung natürlicher Sprache
Computer Vision