Ich sah mir eine Präsentation eines ML-Spezialisten eines großen Einzelhändlers an, der ein Modell zur Vorhersage von Ereignissen aus Lagerbeständen entwickelt hatte.
Nehmen wir für einen Moment an, dass ihr Modell im Laufe der Zeit sehr genau wird, wäre das nicht irgendwie "selbstzerstörerisch"? Das heißt, wenn das Modell wirklich gut funktioniert, sind sie in der Lage, nicht mehr verfügbare Ereignisse zu antizipieren und zu vermeiden, und gelangen schließlich zu einem Punkt, an dem es nur noch wenige oder gar keine nicht verfügbaren Ereignisse gibt. In diesem Fall sind jedoch nicht genügend historische Daten vorhanden, auf denen das Modell ausgeführt werden kann, oder das Modell wird entgleist, da dieselben kausalen Faktoren, die für ein Auslagerungsereignis verwendet wurden, dies nicht mehr tun.
Was sind die Strategien, um mit einem solchen Szenario umzugehen?
Darüber hinaus könnte man sich die gegenteilige Situation vorstellen: Beispielsweise könnte ein Empfehlungssystem zu einer "sich selbst erfüllenden Prophezeiung" werden, bei der der Umsatz von Artikelpaaren aufgrund der Ausgabe des Empfehlungssystems steigt, auch wenn die beiden Artikel nicht wirklich so sind verbunden.
Es scheint mir, dass beide Ergebnisse einer Art Rückkopplungsschleife sind, die zwischen der Ausgabe des Prädiktors und den darauf basierenden Aktionen auftritt. Wie kann man mit solchen Situationen umgehen?
quelle
Antworten:
Es gibt zwei Möglichkeiten, mit denen sich ein OOS-Erkennungsmodell selbst entgleisen kann:
Die Beziehung zwischen Eingängen und OOS kann sich im Laufe der Zeit ändern. Zum Beispiel können Werbeaktionen zu einem höheren OOS führen (Werbeaktionen sind schwerer vorherzusagen als reguläre Verkäufe, zum Teil, weil nicht nur der durchschnittliche Umsatzanstieg, sondern auch die Varianz des Umsatzes und "schwerer vorherzusagen" häufig zu OOS führen). Das System und seine Benutzer könnten dies jedoch erfahren und zusätzlichen Bestand für Werbeaktionen vorhalten. Nach einer Weile ist die ursprüngliche Beziehung zwischen Werbeaktionen und OOS nicht mehr gültig.
Dies wird oft als "Modellwechsel" oder ähnliches bezeichnet . Sie können dies überwinden, indem Sie Ihr Modell anpassen. Am häufigsten werden Eingaben unterschiedlich gewichtet, um älteren Beobachtungen ein geringeres Gewicht zu verleihen.
Auch wenn sich die Beziehung zwischen einem Prädiktor und dem OOS nicht ändert, kann sich die Verteilung des Prädiktors ändern. Beispielsweise können mehrere Tage ohne Verkauf einer bestimmten Lagereinheit (SKU) ein OOS anzeigen. Wenn das Modell jedoch eine gute Leistung erbringt, wird der OOS auf der ganzen Linie reduziert, und es gibt möglicherweise nicht so viele Folgen von Nullverkäufen .
Änderungen in der Verteilung eines Prädiktors sollten kein Problem darstellen. Ihr Modell gibt einfach eine geringere Wahrscheinlichkeit von OOS aus.
Am Ende müssen Sie sich wahrscheinlich nicht allzu viele Sorgen machen. Es wird niemals null OOS geben. Rückkopplungsmechanismen wie die oben genannten treten zwar auf, funktionieren jedoch erst, wenn die OOS vollständig beseitigt sind.
Ich arbeite seit über zwölf Jahren in der Prognose von Einzelhandelsumsätzen, daher habe ich eine gewisse Vorstellung von solchen Entwicklungen.
Ich mag pessimistisch sein, aber ich denke, dass für andere ML-Anwendungsfälle als die OOS-Erkennung sehr ähnliche Effekte vorliegen. Oder vielleicht ist das kein Pessimismus: Es bedeutet, dass Probleme wahrscheinlich nie "gelöst" werden, so dass auch in Jahrzehnten noch Arbeit für uns sein wird.
quelle
Wenn Sie ein Modell verwenden, um Entscheidungen über Eingriffe in ein System zu unterstützen, sollte das Modell logischerweise versuchen, das von einer bestimmten Intervention abhängige Ergebnis vorherzusagen . Dann sollten Sie separat optimieren , um die Intervention mit dem besten erwarteten Ergebnis auszuwählen . Sie versuchen nicht, Ihr eigenes Eingreifen vorherzusagen.
In diesem Fall könnte das Modell die Nachfrage vorhersagen (die Variable, die Sie nicht direkt steuern), und dies würde in Kombination mit der Wahl des Lagerbestands zu einem Ereignis führen, das nicht vorrätig ist oder nicht. Das Modell sollte weiterhin für die korrekte Vorhersage der Nachfrage "belohnt" werden, da dies seine Aufgabe ist. Nicht vorrätige Ereignisse hängen von dieser Variablen zusammen mit Ihrer Lagerauswahl ab .
quelle
Vermutlich können Sie verfolgen, wann Wiederauffüllungsereignisse eintreten. Dann ist es nur noch eine Frage der Arithmetik, wann der Lagerbestand aufgebraucht wäre, wenn das Modell nicht zur Wiederauffüllung des Lagerbestands verwendet worden wäre.
Dies setzt voraus, dass ein positiver Lagerbestand unabhängig von der Höhe des Umsatzes ist. Ein Kommentator sagt, dass diese Annahme in der Realität nicht zutrifft. Ich weiß es auch nicht - ich arbeite nicht an Retail-Datensätzen. Aber zur Vereinfachung erlaubt mein vorgeschlagener Ansatz, unter Verwendung kontrafaktischer Argumentation Schlüsse zu ziehen. ob diese Vereinfachung zu unrealistisch ist, um einen aussagekräftigen Einblick zu gewähren, liegt bei Ihnen.
quelle
Ihr Szenario hat viel Ähnlichkeit mit der Lucas-Kritik in der Wirtschaft. Beim maschinellen Lernen wird dies als " Datensatzverschiebung " bezeichnet.
Sie können es, wie @Sycorax sagt, überwinden, indem Sie es explizit modellieren.
quelle
Eine Sache, an die man sich erinnern sollte, ist, dass ML ein instrumentelles Ziel ist. Letztendlich wollen wir keine Out-of-Stock-Ereignisse vorhersagen, wir wollen Out-of-Stock-Ereignisse verhindern. Die Vorhersage von Out-of-Stock-Ereignissen ist einfach ein Mittel zu diesem Zweck. Bei Fehlern des Typs II ist dies kein Problem. Entweder haben wir weiterhin OOSE, in welchem Fall wir Daten haben, um unser Modell zu trainieren, oder wir haben keine, in welchem Fall das Problem, für das das Modell erstellt wurde, gelöst wurde. Was ein Problem sein kann, sind Fehler vom Typ I. Es ist leicht, in eine Bärenpatrouille zu geratenTrugschluss: Wenn Sie ein System X haben, das Y verhindern soll, wird Y nicht angezeigt, und Sie schließen daraus, dass X Y verhindert, und alle Versuche, X herunterzufahren, werden auf der Grundlage "Aber es leistet so gute Arbeit Y verhindern! " Unternehmen können in teure Programme eingebunden werden, weil niemand riskieren möchte, dass Y zurückkommt, und es schwierig ist, herauszufinden, ob X wirklich notwendig ist, ohne diese Möglichkeit zuzulassen.
Es wird dann zu einem Kompromiss, inwieweit Sie bereit sind, sich (je nach Modell) gelegentlich auf ein suboptimales Verhalten einzulassen, um eine Kontrollgruppe zu erhalten. Dies ist Teil jeder aktiven Erforschung: Wenn Sie ein Medikament haben, von dem Sie glauben, dass es wirksam ist, müssen Sie eine Kontrollgruppe haben, die das Medikament nicht dazu bringt, die Wirksamkeit zu bestätigen.
quelle