Algoritmo Microsoft Sequence Clustering

Microsoft Sequence Clustering è un algoritmo di analisi delle sequenze incluso in Microsoft SQL Server Analysis Services. È possibile utilizzare questo algoritmo per esplorare i dati contenenti eventi da collegare tramite i percorsi o sequenze seguenti. L'algoritmo individua le sequenze più comuni raggruppando le sequenze identiche, ovvero eseguendone il clustering. Di seguito sono riportati alcuni esempi di sequenze.

  • Dati che descrivono i percorsi di navigazione creati dagli utenti durante l'utilizzo di un sito Web.

  • Dati che descrivono l'ordine in cui un cliente aggiunge articoli al carrello acquisti in un punto vendita online.

Questo algoritmo è simile per molti versi all'algoritmo Microsoft Clustering ma, anziché rilevare cluster di case contenenti attributi simili, l'algoritmo Microsoft Sequence Clustering individua i cluster di case contenenti percorsi simili in una sequenza.

Esempio

Nel sito Web di Adventure Works Cycles vengono raccolte informazioni sulle pagine visitate dagli utenti del sito e sul relativo ordine di esplorazione. Poiché l'azienda accetta solo ordini online, i clienti devono accedere al sito. In questo modo, l'azienda ottiene informazioni di esplorazione per il profilo di ogni cliente. Tramite l'applicazione dell'algoritmo Microsoft Sequence Clustering a tali dati, l'azienda può individuare gruppi o cluster di clienti con schemi di acquisto o sequenze di selezioni simili. In seguito, l'azienda può utilizzare tali cluster per analizzare gli spostamenti degli utenti nel sito Web, identificare le pagine più strettamente correlate alla vendita di un prodotto specifico ed eseguire la stima delle pagine che con maggiore probabilità verranno visitate successivamente.

Funzionamento dell'algoritmo

Microsoft Sequence Clustering è un algoritmo ibrido che combina tecniche di clustering e l'analisi delle catene di Markov per identificare i cluster e le relative sequenze. Una delle caratteristiche distintive dell'algoritmo Microsoft Sequence Clustering è l'utilizzo dei dati in sequenza. Questi dati rappresentano in genere una serie di eventi o transizioni tra stati in un set di dati, ad esempio una serie di acquisti di prodotti o di clic sul Web per un determinato utente. Per determinare le sequenze migliori da utilizzare come input per il clustering, l'algoritmo esamina tutte le probabilità di transizione e misura le differenze, o distanze, tra tutte le sequenze possibili del set di dati. Dopo la creazione dell'elenco di sequenze candidate, l'algoritmo utilizza le informazioni sulla sequenza come input per il metodo EM di clustering.

Per una descrizione dettagliata dell'implementazione, vedereRiferimento tecnico per l'algoritmo Microsoft Sequence Clustering (Analysis Services - Data mining).

Dati necessari per i modelli Sequence Clustering

Quando si preparano dati da utilizzare nel training di un modello Sequence Clustering, è importante comprendere i requisiti per l'algoritmo specifico, tra cui la quantità di dati necessari e la modalità di utilizzo dei dati.

I requisiti per un modello Sequence Clustering sono i seguenti:

  • Una singola colonna key    Un modello Sequence Clustering richiede una chiave che identifica i record.

  • Una colonna della sequenza   Per i dati in sequenza, il modello deve disporre di una tabella nidificata contenente una colonna di ID sequenza. L'ID sequenza può essere qualsiasi tipo di dato ordinabile. Ad esempio, è possibile utilizzare un identificatore di pagina Web, un numero intero o una stringa di testo, purché la colonna identifichi gli eventi in una sequenza. Per ogni sequenza è consentito un unico identificatore di sequenza e per ogni modello è consentito un unico tipo di sequenza.

  • Attributi fuori sequenza facoltativi    L'algoritmo supporta l'aggiunta di altri attributi non correlati alle sequenze. Questi attributi possono includere le colonne nidificate.

Nell'esempio del sito Web di Adventure Works Cycles riportato in precedenza, un modello Sequence Clustering potrebbe includere informazioni sull'ordine come tabella del case, dati demografici sul cliente specifico per ogni ordine come attributi fuori sequenza e una tabella nidificata contenente la sequenza in cui il cliente ha esplorato il sito o ha inserito gli articoli nel carrello acquisti come informazioni sulla sequenza.

Per informazioni più dettagliate sui tipi di contenuto e sui tipi di dati supportati per i modelli Sequence Clustering, vedere la sezione Requisiti di Riferimento tecnico per l'algoritmo Microsoft Sequence Clustering (Analysis Services - Data mining).

Visualizzazione di un modello Sequence Clustering

Il modello di data mining creato da questo algoritmo contiene le descrizioni delle sequenze più comuni incluse nei dati. Per esplorare il modello, è possibile utilizzare il Visualizzatore Microsoft Sequence Clustering. Quando si visualizza un modello Sequence Clustering, in Analysis Services vengono visualizzati i cluster che contengono più transizioni. È inoltre possibile visualizzare statistiche pertinenti. Per ulteriori informazioni, vedere Visualizzazione di un modello di data mining con il Visualizzatore Microsoft Sequence Clustering.

Per maggiori dettagli, è possibile esplorare il modello in Microsoft Generic Content Tree Viewer. Il contenuto archiviato per il modello include la distribuzione per tutti i valori in ogni nodo, la probabilità di ogni cluster e altre informazioni sulle transizioni. Per ulteriori informazioni, vedere Contenuto dei modelli di data mining per i modelli Sequence Clustering (Analysis Services - Data mining).

Creazione di stime

Dopo il training del modello, i risultati vengono archiviati come set di modelli. È possibile utilizzare le descrizioni delle sequenze più comuni nei dati per la stima del probabile passaggio successivo di una nuova sequenza. Poiché tuttavia l'algoritmo include altre colonne, è possibile utilizzare il modello risultante per individuare le relazioni tra i dati in sequenza e gli input non sequenziali. Ad esempio, se si aggiungono dati demografici al modello, è possibile eseguire stime per gruppi specifici di clienti. È possibile personalizzare le query di stima per restituire un numero variabile di stime o statistiche descrittive.

Per informazioni sulla creazione di query in base a un modello di data mining, vedere Esecuzione di query sui modelli di data mining (Analysis Services - Data mining). Per esempi sull'utilizzo delle query con un modello Sequence Clustering, vedere Esecuzione di query su un modello Sequence Clustering (Analysis Services - Data mining).

Osservazioni

  • Non supporta l'utilizzo del linguaggio PMML (Predictive Model Markup Language) per la creazione di modelli di data mining.

  • Supporta il drill-through.

  • Supporta l'utilizzo di modelli di data mining OLAP e la creazione di dimensioni di data mining.