Algoritmo Microsoft Naive Bayes
L'algoritmo Microsoft Naive Bayes è un algoritmo di classificazione per la modellazione predittiva incluso in Microsoft SQL Server 2005 Analysis Services (SSAS). L'algoritmo calcola la probabilità condizionale tra colonne di input e stimabili e presuppone che le colonne siano indipendenti. Il nome Naive Bayes è dovuto al carattere "ingenuo" (naive) di tale presupposto di indipendenza, in quanto l'algoritmo, partendo da questa considerazione, non tiene conto del fatto che le dipendenze potrebbero esistere.
Questo algoritmo include funzionalità di calcolo più semplici di quelle di altri algoritmi Microsoft e, pertanto, è utile per generare rapidamente i modelli di data mining al fine di individuare le relazioni tra colonne di input e stimabili. È possibile utilizzare questo algoritmo per eseguire l'esplorazione iniziale dei dati e applicare successivamente i risultati ottenuti per creare modelli di data mining aggiuntivi con altri algoritmi dotati di funzionalità di calcolo più avanzate e accurate.
Esempio
Come strategia promozionale continuativa, il reparto marketing dell'azienda Adventure Works Cycle ha deciso di inviare volantini ai potenziali clienti mediante mailing diretto. Per ridurre i costi, i volantini verranno inviati solo ai clienti che probabilmente risponderanno. L'azienda archivia in un database le informazioni demografiche e relative alla risposta dei clienti a un mailing precedente. L'obiettivo è analizzare tali dati per scoprire in che modo è possibile utilizzare informazioni demografiche come l'età e il luogo di residenza per eseguire la stima relativa alla risposta a una promozione, confrontando i potenziali clienti con quelli che presentano caratteristiche analoghe e in passato hanno acquistato prodotti dell'azienda. In particolare, si intende esaminare le differenze tra i clienti che hanno acquistato una bicicletta e quelli che non l'hanno acquistata.
Tramite l'algoritmo Microsoft Naive Bayes, il reparto marketing può eseguire rapidamente la stima relativa al profilo di un cliente specifico e determinare quindi i clienti che, con maggiore probabilità, risponderanno ai volantini. Mediante il Visualizzatore Microsoft Naive Bayes disponibile in Business Intelligence Development Studio, il reparto può inoltre individuare visivamente in modo specifico le colonne di input che contribuiscono alle risposte positive ai volantini.
Funzionamento dell'algoritmo
L'algoritmo Microsoft Naive Bayes calcola la probabilità di ogni stato per ogni colonna di input, considerando ogni stato possibile della colonna stimabile. È possibile utilizzare il Visualizzatore Microsoft Naive Bayes in Business Intelligence Development Studio per ottenere una rappresentazione visiva della distribuzione degli stati eseguita dall'algoritmo, come illustrato nel grafico seguente.
Il Visualizzatore Microsoft Naive Bayes elenca ogni colonna di input nel set di dati e mostra la distribuzione degli stati corrispondenti, considerando ogni stato della colonna stimabile. Tale vista consente di identificare le colonne di input significative ai fini della differenziazione degli stati della colonna stimabile. Ad esempio, nella colonna Commute Distance illustrata, la probabilità che un cliente acquisti una bicicletta è pari a 0,387 se risiede a una distanza dal posto di lavoro compresa tra uno e due chilometri, mentre la probabilità che non acquisti una bicicletta è pari a 0,287. In questo esempio, l'algoritmo utilizza le informazioni numeriche derivate da caratteristiche del cliente, ad esempio la distanza dal posto di lavoro, per stimare se il cliente acquisterà una bicicletta. Per ulteriori informazioni sull'utilizzo del Visualizzatore Microsoft Naive Bayes, vedere Visualizzazione di un modello di data mining con il Visualizzatore Microsoft Naive Bayes.
Utilizzo dell'algoritmo
Un modello Naive Bayes deve contenere una colonna chiave, le colonne di input e una colonna stimabile. È necessario che tutte le colonne siano discrete o discretizzate. Per informazioni sulla discretizzazione delle colonne, vedere Metodi di discretizzazione.
L'algoritmo Microsoft Naive Bayes 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 Naive Bayes 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 queste funzioni, vedere Guida di riferimento alle funzioni DMX (Data Mining Extensions).
L'algoritmo Microsoft Naive Bayes non supporta l'utilizzo dello standard PMML (Predictive Model Markup Language) per la creazione dei modelli di data mining.
L'algoritmo Microsoft Naive Bayes 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 |
---|---|
MAXIMUM_INPUT_ATTRIBUTES |
Specifica il numero massimo di attributi di input che l'algoritmo è in grado di gestire prima di richiamare la funzionalità di selezione degli attributi. Se si imposta il valore 0, la funzionalità di selezione degli attributi di input viene disattivata. Il valore predefinito è 255. |
MAXIMUM_OUTPUT_ATTRIBUTES |
Specifica il numero massimo di attributi di output che l'algoritmo è in grado di gestire prima di richiamare la funzionalità di selezione degli attributi. Se si imposta il valore 0, la funzionalità di selezione degli attributi di output viene disattivata. Il valore predefinito è 255. |
MINIMUM_DEPENDENCY_PROBABILITY |
Specifica la probabilità di dipendenza minima tra gli attributi di input e di output. Questo valore viene utilizzato per limitare le dimensioni del contenuto generato dall'algoritmo. È possibile impostare la proprietà su valori da 0 a 1. Valori superiori riducono il numero di attributi nel contenuto del modello. Il valore predefinito è 0,5. |
MAXIMUM_STATES |
Specifica il numero massimo di stati degli attributi supportati dall'algoritmo. Se il numero di stati di un attributo è maggiore del numero massimo, l'algoritmo utilizza gli stati più frequenti dell'attributo e considera gli stati rimanenti come mancanti. Il valore predefinito è 100. |
Vedere anche
Concetti
Algoritmi di data mining
Metodi di discretizzazione
Funzionalità di selezione degli attributi nel data mining
Utilizzo degli strumenti di data mining
Visualizzazione di un modello di data mining con il Visualizzatore Microsoft Naive Bayes