Condividi tramite


Lezione 4: Esecuzione delle stime relative a Market Basket

Data creazione: 5 dicembre 2005

In questa lezione si utilizzerà la forma SELECT FROM <model> PREDICTION JOIN (DMX) dell'istruzione SELECT per creare stime sulla base dei modelli di associazione creati nella Lezione 2: Aggiunta di modelli di data mining alla struttura di data mining Market Basket. Di seguito è riportata la definizione di questi tipi di stima.

La forma SELECT FROM <model> PREDICTION JOIN (DMX) dell'istruzione SELECT contiene tre parti:

  • Un elenco di colonne e funzioni di stima del modello di data mining restituite nel set di risultati. Può includere anche le colonne di input dall'origine dei dati.
  • La query di origine che definisce i dati utilizzati per la creazione di una stima, ad esempio un elenco di clienti in una query batch.
  • Un mapping tra le colonne del modello di data mining e i dati di origine. Se i nomi corrispondono, è possibile utilizzare la sintassi NATURAL e tralasciare i mapping delle colonne.

Per migliorare ulteriormente la query, è possibile utilizzare le funzioni di stima che forniscono informazioni aggiuntive, quali la probabilità che una stima sia confermata dai fatti, e supporto per la stima nel set di dati di training. Per ulteriori informazioni sulle funzioni di stima, vedere Funzioni (DMX).

È inoltre possibile utilizzare il generatore delle query di stima in Business Intelligence Development Studio per creare query di stima. Per ulteriori informazioni, vedere Generazione di query di stima DMX.

Argomenti della lezione

In questa lezione verranno eseguite le attività seguenti:

  • Creazione di una query che determina quali altri articoli è probabile che vengano acquistati da un cliente, sulla base degli articoli già inseriti nel carrello acquisti. Questa query verrà creata utilizzando il modello di data mining con il valore predefinito per MINIMUM_PROBABILITY.
  • Creazione di una query che determina quali altri articoli è probabile che vengano acquistati da un cliente, sulla base degli articoli già inseriti nel carrello acquisti. Questa query verrà creata utilizzando il modello di data mining con il valore 0,01 per MINIMUM_PROBABILITY.

Istruzione PREDICTION JOIN singleton

Il primo passaggio consiste nell'utilizzare SELECT FROM <model> PREDICTION JOIN (DMX) in una query di stima singleton. Di seguito è riportato un esempio generico dell'istruzione singleton:

SELECT <select list>
    FROM [<mining model>] NATURAL PREDICTION JOIN
(SELECT '<value>' AS [<column>], 
    (SELECT 'value' AS [<nested column>] UNION
        SELECT 'value' AS [<nested column>] ...) 
    AS [<nested table>])
AS [<input alias>]

La prima riga del codice definisce le colonne del modello di data mining restituite dalla query, nonché il modello di data mining utilizzato per generare la stima:

SELECT <select list> FROM [<mining model>] 

Le righe successive del codice definiscono i prodotti presenti nel carrello acquisti che verranno utilizzati per stimare i prodotti aggiuntivi che un cliente aggiungerà:

(SELECT '<value>' AS [<column>], 
    (SELECT 'value' AS [<nested column>] UNION
        SELECT 'value' AS [<nested column>] ...) 
    AS [<nested table>])

Creazione di una stima utilizzando un modello con il valore predefinito per MINIMUM_PROBABILITY

