Condividi tramite


Stima delle associazioni (Esercitazione intermedia sul data mining)

Dopo avere elaborato i modelli, è possibile utilizzare le informazioni sulle associazioni archiviate nei modelli per creare stime. Nell'attività finale di questa lezione verrà illustrato come compilare query di stima rispetto nei modelli di associazione creati. In questa lezione si presuppone che l'utente abbia familiarità con l'utilizzo del generatore delle query di stima e desideri apprendere come compilare query di stima mediante modelli di associazione. Per altre informazioni sull'uso di Generatore query di stima, vedere Interfacce di query di data mining.

Creazione di una query di stima singleton

Le query di stima in un modello di associazione possono essere molto utili per:

  • Consigliare articoli a un cliente, in base ad acquisti correlati o precedenti

  • Trovare eventi correlati.

  • Identificare relazioni nei set di transazioni.

Per compilare una query di stima, è innanzitutto necessario selezionare il modello di associazione che si desidera utilizzare, quindi specificare i dati di input. È possibile recuperare gli input da un'origine dati esterna, ad esempio un elenco di valori, oppure compilare una query singleton e fornire i valori.

Per questo scenario verranno dapprima create alcune query di stima singleton, per avere un'idea del funzionamento delle stime. Si creerà quindi una query per le stime batch che è possibile utilizzare per dare consigli a un cliente sulla base dei suoi acquisti correnti.

Per creare una query di stima basata su un modello di associazione

  1. Fare clic sulla scheda Stima modello di data mining di Designer di data mining.

  2. Nel riquadro Modello di data mining fare clic su Seleziona modello. Se è già selezionato il modello corretto, ignorare questo passaggio e quello successivo.

  3. Nella finestra di dialogo Seleziona modello di data mining espandere il nodo che rappresenta l'associazione della struttura di data mining e selezionare l'associazione del modello. Fare clic su OK.

    Ai fini di questa esercitazione, è possibile ignorare il riquadro di input.

  4. Nella griglia fare clic sulla cella vuota in Origine e selezionare Funzione di stima. Nella cella in Campo selezionare PredictAssociation.

    È anche possibile usare la funzione Predict per stimare le associazioni. In questo caso, assicurarsi di scegliere la versione della funzione Predict che accetta una colonna di tabella come argomento.

  5. Nel riquadro Modello di data mining selezionare la tabella vAssocSeqLineItemsnidificata e trascinarla nella griglia nella casella Criteri/Argomento per la PredictAssociation funzione.

    Il trascinamento dei nomi di tabella e colonna consente di compilare istruzioni complesse senza errori di sintassi. Tuttavia, sostituisce il contenuto corrente della cella, che include altri argomenti facoltativi per la PredictAssociation funzione. Per visualizzare gli altri argomenti, è possibile aggiungere temporaneamente una seconda istanza della funzione alla griglia per riferimento.

  6. Fare clic sulla casella Criteri/Argomento e digitare il testo seguente dopo il nome della tabella: ,3

    Il testo completo nella casella Criteri/Argomento deve essere il seguente:

    [Association].[v Assoc Seq Line Items],3

  7. Fare clic sul pulsante Risultati nell'angolo superiore di Generatore query di stima.

I risultati previsti contengono una singola colonna con l'intestazione Expression. La colonna Espressione contiene una tabella nidificata con una singola colonna e le tre righe seguenti. Poiché non è stato specificato un valore di input, queste stime rappresentano le associazioni di prodotti più probabili per il modello nel suo complesso.

Modellare
Women's Mountain Shorts
Water Bottle
Touring-3000

Si userà quindi il riquadro Input query Singleton per specificare un prodotto come input per la query e visualizzare i prodotti che probabilmente sono associati a tale elemento.

Per creare una query di stima singleton con gli input della tabella nidificata

  1. Fare clic sul pulsante Progettazione nell'angolo di Generatore query di stima per tornare alla griglia di compilazione della query.

  2. Scegliere Query Singleton dal menu Modello di data mining.

  3. Nella finestra di dialogo Modello di data mining selezionare il modello di associazione .

  4. Nella griglia fare clic sulla cella vuota in Origine e selezionare Funzione di stima. Nella cella in Campo selezionare PredictAssociation.

  5. Nel riquadro Modello di data mining selezionare la tabella vAssocSeqLineItemsnidificata e trascinarla nella griglia nella casella Criteri/Argomento per la PredictAssociation funzione. Digitare ,3 dopo il nome della tabella nidificata esattamente come nella procedura precedente.

  6. Nella finestra di dialogo Input query Singleton fare clic sulla casella Valore accanto a vAssoc Seq Line Items e quindi fare clic sul pulsante (...) .

  7. Nella finestra di dialogo Input tabella annidata selezionare Touring Tire nel riquadro Colonna chiave e quindi fare clic su Aggiungi.

  8. Fare clic sul pulsante Risultati .

