statistica per le decisioni di marketing andrea cerioli [email protected] sito web del corso...

24
STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli [email protected] Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione Zani-Cerioli, Cap. XI

Upload: donatella-gori

Post on 02-May-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

STATISTICA PER LE DECISIONI DI MARKETING

Andrea [email protected]

Sito web del corso

GLI ALBERI DI CLASSIFICAZIONE

Algoritmi di classificazione

Zani-Cerioli, Cap. XI

Page 2: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CHAID: Chi-square Automatic Interaction Detection

• Primo algoritmo “popolare” di segmentazione• Y qualitativa (J 2 classi); X qualitative • Utilizza il test chi-quadrato (per grandi campioni)• E’ veloce• Consente anche X quantitative (in classi) e valori

mancanti + risposte “non so” (categoria “floating”)• Selezione delle variabili• Consente eventualmente split non binari• Non ha criteri di “potatura” perché meno soggetto a

overfitting• Struttura generalmente più semplice rispetto a altri

metodi più sofisticati: talvolta è utilizzato ancora oggi• CHAID esaustivo: considera tutte le possibili

suddivisioni di ciascun X

Page 3: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CHAID - Accorpamento• Accorpamento delle modalità di ogni esplicativa Xj: analisi

della tabella di contingenza che deriva dall’incrocio di Xj con Y. In particolare: tra tutti i possibili accorpamenti si sceglie quello che corrisponde alle modalità più simili (in questo modo l’associazione tra Y e la X accorpata è max)

• Esempio (campione piccolo, quindi cautela nel test 2):

Page 4: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

• Variabile Patrimonio: incrocio con Y

• Sottotabella 1 (si esclude Patrimonio = basso):

• Sottotabella 2 (si esclude Patrimonio = alto):

• Si aggregano M + A: la tabella risultante ha max chi-quadrato con Y (v. pp. 538-539)

Page 5: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CHAID - Split• La procedura di accorpamento è applicata a tutte le possibili

coppie di modalità di ogni variabile esplicativa• Quando si forma una nuova categoria con 3 o più modalità: si

può verificare che essa non sia disaggregabile in 2 sottocategorie criterio chi-quadrato, ma più restrittivo rispetto a quello di accorpamento

• I passi precedenti sono ripetuti per tutte le esplicative: nuovo insieme di esplicative X1*, X2*… con un numero di modalità (solitamente) ridotto

• Lo split prescelto è quello che max. associazione tra Y e ogni esplicativa Xj* max chi-quadrato (asintotico), purché p-value < soglia

• Una novità di questo test è la correzione del p-value in base al numero di confronti m effettuati per giungere a Xj* alcuni degli m test effettuati potrebbero essere significativi per il solo effetto del caso

• Se vogliamo che sia la probabilità di errore complessiva (ad es. =0.05), dobbiamo effettuare ogni singolo test con probabilità di soglia più piccola: /m infatti: P(A1 … Am) ≤ P(A1) + … + P(Am)

• Questa modifica della procedura rende l’albero più semplice e più stabile: è stato uno degli elementi cruciali per l’affermazione della procedura in pratica

Page 6: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CHAID - esempio• Il Nodo 0 è suddiviso in

base a Patrimonio (con 2 modalità: {B} + {M,A})

• Chi-quadrato = 4.444 indice X2 nella tab. di contingenza che incrocia Patrimonio aggregato (2 modalità: {B} + {M,A}) con Y

• Valore P aggregato = p-value di X2=4.444 (df=1) corretto per la molteplicità dei test (2 possibili aggregazioni): P(X2>4.444)=0.035; p-value aggregato = 0.0352 = 0.07 (< soglia specificata)

• La procedura si arresta perché non ci sono altri split significativi: struttura semplice può essere preferibile che il numero di foglie (segmenti) sia << n, anche a prezzo di errori nella classificazione

• Selezione delle variabili

Page 7: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CART - CRT• Classification and Regression Trees

