Sunday 26 November 2017

Nutzen Der Gleitende Durchschnittliche Prognose


Gleitender Durchschnitt Vorhersage Einleitung. Wie Sie vermutlich schauen, betrachten wir einige der primitivsten Ansätze zur Prognose. Aber hoffentlich sind diese zumindest eine lohnende Einführung in einige der Rechenprobleme im Zusammenhang mit der Umsetzung von Prognosen in Tabellenkalkulationen. In diesem Sinne werden wir von Anfang an beginnen und beginnen mit Moving Average Prognosen zu arbeiten. Gleitende durchschnittliche Prognosen. Jeder ist vertraut mit gleitenden durchschnittlichen Prognosen, unabhängig davon, ob sie glauben, sie sind. Alle Studenten tun sie die ganze Zeit. Denken Sie an Ihre Testergebnisse in einem Kurs, in dem Sie vier Tests während des Semesters haben werden. Angenommen, Sie haben eine 85 auf Ihrem ersten Test. Was würden Sie vorhersagen, für Ihre zweite Test-Score Was glauben Sie, Ihr Lehrer würde für Ihre nächste Test-Punkt vorhersagen Was denken Sie, Ihre Freunde könnten für Ihre nächste Test-Punkt vorherzusagen Was denken Sie, Ihre Eltern könnten für Ihre nächste Test-Score Unabhängig davon vorhersagen Alle die blabbing Sie tun könnten, um Ihre Freunde und Eltern, sie und Ihr Lehrer sind sehr wahrscheinlich zu erwarten, dass Sie etwas im Bereich der 85 erhalten Sie gerade bekommen. Nun, jetzt gehen wir davon aus, dass trotz Ihrer Selbst-Förderung an Ihre Freunde, Sie über-schätzen Sie sich und Figur, die Sie weniger für den zweiten Test lernen können und so erhalten Sie eine 73. Nun, was sind alle betroffenen und unbekümmerten gehen Erwarten Sie erhalten auf Ihrem dritten Test Es gibt zwei sehr wahrscheinlich Ansätze, damit sie eine Schätzung unabhängig davon entwickeln, ob sie sie mit Ihnen teilen. Sie können zu sich selbst sagen, dieser Kerl ist immer bläst Rauch über seine smarts. Hes gehend, ein anderes 73 zu erhalten, wenn hes glücklich. Vielleicht werden die Eltern versuchen, mehr unterstützend und sagen, quotWell, so weit youve bekommen eine 85 und eine 73, so vielleicht sollten Sie auf eine über (85 73) 2 79. Ich weiß nicht, vielleicht, wenn Sie weniger feiern Und werent wedelte das Wiesel ganz über dem Platz und wenn Sie anfingen, viel mehr zu studieren, konnten Sie einen höheren score. quot erhalten. Beide dieser Schätzungen sind wirklich gleitende durchschnittliche Prognosen. Der erste verwendet nur Ihre jüngste Punktzahl, um Ihre zukünftige Leistung zu prognostizieren. Dies wird als gleitende Durchschnittsprognose mit einer Datenperiode bezeichnet. Die zweite ist auch eine gleitende durchschnittliche Prognose, aber mit zwei Perioden von Daten. Nehmen wir an, dass alle diese Leute, die auf deinem großen Verstand zerschmettern, Art von dich angepisst haben und du entscheidest, auf dem dritten Test aus deinen eigenen Gründen gut zu tun und eine höhere Kerbe vor deinen quotalliesquot zu setzen. Sie nehmen den Test und Ihre Gäste ist eigentlich ein 89 Jeder, einschließlich selbst, ist beeindruckt. So jetzt haben Sie die abschließende Prüfung des Semesters herauf und wie üblich spüren Sie die Notwendigkeit, alle in die Vorhersagen zu machen, wie youll auf dem letzten Test tun. Nun, hoffentlich sehen Sie das Muster. Nun, hoffentlich können Sie das Muster sehen. Was glauben Sie, ist die genaueste Pfeife, während wir arbeiten. Jetzt kehren wir zu unserer neuen Reinigungsfirma zurück, die von Ihrer entfremdeten Halbschwester namens Whistle While We Work begonnen wurde. Sie haben einige vergangene Verkaufsdaten, die durch den folgenden Abschnitt aus einer Kalkulationstabelle dargestellt werden. Zuerst präsentieren wir die Daten für eine dreidimensionale gleitende Durchschnittsprognose. Der Eintrag für Zelle C6 sollte jetzt sein Sie können diese Zellformel auf die anderen Zellen C7 bis C11 kopieren. Beachten Sie, wie der Durchschnitt bewegt sich über die jüngsten historischen Daten, sondern verwendet genau die drei letzten Perioden zur Verfügung für jede Vorhersage. Sie sollten auch feststellen, dass wir nicht wirklich brauchen, um die Vorhersagen für die vergangenen Perioden zu machen, um unsere jüngste Vorhersage zu entwickeln. Dies ist definitiv anders als das exponentielle Glättungsmodell. Ive eingeschlossen das quotpast predictionsquot, weil wir sie auf der folgenden Webseite verwenden, um Vorhersagegültigkeit zu messen. Nun möchte ich die analogen Ergebnisse für eine zwei-Periode gleitenden Durchschnitt Prognose zu präsentieren. Der Eintrag für Zelle C5 sollte jetzt sein Sie können diese Zellformel auf die anderen Zellen C6 bis C11 kopieren. Beachten Sie, wie jetzt nur die beiden letzten Stücke der historischen Daten für jede Vorhersage verwendet werden. Wieder habe ich die quotpast Vorhersagequot für illustrative Zwecke und für die spätere Verwendung in der Prognose Validierung enthalten. Einige andere Dinge, die wichtig sind, um zu bemerken. Für eine m-Periode gleitende Durchschnittsprognose werden nur die m neuesten Datenwerte verwendet, um die Vorhersage durchzuführen. Nichts anderes ist notwendig. Für eine m-Periode gleitende durchschnittliche Prognose, wenn Sie Quotpast Vorhersagequot, beachten Sie, dass die erste Vorhersage tritt im Zeitraum m 1 auf. Diese beiden Fragen werden sehr wichtig sein, wenn wir unseren Code entwickeln. Entwicklung der Moving Average Funktion. Nun müssen wir den Code für die gleitende Durchschnittsprognose entwickeln, die flexibler genutzt werden kann. Der Code folgt. Beachten Sie, dass die Eingaben für die Anzahl der Perioden sind, die Sie in der Prognose und dem Array der historischen Werte verwenden möchten. Sie können es in beliebiger Arbeitsmappe speichern. Funktion MovingAverage (Historical, NumberOfPeriods) als einzelne Deklarations - und Initialisierungsvariablen Dim Item als Variant Dim Zähler als Integer Dim Summe als Single Dim HistoricalSize als Integer Initialisierung von Variablen Zähler 1 Akkumulation 0 Festlegung der Größe des Historical Arrays HistoricalSize Historical. Count For Counter 1 bis NumberOfPeriods Summieren der entsprechenden Anzahl der zuletzt beobachteten Werte Accumulation Accumulation Historical (HistoricalSize - NumberOfPeriods Counter) MovingAverage Accumulation NumberOfPeriods Der Code wird in der Klasse erklärt. Sie möchten die Funktion in der Tabellenkalkulation positionieren, sodass das Ergebnis der Berechnung dort erscheint, wo es die folgenden. net. sourceforge. openforecast. models haben sollte. Class WeightedMovingAverageModel Ein gewichtetes gleitendes Durchschnittsprognosemodell basiert auf einer künstlich konstruierten Zeitreihe, in der die Wert für einen gegebenen Zeitraum durch das gewichtete Mittel dieses Werts und die Werte für eine gewisse Anzahl von vorhergehenden Zeitperioden ersetzt. Wie Sie vielleicht aus der Beschreibung erraten haben, ist dieses Modell am besten für Zeitreihendaten, d. H. Daten, die sich über die Zeit ändern, geeignet. Da der Prognosewert für einen gegebenen Zeitraum ein gewichteter Durchschnitt der vorangegangenen Perioden ist, wird die Prognose immer scheinbar zurückbleiben, entweder bei der Erhöhung oder Verminderung der beobachteten (abhängigen) Werte. Wenn beispielsweise eine Datenreihe einen merkbaren Aufwärtstrend aufweist, wird eine gewichtete gleitende Durchschnittsprognose generell eine Unterbewertung der Werte der abhängigen Variablen liefern. Das gewichtete gleitende Durchschnittmodell, wie das gleitende Durchschnittsmodell, hat gegenüber anderen Prognosemodellen einen Vorteil, dass es in einer Reihe von Beobachtungen Gipfel und Mulden (oder Täler) glättet. Jedoch, wie das gleitende Durchschnittmodell, hat es auch einige Nachteile. Insbesondere erzeugt dieses Modell keine tatsächliche Gleichung. Daher ist es nicht alles, was nützlich, da ein Mittel-Langstrecken-Prognose-Tool. Es kann nur zuverlässig genutzt werden, um ein paar Perioden in die Zukunft zu prognostizieren. Seit: 0.4 Autor: Steven R. Gould Felder geerbt aus der Klasse net. sourceforge. openforecast. models. AbstractForecastingModel WeightedMovingAverageModel () Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell. WeightedMovingAverageModel (Doppelgewichte) Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen Gewichte. Prognose (double timeValue) Gibt den Prognosewert der abhängigen Variablen für den gegebenen Wert der unabhängigen Zeitvariablen zurück. GetForecastType () Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. GetNumberOfPeriods () Gibt die aktuelle Anzahl von Perioden zurück, die in diesem Modell verwendet werden. GetNumberOfPredictors () Gibt die Anzahl der Prädiktoren zurück, die vom zugrunde liegenden Modell verwendet werden. SetWeights (Doppelgewichte) Setzt die Gewichte dieses gewichteten gleitenden Durchschnittsprognosemodells auf die angegebenen Gewichte. ToString () Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, einschließlich, wenn möglich, alle abgeleiteten Parameter. Von der Klasse geerbte Methoden network. sourceforge. openforecast. models. AbstractTimeBasedModel WeightedMovingAverageModel Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen Gewichte. Für ein gültiges zu konstruierendes Modell sollten Sie init aufrufen und einen Datensatz mit einer Reihe von Datenpunkten übergeben, wobei die Zeitvariable initialisiert wird, um die unabhängige Variable zu identifizieren. Die Größe des Gewichts-Arrays wird verwendet, um die Anzahl der Beobachtungen zu bestimmen, die verwendet werden, um den gewichteten gleitenden Durchschnitt zu berechnen. Zusätzlich wird der letzten Periode das Gewicht gegeben, das durch das erste Element des Arrays, d. H. Gewichte, definiert ist. Die Größe des Gewichts-Arrays wird auch verwendet, um die Menge zukünftiger Perioden zu bestimmen, die effektiv prognostiziert werden können. Mit einem 50-Tage-gewichteten gleitenden Durchschnitt können wir mit einer Genauigkeit nicht mehr als 50 Tage über den letzten Zeitraum, für den Daten verfügbar sind, prognostizieren. Selbst Prognosen in der Nähe des Endes dieses Bereichs sind wahrscheinlich unzuverlässig. Hinweis zu Gewichten Im Allgemeinen sollten die Gewichte, die an diesen Konstruktor übergeben werden, bis zu 1,0 addieren. Wenn jedoch die Summe der Gewichte nicht bis zu 1,0 addiert, skaliert diese Implementierung alle Gewichte proportional, so dass sie auf 1,0 addieren. Parameter: Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. WeightedMovingAverageModel Konstruiert ein neues gewichtetes gleitendes Durchschnittsprognosemodell, wobei die benannte Variable als unabhängige Variable und die angegebenen Gewichte verwendet wird. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. WeightedMovingAverageModel Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell. Dieser Konstruktor soll nur von Unterklassen (also geschützt) verwendet werden. Jede Unterklasse, die diesen Konstruktor verwendet, muss anschließend die (geschützte) setWeights-Methode aufrufen, um die von diesem Modell zu verwendenden Gewichte zu initialisieren. WeightedMovingAverageModel Konstruiert ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen unabhängigen Variablen. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. SetWeights Setzt die Gewichte dieses gewichteten gleitenden Durchschnittsprognosemodells auf die angegebenen Gewichte. Dieses Verfahren soll nur von Unterklassen (also geschützt) und nur in Verbindung mit dem (geschützten) Ein-Argument-Konstruktor verwendet werden. Jede Unterklasse, die den Ein-Argument-Konstruktor verwendet, muss anschließend setWeights aufrufen, bevor die Methode AbstractTimeBasedModel. init (net. sourceforge. openforecast. DataSet) aufgerufen wird, um das Modell zu initialisieren. Anmerkung zu Gewichten Im allgemeinen sollten die an diese Methode übergebenen Gewichte bis zu 1,0 addieren. Wenn jedoch die Summe der Gewichte nicht bis zu 1,0 addiert, skaliert diese Implementierung alle Gewichte proportional, so dass sie auf 1,0 addieren. Parameter: Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. Gibt den Prognosewert der abhängigen Variablen für den gegebenen Wert der unabhängigen Zeitvariablen zurück. Unterklassen müssen diese Methode in einer Weise implementieren, die mit dem von ihnen implementierten Prognosemodell übereinstimmt. Unterklassen können die Methoden getForecastValue und getObservedValue verwenden, um frühere Prognosen und Beobachtungen zu erhalten. Gegeben durch: Prognose in Klasse AbstractTimeBasedModel Parameter: timeValue - der Wert der Zeitvariablen, für die ein Prognosewert erforderlich ist. Gibt den Prognosewert der abhängigen Variablen für die angegebene Zeit zurück. Throws: IllegalArgumentException - Wenn es unzureichende historische Daten gibt - Beobachtungen, die an init übergeben werden -, um eine Prognose für den gegebenen Zeitwert zu generieren. GetNumberOfPredictors Gibt die Anzahl der Prädiktoren zurück, die vom zugrunde liegenden Modell verwendet werden. Rückgabewerte: die Anzahl der Prädiktoren, die das zugrunde liegende Modell verwendet. GetNumberOfPeriods Gibt die aktuelle Anzahl von Perioden zurück, die in diesem Modell verwendet werden. Angegeben durch: getNumberOfPeriods in der Klasse AbstractTimeBasedModel Gibt die aktuelle Anzahl der in diesem Modell verwendeten Perioden zurück. GetForecastType Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. Halten Sie diese kurz. Eine längere Beschreibung sollte in der Methode toString implementiert werden. Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, wobei nach Möglichkeit alle abgeleiteten Parameter verwendet werden. Bestimmt durch: toString in der Schnittstelle ForecastingModel Overrides: toString in der Klasse AbstractTimeBasedModel Gibt eine Stringdarstellung des aktuellen Prognosemodells und seiner Parameter zurück.

No comments:

Post a Comment