Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie eine Abfrage für ein Data Mining-Modell erstellen, können Sie entweder eine Inhaltsabfrage erstellen, die Details zu den in der Analyse ermittelten Mustern bereitstellt, oder Sie können eine Vorhersageabfrage erstellen, die die Muster im Modell verwendet, um Vorhersagen für neue Daten zu erstellen. Beispielsweise kann eine Inhaltsabfrage für ein Zeitreihenmodell zusätzliche Details zu den periodischen Strukturen bereitstellen, die erkannt wurden, während eine Vorhersageabfrage Ihnen Vorhersagen für die nächsten 5-10 Zeitsegmente liefern kann. Mithilfe einer Abfrage können Sie auch Metadaten zum Modell abrufen.
In diesem Abschnitt wird erläutert, wie Sie beide Arten von Abfragen für Modelle erstellen, die auf dem Microsoft Time Series-Algorithmus basieren.
Inhaltsabfragen
Abrufen von Regelmäßigkeitshinweisen für das Modell
Abrufen der Formel für ein ARIMA-Modell
Abrufen der Formel für ein ARTxp-Modell
Vorhersageabfragen
Wann Zeitreihendaten ersetzt und wann erweitert werden sollten
Erstellen von Vorhersagen mit EXTEND_MODEL_CASES
Erstellen von Vorhersagen mit REPLACE_MODEL_CASES
Fehlende Wertersetzung in Zeitreihenmodellen
Abrufen von Informationen zu einem Zeitreihenmodell
Eine Modellinhaltsabfrage kann grundlegende Informationen zum Modell bereitstellen, z. B. die Parameter, die beim Erstellen des Modells verwendet wurden, die Uhrzeit, zu der das Modell zuletzt verarbeitet wurde. Das folgende Beispiel veranschaulicht die grundlegende Syntax zum Abfragen des Modellinhalts mithilfe der Data Mining-Schema-Rowsets.
Beispielabfrage 1: Abrufen von Regelmäßigkeitshinweisen für das Modell
Sie können die Periodizitäten abrufen, die innerhalb der Zeitreihe gefunden wurden, indem Sie die ARIMA-Struktur oder die ARTXP-Struktur abfragen. Die Perioden im abgeschlossenen Modell entsprechen jedoch möglicherweise nicht den Zeiträumen, die Sie beim Erstellen des Modells als Hinweise angegeben haben. Um die Hinweise abzurufen, die beim Erstellen des Modells als Parameter angegeben wurden, können Sie das Miningmodell-Inhaltsschema-Rowset mithilfe der folgenden DMX-Anweisung abfragen.
SELECT MINING_PARAMETERS
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = '<model name>'
Teilergebnisse:
| ABBAUPARAMETER |
|---|
| COMPLEXITY_PENALTY=0,1,MINIMUM_SUPPORT=10,PERIODICITY_HINT={1,3},.... |
Der standardmäßige Regelmäßigkeitshinweis ist {1} und wird in allen Modellen angezeigt. Dieses Beispielmodell wurde mit einem zusätzlichen Hinweis erstellt, der möglicherweise nicht im endgültigen Modell vorhanden ist.
Hinweis
Die Ergebnisse wurden hier zur Lesbarkeit abgeschnitten.
Beispielabfrage 2: Abrufen der Formel für ein ARIMA-Modell
Sie können die Formel für ein ARIMA-Modell abrufen, indem Sie einen beliebigen Knoten in einer einzelnen Struktur abfragen. Denken Sie daran, dass jede Struktur innerhalb eines ARIMA-Modells eine andere Periodizität darstellt, und wenn mehrere Datenreihen vorhanden sind, verfügt jede Datenreihe über einen eigenen Satz von Periodizitätsstrukturen. Um die Gleichung für eine bestimmte Datenreihe abzurufen, müssen Sie zuerst den Baum identifizieren.
Das TA-Präfix teilt Ihnen beispielsweise mit, dass der Knoten Teil einer ARIMA-Struktur ist, während das TS-Präfix für ARTXP-Strukturen verwendet wird. Sie finden alle ARIMA-Stammstrukturen, indem Sie den Modellinhalt für Knoten mit einem NODE_TYPE Wert von 27 abfragen. Sie können auch den Wert von ATTRIBUTE_NAME verwenden, um den ARIMA-Stammknoten für eine bestimmte Datenreihe zu finden. In diesem Abfragebeispiel werden die ARIMA-Knoten gefunden, die Mengen darstellen, die im R250-Modell in der Region Europa verkauft wurden.
SELECT NODE_UNIQUE_NAME
FROM Forecasting.CONTENT
WHERE ATTRIBUTE_NAME = 'R250 Europe: Quantity"
AND NODE_TYPE = 27
Mithilfe dieser Knoten-ID können Sie Details zur ARIMA-Formel für diesen Baum abrufen. Die folgende DMX-Anweisung ruft die Kurzform der ARIMA-Formel für die Datenreihe ab. Außerdem wird der Schnittpunkt aus der geschachtelten Tabelle NODE_DISTRIBUTION abgerufen. In diesem Beispiel wird die Formel durch Verweisen auf die eindeutige Knoten-ID TA00000007 abgerufen. Möglicherweise müssen Sie jedoch eine andere Knoten-ID verwenden, und Sie erhalten möglicherweise geringfügig andere Ergebnisse als Ihr Modell.
SELECT FLATTENED NODE_CAPTION as [Short equation],
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE
FROM NODE_DISTRIBUTION) as t
FROM Forecasting.CONTENT
WHERE NODE_NAME = 'TA00000007'
Beispielergebnisse:
| Kurzformel | t.ATTRIBUTE_NAME | t.ATTRIBUTE_VALUE |
|---|---|---|
| ARIMA (2,0,7)x(1,0;2)(12) | R250 Europe:Quantity(Intercept) | 15.24.... |
| ARIMA (2,0,7)x(1,0;2)(12) | R250 Europa:Quantität(Periodizität) | 1 |
| ARIMA (2,0,7)x(1,0;2)(12) | R250 Europe:Quantität(Periodizität) | 12 |
Weitere Informationen dazu, wie Sie diese Informationen interpretieren können, finden Sie unter Miningmodellinhalt für Zeitreihenmodelle (Analysis Services - Data Mining).
Beispielabfrage 3: Abrufen der Formel für ein ARTXP-Modell
Bei einem ARTxp-Modell werden unterschiedliche Informationen auf jeder Ebene des Baums gespeichert. Weitere Informationen zur Struktur eines ARTxp-Modells und zur Interpretation der Informationen in der Formel finden Sie unter Mining Model Content for Time Series Models (Analysis Services - Data Mining).
Mit der folgenden DMX-Anweisung werden Informationen abgerufen, die einen Teil des ARTxp-Baums darstellen, welcher die Verkaufsmenge für das Modell R250 in Europa repräsentiert.
Hinweis
Der Name der geschachtelten Tabellenspalte VARIANZ muss in Klammern eingeschlossen werden, um ihn vom reservierten Schlüsselwort desselben Namens zu unterscheiden. Die geschachtelten Tabellenspalten, WAHRSCHEINLICHKEIT und UNTERSTÜTZUNG sind nicht enthalten, da sie in den meisten Fällen leer sind.
SELECT NODE_CAPTION as [Split information],
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE,
[VARIANCE]
FROM NODE_DISTRIBUTION) AS t
FROM Forecasting.CONTENT
WHERE NODE_ATTRIBUTE_NAME = 'R250 Europe:Quantity'
AND NODE_TYPE = 15
Weitere Informationen darüber, wie man diese Informationen interpretiert, finden Sie unter Miningmodellinhalt für Zeitreihenmodelle (Analysis Services - Data Mining).
Erstellen von Vorhersagen für ein Zeitreihenmodell
Ab SQL Server 2008 Enterprise können Sie einem Zeitreihenmodell neue Daten hinzufügen und die neuen Daten automatisch in das Modell integrieren. Sie fügen einem Zeitreihen-Miningmodell auf zwei Arten neue Daten hinzu:
Verwenden Sie eine
PREDICTION JOIN, um Daten in einer externen Quelle mit den Schulungsdaten zu verknüpfen.Verwenden Sie eine Singleton-Vorhersageabfrage, um Daten scheibchenweise bereitzustellen. Informationen zum Erstellen einer Singleton-Vorhersageabfrage finden Sie unter Data Mining-Abfrageschnittstellen.
Grundlegendes zum Verhalten von Ersetzungs- und Erweiterungsvorgängen
Wenn Sie einem Zeitreihenmodell neue Daten hinzufügen, können Sie angeben, ob die Schulungsdaten erweitert oder ersetzt werden sollen:
Ausdehnen: Wenn Sie eine Datenreihe erweitern, fügt Analysis Services die neuen Daten am Ende der vorhandenen Schulungsdaten hinzu. Die Anzahl der Trainingsfälle steigt ebenfalls.
Das Erweitern der Modellfälle ist nützlich, um das Modell kontinuierlich mit neuen Daten zu aktualisieren. Wenn Sie z. B. den Schulungssatz im Laufe der Zeit vergrößern möchten, würden Sie das Modell einfach erweitern.
Zum Erweitern der Daten erstellen Sie ein
PREDICTION JOINZeitreihenmodell, geben die Quelle der neuen Daten an, und verwenden Sie dasEXTEND_MODEL_CASESArgument.Ersetzen: Wenn Sie die Daten in der Datenreihe ersetzen, behält Analysis Services das trainierte Modell bei, verwendet jedoch die neuen Datenwerte, um einige oder alle vorhandenen Schulungsfälle zu ersetzen. Daher ändert sich die Größe der Schulungsdaten nie, aber die Fälle selbst werden ständig durch neuere Daten ersetzt. Wenn Sie genügend neue Daten bereitstellen, können Sie die Schulungsdaten durch eine völlig neue Serie ersetzen.
Das Ersetzen der Modellfälle ist nützlich, wenn Sie ein Modell für eine Gruppe von Fällen trainieren und dieses Modell dann auf eine andere Datenreihe anwenden möchten.
Zum Ersetzen der Daten erstellen Sie ein
PREDICTION JOINZeitreihenmodell, geben die Quelle der neuen Daten an, und verwenden Sie dasREPLACE_MODEL_CASESArgument.
Hinweis
Sie können keine historischen Vorhersagen erstellen, wenn Sie neue Daten hinzufügen.
Unabhängig davon, ob Sie die Schulungsdaten erweitern oder ersetzen, beginnen Vorhersagen immer mit dem Zeitstempel, der den ursprünglichen Schulungssatz beendet. Anders ausgedrückt: Wenn Ihre neuen Daten n Zeitsegmente enthalten und Sie Vorhersagen für Zeitschritte 1 bis n anfordern, werden die Vorhersagen mit demselben Zeitraum wie die neuen Daten übereinstimmen, und Sie erhalten keine neuen Vorhersagen.
Um neue Vorhersagen für Zeiträume zu erhalten, die sich nicht mit den neuen Daten überlappen, müssen Sie entweder vorhersagen im Zeitsegment n+1 beginnen oder sicherstellen, dass Sie zusätzliche Zeitsegmente anfordern.
Gehen Sie beispielsweise davon aus, dass das vorhandene Modell über sechs Monate an Daten verfügt. Sie möchten dieses Modell erweitern, indem Sie die Umsatzzahlen aus den letzten drei Monaten hinzufügen. Gleichzeitig möchten Sie eine Prognose über die nächsten drei Monate machen. Um nur die neuen Vorhersagen abzurufen, wenn Sie die neuen Daten hinzufügen, geben Sie den Startpunkt als Zeitsegment 4 und den Endpunkt als Zeitsegment 7 an. Sie könnten auch insgesamt sechs Vorhersagen anfordern, aber die Zeitsegmente für die ersten drei würden sich mit den gerade hinzugefügten neuen Daten überlappen.
Abfragebeispiele und weitere Informationen zur Syntax für die Verwendung von REPLACE_MODEL_CASES und EXTEND_MODEL_CASES finden Sie unter PredictTimeSeries (DMX).
Erstellen von Vorhersagen mit EXTEND_MODEL_CASES
Das Vorhersageverhalten unterscheidet sich je nachdem, ob Sie die Modellfälle erweitern oder ersetzen. Wenn Sie ein Modell erweitern, werden die neuen Daten am Ende der Datenreihe angefügt, und die Größe des Trainingssatzes nimmt zu. Die für Vorhersageabfragen verwendeten Zeitsegmente beginnen jedoch immer am Ende der ursprünglichen Datenreihe. Wenn Sie daher drei neue Datenpunkte hinzufügen und sechs Vorhersagen anfordern, überlappen sich die ersten drei zurückgegebenen Vorhersagen mit den neuen Daten. In diesem Fall gibt Analysis Services die tatsächlichen neuen Datenpunkte zurück, anstatt eine Vorhersage vorzunehmen, bis alle neuen Datenpunkte verwendet werden. Anschließend erstellt Analysis Services Vorhersagen basierend auf der zusammengesetzten Datenreihe.
Mit diesem Verhalten können Sie neue Daten hinzufügen und dann Ihre tatsächlichen Umsatzzahlen im Vorhersagediagramm anzeigen, anstatt Projektionen anzuzeigen.
Wenn Sie beispielsweise drei neue Datenpunkte hinzufügen und drei neue Vorhersagen erstellen möchten, gehen Sie wie folgt vor:
Erstellen Sie ein
PREDICTION JOINZeitreihenmodell, und geben Sie die Quelle von drei Monaten neuer Daten an.Fordern Sie Vorhersagen für sechs Zeitsegmente an. Geben Sie dazu 6 Zeitsegmente an, wobei der Ausgangspunkt das Zeitsegment 1 ist und der Endpunkt das Zeitsegment 7 ist. Dies gilt nur für EXTEND_MODEL_CASES.
Um nur die neuen Vorhersagen zu erhalten, geben Sie den Ausgangspunkt als 4 und den Endpunkt als 7 an.
Sie müssen das Argument
EXTEND_MODEL_CASESverwenden.Die tatsächlichen Umsatzzahlen werden für die ersten drei Zeitsegmente zurückgegeben, und Vorhersagen basierend auf dem erweiterten Modell werden für die nächsten drei Zeitsegmente zurückgegeben.
Erstellen von Vorhersagen mit REPLACE_MODEL_CASES
Wenn Sie die Fälle in einem Modell ersetzen, bleibt die Größe des Modells gleich, aber Analysis Services ersetzt die einzelnen Fälle im Modell. Dies ist nützlich für Vorhersagen und Szenarien, in denen die Aufrechterhaltung des Schulungsdatensatzes in einer konstanten Größe wichtig ist.
Beispielsweise verfügt eine Ihrer Stores über unzureichende Verkaufsdaten. Sie können ein allgemeines Modell erstellen, indem Sie die Verkäufe aller Filialen in einer bestimmten Region durchschnittlich berechnen und dann ein Modell trainieren. Um dann Vorhersagen für den Laden ohne genügend Verkaufsdaten zu treffen, erstellen Sie eine PREDICTION JOIN für die neuen Verkaufsdaten nur für diesen Laden. Wenn dies geschieht, behält Analysis Services die Muster aus dem regionalen Modell bei, ersetzt aber die bestehenden Trainingsfälle durch die Daten aus dem einzelnen Geschäft. Daher sind Ihre Vorhersagewerte näher an den Trendlinien für das einzelne Geschäft.
Wenn Sie das REPLACE_MODEL_CASES Argument verwenden, fügt Analysis Services kontinuierlich neue Fälle am Ende des Fallsatzes hinzu und löscht eine entsprechende Zahl vom Anfang des Fallsatzes. Wenn Sie mehr neue Daten als im ursprünglichen Schulungssatz hinzufügen, verwirft Analysis Services die frühesten Daten. Wenn Sie ausreichende neue Werte angeben, können die Vorhersagen auf vollständig neuen Daten basieren.
Sie haben ihr Modell beispielsweise auf einen Falldatensatz trainiert, der 1000 Zeilen enthält. Anschließend fügen Sie 100 Zeilen mit neuen Daten hinzu. Analysis Services legt die ersten 100 Zeilen aus dem Schulungssatz ab und fügt die 100 Zeilen mit neuen Daten am Ende des Satzes für insgesamt 1000 Zeilen hinzu. Wenn Sie 1100 Zeilen mit neuen Daten hinzufügen, werden nur die letzten 1000 Zeilen verwendet.
Hier ist ein weiteres Beispiel. Zum Hinzufügen von drei neuen Monatsdaten und zum Erstellen von drei neuen Vorhersagen führen Sie die folgenden Aktionen aus:
Erstellen Sie ein Zeitreihenmodell mit
PREDICTION JOINund verwenden Sie das ArgumentREPLACE_MODEL_CASE.Geben Sie die Quelle von drei Monaten neuer Daten an. Diese Daten stammen möglicherweise aus einer völlig anderen Quelle als die ursprünglichen Schulungsdaten.
Fordern Sie Vorhersagen für sechs Zeitsegmente an. Geben Sie dazu 6 Zeitsegmente an, oder geben Sie den Startpunkt als Zeitsegment 1 und den Endpunkt als Zeitsegment 7 an.
Hinweis
Im Gegensatz dazu
EXTEND_MODEL_CASESkönnen Sie nicht dieselben Werte zurückgeben, die Sie als Eingabedaten hinzugefügt haben. Alle sechs zurückgegebenen Werte sind Vorhersagen, die auf dem aktualisierten Modell basieren, das sowohl alte als auch neue Daten enthält.Hinweis
Mit REPLACE_MODEL_CASES erhalten Sie ab timestamp 1 neue Vorhersagen basierend auf den neuen Daten, die die alten Schulungsdaten ersetzen.
Abfragebeispiele und weitere Informationen zur Syntax für die Verwendung von REPLACE_MODEL_CASES und EXTEND_MODEL_CASES finden Sie unter PredictTimeSeries (DMX).
Ersetzung fehlender Werte in Zeitreihenmodellen
Wenn Sie einem Zeitreihenmodell mithilfe einer PREDICTION JOIN Anweisung neue Daten hinzufügen, kann das neue Dataset keine fehlenden Werte enthalten. Wenn eine Datenreihe unvollständig ist, muss das Modell die fehlenden Werte mithilfe eines Nullwerts, eines numerischen Mittels, eines bestimmten numerischen Mittels oder eines vorhergesagten Werts angeben. Wenn Sie angeben EXTEND_MODEL_CASES, ersetzt Analysis Services die fehlenden Werte durch Vorhersagen basierend auf dem ursprünglichen Modell. Bei Verwendung REPLACE_MODEL_CASESersetzt Analysis Services die fehlenden Werte durch den Wert, den Sie im parameter MISSING_VALUE_SUBSTITUTION angeben.
Liste der Vorhersagefunktionen
Alle Microsoft-Algorithmen unterstützen einen gemeinsamen Satz von Funktionen. Der Microsoft Time Series-Algorithmus unterstützt jedoch die zusätzlichen Funktionen, die in der folgenden Tabelle aufgeführt sind.
| Vorhersagefunktion | Verwendung |
| Lag (DMX) | Gibt eine Anzahl von Zeitsegmenten zwischen dem Datum des aktuellen Falls und dem letzten Datum des Schulungssatzes zurück. Eine typische Verwendung dieser Funktion besteht darin, aktuelle Schulungsfälle zu identifizieren, damit Sie detaillierte Daten zu den Fällen abrufen können. |
| PredictNodeId (DMX) | Gibt die Knoten-ID für die angegebene vorhersagbare Spalte zurück. Eine typische Verwendung dieser Funktion besteht darin, den Knoten zu identifizieren, der einen bestimmten vorhergesagten Wert generiert hat, sodass Sie die mit dem Knoten verbundenen Fälle überprüfen oder die Formel und andere Details abrufen können. |
| PredictStdev (DMX) | Gibt die Standardabweichung der Vorhersagen in der angegebenen vorhersagbaren Spalte zurück. Diese Funktion ersetzt das argument INCLUDE_STATISTICS, das für Zeitreihenmodelle nicht unterstützt wird. |
| PredictVariance (DMX) | Gibt die Varianz der Vorhersagen für die angegebene vorhersagbare Spalte zurück. Diese Funktion ersetzt das argument INCLUDE_STATISTICS, das für Zeitreihenmodelle nicht unterstützt wird. |
| PredictTimeSeries (DMX) | Gibt vorhergesagte historische Werte oder zukünftige vorhergesagte Werte für eine Zeitreihe zurück. Sie können auch Zeitreihenmodelle abfragen, indem Sie die allgemeine Vorhersagefunktion Predict (DMX) verwenden. |
Eine Liste der Funktionen, die allen Microsoft-Algorithmen gemeinsam sind, finden Sie unter General Prediction Functions (DMX). Informationen zur Syntax bestimmter Funktionen finden Sie unter Data Mining Extensions (DMX) Funktion Referenz.
Siehe auch
Data Mining-Abfragen
Microsoft-Zeitreihenalgorithmus
Technische Referenz zu Microsoft-Zeitreihenalgorithmus
Miningmodellinhalt für Zeitreihenmodelle (Analysis Services - Data Mining)