Prognostizierbarkeit
Sie haben Recht, dass dies eine Frage der Prognostizierbarkeit ist. Es gab ein paar Artikel über Vorhersagbarkeit in der Praktiker-orientierte Zeitschrift IIF Foresight . (Vollständige Offenlegung: Ich bin Associate Editor.)
Das Problem ist, dass die Prognostizierbarkeit in "einfachen" Fällen bereits schwer einzuschätzen ist.
Einige Beispiele
Angenommen, Sie haben eine Zeitreihe wie diese, sprechen aber kein Deutsch:
Wie würden Sie den großen Peak im April modellieren und wie würden Sie diese Informationen in Prognosen einbeziehen?
Wenn Sie nicht wüssten, dass es sich bei dieser Zeitreihe um den Verkauf von Eiern in einer Schweizer Supermarktkette handelt, der kurz vor Ostern im Westkalender seinen Höhepunkt erreicht , hätten Sie keine Chance. Da sich Ostern um bis zu sechs Wochen im Kalender bewegt, müssen alle Prognosen, die kein spezifisches Osterdatum enthalten, berücksichtigt werden. wäre wohl sehr dran.
Angenommen, Sie haben die blaue Linie unten und möchten das, was am 28.02.2010 passiert ist, anders modellieren als "normale" Muster am 27.02.2010:
Ohne zu wissen, was passiert, wenn eine ganze Stadt voller Kanadier ein olympisches Eishockey-Endspiel im Fernsehen sieht, haben Sie keine Chance zu verstehen, was hier passiert ist, und Sie können nicht vorhersagen, wann sich so etwas wiederholen wird.
Schauen Sie sich zum Schluss Folgendes an:
Dies ist eine Zeitreihe der täglichen Verkäufe in einem Cash & Carry- Geschäft. (Auf der rechten Seite haben Sie eine einfache Tabelle: 282 Tage hatten keinen Umsatz, 42 Tage hatten einen Umsatz von 1 ... und eines Tages einen Umsatz von 500.) Ich weiß nicht, um welchen Artikel es sich handelt.
Bis heute weiß ich nicht, was an diesem einen Tag mit einem Umsatz von 500 passiert ist. Ich vermute, dass ein Kunde eine große Menge des Produkts vorbestellt und abgeholt hat. Nun, ohne dies zu wissen, wird jede Vorhersage für diesen bestimmten Tag weit entfernt sein. Umgekehrt, nehmen wir an, dass dies kurz vor Ostern geschah und wir haben einen dummen intelligenten Algorithmus, der glaubt, dass dies ein Ostereffekt sein könnte (vielleicht sind das Eier?), Und prognostizieren glücklich 500 Einheiten für das nächste Ostern. Oh mein Gott, könnte das schief gehen?
Zusammenfassung
In allen Fällen sehen wir, wie die Prognosefähigkeit nur dann gut verstanden werden kann, wenn wir ein hinreichendes Verständnis der wahrscheinlichen Faktoren haben, die unsere Daten beeinflussen. Das Problem ist, dass wir, wenn wir diese Faktoren nicht kennen, nicht wissen, dass wir sie möglicherweise nicht kennen. Nach Donald Rumsfeld :
[T] hier sind bekannte bekannt; Es gibt Dinge, von denen wir wissen, dass wir sie kennen. Wir wissen auch, dass es bekannte Unbekannte gibt; Das heißt, wir wissen, dass es einige Dinge gibt, die wir nicht wissen. Es gibt aber auch unbekannte Unbekannte, die wir nicht kennen, die wir nicht kennen.
Wenn Ostern oder Kanadas Vorliebe für Hockey für uns unbekannte Unbekannte sind, stecken wir fest - und wir haben nicht einmal einen Ausweg, weil wir nicht wissen, welche Fragen wir stellen müssen.
Die einzige Möglichkeit, diese in den Griff zu bekommen, besteht darin, Domänenwissen zu sammeln.
Schlussfolgerungen
Daraus ziehe ich drei Schlussfolgerungen:
- Sie müssen immer Domänenwissen in Ihre Modellierung und Vorhersage einbeziehen.
- Selbst mit Domain-Kenntnissen erhalten Sie garantiert nicht genügend Informationen, damit Ihre Vorhersagen und Prognosen für den Benutzer akzeptabel sind. Sehen Sie diesen Ausreißer oben.
- Wenn "Ihre Ergebnisse miserabel sind", hoffen Sie möglicherweise auf mehr, als Sie erreichen können. Wenn Sie einen fairen Münzwurf prognostizieren, gibt es keine Möglichkeit, eine Genauigkeit von über 50% zu erreichen. Vertrauen Sie auch keinen externen Richtwerten für die Prognosegenauigkeit.
Die Quintessenz
Folgendes würde ich empfehlen, um Modelle zu bauen - und zu bemerken, wann man aufhören sollte:
- Sprechen Sie mit jemandem mit Domain-Kenntnissen, wenn Sie es noch nicht selbst haben.
- Identifizieren Sie die Haupttreiber der Daten, die Sie prognostizieren möchten, einschließlich der wahrscheinlichen Interaktionen, basierend auf Schritt 1.
- Erstellen Sie Modelle iterativ, einschließlich der Treiber in absteigender Reihenfolge der Stärke, wie in Schritt 2 beschrieben. Bewerten Sie die Modelle mithilfe einer Kreuzvalidierung oder anhand eines Holdout-Beispiels.
- Wenn sich Ihre Vorhersagegenauigkeit nicht weiter erhöht, kehren Sie entweder zu Schritt 1 zurück (z. B. indem Sie offensichtliche Fehleinschätzungen identifizieren, die Sie nicht erklären können, und diese mit dem Domain-Experten besprechen) oder akzeptieren, dass Sie das Ende Ihrer Vorhersagen erreicht haben Fähigkeiten der Modelle. Time-Boxing Ihrer Analyse im Voraus hilft.
Beachten Sie, dass ich es nicht befürworte, verschiedene Klassen von Modellen auszuprobieren, wenn Ihr ursprüngliches Modell Plateaus aufweist. Wenn Sie mit einem vernünftigen Modell angefangen haben, bringt die Verwendung eines anspruchsvolleren Modells in der Regel keinen großen Vorteil und kann einfach zu einer "Überanpassung des Test-Sets" führen. Ich habe das oft gesehen und andere Leute stimmen dem zu .