Per creare una query di associazione

  1. In Esplora oggetti fare clic con il pulsante destro del mouse sull'istanza di Analysis Services, scegliere Nuova query e quindi DMX.

    Verrà avviato l'editor di query con una nuova query vuota.

  2. Copiare l'esempio generico dell'istruzione PREDICTION JOIN nella query vuota.

  3. Sostituire quanto segue:

    <select list> 
    

    con:

    PREDICT([Association].[Products],INCLUDE_STATISTICS,3)
    

    Sebbene sia possibile includere solo il nome della colonna [Products], utilizzando la funzione Predict è possibile limitare a tre il numero di prodotti restituiti dall'algoritmo. È inoltre possibile utilizzare INCLUDE_STATISTICS, che restituisce il supporto, la probabilità e il valore della probabilità adattato per ciascun prodotto. Queste statistiche consentono di valutare l'accuratezza della stima.

  4. Sostituire quanto segue:

    [<mining model>] 
    

    con:

    [Association]
    
  5. Sostituire quanto segue:

    (SELECT '<value>' AS [<column>], 
        (SELECT 'value' AS [<nested column>] UNION
            SELECT 'value' AS [<nested column>] ...) 
        AS [<nested table>])
    

    con:

    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    

    Questa istruzione utilizza l'istruzione UNION per specificare tre prodotti che devono essere inclusi nel carrello acquisti insieme ai prodotti stimati. La colonna Model nell'istruzione SELECT corrisponde alla colonna del modello presente nella tabella dei prodotti nidificata.

    L'istruzione completa dovrebbe risultare analoga alla seguente:

    SELECT
      PREDICT([Association].[Products],INCLUDE_STATISTICS,3)
    From
      [Association]
    NATURAL PREDICTION JOIN
    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    
  6. Scegliere Salva DMXQuery1.dmx con nome dal menu File.

  7. Nella finestra di dialogo Salva con nome individuare la cartella appropriata e assegnare al file il nome Association Prediction.dmx.

  8. Fare clic sul pulsante Esegui sulla barra degli strumenti.

    La query restituisce una tabella contenente tre prodotti (HL Mountain Tire, Fender Set - Mountain e ML Mountain Tire) in un ordine basato sulla probabilità che siano presenti nello stesso carrello acquisti in cui si trovano i tre prodotti specificati nella query. La tabella contiene anche le statistiche che descrivono l'accuratezza della stima.

Creazione di una stima utilizzando un modello con il valore 0,01 per MINIMUM_PROBABILITY

Per creare una query di associazione

  1. In Esplora oggetti fare clic con il pulsante destro del mouse sull'istanza di Analysis Services, scegliere Nuova query e quindi DMX.

    Verrà avviato l'editor di query con una nuova query vuota.

  2. Copiare l'esempio generico dell'istruzione PREDICTION JOIN nella query vuota.

  3. Sostituire quanto segue:

    <select list> 
    

    con:

    PREDICT([Modified Association].[Products],INCLUDE_STATISTICS,3)
    
  4. Sostituire quanto segue:

    [<mining model>] 
    

    con:

    [Modified Association]
    
  5. Sostituire quanto segue:

    (SELECT '<value>' AS [<column>], 
        (SELECT 'value' AS [<nested column>] UNION
            SELECT 'value' AS [<nested column>] ...) 
        AS [<nested table>])
    

    con:

    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    

    Questa istruzione utilizza l'istruzione UNION per specificare tre prodotti che devono essere inclusi nel carrello acquisti insieme ai prodotti stimati. La colonna Model nell'istruzione SELECT corrisponde alla colonna del modello presente nella tabella dei prodotti nidificata.

    L'istruzione completa dovrebbe risultare analoga alla seguente:

    SELECT
      PREDICT([Modified Association].[Products],INCLUDE_STATISTICS,3)
    From
      [Modified Association]
    NATURAL PREDICTION JOIN
    (SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
      UNION SELECT 'Mountain Tire Tube' AS [Model]
      UNION SELECT 'Mountain-200' AS [Model]) AS [Products]) AS t
    
  6. Scegliere Salva DMXQuery1.dmx con nome dal menu File.

  7. Nella finestra di dialogo Salva con nome individuare la cartella appropriata e assegnare al file il nome Modified Association Prediction.dmx.

  8. Fare clic sul pulsante Esegui sulla barra degli strumenti.

    La query restituisce una tabella contenente tre prodotti (HL Mountain Tire, Water Bottle, Fender Set - Mountain) in un ordine basato sulla probabilità che siano presenti nello stesso carrello acquisti in cui si trovano i tre prodotti specificati nella query. La tabella contiene anche le statistiche che descrivono l'accuratezza della stima.

    I risultati di questa query dimostrano che il valore del parametro MINIMUM_PROBABILITY incide sui risultati restituiti dalla query.

Questo passaggio conclude l'esercitazione Market Basket. A questo punto si dispone di un set di modelli da utilizzare per stimare i tipi di prodotti che i clienti tendono ad acquistare contemporaneamente.

Per informazioni sull'utilizzo di DMX in un altro scenario predittivo, vedere Esercitazione su DMX per Bike Buyer.