Esempi di query sul modello di regressione lineare

Si applica a: SQL Server 2019 e versioni precedenti di Analysis Services Azure Analysis Services Fabric/Power BI Premium

Importante

Il data mining è stato deprecato in SQL Server 2017 Analysis Services e ora è stato interrotto in SQL Server 2022 Analysis Services. La documentazione non viene aggiornata per le funzionalità deprecate e non più disponibili. Per altre informazioni, vedere Compatibilità con le versioni precedenti di Analysis Services.

Quando si crea una query su un modello di data mining, è possibile creare una query sul contenuto, che fornisce dettagli sui criteri individuati durante l'analisi, oppure una query di stima, che utilizza i criteri presenti nel modello di data mining per eseguire stime relative a nuovi dati. Una query sul contenuto potrebbe ad esempio fornire dettagli aggiuntivi sulla formula di regressione, mentre una query di stima potrebbe indicare se un nuovo punto dati si adatta al modello. Utilizzando una query è inoltre possibile recuperare metadati relativi al modello.

In questa sezione viene illustrato come creare query per i modelli basati sull'algoritmo Microsoft Linear Regression.

Nota

Poiché la regressione lineare è basata su un case specifico dell'algoritmo Microsoft Decision Trees, sono presenti molte somiglianze e alcuni modelli di albero delle decisioni che utilizzano attributi stimabili continui possono contenere formule di regressione. Per altre informazioni, vedere Guida di riferimento tecnico per l'algoritmo Microsoft Decision Trees.

Query di contenuto

Utilizzo del set di righe dello schema di data mining per determinare i parametri utilizzati per un modello

Utilizzo di DMX per restituire la formula di regressione per il modello

Restituzione solo del coefficiente per il modello

Query di stima

Stima del reddito mediante una query singleton

Utilizzo delle funzioni di stima con un modello di regressione

Ricerca di informazioni sul modello di regressione lineare

La struttura di un modello di regressione lineare è estremamente semplice: il modello di data mining rappresenta i dati come nodo singolo che definisce la formula di regressione. Per altre informazioni, vedere Contenuto del modello di data mining per i modelli di regressione logistica (Analysis Services - Data mining).

Tornare all'inizio

Query di esempio 1: Utilizzo del set di righe dello schema di data mining per determinare i parametri utilizzati per un modello

Eseguendo una query sul set di righe dello schema di data mining, è possibile trovare i metadati relativi al modello. Tali dati potrebbero includere la data di creazione, la data dell'ultima elaborazione del modello, il nome della struttura di data mining sulla quale si basa il modello e il nome della colonna designata come attributo stimabile. È inoltre possibile restituire i parametri utilizzati durante la creazione del modello.

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

Risultati dell'esempio:

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=

Nota

L'impostazione del parametro, "FORCE_REGRESSOR = ", indica che il valore corrente per il parametro FORCE_REGRESSOR è Null.

Tornare all'inizio

Query di esempio 2: Recupero della formula di regressione per il modello

Nella query seguente viene restituito il contenuto del modello di data mining per un modello di regressione lineare compilato utilizzando la stessa origine dati Targeted Mailing utilizzata in Basic Data Mining Tutorial. Questo modello esegue la stima del reddito del cliente in base all'età.

La query restituisce il contenuto del nodo che contiene la formula di regressione. Ogni variabile e ogni coefficiente vengono archiviati in una riga separata della tabella NODE_DISTRIBUTION nidificata. Se si vuole visualizzare la formula di regressione completa, usare il Visualizzatore Microsoft Decision Trees, fare clic sul nodo (Tutti) e aprire Legenda data mining.

SELECT FLATTENED NODE_DISTRIBUTION as t  
FROM LR_PredictIncome.CONTENT  

Nota

Se si fa riferimento a colonne singole della tabella nidificata usando una query quale SELECT <column name> from NODE_DISTRIBUTION, alcune colonne, ad esempio SUPPORT o PROBABILITY, devono essere racchiuse tra parentesi per distinguerle dalle parole chiave riservate con lo stesso nome.

Risultati previsti:

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
Età 471.687717702463 0 0 126,969442359327 7
Età 234.680904692439 0 0 0 8
Età 45,4269617936399 0 0 126,969442359327 9
35793,5477381267 0 0 1012968919,28372 11

In Legenda data mining, invece, la formula di regressione appare come segue:

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

È possibile notare che alcuni numeri di Legenda data miningsono arrotondati. In Legenda data mining sono tuttavia contenuti sostanzialmente gli stessi valori della tabella NODE_DISTRIBUTION.

