Algoritmo Microsoft Association Rules
Data aggiornamento: 17 novembre 2008
L'algoritmo Microsoft Association Rules è un algoritmo di associazione incluso in Microsoft SQL Server 2005 Analysis Services (SSAS), utile per i motori dei suggerimenti. Un motore dei suggerimenti consiglia prodotti ai clienti in base agli articoli che hanno già acquistato o a cui sono interessati. L'algoritmo Microsoft Association Rules è utile anche per l'analisi di mercato sugli acquisti. Per ulteriori informazioni su tale analisi di mercato, vedere Lezione 4: Creazione dello scenario Market Basket relativo all'analisi degli acquisti nell'esercitazione sul data mining.
I modelli di associazione vengono creati in base a set di dati che includono sia gli indicatori dei singoli case che gli indicatori degli elementi contenuti nei case. Un gruppo di elementi viene chiamato set di elementi. Un modello di associazione è costituito da una serie di set di elementi e di regole che descrivono la modalità di raggruppamento di tali elementi all'interno dei case. È possibile utilizzare le regole identificate dall'algoritmo per stimare i probabili acquisti futuri di un cliente, in base agli elementi già esistenti nel relativo carrello acquisti. Nel diagramma seguente viene illustrata una serie di regole all'interno di un set di elementi.
Come illustrato nel diagramma, l'algoritmo Microsoft Association Rules può individuare potenzialmente un numero elevato di regole all'interno di un set di dati. L'algoritmo utilizza due parametri, uno di supporto e l'altro di probabilità, per descrivere i set di elementi e le regole generati. Se ad esempio X e Y rappresentano due elementi contenuti in un carrello acquisti, il parametro di supporto è il numero di case del set di dati che contengono la combinazione di elementi X e Y. Se il parametro di supporto viene utilizzato insieme al parametro definito dall'utente MINIMUM_SUPPORT e ai parametri MAXIMUM_SUPPORT,, l'algoritmo controlla il numero di set di elementi generati. Il parametro di probabilità rappresenta la frazione di case del set di dati che contengono sia l'elemento X che l'elemento Y. Se il parametro di probabilità viene utilizzato insieme al parametro MINIMUM_PROBABILITY, l'algoritmo controlla il numero di regole generate.
Esempio
L'azienda Adventure Works Cycles intende riprogettare la funzionalità del relativo sito Web. L'obiettivo della riprogettazione è aumentare le vendite effettive dei prodotti. Poiché l'azienda registra ogni vendita in un database transazionale, è possibile utilizzare l'algoritmo Microsoft Association Rules per identificare i set di prodotti che tendono ad essere acquistati insieme. In seguito, è possibile stimare elementi aggiuntivi a cui può essere interessato un cliente, in base agli elementi già esistenti nel relativo carrello acquisti.
Funzionamento dell'algoritmo
L'algoritmo Microsoft Association Rules attraversa un set di dati per trovare elementi che ricorrono insieme in un case. Successivamente, l'algoritmo raggruppa in set gli elementi associati che ricorrono almeno nel numero di case specificati dal parametro MINIMUM_SUPPORT. Ad esempio, un set di elementi potrebbe essere "Mountain 200=Existing, Sport 100=Existing", con un valore di supporto pari a 710. L'algoritmo genera quindi le regole dai set di elementi. Tali regole vengono utilizzate per stimare la presenza di un elemento nel database, in base alla presenza di altri elementi specifici che l'algoritmo identifica come importanti. Ad esempio, una regola potrebbe essere "if Touring 1000=existing and Road bottle cage=existing, then Water bottle=existing", con un valore di probabilità pari a 0,812. In questo esempio, in base alla presenza di pneumatici Touring 1000 e del contenitore per bottiglie di acqua nel carrello acquisti, l'algoritmo stima che tale carrello contiene probabilmente anche una bottiglia di acqua.
Utilizzo dell'algoritmo
Un modello di associazione deve contenere una colonna chiave, le colonne di input e una colonna stimabile. Le colonne di input devono essere discrete. Spesso, i dati di input per il modello di associazione sono contenuti in due tabelle. Ad esempio, una tabella può contenere informazioni sui clienti mentre l'altra può contenere informazioni sugli acquisti dei clienti. È possibile inserire tali dati nel modello tramite una tabella nidificata. Per ulteriori informazioni sulle tabelle nidificate, vedere Tabelle nidificate.
L'algoritmo Microsoft Association Rules supporta tipi di contenuto specifici delle colonne di input, tipi di contenuto specifici delle colonne stimabili e flag di modellazione, elencati nella tabella seguente.
Tipi di contenuto delle colonne di input |
Cyclical, Discrete, Discretized, Key, Table e Ordered |
Tipi di contenuto delle colonne stimabili |
Cyclical, Discrete, Discretized, Table e Ordered |
Flag di modellazione |
MODEL_EXISTENCE_ONLY e NOT NULL |
Tutti gli algoritmi Microsoft supportano un set comune di funzioni. L'algoritmo Microsoft Association Rules supporta tuttavia funzioni aggiuntive, elencate nella tabella seguente.
Per un elenco delle funzioni comuni a tutti gli algoritmi Microsoft, vedere Algoritmi di data mining. Per ulteriori informazioni sull'utilizzo di tali funzioni, vedere Guida di riferimento alle funzioni DMX (Data Mining Extensions).
L'algoritmo Microsoft Association Rules non supporta l'utilizzo dello standard PMML (Predictive Model Markup Language) per la creazione dei modelli di data mining.
L'algoritmo Microsoft Association Rules supporta vari parametri che influiscono sulle prestazioni e sull'accuratezza del modello di data mining risultante. Nella tabella seguente viene descritto ogni parametro.
Parametro
Descrizione
MINIMUM_SUPPORT
Specifica il numero minimo di case che devono contenere il set di elementi affinché l'algoritmo possa generare una regola. Se si imposta un valore minore di 1, il numero minimo di case viene indicato come percentuale sul totale dei case. Se si imposta un numero intero maggiore di 1, il numero minimo di case è indicato come numero assoluto di case che devono contenere il set di elementi. Se la memoria è limitata, l'algoritmo può aumentare il valore di questo parametro.
Il valore predefinito è 0,03.
MAXIMUM_SUPPORT
Specifica il numero massimo di case che possono supportare un determinato set di elementi. I valori minori di 1 rappresentano una percentuale sul totale dei case. I valori maggiori di 1 rappresentano il numero assoluto di case che possono contenere il set di elementi.
Il valore predefinito è 1.
MINIMUM_ITEMSET_SIZE
Specifica il numero minimo di elementi consentito in un set di elementi.
Il valore predefinito è 1.
MAXIMUM_ITEMSET_SIZE
Specifica il numero massimo di elementi consentito in un set di elementi. Se si imposta il valore 0, non esiste alcun limite per le dimensioni del set di elementi.
Il valore predefinito è 3.
MAXIMUM_ITEMSET_COUNT
Specifica il numero massimo di elementi da produrre. Se non viene specificato alcun numero, viene utilizzato quello predefinito. Il valore predefinito è 200000.
Nota:
I set di elementi sono classificati dal supporto solo. Fra i set di elementi che hanno lo stesso supporto, l'ordinamento è arbitrario.
MINIMUM_PROBABILITY
Specifica la probabilità minima che una regola sia True. Se ad esempio si imposta il valore 0,5, non verranno generate regole con probabilità inferiore al 50%.
Il valore predefinito è 0,4.
OPTIMIZED_PREDICTION_COUNT
Definisce il numero di elementi da memorizzare nella cache o da ottimizzare per la stima.
Il valore predefinito è 0. Se si utilizza il valore predefinito, l'algoritmo produrrà il numero di stime richieste nella query.
Cronologia modifiche
Versione | Cronologia |
---|---|
17 novembre 2008 |
|
15 settembre 2007 |
|
Vedere anche
Concetti
Algoritmi di data mining
Creazione guidata modello di data mining
Utilizzo degli strumenti di data mining
Visualizzazione di un modello di data mining con il Visualizzatore Microsoft Association Rules