Problem verstehen

Führen Sie die folgenden Aufgaben aus, um das Problem zu verstehen:

  • Nennen Sie das Ziel für das Produkt, das Sie entwickeln oder refaktorieren.
  • Bestimmen, ob das Ziel am besten mit vorausschauendem ML, generativer KI oder einer Nicht-ML-Lösung gelöst werden kann.
  • Prüfen Sie, ob Sie die zum Trainieren eines Modells erforderlichen Daten haben, wenn Sie einen prädiktiven ML-Ansatz verwenden.

Das Ziel nennen

Beginnen Sie damit, Ihr Ziel in Nicht-ML-Begriffen zu formulieren. Das Ziel ist die Antwort auf die Frage: „Was will ich erreichen?“

In der folgenden Tabelle sind die Ziele für hypothetische Apps klar dargestellt:

App Goal
Wetter App Berechnen Sie den Niederschlag für eine geografische Region in Sechs-Stunden-Schritten.
Mode-App Eine Vielzahl von T-Shirt-Designs entwerfen
Video-App Empfehlen Sie nützliche Videos.
E-Mail-App Spam erkennen.
Finanz-App Fasse Finanzinformationen aus mehreren Nachrichtenquellen zusammen.
Karten-App Reisezeit berechnen.
Banking-App Betrügerische Transaktionen erkennen
Restaurant-App Kennzeichnen Sie die Küche anhand der Speisekarte eines Restaurants.
E-Commerce-Anwendung Antworten Sie auf Rezensionen mit hilfreichen Antworten.

Klarer Anwendungsfall für ML

Für einige ist ML ein universelles Tool, das auf alle Probleme angewendet werden kann. In Wirklichkeit ist ML ein spezialisiertes Tool, das nur für bestimmte Probleme geeignet ist. Sie sollten keine komplexe ML-Lösung implementieren, wenn eine einfachere Nicht-ML-Lösung funktioniert.

ML-Systeme lassen sich in zwei große Kategorien unterteilen: Prognose-ML und generative KI. In der folgenden Tabelle sind die wesentlichen Merkmale aufgeführt:

Eingabe Ausgabe Trainingstechnik
Prognose-ML Text
Bild
Audio
Video
Numerisch
Macht eine Vorhersage, z. B. durch die Einstufung einer E-Mail als Spam oder kein Spam, das Erraten des morgigen Niederschlags oder die Vorhersage des Aktienkurses. Die Ausgabe kann in der Regel mit der Realität verglichen werden. In der Regel werden viele Daten verwendet, um ein Modell für überwachtes, unbeaufsichtigtes oder verstärkendes Lernen zur Ausführung einer bestimmten Aufgabe zu trainieren.
Generative AI Text
Bild
Audio
Video
Numerisch
Generiert eine Ausgabe basierend auf der Absicht des Nutzers, z. B. das Zusammenfassen eines Artikels oder das Erstellen eines Audioclips oder eines kurzen Videos. In der Regel werden viele Daten ohne Label verwendet, um ein Large Language Model oder einen Bildgenerator zu trainieren, um fehlende Daten zu ergänzen. Das Modell kann dann für Aufgaben verwendet werden, die sich als Lückentext-Aufgaben definieren lassen. Außerdem kann es optimiert werden, indem es mit Daten mit Labels für eine bestimmte Aufgabe trainiert wird, z. B. für die Klassifizierung.

Um zu bestätigen, dass ML der richtige Ansatz ist, prüfen Sie zuerst, ob Ihre aktuelle Nicht-ML-Lösung optimiert ist. Wenn Sie keine Nicht-ML-Lösung implementiert haben, versuchen Sie, das Problem manuell mithilfe einer Heuristik zu lösen.