• Y può essere qualitativa (alberi di classificazione) o quantitativa (alberi di regressione);

• X qualitative o quantitative (o combinazioni lineari)• Non utilizza un test statistico di associazione tra Y e X

(chi-quadrato), ma il concetto di impurità di un nodo obiettivo predittivo

• E’ veloce (rispetto ad altri algoritmi)• Selezione delle variabili• Consente il trattamento di dati mancanti (attraverso

l’uso delle altre variabili esplicative: “surrogati”)• Utilizza criteri di “potatura” (pruning) per trovare la

dimensione ottimale dell’albero• Split solo binari

Page 8: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Eterogeneità• Misura della “variabilità” per una variabile

qualitativa• Indice di Gini: • Eterogeneità max: max incertezza sulla

modalità di Y per un’unità estratta a a caso

• Eterogeneità nulla: nessuna incertezza sulla modalità di Y per un’unità estratta a a caso. Ad es., solo Y1 è presente:

Modalità di Y

Freq. relativa

Y1 f1 = 1/J

YJ fJ = 1/J

Tot. 1

Modalità di Y Freq. relativa

Y1 f1 = 1

YJ fJ = 0

Tot. 1

2

11

J

jjG f

G = 1 – J(1/J2) =

= 1 – 1/J = (J – 1)/J

G = 1 – 1 = 0

Page 9: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Impurità• Impurità di un nodo = eterogeneità di Y per le unità

che appartengono a quel nodo• Misura di impurità (eterogeneità) del nodo t: Indice

di Gini

dove fj|t è la frequenza relativa della modalità j di Y all’interno del nodo t (distribuzione condizionata)

• imp(t) rappresenta: – “varianza” della var dicotomica Y nel nodo t– prob. di errata classificazione (da j a j’) se l’assegnazione è

casuale

• Obiettivo: suddividere un nodo genitore in 2 nodi figli in modo tale che la riduzione di impurità sia max analogia con la scomposizione della var. nei gruppi e fra i gruppi

2| | '|

1 '

( ) 1J

j t j t j tj j j

imp t f f f

Page 10: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Split

• s = split del nodo t; l = nodo figlio di sinistra; r = nodo figlio di destra

• Decremento di impurità associato allo split s:

• Si sceglie lo split, tra tutte le possibili dicotomizzazioni delle variabili esplicative, per cui imp(s,t) è max

• La scelta dello split ottimo è iterata per ogni nodo e per ogni livello dell’albero

• IMP(T) = impurità totale dell’albero T: media ponderata delle impurità imp(t) dei nodi terminali dell’albero

• Max imp(s,t) è equivalente a min IMP(T)

( , ) ( ) ( ) ( ) 0l rimp s t imp t f imp l f imp r

Page 11: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - CRT• E’ lo stesso albero

riportato all’inizio dell’esempio

• Ora però siamo in grado di calcolare il miglioramento associato a ogni split

• Nodo 0: imp(0) = 1 – (0.6252 + 0.3752) = 0.46875 interpretazione

• Nodo 1: imp(1) = 0• Nodo 2: imp(2) = 1 –

(0.8332 + 0.1672) = 0.2782• Miglioramento

associato allo split: 0.46875 – 0.250 – 0.750.2782 = 0.26

• Etc. • Albero max: foglie

omogenee 4 segmenti per n=8 clienti

Page 12: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - Classificazione• Assegnazione dei nodi terminali: classe con

frequenza max (v. regola di classificazione)

• La stima della probabilità di errore è 0: foglie omogenee come si può ottenere una stima più affidabile dell’errore di generalizzazione?

• Dati diversi per adattamento e previsione• Riduzione della complessità dell’albero

– Criteri soggettivi (numero di livelli, numero di unità per nodo …)

– Potatura (pruning)• Spesso i due criteri sono applicati simultaneamente

Page 13: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - Classificazione• Suddivisione del data set in: Training set + Test set• In realtà sarebbe necessaria una suddivisione in 3