I risultati mostrano ora le stime relative ai prodotti che sono con la massima probabilità associati a Touring Tire.

Modellare
Touring Tire Tube
Sport-100
Water Bottle

Dall'esplorazione del modello si è già appreso tuttavia che Touring Tire Tube viene frequentemente acquistato insieme a Touring Tire. Si è tuttavia maggiormente interessati a individuare i prodotti che è possibile consigliare ai clienti che acquistano questi articoli congiuntamente. Si modificherà quindi la query in modo da stimare i prodotti correlati in base ai due articoli inclusi tra gli acquisti, aggiungendovi inoltre la probabilità per ogni prodotto stimato.

Per aggiungere input e probabilità alla query di stima singleton

  1. Fare clic sul pulsante Progettazione nell'angolo di Generatore query di stima per tornare alla griglia di compilazione della query.

  2. Nella finestra di dialogo Input query Singleton fare clic sulla casella Valore accanto a vAssoc Seq Line Items e quindi fare clic sul pulsante (...) .

  3. Nel riquadro Colonna chiave selezionare Touring Tiree quindi fare clic su Aggiungi.

  4. Nella griglia fare clic sulla cella vuota in Origine e selezionare Funzione di stima. Nella cella in Campo selezionare PredictAssociation.

  5. Nel riquadro Modello di data mining selezionare la tabella vAssocSeqLineItemsnidificata e trascinarla nella griglia nella casella Criteri/Argomento per la PredictAssociation funzione. Digitare ,3 dopo il nome della tabella nidificata esattamente come nella procedura precedente.

  6. Nella finestra di dialogo Input tabella annidata selezionare Touring Tire Tube nel riquadro Colonna chiave e quindi fare clic su Aggiungi.

  7. Nella griglia, nella riga per la PredictAssociation funzione, fare clic sulla casella Criteri/Argomento e modificare gli argomenti per aggiungere l'argomento INCLUDE_STATISTICS.

    Il testo completo nella casella Criteri/Argomento deve essere il seguente:

    [Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3

  8. Fare clic sul pulsante Risultati .

I risultati nella tabella nidificata mostrano ora le stime, insieme al supporto e alla probabilità. Per altre informazioni su come interpretare questi valori, vedere Contenuto del modello di data mining per i modelli di associazione (Analysis Services - Data mining).For more information about how to interpret these values, see Mining Model Content for Association Models (Analysis Services - Data mining).

Modellare $SUPPORT $PROBABILITY $ADJUSTEDPROBABILITY
Sport-100 4334 0.291... 0.252...
Water Bottle 2866 0.192... 0.175...
Patch Kit 2113 0.142... 0.132

Utilizzo dei risultati

Quando nei risultati sono presenti molte tabelle nidificate, è possibile convertire i risultati in formato flat per semplificarne la visualizzazione. A tale scopo, è possibile modificare manualmente la query aggiungendovi la parola chiave FLATTENED.

Per convertire in formato flat i set di righe nidificati in una query di stima

  1. Fare clic sul pulsante SQL nell'angolo di Generatore query di stima.

    La griglia viene sostituita da un riquadro aperto in cui è possibile visualizzare e modificare l'istruzione DMX creata dal generatore delle query di stima.

  2. Dopo la parola chiave SELECT digitare FLATTENED.

    Il testo completo della query dovrebbe risultare analogo al seguente:

    SELECT FLATTENED  
      PredictAssociation([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,3)  
    FROM  
      [Association]  
    NATURAL PREDICTION JOIN  
    (SELECT (SELECT 'Touring Tire' AS [Model]  
      UNION SELECT 'Touring Tire Tube' AS [Model]) AS [v Assoc Seq Line Items]) AS t  
    
  3. Fare clic sul pulsante Risultati nell'angolo superiore di Generatore query di stima.

Si noti che dopo avere modificato manualmente una query, non sarà possibile tornare alla visualizzazione Progettazione senza perdere le modifiche apportate. Per salvare la query, è possibile copiare in un file di testo l'istruzione DMX creata manualmente. Tornando alla visualizzazione Progettazione, verrà ripristinata l'ultima versione della query valida in tale visualizzazione.

Creazione di più stime

Si supponga di voler conoscere le stime migliori per i singoli clienti in base agli acquisti passati. È possibile utilizzare dati esterni come input per la query di stima, ad esempio tabelle contenenti l'ID cliente e gli acquisti di prodotti più recenti. I requisiti prevedono che le tabelle di dati siano già definite come una vista origine dati di Analysis Services e che i dati di input contengano tabelle del case e nidificate analoghe a quelle utilizzate nel modello. Non è necessario che abbiano gli stessi nomi, ma la struttura deve essere simile. Ai fini di questa esercitazione, verranno utilizzate le tabelle originali sulle quali è stato eseguito il training del modello.

Per modificare il metodo di input per la query di stima

  1. Nel menu Modello di data mining selezionare di nuovo Query Singleton per deselezionare il segno di spunta.

  2. Verrà visualizzato un messaggio di errore per avvisare che la query singleton andrà persa. Fare clic su .

    Il nome della finestra di dialogo di input viene modificato in Seleziona tabelle di input.

Poiché si è interessati alla creazione di una query di stima che fornisca l'ID cliente e un elenco di prodotti come input, si aggiungerà la tabella dei clienti come tabella del case e la tabella degli acquisti come tabella nidificata. Si aggiungeranno quindi funzioni di stima per creare consigli.

Per creare una query di stima tramite input di tabelle nidificate

  1. Nel riquadro Modello di data mining selezionare il modello Association Filtered.

  2. Nella finestra di dialogo Seleziona tabelle di input fare clic su Seleziona tabella case.

  3. Nella finestra di dialogo Seleziona tabella selezionare AdventureWorksDW2008 per Origine dati. Nell'elenco Nome tabella/visualizzazione selezionare vAssocSeqOrders e quindi fare clic su OK.

    La tabella vAssocSeqOrders verrà aggiunta al riquadro.

  4. Nella finestra di dialogo Seleziona tabelle di input fare clic su Seleziona tabella nidificata.

  5. Nella finestra di dialogo Seleziona tabella selezionare AdventureWorksDW2008 per Origine dati. Nell'elenco Nome tabella/visualizzazione selezionare vAssocSeqLineItems e quindi fare clic su OK.

    La tabella vAssocSeqLineItems verrà aggiunta al riquadro.

  6. Nella finestra di dialogo Specifica join annidato trascinare il campo OrderNumber dalla tabella case e rilasciarlo nel campo OrderNumber nella tabella nidificata.

    È anche possibile fare clic su Aggiungi relazione e creare la relazione selezionando colonne da un elenco.

  7. Nella finestra di dialogo Specifica relazione verificare che il mapping dei campi OrderNumber sia corretto e quindi fare clic su OK.

  8. Fare clic su OK per chiudere la finestra di dialogo Specifica join annidato .

    La tabella del case e la tabella nidificata verranno aggiornate nel riquadro di progettazione in modo da visualizzare i join che connettono le colonne dati esterne alle colonne del modello. Se le relazioni non sono corrette, è possibile fare clic con il pulsante destro del mouse sulla riga di join e scegliere Modifica connessioni per modificare il mapping delle colonne oppure fare clic con il pulsante destro del mouse sulla riga di join e scegliere Elimina per rimuovere completamente la relazione.

  9. Aggiungere una nuova riga alla griglia. Per Origine selezionare la tabella vAssocSeqOrders. In Campo selezionare CustomerKey.

  10. Aggiungere una nuova riga alla griglia. Per Origine selezionare la tabella vAssocSeqOrders. In Campo selezionare Area.

  11. Aggiungere una nuova riga alla griglia. Per Origine selezionare Funzione di stima e per Campo selezionare PredictAssociation.

  12. Trascinare vAssocSeqLineItems nella casella Criteri/Argomento della PredictAssociation riga. Fare clic alla fine della casella Criteri/Argomenti e quindi digitare il testo seguente: INCLUDE_STATISTICS,3

    Il testo completo nella casella Criteri/Argomenti deve essere: [Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3

  13. Fare clic sul pulsante Risultato per visualizzare le stime per ogni cliente.

È possibile provare a creare una query di stima simile in più modelli, per vedere se l'applicazione di filtri modifica i risultati della stima. Per altre informazioni sulla creazione di stime e altri tipi di query, vedere Esempi di query del modello di associazione.

Vedere anche

Contenuto dei modelli di data mining per i modelli di associazione (Analysis Services - Data mining)
PredictAssociation (DMX)
Creare una query di stima utilizzando Generatore query di stima