Die Nicht-ML-Lösung ist die Benchmark, anhand derer Sie feststellen, ob ML ein guter Anwendungsfall für Ihr Problem ist. Stellen Sie sich die folgenden Fragen, wenn Sie einen Nicht-ML-Ansatz mit einem ML-Ansatz vergleichen:

  • Qualität: Wie viel besser kann eine ML-Lösung Ihrer Meinung nach besser sein? Wenn Sie der Meinung sind, dass eine ML-Lösung nur eine kleine Verbesserung ist, könnte dies darauf hindeuten, dass die aktuelle Lösung die beste ist.

  • Kosten und Wartung. Wie teuer ist die ML-Lösung sowohl kurz- als auch langfristig? In einigen Fällen sind die Rechenressourcen und die Zeit für die Implementierung von ML deutlich höher. Berücksichtigen Sie dabei folgende Fragen:

    • Kann die ML-Lösung die höheren Kosten rechtfertigen? Kleine Verbesserungen bei großen Systemen können die Kosten und den Aufwand für die Implementierung einer ML-Lösung problemlos rechtfertigen.
    • Wie viel Wartung erfordert die Lösung? In vielen Fällen ist für ML-Implementierungen eine spezielle langfristige Wartung erforderlich.
    • Verfügt Ihr Produkt über die Ressourcen, um Schulungen zu unterstützen oder Personen mit ML-Fachkenntnissen einzustellen?

Verständnis überprüfen

Warum ist es wichtig, eine Nicht-ML-Lösung oder -Heuristik zu haben, bevor Sie eine ML-Lösung analysieren?
Eine Nicht-ML-Lösung ist der Maßstab für die Messung einer ML-Lösung.
Mit Nicht-ML-Lösungen können Sie ermitteln, wie viel eine ML-Lösung kosten wird.

Vorausschauendes ML und Daten

Daten sind die treibende Kraft des vorausschauenden ML. Für gute Vorhersagen benötigen Sie Daten, die Features mit Vorhersagekraft enthalten. Ihre Daten sollten folgende Eigenschaften haben:

  • Abundant (Abundant). Je relevanter und nützlicher Ihr Dataset ist, desto besser wird Ihr Modell.

  • Einheitlich und zuverlässig. Daten, die konsistent und zuverlässig erfasst werden, führt zu einem besseren Modell. Ein ML-basiertes Wettermodell profitiert beispielsweise von Daten, die über viele Jahre von denselben zuverlässigen Instrumenten gesammelt wurden.

  • Vertrauenswürdig. Ermitteln Sie, woher Ihre Daten stammen. Stammen die Daten aus vertrauenswürdigen Quellen, die Sie kontrollieren, z. B. Logs Ihres Produkts, oder aus Quellen, zu denen Sie nur wenig Informationen haben, z. B. der Ausgabe eines anderen ML-Systems?

  • Verfügbar. Achten Sie darauf, dass alle Eingaben zur Vorhersagezeit im richtigen Format verfügbar sind. Wenn es schwierig wird, bestimmte Featurewerte zum Zeitpunkt der Vorhersage zu erhalten, lassen Sie diese Features aus Ihren Datasets weg.

  • Korrekt. Bei großen Datasets ist es unvermeidlich, dass einige Labels falsche Werte haben. Wenn jedoch mehr als ein kleiner Prozentsatz der Labels falsch ist, liefert das Modell schlechte Vorhersagen.

  • Repräsentativ. Die Datasets sollten so repräsentativ wie möglich für die reale Welt sein. Mit anderen Worten: Die Datasets sollten die Ereignisse, das Nutzerverhalten und/oder die Phänomene der modellierten realen Welt genau widerspiegeln. Das Training mit nicht repräsentativen Datasets kann zu einer schlechten Leistung führen, wenn das Modell Vorhersagen in der realen Welt treffen soll.

Wenn Sie die benötigten Daten nicht im erforderlichen Format abrufen können, trifft Ihr Modell schlechte Vorhersagen.

Aussagekraft

Damit ein Modell gute Vorhersagen treffen kann, sollten die Features in Ihrem Dataset Vorhersageleistung haben. Je stärker ein Feature mit einem Label korreliert, desto wahrscheinlicher ist es, dass es vorhergesagt wird.

