Freigeben über


Microsoft-Zeitreihenalgorithmus

Der Microsoft Time Series-Algorithmus stellt Regressionsalgorithmen bereit, die für die Prognose fortlaufender Werte optimiert sind, z. B. Produktverkäufe, im Laufe der Zeit. Während andere Microsoft-Algorithmen, wie z. B. Entscheidungsstrukturen, zusätzliche Spalten neuer Informationen als Eingabe erfordern, um einen Trend vorherzusagen, ist ein Zeitreihenmodell nicht erforderlich. Ein Zeitreihenmodell kann Trends nur basierend auf dem ursprünglichen Dataset vorhersagen, das zum Erstellen des Modells verwendet wird. Sie können dem Modell auch neue Daten hinzufügen, wenn Sie eine Vorhersage erstellen und die neuen Daten automatisch in die Trendanalyse integrieren.

Das folgende Diagramm zeigt ein typisches Modell für die Prognose des Umsatzes eines Produkts in vier verschiedenen Vertriebsregionen im Laufe der Zeit. Das modell, das im Diagramm dargestellt wird, zeigt die Umsätze für jede Region, die als rote, gelbe, violette und blaue Linien dargestellt wird. Die Zeile für jede Region weist zwei Teile auf:

  • Historische Informationen werden links neben der vertikalen Linie angezeigt und stellen die Daten dar, die der Algorithmus zum Erstellen des Modells verwendet.

  • Vorhergesagte Informationen werden rechts neben der vertikalen Linie angezeigt und stellen die vom Modell erstellte Prognose dar.

Die Kombination der Quelldaten und der Vorhersagedaten wird als Datenreihe bezeichnet.

Beispiel für eine Zeitreihe Ein Beispiel

Ein wichtiges Feature des Microsoft Time Series-Algorithmus ist, dass er kreuzvorhersagen kann. Wenn Sie den Algorithmus mit zwei separaten, aber verwandten Datenreihen trainieren, können Sie das resultierende Modell verwenden, um das Ergebnis einer Datenreihe basierend auf dem Verhalten der anderen Datenreihe vorherzusagen. Beispielsweise kann der beobachtete Umsatz eines Produkts den prognostizierten Umsatz eines anderen Produkts beeinflussen. Kreuzvorhersage ist auch hilfreich zum Erstellen eines allgemeinen Modells, das auf mehrere Reihen angewendet werden kann. Beispielsweise sind die Vorhersagen für eine bestimmte Region instabil, da die Datenreihe keine guten Qualitätsdaten aufweist. Sie können ein allgemeines Modell im Durchschnitt aller vier Regionen trainieren und dann das Modell auf die einzelnen Reihen anwenden, um stabilere Vorhersagen für jede Region zu erstellen.

Beispiel

Das Managementteam bei Adventure Works Cycles möchte den monatlichen Fahrradumsatz für das kommende Jahr vorhersagen. Das Unternehmen interessiert sich besonders daran, ob der Verkauf eines Fahrradmodells verwendet werden kann, um den Verkauf eines anderen Modells vorherzusagen. Mit dem Microsoft Time Series-Algorithmus für historische Daten aus den letzten drei Jahren kann das Unternehmen ein Data Mining-Modell erstellen, das zukünftige Fahrradverkäufe vorausschaut. Darüber hinaus kann das Unternehmen Kreuzvorhersagen durchführen, um festzustellen, ob die Verkaufstrends einzelner Fahrradmodelle miteinander zusammenhängen.

Jedes Quartal plant das Unternehmen, das Modell mit aktuellen Umsatzdaten zu aktualisieren und ihre Vorhersagen zu aktualisieren, um aktuelle Trends zu modellieren. Um für Stores zu korrigieren, die Umsatzdaten nicht genau oder konsistent aktualisieren, erstellen sie ein allgemeines Vorhersagemodell und verwenden diese, um Vorhersagen für alle Regionen zu erstellen.

Funktionsweise des Algorithmus

In SQL Server 2005 verwendet der Microsoft Time Series-Algorithmus einen einzelnen Algorithmus, ARTXP. Der ARTXP-Algorithmus wurde für kurzfristige Vorhersagen optimiert und prognostizierte daher den nächsten wahrscheinlichen Wert in einer Datenreihe. Ab SQL Server 2008 verwendet der Microsoft Time Series-Algorithmus sowohl den ARTXP-Algorithmus als auch einen zweiten Algorithmus, ARIMA. Der ARIMA-Algorithmus ist für die langfristige Vorhersage optimiert. Eine ausführliche Erläuterung zur Implementierung der ARTXP- und ARIMA-Algorithmen finden Sie in der technischen Referenz zu Microsoft Time Series Algorithm.

