Abfragen eines linearen Regressionsmodells (Analysis Services – Data Mining)

Beim Erstellen einer Abfrage für ein Data Mining-Modell können Sie eine Inhaltsabfrage erstellen, die Details über die bei der Analyse ermittelten Muster liefert. Alternativ dazu können Sie auch eine Vorhersageabfrage erstellen, die Vorhersagen für neue Daten anhand der im Modell befindlichen Muster vornimmt. Eine Inhaltsabfrage stellt beispielsweise zusätzliche Details über die Regressionsformel zur Verfügung, während eine Vorhersageabfrage Aufschluss darüber gibt, ob ein neuer Datenpunkt in das Modell passt. Mit einer Abfrage können Sie auch Metadaten zum Modell abrufen.

In diesem Abschnitt wird erläutert, wie Abfragen für Modelle erstellt werden, die auf dem Microsoft Linear Regression-Algorithmus basieren.

HinweisHinweis

Da die lineare Regression auf einem Sonderfall des Microsoft Decision Trees-Algorithmus basiert, gibt es einige Ähnlichkeiten. Einige Entscheidungsstrukturmodelle, die kontinuierliche vorhersagbare Attribute verwenden, können Regressionsformeln enthalten. Weitere Informationen finden Sie unter Technische Referenz für den Microsoft Decision Trees-Algorithmus.

Inhaltsabfragen

Verwenden des Data Mining-Schemarowsets zur Ermittlung der für ein Modell verwendeten Parameter

Verwenden von DMX zur Ermittlung der Regressionsformel für das Modell

Zurückgeben des Koeffizienten für das Modell

Vorhersageabfragen

Vorhersagen von Einkommen mit einer SINGLETON-Abfrage

Verwenden von Vorhersagefunktionen mit einem Regressionsmodell

Suchen nach Informationen über das lineare Regressionsmodell

Die Struktur eines linearen Regressionsmodells ist äußerst einfach. Das Miningmodell repräsentiert die Daten als einzelnen Knoten, der die Regressionsformel definiert. Weitere Informationen finden Sie unter Miningmodellinhalt von logistischen Regressionsmodellen (Analysis Services – Data Mining).

Zurück zum Anfang

Beispielabfrage 1: Verwenden des Data Mining-Schemarowsets zur Ermittlung der für ein Modell verwendeten Parameter

Metadaten für das Modell finden Sie, indem Sie das Data Mining-Schemarowset abfragen. Dazu gehören beispielsweise das Erstellungsdatum des Modells, das Datum der letzten Verarbeitung, der Name der Miningstruktur, auf der das Modell basiert, und der Name der als vorhersagbares Attribut verwendeten Spalte. Sie können auch die Parameter zurückgeben, die beim ersten Erstellen des Modells verwendet wurden.

SELECT MINING_PARAMETERS 
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_PredictIncome'

Beispielergebnisse:

MINING_PARAMETERS

COMPLEXITY_PENALTY=0.9,

MAXIMUM_INPUT_ATTRIBUTES=255,

MAXIMUM_OUTPUT_ATTRIBUTES=255,

MINIMUM_SUPPORT=10,

SCORE_METHOD=4,

SPLIT_METHOD=3,

FORCE_REGRESSOR=

HinweisHinweis

Die Einstellung des Parameters FORCE_REGRESSOR = gibt an, dass der aktuelle Wert für den FORCE_REGRESSOR-Parameter NULL ist.

Zurück zum Anfang

Beispielabfrage 2: Abrufen der Regressionsformel für das Modell

Die folgende Abfrage gibt den Miningmodellinhalt für ein lineares Regressionsmodell zurück, das mit der Targeted Mailing-Datenquelle erstellt wurde, die bereits im Lernprogramm zu Data Mining-Grundlagen verwendet wurde. Dieses Modell sagt das Kundeneinkommen basierend auf dem Alter vorher.

Die Abfrage gibt den Inhalt des Knotens zurück, der die Regressionsformel enthält. Jede Variable und jeder Koeffizient wird in einer separaten Zeile der geschachtelten NODE_DISTRIBUTION-Tabelle gespeichert. Wenn Sie die vollständige Regressionsformel anzeigen möchten, verwenden Sie den Microsoft Tree-Viewer, klicken Sie auf den Knoten (All), und öffnen Sie die Mininglegende.

SELECT FLATTENED NODE_DISTRIBUTION as t
FROM LR_PredictIncome.CONTENT
HinweisHinweis

Wenn Sie auf einzelne Spalten der geschachtelten Tabelle durch Verwenden einer Abfrage wie SELECT <column name> from NODE_DISTRIBUTION verweisen, müssen einige Spalten, wie SUPPORT oder PROBABILITY, in Klammern eingeschlossen werden, um sie von den gleichnamigen reservierten Schlüsselwörtern zu unterscheiden.

Erwartete Ergebnisse:

t.ATTRIBUTE_NAME

t.ATTRIBUTE_VALUE

t.SUPPORT

t.PROBABILITY

t.VARIANCE

t.VALUETYPE

Yearly Income

Missing

0

0.000457142857142857

0

1

Yearly Income

57220.8876687257

17484

0.999542857142857

1041275619.52776

3

Age

471.687717702463

0

0

126.969442359327

7

Age

234.680904692439

0

0

0

8

Age

45.4269617936399