I valori della colonna VALUETYPE indicano il tipo di informazioni contenuto in ogni riga. Questa indicazione risulta utile se i risultati vengono elaborati a livello di programmazione. Nella tabella seguente sono mostrati i tipi di valore che vengono restituiti per una formula di regressione lineare.

VALUETYPE
1 (Mancante)
3 (Continuo)
7 (Coefficiente)
8 (Miglioramento punteggio)
9 (Statistiche)
7 (Coefficiente)
8 (Miglioramento punteggio)
9 (Statistiche)
11 (Intercetta)

Per altre informazioni sul significato di ogni tipo di valore per i modelli di regressione, vedere Contenuto del modello di data mining per modelli di regressione lineare (Analysis Services - Data Mining).

Tornare all'inizio

Query di esempio 3: Restituzione solo del coefficiente per il modello

Utilizzando l'enumerazione VALUETYPE, è possibile restituire solo il coefficiente per l'equazione di regressione, come mostrato nella query seguente:

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

Questa query restituisce due righe, una dal contenuto del modello di data mining e la riga dalla tabella nidificata che contiene il coefficiente. La colonna ATTRIBUTE_NAME non è inclusa, in quanto è sempre vuota per il coefficiente.

MODEL_NAME t.ATTRIBUTE_VALUE t.VALUETYPE
LR_PredictIncome
LR_PredictIncome 35793,5477381267 11

Tornare all'inizio

Esecuzione di stime da un modello di regressione lineare

È possibile compilare query di stima sui modelli di regressione lineare utilizzando la scheda Stima modello di data mining in Progettazione modelli di data mining. Il generatore di query di stima è disponibile sia in SQL Server Management Studio che in SQL Server Data Tools.

Nota

È anche possibile creare query sui modelli di regressione usando i componenti aggiuntivi di data mining SQL Server 2005 (9.x) per Excel o i componenti aggiuntivi di data mining SQL Server 2008 per Excel. Anche se i componenti aggiuntivi di data mining per Excel non creano modelli di regressione, è possibile esplorare ed eseguire query su qualsiasi modello di data mining archiviato in un'istanza di SQL Server Analysis Services.

Tornare all'inizio

Esempio di query 4: Stima del reddito mediante una query singleton

Il modo più semplice per creare una query singleton su un modello di regressione consiste nell'usare la finestra di dialogo Input query singleton . È ad esempio possibile compilare la query DMX seguente selezionando il modello di regressione adatto, scegliendo Query singletone quindi digitando 20 come valore per Age.

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

Risultati dell'esempio:

Yearly Income
45227,302092176

Tornare all'inizio

Esempio di query 5: Utilizzo delle funzioni di stima con un modello di regressione

È possibile utilizzare molte delle funzioni di stima standard con i modelli di regressione lineare. Nell'esempio seguente viene illustrato come aggiungere alcune statistiche descrittive ai risultati della query di stima. Da questi risultati è possibile notare che esiste una deviazione significativa dalla media per questo modello.

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  

Risultati dell'esempio:

Yearly Income StDev1
45227,302092176 31827,1726561396

Tornare all'inizio

Elenco delle funzioni di stima

Tutti gli algoritmi Microsoft supportano un set comune di funzioni. Tuttavia, l'algoritmo Microsoft Linear Regression supporta le funzioni aggiuntive elencate nella tabella seguente.

Funzione di stima Utilizzo
IsDescendant (DMX) Viene determinato se un nodo è figlio di un altro nodo nel modello.
IsInNode (DMX) Indica se il nodo specificato contiene o meno il case corrente.
PredictHistogram (DMX) Viene restituito un valore, o un set di valori, stimato per una colonna specificata.
PredictNodeId (DMX) Viene restituito l'oggetto Node_ID per ogni case.
PredictStdev (DMX) Viene restituita la deviazione standard per il valore stimato.
PredictSupport (DMX) Viene restituito il valore di supporto per uno stato specificato.
PredictVariance (DMX) Restituisce la varianza di una colonna specificata.

Per un elenco delle funzioni comuni a tutti gli algoritmi Microsoft, vedere Algoritmi di data mining (Analysis Services - Data Mining) . Per altre informazioni su come usare queste funzioni, vedere Informazioni di riferimento sulle funzioni DMX (Data Mining Extensions).

Vedere anche

Algoritmo Microsoft Linear Regression
Query di data mining
Riferimento tecnico per l'algoritmo Microsoft Linear Regression
Contenuto dei modelli di data mining per i modelli di regressione lineare (Analysis Services - Data mining)