Standardmäßig verwendet der Microsoft Time Series-Algorithmus eine Mischung aus den Algorithmen, wenn es Muster analysiert und Vorhersagen vornimmt. Der Algorithmus trainiert zwei separate Modelle für die gleichen Daten: Ein Modell verwendet den ARTXP-Algorithmus und ein Modell verwendet den ARIMA-Algorithmus. Der Algorithmus blendet dann die Ergebnisse der beiden Modelle zusammen, um die beste Vorhersage über eine variable Anzahl von Zeitsegmenten zu erzielen. Da ARTXP für kurzfristige Vorhersagen am besten geeignet ist, wird sie am Anfang einer Reihe von Vorhersagen stärker gewichtet. Da jedoch die Zeitsegmente, die Sie vorhergesagt haben, weiter in die Zukunft verschoben werden, wird ARIMA stärker gewichtet.

Sie können auch die Mischung aus Algorithmen steuern, um kurz- oder langfristige Vorhersagen in der Zeitreihe zu bevorzugen. Ab SQL Server 2008 Standard können Sie angeben, dass der Microsoft Time Series-Algorithmus eine der folgenden Einstellungen verwendet:

  • Verwenden Sie nur ARTXP für kurzfristige Vorhersage.

  • Verwenden Sie nur ARIMA für die langfristige Vorhersage.

  • Verwenden Sie die Standardmischung der beiden Algorithmen.

Ab SQL Server 2008 Enterprise können Sie anpassen, wie der Microsoft Time Series-Algorithmus die Modelle für die Vorhersage kombiniert. Wenn Sie ein gemischtes Modell verwenden, blendet der Microsoft Time Series-Algorithmus die beiden Algorithmen wie folgt zusammen:

  • Nur ARTXP wird immer verwendet, um die ersten Vorhersagen vorzunehmen.

  • Nach den ersten Vorhersagen wird eine Kombination aus ARIMA und ARTXP verwendet.

  • Da sich die Anzahl der Vorhersageschritte erhöht, basieren Vorhersagen stärker auf ARIMA, bis ARTXP nicht mehr verwendet wird.

  • Sie steuern den Mischpunkt, die Rate, mit der die Gewichtung von ARTXP verringert wird, und die Gewichtung von ARIMA wird durch Festlegen des PREDICTION_SMOOTHING Parameters erhöht.

Beide Algorithmen können Saisonalität in Daten auf mehreren Ebenen erkennen. Ihre Daten können beispielsweise monatliche Zyklen enthalten, die innerhalb jährlicher Zyklen geschachtelt sind. Um diese saisonalen Zyklen zu erkennen, können Sie entweder einen Regelmäßigkeitshinweis angeben oder angeben, dass der Algorithmus die Periodizität automatisch erkennen soll.

Zusätzlich zur Periodizität gibt es mehrere andere Parameter, die das Verhalten des Microsoft Time Series-Algorithmus steuern, wenn er Periodizität erkennt, Vorhersagen vorgibt oder Fälle analysiert. Informationen zum Festlegen von Algorithmusparametern finden Sie in der technischen Referenz zu Microsoft Time Series Algorithm.

Daten, die für Zeitreihenmodelle erforderlich sind

Wenn Sie Daten für die Verwendung in schulungen eines Data Mining-Modells vorbereiten, stellen Sie sicher, dass Sie die Anforderungen für das jeweilige Modell und die Verwendung der Daten verstehen.

Jedes Prognosemodell muss eine Fallreihe enthalten, bei der es sich um die Spalte handelt, die die Zeitsegmente oder eine andere Datenreihe angibt, über die Änderungen erfolgen. Die Daten im vorherigen Diagramm zeigen z. B. die Datenreihe für historische und prognostizierte Fahrradverkäufe über einen Zeitraum von mehreren Monaten. Für dieses Modell ist jeder Bereich eine Datenreihe, und die Datumsspalte enthält die Zeitreihe, die auch die Fallreihe ist. In anderen Modellen kann es sich bei der Fallreihe um ein Textfeld oder einen Bezeichner wie eine Kunden-ID oder Transaktions-ID handeln. Ein Zeitreihenmodell muss jedoch immer ein Datum, eine Uhrzeit oder einen anderen eindeutigen numerischen Wert für die Fallreihe verwenden.

