Freigeben über


Beispiele für lineare Regressionsmodellabfragen

Wenn Sie eine Abfrage für ein Data Mining-Modell erstellen, können Sie eine Inhaltsabfrage erstellen, die Details zu den mustern bereitstellt, die in der Analyse ermittelt werden, oder Sie können eine Vorhersageabfrage erstellen, die die Muster im Modell verwendet, um Vorhersagen für neue Daten zu erstellen. Eine Inhaltsabfrage kann z. B. zusätzliche Details zur Regressionsformel bereitstellen, während eine Vorhersageabfrage Ihnen möglicherweise mitteilen kann, ob ein neuer Datenpunkt zum Modell passt. Mithilfe 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.

Hinweis

Da die lineare Regression auf einem speziellen Fall des Microsoft Decision Trees-Algorithmus basiert, gibt es viele Ähnlichkeiten, und einige Entscheidungsstrukturmodelle, die kontinuierliche vorhersagbare Attribute verwenden, können Regressionsformeln enthalten. Weitere Informationen finden Sie in der technischen Referenz zum Microsoft Decision Trees-Algorithmus.

Inhaltsabfragen

Verwenden des Data Mining-Schema-Rowset zum Bestimmen von Parametern, die für ein Modell verwendet werden

Verwenden von DMX, um die Regressionsformel für das Modell zurückzugeben

Zurückgeben nur des Koeffizients für das Modell

Vorhersageabfragen

Prognostizieren von Einnahmen mithilfe einer Singleton-Abfrage

Verwenden von Vorhersagefunktionen mit einem Regressionsmodell

Suchen von Informationen zum linearen Regressionsmodell

Die Struktur eines linearen Regressionsmodells ist extrem einfach: Das Miningmodell stellt die Daten als einzelner Knoten dar, der die Regressionsformel definiert. Weitere Informationen finden Sie unter Mining Model Content for Logistic Regression Models (Analysis Services - Data Mining).

Zurück zum Anfang

Beispielabfrage 1: Verwenden des Data Mining-Schema-Rowset zum Ermitteln von Parametern, die für ein Modell verwendet werden

Durch Abfragen des Data Mining-Schema-Rowsets finden Sie Metadaten zum Modell. Dies könnte Folgendes umfassen: wann das Modell erstellt wurde, wann das Modell zuletzt verarbeitet wurde und den Namen der Miningstruktur, auf der das Modell basiert, sowie den Namen der Spalte, die als vorhersagbares Attribut bezeichnet wird. 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,

MAXIMALE_AUSGABE_ATTRIBUTEN=255

MINIMUM_SUPPORT=10,

SCORE_METHOD=4,

SPLIT_METHOD=3,

FORCE_REGRESSOR=

Hinweis

Die Parametereinstellung " "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 mithilfe derselben Targeted Mailing-Datenquelle erstellt wurde, die im Lernprogramm zum Einfachen Data Mining verwendet wurde. Dieses Modell prognostiziert das Kundeneinkommen basierend auf dem Alter.

Die Abfrage gibt den Inhalt des Knotens zurück, der die Regressionsformel enthält. Jede Variable und jeder Koeffizienten 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 (Alle), und öffnen Sie die Mininglegende.

SELECT FLATTENED NODE_DISTRIBUTION as t  
FROM LR_PredictIncome.CONTENT  

Hinweis

Wenn Sie auf einzelne Spalten der geschachtelten Tabelle verweisen, indem Sie eine Abfrage wie SELECT <column name> from NODE_DISTRIBUTION verwenden, müssen einige Spalten, wie UNTERSTÜTZUNG oder WAHRSCHEINLICHKEIT, in eckige Klammern eingeschlossen werden, um sie von reservierten Schlüsselwörtern desselben Namens zu unterscheiden.

Erwartete Ergebnisse:

t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.UNTERSTÜTZUNG t.W'keit t.VARIANCE t.VALUETYPE
Jahreseinkommen Fehlend 0 0.000457142857142857 0 1
Jahreseinkommen 57220.8876687257 17484 0.999542857142857 1041275619.52776 3
Alter 471.687717702463 0 0 126.969442359327 7
Alter 234,680904692439 0 0 0 8
Alter 45.4269617936399 0 0 126.969442359327 9
35793.5477381267 0 0 1012968919.28372 11

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

Jahreseinkommen = 57.220.919 + 471.688 * (Alter - 45,427)

Sie können sehen, dass in der Mininglegende einige Zahlen gerundet werden; Die NODE_DISTRIBUTION Tabelle und die Mininglegende enthalten jedoch im Wesentlichen dieselben Werte.

