Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Quando si crea una query su un modello di data mining, è possibile creare una query sul contenuto, che fornisce informazioni dettagliate sui modelli individuati nell'analisi oppure è possibile creare una query di stima, che usa i modelli nel modello per eseguire stime usando nuovi dati.
Questa sezione illustra come creare query per i modelli basati sull'algoritmo Microsoft Logistic Regression.
Query sul contenuto
Recupero dei parametri del modello tramite il set di righe dello schema di data mining
Ricerca di dettagli aggiuntivi sul modello tramite DMX
Query di previsione
Esecuzione di stime per un valore continuo
Esecuzione di stime per un valore discreto
Recupero di informazioni sul modello di regressione logistica
I modelli di regressione logistica vengono creati usando l'algoritmo Microsoft Neural Network con un set speciale di parametri; pertanto, un modello di regressione logistica ha alcune delle stesse informazioni di un modello di reti neurali, ma è meno complesso. Per comprendere la struttura del contenuto del modello e i tipi di nodo in cui sono archiviate le informazioni, vedere Contenuto del modello di data mining per i modelli di regressione logistica (Analysis Services - Data mining).
Per seguire gli scenari di query, è possibile creare un modello di regressione logistica come descritto nella sezione seguente dell'Esercitazione intermedia sul data mining: Lezione 5: Compilazione di modelli di rete neurale e regressione logistica (Esercitazione intermedia sul data mining).
È anche possibile utilizzare la struttura di data mining, Targeted Mailing, nell'esercitazione di base sul data mining.
ALTER MINING STRUCTURE [Targeted Mailing]
ADD MINING MODEL [TM_Logistic Regression]
([Customer Key],
[Age],
[Bike Buyer] PREDICT,
[Yearly Income] PREDICT,
[Commute Distance],
[English Education],
Gender,
[House Owner Flag],
[Marital Status],
[Number Cars Owned],
[Number Children At Home],
[Region],
[Total Children]
)
USING Microsoft_Logistic_Regression
Query di esempio 1: Recupero dei parametri del modello tramite il set di righe dello schema di data mining
Eseguendo una query sul set di righe dello schema di data mining, è possibile trovare metadati sul modello, ad esempio quando è stato creato, quando il modello è stato elaborato per l'ultima volta, il nome della struttura di data mining su cui si basa il modello e il nome della colonna utilizzata come attributo stimabile. Nell'esempio seguente vengono restituiti i parametri utilizzati al momento della creazione del modello, insieme al nome e al tipo del modello e alla data di creazione.
SELECT MODEL_NAME, SERVICE_NAME, DATE_CREATED, MINING_PARAMETERS
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'Call Center_LR'
Risultati di esempio:
| MODEL_NAME | SERVICE_NAME | DATE_CREATED | PARAMETRI_MINERARI |
|---|---|---|---|
| Centro Assistenza Clienti_LR | Microsoft_Logistic_Regression | 04/07/2009 20:38:33 | HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=1, MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MAXIMUM_STATES=100, SAMPLE_SIZE=10000 |
Esempio di query 2: ricerca di dettagli aggiuntivi sul modello tramite DMX
La query seguente restituisce alcune informazioni di base sul modello di regressione logistica. Un modello di regressione logistica è simile a un modello di rete neurale in molti modi, inclusa la presenza di un nodo statistico marginale (NODE_TYPE = 24) che descrive i valori usati come input. Questo esempio di query utilizza il modello Mailing mirato e ottiene i valori di tutti gli input recuperandoli dalla tabella nidificata NODE_DISTRIBUTION.
SELECT FLATTENED NODE_DISTRIBUTION AS t
FROM [TM_Logistic Regression].CONTENT
Risultati parziali:
| t.ATTRIBUTE_NAME | t.ATTRIBUTE_VALUE | t.SUPPORT | t.PROBABILITÀ | t.VARIANZA | t.VALUETYPE |
|---|---|---|---|---|---|
| Età | Mancante | 0 | 0 | 0 | 1 |
| Età | 45.43491192 | 17484 | 1 | 126.9544114 | 3 |
| Acquirente di biciclette | Mancante | 0 | 0 | 0 | 1 |
| Acquirente di Bici | 0 | 8869 | 0.507263784 | 0 | 4 |
| Acquirente di biciclette | 1 | 8615 | 0.492736216 | 0 | 4 |
| Distanza del pendolarismo | Mancante | 0 | 0 | 0 | 1 |
| Distanza del pendolarismo | 5-10 miglia | 3033 | 0.173472889 | 0 | 4 |
La query effettiva restituisce molte più righe; Tuttavia, questo esempio illustra il tipo di informazioni fornite sugli input. Per gli input discreti, ogni valore possibile è elencato nella tabella . Per gli input a valore continuo, ad esempio Age, un elenco completo è impossibile, quindi l'input viene discretizzato come media. Per altre informazioni su come usare le informazioni nel nodo delle statistiche marginali, vedere Contenuto del modello di data mining per i modelli di regressione logistica (Analysis Services - Data mining).
Annotazioni
I risultati sono stati semplificati per una visualizzazione più agevole, ma è possibile restituire la tabella nidificata in una singola colonna se il provider supporta insiemi di righe gerarchici.
Query di stima su un modello di regressione logistica
È possibile usare la funzione Predict (DMX) con ogni tipo di modello di data mining per fornire nuovi dati al modello ed eseguire stime in base ai nuovi valori. È anche possibile usare funzioni per restituire informazioni aggiuntive sulla stima, ad esempio la probabilità che una stima sia corretta. Questa sezione fornisce alcuni esempi di query di stima su un modello di regressione logistica.
Query di esempio 3: Esecuzione di stime per un valore continuo
Poiché la regressione logistica supporta l'uso di attributi continui sia per l'input che per la stima, è facile creare modelli che correlano vari fattori nei dati. È possibile usare le query di stima per esplorare la relazione tra questi fattori.
L'esempio di query seguente si basa sul modello di call center dell'esercitazione intermedia e crea una query unica che prevede il livello di servizio per il turno di venerdì mattina. La funzione PredictHistogram (DMX) restituisce una tabella nidificata che fornisce statistiche rilevanti per comprendere la validità del valore stimato.
SELECT
Predict([Call Center_LR].[Service Grade]) as Predicted ServiceGrade,
PredictHistogram([Call Center_LR].[Service Grade]) as [Results],
FROM
[Call Center_LR]
NATURAL PREDICTION JOIN
(SELECT 'Friday' AS [Day Of Week],
'AM' AS [Shift]) AS t
Risultati di esempio:
Grado di servizio stimato: 0.102601830123659
Risultati
| Livello di servizio | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY | $VARIANZA | $STDEV |
|---|---|---|---|---|---|
| 0.102601830123659 | 83.0232558139535 | 0.988372093023256 | 0 | 0.00120552660600087 | 0.034720694203902 |
| 0.976744186046512 | 0.0116279069767442 | 0.0116279069767442 | 0 | 0 |
Per altre informazioni sui valori di probabilità, supporto e deviazione standard nella tabella NODE_DISTRIBUTION annidata, vedere Contenuto del modello di data mining per i modelli di regressione logistica (Analysis Services - Data mining).
Query di esempio 4: Esecuzione di stime per un valore discreto
La regressione logistica viene in genere usata negli scenari in cui si vogliono analizzare i fattori che contribuiscono a un risultato binario. Anche se il modello usato nell'esercitazione prevede un valore continuo, ServiceGrade, in uno scenario reale è consigliabile configurare il modello per stimare se il livello di servizio ha soddisfatto un valore di destinazione discretizzato. In alternativa, è possibile restituire le stime usando un valore continuo, ma successivamente raggruppare i risultati stimati in Good, Fair o Poor.
Nell'esempio seguente viene illustrato come modificare la modalità di raggruppamento dell'attributo stimabile. A tale scopo, creare una copia della struttura di data mining e quindi modificare il metodo di discretizzazione della colonna di destinazione in modo che i valori siano raggruppati anziché continui.
La procedura seguente descrive come modificare il raggruppamento dei valori di Livello di servizio nei dati del Call Center.
Per creare una versione discretizzata della struttura e dei modelli di data mining del Call Center
In SQL Server Data Tools (SSDT), in Esplora soluzioni, espandi Strutture di data mining.
Fare clic con il pulsante destro del mouse su Call Center.dmm e scegliere Copia.
Fare clic con il pulsante destro del mouse su Strutture di data mining e scegliere Incolla. Viene aggiunta una nuova struttura di mining denominata Call Center 1.
Fare clic con il pulsante destro del mouse sulla nuova struttura di mining e scegliere Rinomina. Digitare il nuovo nome, Call Center Discretized.
Fare doppio clic sulla nuova struttura di mining per aprirla nell'ambiente di progettazione. Si noti che anche i modelli di data mining sono stati copiati e che tutti hanno l'estensione 1. Lasciare invariati i nomi per il momento.
Nella scheda Struttura di Mining, fare clic con il tasto destro sulla colonna del Livello di servizio e scegliere Proprietà.
Modificare la
Contentproprietà da Continuous a Discretized. Modificare laDiscretizationMethodproprietà in Clusters. Per Discretization BucketCount digitare 3.Annotazioni
Questi parametri vengono usati solo per illustrare il processo e non producono necessariamente un modello valido,
Dal menu Modello di data mining selezionare Struttura processo e tutti i modelli.
La query di esempio seguente si basa su questo modello discretizzato e stima il livello di servizio per il giorno specificato della settimana, insieme alle probabilità per ogni risultato stimato.
SELECT
(PredictHistogram([Call Center_LR 1].[Service Grade])) as [Predictions]
FROM
[Call Center_LR 1]
NATURAL PREDICTION JOIN
(SELECT 'Saturday' AS [Day Of Week]) AS t
Risultati previsti:
Previsioni
| Livello di servizio | $SUPPORT | $PROBABILITY | $PROBABILITÀ_AGGIUSTATA | $VARIANZA | $STDEV |
|---|---|---|---|---|---|
| 0.10872718383125 | 35.7246504770641 | 0.425293458060287 | 0.0170168360030293 | 0 | 0 |
| 0.05855769230625 | 31.7098880800703 | 0.377498667619885 | 0.020882020060454 | 0 | 0 |
| 0.170169491525 | 15.6109159883202 | 0.185844237956192 | 0.0661386571386049 | 0 | 0 |
| 0.954545454545455 | 0.0113636363636364 | 0.0113636363636364 | 0 | 0 |
Si noti che i risultati stimati sono stati raggruppati in tre categorie come specificato; Tuttavia, questi raggruppamenti si basano sul clustering dei valori effettivi nei dati, non valori arbitrari che è possibile impostare come obiettivi aziendali.
Elenco di funzioni di stima
Tutti gli algoritmi Microsoft supportano un set comune di funzioni. Tuttavia, l'algoritmo Microsoft Logistic Regression supporta le funzioni aggiuntive elencate nella tabella seguente.
| Funzione di Predizione | Uso |
| IsDescendant (DMX) | Determina se un nodo è figlio di un altro nodo nel modello. |
| PredictAdjustedProbability (DMX) | Restituisce la probabilità modificata di uno stato specificato. |
| PredictHistogram (DMX) | Restituisce un valore stimato o un set di valori per una colonna specificata. |
| PredictProbability (DMX) | Restituisce la probabilità per uno stato specificato. |
| PredictStdev (DMX) | Restituisce la deviazione standard per il valore stimato. |
| PredictSupport (DMX) | Restituisce 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 Funzioni di stima generale (DMX). Per la sintassi di funzioni specifiche, vedere Informazioni di riferimento sulle funzioni DMX (Data Mining Extensions).
Annotazioni
Per i modelli di rete neurale e regressione logistica, la funzione PredictSupport (DMX) restituisce un singolo valore che rappresenta le dimensioni del set di training per l'intero modello.
Vedere anche
Query di estrazione dei dati
Algoritmo di Regressione Logistica Microsoft
Riferimento tecnico per l'algoritmo Microsoft Logistic Regression
Contenuto del modello di data mining per i modelli di regressione logistica (Analysis Services - Data mining)
Lezione 5: Creazione di modelli di rete neurale e regressione logistica (esercitazione intermedia sul data mining)