[PYTHON] Herausforderung für die zukünftige Umsatzprognose: ① Was ist Zeitreihenanalyse?

Einführung

In letzter Zeit flüstert der Einzelhandel auch mit Big Data und KI, und es gibt jeden Tag verschiedene Konsultationen von jeder Abteilung. Vor allem in letzter Zeit gibt es viele zukünftige Fälle wie "Ich möchte, dass Sie den Umsatz des nächsten Monats vorhersagen", "Wie viel soll ich nächste Woche verkaufen", "Sollte ich nächsten Monat zusätzliche Verkaufsförderung durchführen" von der Filialabteilung. Über den Verkauf.

Früher lag das Ziel bei 105% im Vergleich zum Vorjahresmonat, aber die sinkende Geburtenrate und die alternde Bevölkerung, der Inbound-Tourismus, ungewöhnliches Wetter und andere Veränderungen in der Welt haben den Vergleich zum Vorjahr unbrauchbar gemacht. Daher möchte ich wissen, wie viel es verkaufen wird und wie viel es nicht verkaufen wird, wenn es wie gewohnt im Geschäft durchgeführt wird, und es als Standard verwenden, um darüber nachzudenken, wie viel es bei Veranstaltungen und Anzeigen hinzufügen soll.

Welche Analyse ist gut

Ich arbeite jetzt an Daten, aber ich bin eine knusprige literarische Person, daher bin ich mit den komplexen Methoden der Statistik nicht vertraut. Am Anfang habe ich versucht, Vorhersagen zu treffen, indem ich durch Regressionsanalyse stetig Informationen über Wetter, Verkaufsförderungsmaßnahmen und umliegende Ereignisse eingegeben habe, aber die Genauigkeit hat sich überhaupt nicht verbessert. .. ..

Zu dieser Zeit, als ich verschiedene Dinge recherchierte, fand ich heraus, dass es eine "Zeitreihenanalyse" gibt, um Aktien vorherzusagen.

Was ist Zeitreihenanalyse?

"Statistiken, die die ganze Menschheit verstehen", "[Vorhersage des Publikumsratenübergangs von TV Asahi mit dem SARIMA-Modell](https: // s Ich möchte die Zeitreihenanalyse nach meinem Verständnis unter Bezugnahme auf ": //qiita.com/mshinoda88/items/749131478bfefc9bf365)" organisieren. (Es tut mir leid, wenn ich einen Fehler gemacht habe. Bitte sagen Sie es mir ohne schwierige Formeln ...)

1. Zeitreihenanalyse bedeutet, dass vergangene Verkäufe in der Prognosevariablen enthalten sind.

In der Regressionsanalyse, die ich ursprünglich durchgeführt habe, habe ich versucht, Verkäufe mit völlig anderen Variablen wie folgt zu erklären.

Der Umsatz= a{1} *Temperatur+ a{2} *Werbekosten+・ ・ ・

Wenn der Umsatz eines Tages jedoch 10 Millionen Yen beträgt, wie hoch wird der Umsatz des nächsten Tages sein? Es wird keine Million Yen sein. Im Gegenteil, es werden nicht 100 Millionen Yen sein. Wahrscheinlich 12 Millionen Yen oder 8 Millionen Yen, ich denke, dass ich keinen großen Unterschied zum Umsatz des Vortages machen werde.

Daher besteht die Methode darin, die Genauigkeit zu verbessern, indem die vergangenen Verkäufe wie folgt als erklärende Variablen verwendet werden.

Der Umsatz{n} = a{1} * Der Umsatz{n-1} + a{2} * Der Umsatz{n-2} +・ ・ ・

Es scheint, dass dies AR (Self-Return) genannt wird.

2. Die Zeitreihenanalyse berücksichtigt vergangene Fehler

Wenn für die Selbstrückgabe von 1 der Umsatz des letzten Monats höher als der ursprüngliche ist, wird davon ausgegangen, dass ein Umsatzvoraussetzung vorliegt, und die Möglichkeit, dass der Umsatz in diesem Monat sinkt, wird berücksichtigt. Dies kann ausgedrückt werden als:

Der Umsatz{n} = b{1} *Error{n} + b{2} *Error{n-1} +・ ・ ・

Es scheint, dass dies MA (gleitender Durchschnitt) genannt wird.

3. Zeitreihenanalyse bedeutet nicht, genau denselben Zyklus zu wiederholen