Die Werte in der Spalte WERTTYPE geben Ihnen an, welche Art von Informationen in jeder Zeile enthalten sind, was nützlich ist, wenn Sie die Ergebnisse programmgesteuert verarbeiten. In der folgenden Tabelle sind die Werttypen aufgeführt, die für eine lineare Regressionsformel ausgegeben werden.

WERTTYP
1 (Fehlt)
3 (fortlaufend)
7 (Koeffizient)
8 (Score Gain)
9 (Statistik)
7 (Koeffizient)
8 (Punkteanstieg)
9 (Statistik)
11 (Abschnitt)

Weitere Informationen zur Bedeutung jedes Werttyps für Regressionsmodelle finden Sie unter Mining Model Content for Linear Regression Models (Analysis Services - Data Mining).

Zurück zum Anfang

Beispielabfrage 3: Nur der Koeffizient für das Modell zurückgegeben.

Mithilfe der VALUETYPE-Aufzählung können Sie nur den Koeffizienten für die Regressionsgleichung zurückgeben, wie in der folgenden Abfrage dargestellt:

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

Diese Abfrage gibt zwei Zeilen zurück, eine aus dem Miningmodellinhalt und die Zeile aus der geschachtelten Tabelle, die den Koeffizienten enthält. Die ATTRIBUTE_NAME Spalte ist hier nicht enthalten, da sie für den Koeffizienten immer leer ist.

MODEL_NAME t.ATTRIBUTE_VALUE t.VALUETYPE
LR_PredictIncome
LR_VorhersageEinkommen 35793.5477381267 11

Zurück zum Anfang

Erstellen von Vorhersagen aus einem linearen Regressionsmodell

Sie können Vorhersageabfragen auf linearen Regressionsmodellen erstellen, indem Sie die Registerkarte "Miningmodellvorhersage" im Data Mining-Designer verwenden. Der Vorhersageabfrage-Generator ist sowohl in SQL Server Management Studio als auch in SQL Server Data Tools (SSDT) verfügbar.

Hinweis

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

Zurück zum Anfang

Beispielabfrage 4: Vorhersage des Einkommens mithilfe einer Singleton-Abfrage

Die einfachste Möglichkeit zum Erstellen einer einzelnen Abfrage für ein Regressionsmodell ist die Verwendung des Dialogfelds "Singleton-Abfrageeingabe ". Sie können zum Beispiel die folgende Regressionabfrage erstellen, indem Sie das entsprechende Regressionsmodell auswählen, Singleton Query auswählen und dann 20 als Wert für Age eingeben.

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

Beispielergebnisse:

Jahreseinkommen
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 Sie den Vorhersageabfrageergebnissen einige beschreibende Statistiken hinzufügen. Aus diesen Ergebnissen können Sie sehen, dass es eine erhebliche 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:

Jahreseinkommen StDev1
45227.302092176 31827.1726561396

Zurück zum Anfang

Liste der Vorhersagefunktionen

Alle Microsoft-Algorithmen unterstützen einen gemeinsamen Satz von Funktionen. Der Microsoft Linear Regression-Algorithmus unterstützt jedoch die in der folgenden Tabelle aufgeführten zusätzlichen Funktionen.

Vorhersagefunktion Verwendung
IsDescendant (DMX) Bestimmt, ob ein Knoten ein Kindknoten eines anderen Knotens im Modell ist.
IsInNode (DMX) Gibt an, ob der angegebene Knoten den aktuellen Fall enthält.
PredictHistogram (DMX) Gibt einen vorhergesagten Wert oder wertesatz für eine angegebene Spalte zurück.
PredictNodeId (DMX) Gibt die Node_ID für jeden Fall zurück.
PredictStdev (DMX) Gibt die Standardabweichung für den vorhergesagten Wert zurück.
PredictSupport (DMX) Gibt den Unterstützungswert für einen angegebenen Zustand zurück.
PredictVariance (DMX) Gibt die Varianz einer angegebenen Spalte zurück.

Eine Liste der Funktionen, die allen Microsoft-Algorithmen gemeinsam sind, finden Sie unter Data Mining-Algorithmen (Analysis Services – Data Mining). Weitere Informationen zur Verwendung dieser Funktionen finden Sie in der Data Mining Extensions (DMX)-Funktionsreferenz.

Siehe auch

Microsoft Linear Regressionsalgorithmus
Data Mining-Abfragen
Technische Referenz zum Microsoft Linear Regressionsalgorithmus
Miningmodellinhalt für lineare Regressionsmodelle (Analysis Services - Data Mining)