Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'algoritmo Microsoft Association Rules è un'implementazione semplice dell'algoritmo Apriori noto.
Sia l'algoritmo Microsoft Decision Trees che l'algoritmo Microsoft Association Rules possono essere usati per analizzare le associazioni, ma le regole trovate da ogni algoritmo possono differire. In un modello di albero delle decisioni, le divisioni che portano a regole specifiche sono basate sul guadagno di informazioni, mentre in un modello di associazione le regole sono basate completamente sull'attendibilità. Pertanto, in un modello di associazione, una regola complessa o una con elevata attendibilità, potrebbe non essere necessariamente interessante perché non fornisce nuove informazioni.
Implementazione dell'algoritmo Microsoft Association
L'algoritmo Apriori non analizza i modelli, ma genera e quindi conta i set di elementi candidati. Un elemento può rappresentare un evento, un prodotto o il valore di un attributo, a seconda del tipo di dati da analizzare.
Nel tipo più comune di variabili booleane del modello di associazione, che rappresenta un valore Yes/No o Missing/Existing, vengono assegnate a ogni attributo, ad esempio un prodotto o un nome di evento. Un'analisi del carrello di mercato è un esempio di modello di regole di associazione che usa variabili booleane per rappresentare la presenza o l'assenza di prodotti specifici nel carrello acquisti di un cliente.
Per ogni set di elementi, l'algoritmo crea quindi punteggi che rappresentano il supporto e l'attendibilità. Questi punteggi possono essere usati per classificare e derivare regole interessanti dai set di elementi.
È anche possibile creare modelli di associazione per gli attributi numerici. Se gli attributi sono continui, i numeri possono essere discretizzati o raggruppati in bucket. I valori discretizzati possono quindi essere gestiti come valori booleani o come coppie attributo-valore.
Supporto, probabilità e importanza
Il supporto, noto come frequenza, indica il numero di case che contengono l'elemento di destinazione o la combinazione di elementi. Solo gli elementi con almeno la quantità di supporto specificata possono essere inclusi nel modello.
Un insieme di elementi frequente fa riferimento a una raccolta di elementi la cui combinazione ha supporto al di sopra della soglia definita dal parametro MINIMUM_SUPPORT. Ad esempio, se il set di elementi è {A,B,C} e il valore MINIMUM_SUPPORT è 10, ogni singolo elemento A, B e C deve essere trovato in almeno 10 case da includere nel modello e la combinazione di elementi {A,B,C} deve essere trovata anche in almeno 10 casi.
Nota È anche possibile controllare il numero di set di elementi in un modello di data mining specificando la lunghezza massima di un set di elementi, in cui la lunghezza indica il numero di elementi.
Per impostazione predefinita, il supporto per qualsiasi elemento o set di elementi specifico rappresenta un conteggio dei casi che contengono quell'elemento o elementi. Tuttavia, è anche possibile esprimere MINIMUM_SUPPORT come percentuale dei casi totali nell'insieme di dati, digitando il numero come un valore decimale inferiore a 1. Ad esempio, se si specifica un valore di MINIMUM_SUPPORT pari a 0,03, significa che almeno 3% dei case totali nel set di dati devono contenere questo elemento o set di elementi per l'inclusione nel modello. È consigliabile provare il modello per determinare se l'uso di un conteggio o di una percentuale ha più senso.
Al contrario, la soglia per le regole viene espressa non come conteggio o percentuale, ma come probabilità, talvolta definita attendibilità. Ad esempio, se il set di elementi {A,B,C} si verifica in 50 casi, ma il set di elementi {A,B,D} si verifica anche in 50 casi e il set di elementi {A,B} in altri 50 casi, è ovvio che {A,B} non è un predittore sicuro di {C}. Pertanto, per ponderare un determinato esito rispetto a tutti i risultati noti, Analysis Services calcola la probabilità della singola regola (ad esempio Se {A,B} Then {C}) dividendo il supporto per il set di elementi {A,B,C} per il supporto per tutti i set di elementi correlati.
È possibile limitare il numero di regole che un modello produce impostando un valore per MINIMUM_PROBABILITY.
Per ogni regola creata, Analysis Services restituisce un punteggio che ne indica l'importanza, che è anche chiamato lift. L'importanza del lift viene calcolata in modo diverso per i set di elementi e le regole.
L'importanza di un set di elementi viene calcolata come probabilità del set di elementi diviso per la probabilità composta dei singoli elementi nel set di elementi. Ad esempio, se un set di elementi contiene {A,B}, Analysis Services conta innanzitutto tutti i case che contengono questa combinazione A e B e lo divide per il numero totale di case e quindi normalizza la probabilità.
L'importanza di una regola viene calcolata dal logaritmo della probabilità della parte destra della regola, dato la parte sinistra della regola. Ad esempio, nella regola If {A} Then {B}, Analysis Services calcola il rapporto dei case con A e B nei casi con B ma senza A e quindi normalizza tale rapporto usando una scala logaritmica.
Selezione funzionalità
L'algoritmo Microsoft Association Rules non esegue alcun tipo di selezione automatica delle funzionalità. L'algoritmo fornisce invece parametri che controllano i dati utilizzati dall'algoritmo. Ciò può includere limiti per le dimensioni di ogni set di elementi o l'impostazione del supporto massimo e minimo necessario per aggiungere un set di elementi al modello.
Per escludere elementi ed eventi troppo comuni e pertanto non interessati, ridurre il valore di MAXIMUM_SUPPORT per rimuovere set di elementi molto frequenti dal modello.
Per escludere elementi e set di elementi rari, aumentare il valore di MINIMUM_SUPPORT.
Per filtrare le regole, aumentare il valore di MINIMUM_PROBABILITY.
Personalizzazione dell'algoritmo Microsoft Association Rules
L'algoritmo Microsoft Association Rules supporta diversi parametri che influiscono sul comportamento, sulle prestazioni e sull'accuratezza del modello di data mining risultante.
Impostazione dei parametri dell'algoritmo
È possibile modificare i parametri di un modello di data mining in qualsiasi momento utilizzando il Designer di Data Mining in SQL Server Data Tools (SSDT). È anche possibile modificare i parametri a livello di codice usando la AlgorithmParameters raccolta in AMO oppure utilizzando l'elemento MiningModels (ASSL) in XMLA. Nella tabella seguente viene descritto ogni parametro.
Annotazioni
Non è possibile modificare i parametri in un modello esistente utilizzando un'istruzione DMX; è necessario specificare i parametri in DMX CREATE MODEL o ALTER STRUCTURE... ADD MODEL quando si crea il modello.
MAXIMUM_ITEMSET_COUNT
Specifica il numero massimo di set di elementi da produrre. Se non viene specificato alcun numero, viene utilizzato il valore predefinito.
Il valore predefinito è 200000.
Annotazioni
I set di elementi vengono classificati in base al supporto. Tra i set di elementi con lo stesso supporto, l'ordinamento è arbitrario.
MAXIMUM_ITEMSET_SIZE
Specifica il numero massimo di elementi consentiti in un set di elementi. L'impostazione di questo valore su 0 specifica che non esiste alcun limite per le dimensioni del set di elementi.
Il valore predefinito è 3.
Annotazioni
La riduzione di questo valore può potenzialmente ridurre il tempo necessario per la creazione del modello, perché l'elaborazione del modello si arresta quando viene raggiunto il limite.
MAXIMUM_SUPPORT
Specifica il numero massimo di casi che un insieme di elementi può avere per il supporto. Questo parametro può essere usato per eliminare gli elementi visualizzati di frequente e quindi potenzialmente hanno poco significato.
Se questo valore è minore di 1, il valore rappresenta una percentuale dei case totali. 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 consentiti in un set di elementi. Se si aumenta questo numero, il modello potrebbe contenere meno set di elementi. Ciò può essere utile se si desidera ignorare i set di elementi a singolo elemento, ad esempio.
Il valore predefinito è 1.
Annotazioni
Non è possibile ridurre il tempo di elaborazione del modello aumentando il valore minimo, perché Analysis Services deve calcolare comunque le probabilità per singoli elementi come parte dell'elaborazione. Tuttavia, impostando questo valore superiore, è possibile filtrare set di elementi più piccoli.
MINIMUM_PROBABILITY
Specifica la probabilità minima che una regola sia vera.
Ad esempio, se si imposta questo valore su 0,5, significa che non è possibile generare alcuna regola con probabilità inferiore al 50%.
Il valore predefinito è 0.4.
MINIMUM_SUPPORT
Specifica il numero minimo di case che devono contenere il set di elementi prima che l'algoritmo generi una regola.
Se si imposta questo valore su minore di 1, il numero minimo di case viene calcolato come percentuale dei case totali.
Se imposti questo valore su un numero intero maggiore di 1, specifica che il numero minimo di casi viene calcolato come il conteggio dei casi che devono contenere il insieme di elementi. L'algoritmo potrebbe aumentare automaticamente il valore di questo parametro se la memoria è limitata.
Il valore predefinito è 0.03. Ciò significa che per essere incluso nel modello, è necessario trovare un set di elementi in almeno 3% di casi.
OPTIMIZED_PREDICTION_COUNT
Definisce il numero di elementi da memorizzare nella cache per ottimizzare la stima.
Il valore predefinito è 0. Quando si usa l'impostazione predefinita, l'algoritmo produrrà tutte le stime richieste nella query.
Se si specifica un valore diverso da zero per OPTIMIZED_PREDICTION_COUNT, le query di stima possono restituire al massimo il numero specificato di elementi, anche se si richiedono stime aggiuntive. Tuttavia, l'impostazione di un valore può migliorare le prestazioni di stima.
Ad esempio, se il valore è impostato su 3, l'algoritmo memorizza nella cache solo 3 elementi per la stima. Non è possibile visualizzare stime aggiuntive che potrebbero essere ugualmente probabili per i 3 elementi restituiti.
Indicatori di modellazione
I flag di modellazione seguenti sono supportati per l'uso con l'algoritmo Microsoft Association Rules.
NON NULLO
Indica che la colonna non può contenere un valore Null. Se Analysis Services rileva un valore Null durante il training del modello, verrà generato un errore.
Si applica alla colonna della struttura di mining.
SOLO_ESISTENZA_MODELLO
Significa che la colonna verrà considerata come con due possibili stati: Missing e Existing. Un valore Null è un valore mancante.
Si applica alla colonna del modello di data mining.
Requisiti
Un modello di associazione deve contenere una colonna chiave, colonne di input e una singola colonna stimabile.
Colonne di input e prevedibili
L'algoritmo Microsoft Association Rules supporta le colonne di input specifiche e le colonne stimabili elencate nella tabella seguente. Per altre informazioni sul significato dei tipi di contenuto in un modello di data mining, vedere Tipi di contenuto (data mining).
| colonna | Tipi di contenuto |
|---|---|
| Attributo di input | Ciclico, Discreto, Discretizzato, Chiave, Tabella, Ordinato |
| Attributo prevedibile | Ciclico, Discreto, Discretizzato, Tabella, Ordinato |
Annotazioni
I tipi di contenuto ciclici e ordinati sono supportati, ma l'algoritmo li considera come valori discreti e non esegue un'elaborazione speciale.
Vedere anche
Algoritmo di Associazione Microsoft
Esempi di query del modello di associazione
Contenuto del modello di associazione per i modelli di data mining (Analysis Services - Data Mining)