insiemi:– Training set: per l’addestramento– Validation set: per la riduzione della complessità dell’albero

(pruning)– Test set: per la stima (indipendente) del tasso di errata

classificazione• La suddivisione del data set è casuale• Però tale suddivsione è “costosa” (in termini di

informazione): si può ottenere una stima meno ottimistica anche utilizzando solo il training set cross-validation

• Cross-validation: il test set è costituito da 1 unità (o da poche unità) che viene esclusa a turno dal training set la stima finale del tasso di errata classificazione è una media di quelle via via ottenute variando il test set

• V-fold CV: il training set è suddiviso (casualmente) in V>2 sottocampioni di numerosità n(1-1/V): CV n-fold CV

Page 14: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CART - Pruning• Necessità di ridurre la complessità dell’albero• Soglie per il decremento di impurità imp(s,t) e/o

per la dimensione dei nodi terminali arresto (soggettivo) della crescita; rinunciare a uno split poco efficace potrebbe precludere split importanti ai passi successivi; ci sono però elementi pratici che possono guidare nella scelta delle soglie

• Si può anche tenere conto del tasso di errata classificazione: potatura dell’albero (pruning) L’obiettivo è quello di sfrondare l’albero dai rami secondari:

1. Si costruisce l’albero di dimensione massima (Tmax): tutte le foglie sono omogenee rispetto a Y o sono formate da 1 unità

2. Partendo da Tmax, si selezionano sottoalberi e si stima una funzione di “perdita” (errori di class.) per ciascuno di essi

3. Si sceglie il sottoalbero che fornisce la performance migliore

• Il punto 2 è quello cruciale

Page 15: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CART – Pruning 2

• Funzione di “perdita” costo-complessità per il sottoalbero TTmax:

R(T) = R(T) + |T|

dove R(T) è la stima campionaria (per risostituzione) del tasso di errata classificazione, |T| è il numero di foglie (dimensione) di T e 0 è un parametro che governa la complessità dell’albero (penalizza alberi con |T| elevato)

• Se =0, T = Tmax; se , T = Radice = {t1}

• Per fissato si sceglie T: R(T) = min

Page 16: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

CART – Pruning 3• Di solito l’albero ottimo non è ottenuto considerando tutti i

possibili sottoalberi (troppo complesso): si implementa una procedura selettiva in cui si aumenta gradualmente nella funzione costo-complessità si parte da =0 (Tmax); poi si trova 1>0 tale per cui la “perdita” associata a un sotto-albero (con un numero di nodi inferiore rispetto a Tmax) è minore di quella di Tmax; poi si trova 2>1 che semplifica il sotto-albero precedente; ecc.

• Ciò equivale ad aggregare in sequenza i nodi che producono il più piccolo incremento di R(T), fino a giungere a T = Radice

• Si ottiene quindi una sequenza ottimale (finita) di sottoalberi Tmax … {t1}, con |T| decrescente

• Il sottoalbero migliore nella sequenza ottimale è quello che min tasso di errata classificazione sul Validation/Test set oppure nella V-fold CV (v. libro)

• Un’ulteriore semplificazione si ottiene considerando la variabilità campionaria della stima del tasso di errata classificazione regola k volte lo SE: sottoalbero più semplice con tasso di errore tasso min di errore + kSE (di solito k=1 oppure k=2)

Page 17: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio di marketing (v. libro)• Obiettivo: segmentare i clienti di un’insegna in base alla

propensione agli acquisti in promo in una categoria (latte)• Y qualitativa 3 classi di propensione:

– Alta: (spesa promo latte)/(spesa tot latte) > 75° percentile– Media: 0 < (spesa promo latte)/(spesa tot latte) < 75°

percentile– Bassa: (spesa promo latte)/(spesa tot latte) = 0

• 8 variabili esplicative quantitative tratte dal data base dell’insegna (p. 562) spesa PL; spesa PP; spesa per particolari tipologie di latte …