Die Anforderungen für ein Zeitreihenmodell sind wie folgt:

  • Eine Einzelne Schlüsselzeitspalte Jedes Modell muss eine numerische oder Datumsspalte enthalten, die als Fallreihe verwendet wird, wodurch die vom Modell verwendeten Zeitsegmente definiert werden. Der Datentyp für die Schlüsselzeitspalte kann entweder ein Datetime-Datentyp oder ein numerischer Datentyp sein. Die Spalte muss jedoch fortlaufende Werte enthalten, und die Werte müssen für jede Datenreihe eindeutig sein. Die Fallreihe für ein Zeitreihenmodell kann nicht in zwei Spalten gespeichert werden, z. B. eine Spalte "Jahr" und eine Spalte "Monat".

  • Eine vorhersagbare Spalte Jedes Modell muss mindestens eine vorhersagbare Spalte enthalten, um die der Algorithmus das Zeitreihenmodell erstellt. Der Datentyp der vorhersagbaren Spalte muss fortlaufende Werte aufweisen. Sie können z. B. vorhersagen, wie sich numerische Attribute wie Einkommen, Umsatz oder Temperatur im Laufe der Zeit ändern. Sie können jedoch keine Spalte verwenden, die diskrete Werte enthält, z. B. den Einkaufsstatus oder die Bildungsstufe, als vorhersehbare Spalte.

  • Eine optionale Datenreihenschlüsselspalte Jedes Modell kann über eine zusätzliche Schlüsselspalte verfügen, die eindeutige Werte enthält, die eine Datenreihe identifizieren. Die optionale Datenreihenschlüsselspalte muss eindeutige Werte enthalten. Beispielsweise kann ein einzelnes Modell Verkäufe für viele Produktmodelle enthalten, solange für jedes Segment nur ein Datensatz für jeden Produktnamen vorhanden ist.

Sie können Eingabedaten für das Microsoft Time Series-Modell auf verschiedene Arten definieren. Da sich das Format der Eingabefälle jedoch auf die Definition des Miningmodells auswirkt, müssen Sie Ihre Geschäftsanforderungen berücksichtigen und Ihre Daten entsprechend vorbereiten. Die folgenden beiden Beispiele veranschaulichen, wie sich die Eingabedaten auf das Modell auswirken. In beiden Beispielen enthält das fertige Miningmodell Muster für vier unterschiedliche Reihen:

  • Vertrieb für Produkt A

  • Vertrieb für Produkt B

  • Volumen für Produkt A

  • Volumen für Produkt B

In beiden Beispielen können Sie für jedes Produkt einen neuen zukünftigen Umsatz und ein neues Volumen vorhersagen. Sie können keine neuen Werte für das Produkt oder für die Zeit vorhersehen.

Beispiel 1: Zeitreihendatensatz mit Datenreihen, die als Spaltenwerte dargestellt werden

In diesem Beispiel wird die folgende Tabelle mit Eingabefällen verwendet:

TimeID Produkt Vertrieb Lautstärke
1/2001 Ein 1000 600
2/2001 Ein 1.100 500
1/2001 B 500 900
2/2001 B 300 890

Die Spalte "TimeID" in der Tabelle enthält einen Zeitbezeichner und enthält zwei Einträge für jeden Tag. Die Spalte "TimeID" wird zur Fallserie. Daher würden Sie diese Spalte als Schlüsselzeitspalte für das Zeitreihenmodell festlegen.

In der Spalte "Produkt" wird ein Produkt in der Datenbank definiert. Diese Spalte enthält die Produktreihe. Daher würden Sie diese Spalte als zweiten Schlüssel für das Zeitreihenmodell festlegen.

In der Spalte "Umsatz" werden die Bruttogewinne des angegebenen Produkts für einen Tag beschrieben, und in der Spalte "Volumen" wird die Menge des angegebenen Produkts beschrieben, das im Lager verbleibt. Diese beiden Spalten enthalten die Daten, die zum Trainieren des Modells verwendet werden. Sowohl Sales als auch Volume können vorhersehbare Attribute für jede Datenreihe in der Spalte "Produkt" sein.

Beispiel 2: Zeitreihendatensatz mit jeder Datenreihe in einer separaten Spalte

Obwohl in diesem Beispiel grundsätzlich dieselben Eingabedaten wie im ersten Beispiel verwendet werden, sind die Eingabedaten anders strukturiert, wie in der folgenden Tabelle dargestellt:

TimeID A_Sales A_Volume B_Sales B_Volume
1/2001 1000 600 500 900
2/2001 1.100 500 300 890