0

0

126.969442359327

9

  

35793.5477381267

0

0

1012968919.28372

11

In Vergleich dazu wird die Regressionsformel in der Mininglegende wie folgt angezeigt:

Yearly Income = 57,220.919 + 471.688 * (Age - 45.427)

In der Mininglegende sind einige Zahlen gerundet. Die NODE_DISTRIBUTION-Tabelle und die Mininglegende enthalten im Wesentlichen jedoch die gleichen Werte.

Die Werte in der VALUETYPE-Spalte geben Aufschluss über die Art der in jeder Zeile enthaltenen Informationen. Dies ist nützlich, wenn Sie die Ergebnisse programmgesteuert verarbeiten. In der folgenden Tabelle werden die Werttypen, die für eine lineare Regressionsformel ausgegeben werden, angezeigt.

VALUETYPE

1 (Missing)

3 (Continuous)

7 (Koeffizient)

8 (Score Gain)

9 (Statistik)

7 (Koeffizient)

8 (Score Gain)

9 (Statistik)

11 (Intercept)

Weitere Informationen über die Bedeutung der einzelnen Werttypen für Regressionsmodelle finden Sie unter Miningmodellinhalt von linearen Regressionsmodellen (Analysis Services – Data Mining).

Zurück zum Anfang

Beispielabfrage 3: Zurückgeben des Koeffizienten für das Modell

Mit der VALUETYPE-Enumeration können Sie nur den Koeffizienten für die Regressionsgleichung zurückgeben, wie in der folgenden Abfrage veranschaulicht:

SELECT FLATTENED MODEL_NAME,
    (SELECT ATTRIBUTE_VALUE, VALUETYPE
     FROM NODE_DISTRIBUTION
     WHERE VALUETYPE = 11) 
AS t
FROM LR_PredictIncome.CONTENT

Mit dieser Abfrage werden zwei Zeilen zurückgegeben, eine Zeile aus dem Miningmodellinhalt und die Zeile der geschachtelten Tabelle, die den Koeffizienten enthält. Die Spalte ATTRIBUTE_NAME ist hier nicht eingeschlossen, da sie für den Koeffizienten stets leer ist.

MODEL_NAME

t.ATTRIBUTE_VALUE

t.VALUETYPE

LR_PredictIncome

  

  

LR_PredictIncome

35793.5477381267

11

Zurück zum Anfang

Treffen von Vorhersagen mit einem linearen Regressionsmodell

Mit der Registerkarte Miningmodellvorhersage im Data Mining-Designer können Sie Vorhersageabfragen für lineare Regressionsmodelle erstellen. Der Generator für Vorhersageabfragen ist sowohl in SQL Server Management Studio als auch in Business Intelligence Development Studio verfügbar.

HinweisHinweis

Abfragen für Regressionsmodelle können Sie auch mit SQL Server 2005 Data Mining-Add-Ins für Excel oder SQL Server 2008 Data Mining-Add-Ins für Excel erstellen. Auch wenn die Data Mining-Add-Ins für Excel keine Regressionsmodelle erstellen, können Sie jedes Miningmodell, das in einer Analysis Services-Instanz gespeichert ist, durchsuchen und abfragen.

Zurück zum Anfang

Beispielabfrage 4: Vorhersagen von Einkommen mit einer SINGLETON-Abfrage

Die einfachste Möglichkeit zum Erstellen einer einzelnen Abfrage für ein Regressionsmodell bietet das Dialogfeld SINGLETON-Abfrageeingabe. Sie können die folgende DMX-Abfrage erstellen, indem Sie das entsprechende Regressionsmodell auswählen und anschließend Singleton-Abfrage auswählen. Geben Sie anschließend den Wert 20 für Age ein.

SELECT [LR_PredictIncome].[Yearly Income]
From   [LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t

Beispielergebnisse:

Yearly Income

45227.302092176

Zurück zum Anfang

Beispielabfrage 5: Verwenden von Vorhersagefunktionen mit einem Regressionsmodell

Sie können viele der Standardvorhersagefunktionen mit linearen Regressionsmodellen verwenden. Im folgenden Beispiel wird veranschaulicht, wie den Vorhersageabfrageergebnissen einige aussagekräftige statistische Daten hinzugefügt werden. Aus diesen Ergebnissen ist ersichtlich, dass es eine beträchtliche Abweichung vom Mittelwert für dieses Modell gibt.

SELECT
  ([LR_PredictIncome].[Yearly Income]) as [PredIncome],
  (PredictStdev([LR_PredictIncome].[Yearly Income])) as [StDev1]
From
  [LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t

Beispielergebnisse:

Yearly Income

StDev1

45227.302092176

31827.1726561396

Zurück zum Anfang

Liste der Vorhersagefunktionen

Alle Microsoft-Algorithmen unterstützen einen gängigen Satz von Funktionen. Allerdings unterstützt der Microsoft Linear Regression-Algorithmus zusätzliche Funktionen, die in der folgenden Tabelle aufgelistet sind.

Eine Liste der Funktionen, die von allen Microsoft-Algorithmen gemeinsam verwendet werden, finden Sie unter Data Mining-Algorithmen (Analysis Services - Data Mining). Weitere Informationen zum Verwenden dieser Funktionen finden Sie unter Data Mining-Erweiterungen (DMX) - Funktionsreferenz.