Einige Funktionen bieten eine bessere Vorhersage als andere. In einem Wetter-Dataset wären beispielsweise Features wie cloud_coverage, temperature und dew_point bessere Regenvorhersagen für Regen als moon_phase oder day_of_week. Für die Video-App könnten Sie die Hypothese aufstellen, dass Funktionen wie video_description, length und views gute Indikatoren dafür sind, welche Videos sich ein Nutzer ansehen würde.

Die Vorhersageleistung eines Features kann sich ändern, wenn sich der Kontext oder die Domain ändert. In der Video-App kann beispielsweise eine Funktion wie upload_date im Allgemeinen nur schwach mit dem Label korrelieren. In der Subdomain von Gamingvideos kann upload_date jedoch stark mit dem Label korrelieren.

Es kann zeitaufwendig sein, herauszufinden, welche Features eine Vorhersagekraft haben. Sie können die Vorhersageleistung eines Features manuell untersuchen, indem Sie es beim Trainieren eines Modells entfernen und hinzufügen. Sie können die Ermittlung der Vorhersagekraft eines Features mithilfe von Algorithmen wie Pearson-Korrelation, Adjusted Mutual Information (AMI) und Shapley-Wert automatisieren, die eine numerische Bewertung zum Analysieren der Vorhersageleistung eines Features bieten.

Verständnis überprüfen

Auf welche drei wichtigen Attribute sollten Sie beim Analysieren Ihrer Datasets achten?
Repräsentativ aus der realen Welt.
Enthält die richtigen Werte.
Die Funktionen haben die Vorhersageleistung für das Label.
Klein genug, um auf einen lokalen Computer zu laden.
Aus einer Vielzahl unvorhersehbarer Quellen gesammelt.

Weitere Anleitungen zum Analysieren und Vorbereiten Ihrer Datasets finden Sie unter Datenvorbereitung und Feature Engineering für maschinelles Lernen.

Vorhersagen im Vergleich zu Aktionen

Es macht keinen Sinn, etwas vorherzusagen, wenn Sie die Vorhersage nicht in eine für Nutzer hilfreiche Aktion umsetzen können. Ihr Produkt sollte also Maßnahmen aus der Ausgabe des Modells ergreifen.

Ein Modell, das vorhersagt, ob ein Nutzer ein Video nützlich findet, sollte beispielsweise in eine App eingefügt werden, die nützliche Videos empfiehlt. Ein Modell, das vorhersagt, ob es regnen wird, sollte in eine Wetter-App übertragen werden.

Verständnis überprüfen

Bestimmen Sie anhand des folgenden Szenarios, ob ML der beste Ansatz zur Lösung des Problems ist.

Ein Entwicklerteam in einem großen Unternehmen ist für die Verwaltung eingehender Anrufe verantwortlich.

Ziel: Anrufer informieren, wie lange sie aufgrund der aktuellen Anruflautstärke in der Warteschleife warten müssen.

Es gibt noch keine Lösung, aber sie glaubt, dass eine Heuristik darin besteht, die aktuelle Anzahl der wartenden Kunden durch die Anzahl der Mitarbeiter, die Anrufe entgegennehmen, zu teilen und dann mit 10 Minuten zu multiplizieren. Sie wissen jedoch, dass die Probleme bei einigen Kunden innerhalb von zwei Minuten gelöst werden, bei anderen kann dies bis zu 45 Minuten oder länger dauern.

Ihre Heuristik liefert ihnen wahrscheinlich keine genaue Zahl. Sie können ein Dataset mit den folgenden Spalten erstellen: number_of_callcenter_phones, user_issue, time_to_resolve, call_time, time_on_hold.

Verwenden Sie ML. Das Engineering-Team hat ein klar definiertes Ziel. Ihre Heuristik reicht für den jeweiligen Anwendungsfall nicht aus. Das Dataset enthält offenbar Vorhersagefeatures für das Label time_on_hold.
Verwenden Sie kein ML. Obwohl sie ein klar definiertes Ziel haben, sollten sie zuerst eine Nicht-ML-Lösung implementieren und optimieren. Außerdem scheint das Dataset nicht genügend Features mit Vorhersagekraft zu enthalten.