In dieser Tabelle enthält die Spalte "TimeID" weiterhin die Fallreihen für das Zeitreihenmodell, das Sie als Schlüsselzeitspalte festlegen. Die vorherigen Spalten "Sales" und "Volume" werden jedoch in zwei Spalten aufgeteilt, und jeder dieser Spalten steht dem Produktnamen voran. Daher ist nur ein einzelner Eintrag für jeden Tag in der Spalte "TimeID" vorhanden. Dadurch wird ein Zeitreihenmodell erstellt, das vier vorhersagbare Spalten enthalten würde: A_Sales, A_Volume, B_Sales und B_Volume.

Da Sie die Produkte in unterschiedliche Spalten getrennt haben, müssen Sie keine zusätzliche Spaltenspalte für Serienschlüssel angeben. Alle Spalten im Modell sind entweder eine Fallreihenspalte oder eine vorhersagbare Spalte.

Anzeigen eines Zeitreihenmodells

Nachdem das Modell trainiert wurde, werden die Ergebnisse als eine Reihe von Mustern gespeichert, die Sie untersuchen oder verwenden können, um Vorhersagen zu erstellen.

Um das Modell zu erkunden, können Sie den Zeitreihen-Viewer verwenden. Der Viewer enthält ein Diagramm, das zukünftige Prognosen anzeigt, und eine Baumansicht der periodischen Strukturen in den Daten.

Wenn Sie mehr darüber erfahren möchten, wie die Vorhersagen berechnet werden, können Sie das Modell im Microsoft Generic Content Tree Viewer durchsuchen. Der für das Modell gespeicherte Inhalt enthält Details wie die periodischen Strukturen, die von den ALGORITHMEN ARIMA und ARTXP erkannt werden, die Formel, die zum Mischen der Algorithmen und andere Statistiken verwendet wird.

Erstellen von Zeitreihenvorhersagen

Wenn Sie ein Zeitreihenmodell anzeigen, zeigt Analysis Services standardmäßig fünf Vorhersagen für die Datenreihe an. Sie können jedoch Abfragen erstellen, um eine variable Anzahl von Vorhersagen zurückzugeben, und Sie können zusätzliche Spalten für die Vorhersagen erstellen, um beschreibende Statistiken zurückzugeben. Informationen zum Erstellen von Abfragen für ein Zeitreihenmodell finden Sie unter "Beispiele für Abfragebeispiele für Zeitreihenmodell". Beispiele für die Verwendung von Data Mining-Erweiterungen (SHAPE) zur Erstellung von Zeitreihenvorhersagen finden Sie unter PredictTimeSeries (SHAPE).

Wenn Sie den Microsoft Time Series-Algorithmus zum Erstellen von Vorhersagen verwenden, sollten Sie die folgenden zusätzlichen Einschränkungen und Anforderungen berücksichtigen:

  • Kreuzvorhersage ist nur verfügbar, wenn Sie ein gemischtes Modell oder ein Modell basierend auf dem ARTXP-Algorithmus verwenden. Wenn Sie ein Modell verwenden, das nur auf dem ARIMA-Algorithmus basiert, ist die Kreuzvorhersage nicht möglich.

  • Ein Zeitreihenmodell kann Vorhersagen machen, die je nach dem vom Server genutzten 64-Bit-Betriebssystem unterschiedlich sind. Diese Unterschiede treten aufgrund der Art und Weise auf, wie ein Itanium-basiertes System Zahlen für Gleitkommaarithmetik darstellt und verarbeitet, die sich von der Art und Weise unterscheidet, wie ein x64-basiertes System diese Berechnungen durchführt. Da Vorhersageergebnisse für das Betriebssystem spezifisch sein können, empfehlen wir, Modelle auf demselben Betriebssystem zu bewerten, das Sie in der Produktion verwenden werden.

Bemerkungen

  • Unterstützt nicht die Verwendung der Predictive Model Markup Language (PMML) zum Erstellen von Miningmodellen.

  • Unterstützt die Verwendung von OLAP-Miningmodellen.

  • Unterstützt nicht die Erstellung von Data Mining-Dimensionen.

  • Unterstützt Drillthrough.

Siehe auch

Data Mining-Algorithmen (Analysis Services - Data Mining)
Durchsuchen eines Modells mithilfe des Microsoft Time Series Viewers
Technische Referenz zu Microsoft-Zeitreihenalgorithmus
Abfragebeispiele für Zeitreihenmodelle
Miningmodellinhalt für Zeitreihenmodelle (Analysis Services - Data Mining)