• 1 variabile esplicativa nominale: PDV prevalente• Altre possibili variabili esplicative (qui non considerate):

marche, tipo di promo, caratteristiche socio-demografiche• n > 9000 clienti (non occasionali: almeno 5 visite con acquisti

nella categoria) presenti nel data base fidelity e per i quali Y è nota classificazione supervisionata

• Finalità di marketing: la segmentazione ottenuta potrà essere utilizzata per prevedere il comportamento di nuovi clienti oppure quello futuro dei clienti in essere (ad esempio, a seguito di azioni sulle variabili esplicative)

Page 18: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - opzioni

• Training sample: campione casuale di numerosità 0.8n 7200 clienti

• Nota: SPSS non calcola V-fold CV quando è selezionato il pruning quale inconveniente della suddivisione training-test?

Page 19: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - opzioni• Pruning dell’albero: criterio

che rafforza la propensione verso strutture semplici rilevanza aziendale e accessibilità dei segmenti

• La semplicità aumenta con il criterio 2 volte SE

• Le altre opzioni sono quelle standard di SPSS

Page 20: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - training

• Commento split: v. libro

• 3 variabili di segmentazione:– X6 = quota UHT

normale– X9 = PDV– X1 = quota PP

• 6 nodi terminali 6 segmenti

• Caratteristiche dei segmenti nodo 9: clienti con alta propensione promo

Page 21: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - test

• V. libro per albero test sample di circa 1900 clienti si applicano le regole di classificazione ottenute sul training sample

• Ciò che cambia è la stima del tasso di errore

Si può salvare l’output della procedura: nodo finale e classe stimata di appartenenza

Page 22: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esempio - conclusioni• Un aspetto negativo della procedura è la casualità

insita nella suddivisione Training + Test• Si può ripetere la suddivisione più volte e verificare

la stabilità dei risultati o scegliere la segmentazione più utile/interessante

• La replicazione casuale è alla base di alcune estensioni di CART: Bagging e Random Forests

• Tali estensioni migliorano anche l’altro aspetto negativo degli alberi: elevata variabilità a seguito di modificazioni degli input

• Vantaggi importanti in pratica: selezione delle variabili e applicabilità della regola di classificazione

• Se Y fosse quantitativa: alberi di regressione (v. Libro)

Page 23: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esercitazione – Propensione promo• Utilizzare il file: Dati_Esercitazione_alberi.sav• Obiettivi:

– Classificare ciascun cliente come propenso / non propenso ad acquistare in promo

– Variabile dipendente (Y): acquista / non acquista in promo– Selezione delle variabili esplicative– Interpretazione delle regole di classificazione ottenute e loro

impiego per azioni di marketing: segmentazione di nuovi clienti; previsione del comportamento futuro dei clienti analizzati

• Y dicotomica: differenti soglie• Metodologie:

– Analisi preliminari; creazione di nuove variabili (per classi)– CRT / CHAID– Opzioni per la semplificazione dell’albero finale– Stima dell’errore di classificazione: v. test set aggiuntivo

(Test_Esrcitazione_alberi.sav)

• Interpretazione e rilevanza di marketing dei risultati

Page 24: STATISTICA PER LE DECISIONI DI MARKETING Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso GLI ALBERI DI CLASSIFICAZIONE Algoritmi di classificazione

Esercitazione – Filtraggio spam• Utilizzare il file: Dati_Esercitazione2_alberi.zip• Obiettivi (v. file di documentazione):

– Classificare ciascun messaggio come spam / non spam– Utilizzare la regola di classificazione per costruire un filtro

anti-spam; previsione delle caratteristiche dei messaggi in arrivo

• Metodologie:– Analisi preliminari; trasformazioni dei dati; creazione di nuove

variabili (per classi)– CRT / CHAID– Opzioni per la semplificazione dell’albero finale– Stima dell’errore di classificazione– …

• Interpretazione dei risultati e applicazione pratica della classificazione: diversa rilevanza dei due tipi di errore