Algoritmo Microsoft Sequence Clustering

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.

L'algoritmo Microsoft Sequence Clustering è un algoritmo univoco che combina l'analisi della sequenza con il clustering. È possibile usare questo algoritmo per esplorare i dati contenenti eventi da collegare in una sequenza. L'algoritmo trova le sequenze più comuni ed esegue il clustering per trovare sequenze simili. Gli esempi seguenti illustrano i tipi di sequenze che possono essere acquisite come dati per il Machine Learning, al fine di ottenere informazioni su problemi o scenari aziendali comuni:

  • Clickstream or percorsi di navigazione generati dagli utenti durante l'uso di un sito Web.

  • Log in cui vengono elencati eventi che precedono un incidente, ad esempio errori del disco rigido o deadlock del server.

  • Record di transazioni in cui viene descritto l'ordine in base al quale un cliente aggiunge articoli al carrello durante gli acquisti online.

  • Record in cui si seguono le interazioni del cliente (o paziente) nel tempo, per stimare annullamenti del servizio o altri risultati insufficienti.

Questo algoritmo è simile in molti modi all'algoritmo Microsoft Clustering. Tuttavia, anziché trovare cluster di casi che contengono attributi simili, l'algoritmo Microsoft Sequence Clustering trova cluster di casi che contengono percorsi simili in una sequenza.

Esempio

Il sito Web Adventure Works Cycles raccoglie informazioni su quali pagine visitano gli utenti del sito e sull'ordine in cui vengono visitate le pagine. 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. Usando l'algoritmo Microsoft Sequence Clustering su questi dati, l'azienda può trovare gruppi o cluster, di clienti con modelli o sequenze simili di clic. 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

L'algoritmo Microsoft Sequence Clustering è un algoritmo ibrido che combina le tecniche di clustering con l'analisi della catena Markov per identificare i cluster e le relative sequenze. Uno dei tratti distintivi dell'algoritmo Microsoft Sequence Clustering è che usa i dati della 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 usare 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 usa le informazioni sulla sequenza come input per il clustering tramite EM (Expectation Maximization).

Per una descrizione dettagliata dell'implementazione, vedere Riferimento tecnico per l'algoritmo Microsoft Sequence Clustering.

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 colonna a chiave singola Un modello Sequence Clustering richiede una chiave che identifica i record.

  • Colonna sequenza Per i dati della sequenza, il modello deve avere una tabella annidata che contiene una colonna 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.

Ad esempio, nell'esempio citato in precedenza nel sito Web Adventure Works Cycles, un modello di clustering sequenza potrebbe includere informazioni sull'ordine come tabella case, dati demografici relativi al cliente specifico per ogni ordine come attributi non sequenziati e una tabella annidata contenente la sequenza in cui il cliente ha esplorato il sito o inserire elementi in un carrello acquisti come informazioni sulla sequenza.

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

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 usare il Visualizzatore Microsoft Sequence Clustering. Quando si visualizza un modello di clustering sequenza, SQL Server Analysis Services mostra i cluster che contengono più transizioni. È inoltre possibile visualizzare statistiche pertinenti. Per altre informazioni, vedere Visualizzare un modello usando 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 altre informazioni, vedere Contenuto del modello di data mining per i modelli di clustering sequenza (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 Query di data mining. Per alcuni esempi su come usare le query con un modello Sequence Clustering, vedere Esempi di query sul modello di cluster di sequenza.

Commenti

  • 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.

Vedere anche

Algoritmi di data mining (Analysis Services - Data mining)
Riferimento tecnico per l'algoritmo Microsoft Sequence Clustering
Sequence Clustering Model Query Examples
Visualizzare un modello usando il Visualizzatore Microsoft Sequence Clustering