Es ist einfach, wenn der Zyklus wiederholt wird, aber es ist nicht der strenge Teil der tatsächlichen Zeitreihe. Es scheint in schwierigen Worten "instationärer Prozess" genannt zu werden.

Es scheint, dass wir den Aufwärtstrend und den Abwärtstrend eher als mittel- bis langfristigen Trend als als kurzfristigen Trend betrachten sollten.

Es wird gesagt, dass diese 1 bis 3 zusammen als ARIMA-Modell (Auto Regressive Integrated Moving Average) bezeichnet werden. Das Gefühl, dass AR und MA vereint sind, ist cool.

4. Da es sich um eine Zeitreihe handelt, muss die Saisonalität berücksichtigt werden.

Selbst wenn Sie dies bisher tun, wird sich die Genauigkeit nicht verbessern. Aber genau das wissen Einzelhändler. Es sollte Saisonalität geben, zum Beispiel, dass der Umsatz im Februar und September nicht jedes Jahr steigt, aber das habe ich nicht berücksichtigt.

Obwohl es saisonabhängig ist, denke ich, dass es verschiedene Zyklen gibt.

Es scheint, dass das SARIMA-Modell diese Zyklen berücksichtigen kann.

5. Wir müssen andere Faktoren als Zeitreihen berücksichtigen

Bisher haben wir die Elemente der Zeitreihe gesehen, aber ich möchte auch die plötzlichen Elemente einbeziehen.

――Wetter: Es regnet nicht nur, sondern es gibt auch in letzter Zeit ungewöhnliches Wetter. ――Event: Wenn es in der Nähe des Geschäfts ein sportliches Treffen oder Festival gibt, wird dies allein den Umsatz erheblich steigern. ――Wettbewerb: Wenn in der Nähe ein Konkurrenzgeschäft eröffnet wird, sinkt der Umsatz danach um einen bestimmten Betrag von 10 bis 10%.

Es scheint, dass das ARIMAX-Modell diese externen Variablen berücksichtigt.

Eine Site, auf die verwiesen werden muss, um diese mit Python zu realisieren

abschließend

Diesmal entschuldigen mich alle Briefe. Ab dem nächsten Mal werde ich tatsächlich eine Zeitreihenanalyse versuchen.

Recommended Posts

Herausforderung für die zukünftige Umsatzprognose: ① Was ist Zeitreihenanalyse?
Umsatzprognose für die Zeitreihenanalyse
Herausforderung für die zukünftige Umsatzprognose: ② Zeitreihenanalyse mit PyFlux
Herausforderung für die zukünftige Umsatzprognose: ⑤ Zeitreihenanalyse von Prophet
Herausforderung für die zukünftige Umsatzprognose: ④ Zeitreihenanalyse unter Berücksichtigung der Saisonalität nach Statistikmodellen
Python: Zeitreihenanalyse
RNN_LSTM1 Zeitreihenanalyse
Zeitreihenanalyse 1 Grundlagen
Python 3.4 Windows7-64bit-Umgebung erstellen (für die Analyse finanzieller Zeitreihen)
Was ist eine logistische Regressionsanalyse?
Eine Lernmethode für Anfänger zum Erlernen der Zeitreihenanalyse
Zeitreihenanalyse Teil 4 VAR
Zeitreihenanalyse Teil 3 Prognose
Was ist die Schnittstelle für ...
Zeitreihenanalyse Teil 1 Autokorrelation
Python: Zeitreihenanalyse: Vorverarbeitung von Zeitreihendaten
Was ist Schaben? [Zusammenfassung für Anfänger]
Wofür ist der Python-Unterstrich (_)?
Zeitreihenanalyse 3 Vorverarbeitung von Zeitreihendaten
Was ist xg boost (1) (für Anfänger)
Was ist eine mehrjährige logistische Regressionsanalyse?
LSTM (1) zur Zeitreihenvorhersage (für Anfänger)
Zeitreihenanalyse 2 Stabilität, ARMA / ARIMA-Modell
[Python] Was ist Pandas Series und DataFrame?
Ich habe versucht, Zeitreihen zu analysieren! (AR-Modell)
Zeitreihenanalyse Teil 2 AR / MA / ARMA
[Statistik für Programmierer] Was ist ein Ereignis?
Zeitreihenanalyse 4 Konstruktion des SARIMA-Modells
Erkennung von Zeitreihendatenanomalien für Anfänger
Zeitreihenanalyse Nr. 6 Gefälschte Rückkehr und republikanischer Teil