Führen Sie die folgenden Schritte aus, um das Problem zu verstehen:
- Nennen Sie das Ziel für das Produkt, das Sie entwickeln oder refaktorieren.
- Bestimmen Sie, ob das Ziel mit prädiktivem ML, generativen KI oder einer Nicht-ML-Lösung nutzen.
- Prüfen Sie, ob Sie die erforderlichen Daten zum Trainieren eines Modells haben, wenn Sie einen Ansatz für die Prognose mithilfe von ML verwenden.
Ziel formulieren
Formulieren Sie Ihr Ziel zuerst in nicht-ML-Begriffen. Das Ziel ist die Antwort auf die Frage: „Was möchte ich erreichen?“
In der folgenden Tabelle sind die Ziele für hypothetische Apps klar aufgeführt:
Anwendung | Goal |
---|---|
Wetter App | Niederschlagsmengen für eine Region in sechsstündigen Intervallen berechnen. |
Mode-App | Verschiedene T-Shirt-Designs erstellen |
Video-App | Empfehlen Sie hilfreiche Videos. |
E-Mail-App | Erkennen Sie Spam. |
Finanz-App | Finanzinformationen aus mehreren Nachrichtenquellen zusammenfassen |
Karten-App | Die Reisezeit berechnen. |
Banking-App | Betrügerische Transaktionen erkennen |
Restaurant-App | Die Küche anhand der Speisekarte eines Restaurants identifizieren. |
E-Commerce-App | Antworten Sie auf Rezensionen mit hilfreichen Antworten. |
Klarer Anwendungsfall für maschinelles Lernen
Einige betrachten ML als universelles Tool, das auf alle Probleme angewendet werden kann. In ist ML ein spezialisiertes Tool, das nur für bestimmte Probleme geeignet ist. Sie sollten keine komplexe ML-Lösung implementieren, wenn eine einfachere Lösung ohne ML ausreicht.
ML-Systeme lassen sich in zwei große Kategorien unterteilen: vorhersehbares ML und generative KI: In der folgenden Tabelle sind ihre Merkmale aufgeführt:
Eingabe | Ausgabe | Trainingsmethode | |
---|---|---|---|
Prädiktives ML |
SMS an senden Bild Audio Video Numerisch |
Erstellen einer Vorhersage, z. B. Klassifizierung einer E-Mail als Spam oder Nicht-Spam, Schätzung der Regenmenge für morgen oder Vorhersage des Aktienkurses Die Ausgabe kann in der Regel anhand der Realität überprüft werden. | Üblicherweise werden zum Trainieren eines überwachten, unbeaufsichtigtem oder Reinforcement Learning-Modell, für eine bestimmte Aufgabe. |
Generative AI |
Text Bild Audio Video Numerisch |
Generiert eine Ausgabe basierend auf der Nutzerabsicht, z. B.: einen Artikel zusammenfassen oder einen Audioclip oder ein kurzes Video produzieren. | In der Regel werden viele unlabelte Daten verwendet, um ein großes Sprachmodell oder einen Bildgenerator zu trainieren, um fehlende Daten zu ergänzen. Das Modell kann dann für Aufgaben verwendet werden, die als Lückentextaufgaben formuliert werden können. Es kann auch optimiert werden, indem es mit Labels für eine bestimmte Aufgabe wie die Klassifizierung trainiert wird. |
Um zu bestätigen, dass ML der richtige Ansatz ist, prüfen Sie zuerst, ob Ihre aktuelle Nicht-ML-Lösung -Lösung optimiert ist. Wenn Sie keine Nicht-ML-Lösung implementiert haben, manuelles Lösen des Problems mithilfe eines Heuristik:
Die Lösung ohne ML ist der Benchmark, anhand dessen Sie feststellen, ob ML für Ihr Problem geeignet ist. Berücksichtigen Sie die folgenden Fragen, wenn Sie einen Ansatz ohne maschinelles Lernen mit einem Ansatz mit maschinellem Lernen vergleichen:
Qualität: Wie viel besser kann eine ML-Lösung Ihrer Meinung nach sein? Wenn Sie der Meinung sind, dass eine ML-Lösung nur eine kleine Verbesserung darstellt, ist die aktuelle Lösung möglicherweise die beste.
Kosten und Wartung. Wie teuer ist die ML-Lösung sowohl in der kurz- und langfristig? In einigen Fällen ist die Implementierung von ML deutlich aufwendiger in Bezug auf Rechenressourcen und Zeit. 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 die Wartung der Implementierung einer ML-Lösung leicht rechtfertigen.
- Wie viel Wartung erfordert die Lösung? In vielen Fällen erfordern ML-Implementierungen eine spezielle langfristige Wartung.
- Verfügt Ihr Produkt über die Ressourcen für Schulungen oder die Einstellung von Mitarbeitern? mit ML-Fachkenntnissen?
Wissenstest
Prognoseorientierte ML und Daten
Daten sind die treibende Kraft des prädiktiven ML. Für gute Vorhersagen benötigen Sie Daten, die Features mit Prognosekraft enthalten. Ihre Daten sollten folgende Eigenschaften haben:
Abundant: Je mehr relevante und nützliche Beispiele in Ihrem Dataset enthalten sind, desto besser ist Ihr Modell.
Einheitlich und zuverlässig: Konstante und zuverlässige Daten die gesammelten Daten zu einem besseren Modell führen. Ein ML-basiertes Wetterbericht profitieren Sie von Daten, die über viele Jahre aus derselben zuverlässigen Instrumente.
Vertrauenswürdig. Woher stammen die Daten? Stammen die Daten aus vertrauenswürdigen Quellen, die Sie kontrollieren, z. B. Protokollen aus Ihrem Produkt, oder aus Quellen, über die Sie nicht viel wissen, 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 ist, bestimmte Featurewerte der Vorhersagezeit, 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.
Vertreter. Die Datasets sollten so repräsentativ sein wie die tatsächlichen der Welt wie möglich zu machen. Mit anderen Worten, die Datasets sollten die die Ereignisse, das Nutzerverhalten und/oder die Phänomene der realen Welt modelliert wird. Das Training nicht repräsentativer Datasets kann zu schlechter Leistung führen wenn das Modell aufgefordert wird, reale Vorhersagen zu treffen.
Wenn Sie die benötigten Daten nicht im erforderlichen Format abrufen können, schlechte Vorhersagen machen.
Vorhersagekraft
Damit ein Modell gute Vorhersagen treffen kann, sollten die Features in Ihrem Dataset Vorhersagekraft. Je enger ein Element mit einem Label korreliert, desto wahrscheinlicher sie vorherzusagen.
Einige Funktionen sind präziserer als andere. Beispiel: In einer
Wetter-Dataset, Features wie cloud_coverage
, temperature
und
dew_point
wäre ein besserer Indikator für Regen als moon_phase
oder
day_of_week
Im Beispiel der Video-App könnten Sie vermuten, dass Funktionen wie video_description
, length
und views
gute Prädiktoren dafür sind, welche Videos sich ein Nutzer ansehen möchte.
Die Vorhersagekraft eines Elements kann sich ändern, wenn sich der Kontext oder die Domain ändert. In der Video-App ist beispielsweise eine Funktion wie upload_date
im Allgemeinen nur schwach mit dem Label korreliert. In der Untergruppe „Gamingvideos“ ist upload_date
jedoch möglicherweise stark mit dem Label korreliert.
Herauszufinden, welche Features eine Vorhersagefunktion haben, kann zeitaufwändig sein . Sie können die Vorhersagekraft eines Features manuell untersuchen, indem Sie es beim Trainieren eines Modells entfernen und wieder hinzufügen. Sie können die Vorhersagekraft einer Funktion mithilfe von Algorithmen wie der Pearson-Korrelation, der angepassten gegenseitigen Information (AMI) und dem Shapley-Wert automatisieren. Diese bieten eine numerische Bewertung zur Analyse der Vorhersagekraft einer Funktion.
Wissenstest
Weitere Anleitungen zum Analysieren und Vorbereiten Ihrer Datasets finden Sie unter Data Preparation and Feature Engineering for Machine Learning.
Vorhersagen und Aktionen
Es hat keinen Wert, etwas vorherzusagen, wenn Sie die Vorhersage nicht in eine Aktion umwandeln können, die Nutzern hilft. Das Produkt sollte also auf die Ausgabe des Modells reagieren.
Zum Beispiel ein Modell, das vorhersagt, ob ein Nutzer ein Video nützlich finden wird. in eine App einspeisen, die nützliche Videos empfiehlt. Ein Modell, das vorhersagt, ob es regnen wird, sollte in eine Wetter-App einfließen.
Wissen testen
Entscheiden Sie anhand des folgenden Szenarios, ob die Verwendung von ML der beste Ansatz für das Problem ist.
Ein Entwicklerteam in einem großen Unternehmen ist für die Verwaltung eingehender Anrufe verantwortlich.
Ziel: Anrufer darüber informieren, wie lange sie bei der aktuellen Anrufanzahl in der Warteschleife warten müssen.
Sie haben keine Lösung, aber sie denken, dass eine Heuristik darin bestehen könnte, die aktuelle Anzahl der in der Warteschleife befindlichen Kunden durch die Anzahl der Mitarbeiter zu teilen, die ans Telefon gehen, und dann mit 10 Minuten zu multiplizieren. Sie können jedoch wissen sie, dass ihre Probleme bei einigen Kunden innerhalb von zwei Minuten gelöst sind, bei anderen bis zu 45 Minuten oder länger.
Mit ihrer Heuristik wird sie wahrscheinlich keine ausreichend genaue Zahl erhalten. Er kann ein Dataset mit den folgenden Spalten erstellen: number_of_callcenter_phones
, user_issue
, time_to_resolve
, call_time
und time_on_hold
.
time_on_hold
zu erhalten.