440 likes | 658 Views
LABORATORIO DI ANALISI AVANZATA DEI DATI. Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso. MISURE DI ASSOCIAZIONE PER APPLICAZIONI DI MARKETING (MARKET BASKET ANALYSIS). Materiali didattici.
E N D
LABORATORIO DI ANALISI AVANZATA DEI DATI Andrea Cerioli andrea.cerioli@unipr.it Sito web del corso MISURE DI ASSOCIAZIONE PER APPLICAZIONI DI MARKETING (MARKET BASKET ANALYSIS)
Materiali didattici • S. Zani – A. Cerioli: Analisi dei dati e data mining per le decisioni aziendali, Capitolo IV • Materiale distribuito a lezione • Dati per esercitazione (v. sito del corso)
CARATTERI QUALITATIVI • Scala nominale (uguale / diverso) • Scala ordinale (migliore / peggiore) • Codifica numerica solo per memorizzazione delle informazioni • Metodologie differenti rispetto al Data Miningper caratteri quantitativi Esempi: Dati Home Theatre(v. ZC, pp. 7-10 + cap. IV) Indagine su moda e marche (v. ZC, pp. 11-16 + cap. IV) Indagine su pasti fuori casa
Un’altra distinzione importante è tra: • Variabili esplicative caratteristiche dei consumatori. Ad esempio: sesso; corso di studio; preferenze; ecc. • Variabile dipendente (risposta) vero obiettivo dell’analisi. Ad esempio: pasto in pizzeria si può determinare da quali fattori dipende? Qual è la probabilità che un ragazzo con certe caratteristiche pranzi in pizzeria piuttosto che in un altro locale? Vi possono essere più variabili «dipendenti»: tutte sullo stesso piano associazione (analogia con correlazione)
ASSOCIAZIONE MARKET BASKET ANALYSIS Obiettivo: evidenziare gruppi di prodotti che tendono a presentarsi insieme in una transazione (“market basket”) analogia con il “carrello della spesa” Alcune applicazioni: • riorganizzazione lay-out supermercato i prodotti venduti spesso insieme dovrebbero essere posizionati nella stessa zona
aumento efficacia promozioni: prodotti fortemente associati non dovrebbero essere in promozione insieme la promozione su uno incrementa anche le vendite dell’altro • brand researchtra prodotti associati (ad esempio: latte e biscotti) oppure nel riacquisto del medesimo prodotto: c’è “fedeltà” alla marca? • web mining: relazioni tra le pagine visitate di un sito di e-commerce
Esempio di Market Basket Analysis • Punto vendita della grande distribuzione • Oltre 400.000 osservazioni relative a prodotti appartenenti a 26 classi merceologiche nella categoria alimentare (food) • Ulteriori informazioni: settimana di vendita; prezzo di vendita; eventuali promozioni applicate • Metodologia di rilevazione dati: scanner / codice a barre
Grafo delle associazioni “fortemente” positive tra prodotti e promozioni • DISPLAY = promozioni basate su esposizioni preferenziali • GIFT = promozioni tramite regali sulla spesa • CPZO = promozioni di tipo “temporarypricereduction”
Come si misura l’associazione tra due prodotti? • Teoria: ZC: Analisi dei dati e data mining per le decisioni aziendali,cap. IV • Riflessione iniziale: due prodotti, A e B, possono presentarsi insieme “nel carrello” per il solo effetto del caso se l’acquisto di A è indipendente da quello di B: P(A B) = P(A) P(B) ovvero P(A | B) = P(A) • A B = intersezione (A e B si verificano simultaneamente); • A | B = A condizionato a B (A si verifica dopo che si è verificato B) • L’associazione si misura valutando lo scarto tra la probabilità stimata sui dati e quella teorica di indipendenza
TABELLA DI CONTINGENZA nij = frequenza della coppia di modalità Ai e Bj ni• = frequenza marginale di Ai n•j = frequenza marginale di Bj
ESEMPIO (Pasti fuori casa): output SPSS A = Motivazione pasto fuori casaB = Convenienza di prezzo Conteggio = frequenza di casella (nij) Conteggio atteso = frequenze attese se A e B indipendenti
Nella popolazione • Le quantità nella tabella sono ora probabilità ignote: stimate dai dati attraverso le frequenze relative nij/n • Se A e B sono indipendenti: ij = P(Ai Bj) =i••j • La frequenza attesa è n stima di i••j = n(ni/n)(nj/n) = (ni nj)/n
Tabella 2 2 A e B 2 prodotti del paniere (items) n11= numero di transazioni in cui A e B sono acquistati insieme n = numero totale di transazioni A e B 2 pagine web (visitate / non visitate)
Odds (quota relativa linguaggio scommesse) Esempio: pasti fuori casa Quota relativa (odds) di bevitori tra coloro che mangiano in pizzeria: O1= n11/n12 = 44/34 = 1.29 Quota relativa (odds) di bevitori tra coloro che non mangiano in pizzeria: O2= n21/n22 = 67/60 = 1.12 Quota relativa (odds) di bevitori sul totale: OTot= n1/n2 = 111/94 = 1.18 L’oddsNON è stima la probabilità di successo ma il rapporto tra due probabilità (di successo e di insuccesso): varia tra 0 e
Esiste associazione tra scelta dell’acqua (tra le bevande) e scelta della pizzeria (tra i locali)? Indice di associazione: odds ratio (rapporto dei prodotti incrociati) OR = O1 / O2 = (n11n22) / (n12n21) Nell’esempio: OR = (44 60) / (34 67) = 1.16 Come si interpreta tale valore?
Se le due variabili (scelta dell’acqua e scelta della pizzeria) sono indipendenti ci aspettiamo che approssimativamente: n11 = (n1n1)/n OR = 1 OR > 1:associazione positiva (relazione diretta) se un carattere è presente, è relativamente più probabile che anche l’altro lo sia 0 < OR < 1: associazione negativa (relazione inversa) se un carattere è presente, è relativamente più probabile che l’altro invece non lo sia Perché la relazione è approssimata?
Esempio 2 (Pasti fuori casa) O1 = 15 / 63 = 0.238 O2 = 15 / 112 = 0.134 OR = 0.238 / 0.134 = 1.78 associazione positiva (di intensità maggiore rispetto a quella: pizzeria – acqua)
Una «complicazione» statistica • Indagine sui pasti fuori casa campione di studenti(n = 205) • Market basket analysis campione di transazioni • Sequenze nella visita ad un sito web campione di “navigazioni” Le osservazioni disponibili (anche se numerose) fanno riferimento ad un campione problema di inferenza
Inferenza per OR • Obiettivo:estendere la conoscenza da un campione di osservazioni ad una popolazione più ampia (v. esempi) è un processo che ha a che fare con l’estrazione della conoscenza(fase confermativa, non esplorativa) E se avessimo a disposizione l’intera popolazione? Disporre di campioni molto grandiha anche qualche inconveniente stima / previsione anziché verifica di ipotesi
Una conseguenza fondamentale Gli indici statistici calcolati sui dati sono una stima di indici analoghi, ma ignoti, della popolazione (parametri) • Ad esempio: • Frequenze osservate nella tabella di contingenza stima delle ignote frequenze nella intera popolazione • • ciò spiega perché, se A e B sono indipendenti, la relazione • n11 = (n1n1)/n • vale solo in via approssimata. • Tabella Pizzeria-Coca (Pasti fuori casa): OR = 1.78 stima dell’OR ignoto riferito alla popolazione di tutti gli studenti
Un’altra conseguenza fondamentale Il valore degli indici campionari (ad es. OR) varia da campione a campione c’è variabilità campionaria Come si misura tale variabilità campionaria? STANDARD ERROR (S.E.) = deviazione standard stimatadella distribuzione campionaria • è calcolato dai software statistici (SPSS) • è inversamente proporzionale a
Intervallo di confidenza • = generico indice di associazione della popolazione (parametro ignoto). Ad es. = OR • IA = indice di associazione calcolato nel campione (stima di ). Ad es. IA= OR campionario • SE(IA) = standard error di IA • campione di numerosità elevata (ZC, p. 156) 1– = probabilità associata all’intervallo 0.95, 0.99 z() = percentile di N(0, 1) z(0.05) = 1.96; z(0.01) = 2.58
Esempio: associazione pizzeria-cocaOR v. “Coeff. di rischio” Ad esempio: 1 – = 0.95 z(0.05) = 1.96 SE(OR) è calcolato, ma non riportato, da SPSS
Interpretazione • Intervallo che con probabilità 1 – contiene l’ignoto valore del parametro della popolazione nell’esempio il vero ORè compreso con probabilità 0.95 tra 0.815 e 3.876 • Se le variabili sono indipendenti(nella popolazione): = 1 poiché tale valore è interno all’intervallo, non si può escludere che il valore 1.778 calcolato nel campione sia dovuto solo alle “fluttuazioni campionarie” e che il “vero” ORsia realmente 1 l’associazione (positiva) osservata nel campione non è significativa • Ad una conclusione analoga si perviene anche attraverso la verifica dell’ipotesi nulla: H0: OR= 1 p-value elevato
Esempio(continua): rischio relativo • Rischio relativo (RR) • per coca=sì RR1 = (15/78) / (15/127) = 0.192/0.118 = 1.628 • per coca=noRR2 = (63/78) / (112/127) = 0.808/0.882 = 0.916 • Entrambi gli intervalli per RR comprendono il valore 1 (indipendenza) • OR = RR1/RR2 = 1.628/0.916 = 1.78 • RR richiede però che i totali di riga (PIZZERIA) siano fissati
Possiamo ora comprendere meglio i grafi di associazione(v. esempio di Market Basket Analysis) Associazione “fortemente” positiva: relazioni il cui intervallo di confidenza per OR comprende solo valori > 5 con probabilità elevata, nella popolazione di tutte le transazioni, OR > 5
Una (seconda) complicazione statistica • La dicotomia sì / no, acquista / non acquista … spesso trascura informazioni importanti ad esempio: motivazioni, caratteristiche personali, preferenze personali, ecc. • Le informazioni precedenti possono essere su una scala ordinale (v. indagine pasti fuori casa) Caso 1: Indici di associazione per variabili nominali Caso 2: Indici di associazione per variabili ordinali (v. SPSS)
Associazione tra variabili nominali Tabella di contingenza: MOTIVAFC - CONVPREZ
Chi quadrato(ZC, pp. 112 – 117) mij = (ni•n•j)/n frequenze attese (se A e B indipendenti) Test di significativitàdell’associazione: calcolo p-value(quale distribuzione?) • Phi, V di Cramer, Coeff. di contingenza indici di associazione(simmetrici) ottenuti da X2 • Il più utile è V=X2/min(r-1,c-1) varia in [0, 1]
Indici con interpretazione operativa(ZC, pp. 117 – 126) Misure di direzione indici asimmetrici • Lambda riduzione proporzionale nella probabilità dell’errore di previsione (P.R.E.), conoscendo la modalità della variabile esplicativa • Tau di G. & K. riduzione proporzionale nell’incertezza (misurata attraverso l’eterogeneità) • Coeff. di incertezza riduzione proporzionale nell’incertezza (misurata attraverso l’entropia) • Tali indici variano tra 0 e 1: • 0 la variabile esplicativa non aumenta l’informazione • 1 la variabile esplicativa consente di prevedere esattamente la variabile dipendente • Gli indici 2 e 3 sono interpretabili come un’estensione di R2 della regressione
Associazione tra variabili ordinali Tabella di contingenza: CONVPREZ – QUALITA’
Gamma, Tau di Kendall (simmetrici), D di Somers (asimmetrico) indici di concordanza • Misurano una particolare forma di associazione tra caratteri ordinali: relazione monotona • Variano in [-1, +1] segno dell’associazione • Gamma è il più semplice: proporzione di coppie “concordanti” – proporzione di coppie “discordanti” • coppia concordante= l’unità che ha la modalità più elevata su una variabile ha la modalità più elevata anche sull’altra • Gli indici differiscono tra loro per come trattano le coppie “a pari merito” (cioè con lo stesso livello di una o di entrambe le variabili); Gamma ha un valore solitamente più elevato • Tau-b è assimilabile ad un coefficiente di correlazione, D al coefficiente angolare di una retta di regressione
Si possono applicare all’esempio precedente gli indici per variabili nominali? In questo caso, gli indici per variabili nominali forniscono misure più basse e solo marginalmente significative l’ordine tra le modalità è importante per focalizzare il tipo di associazione (monotona)
Data Mining aziendale • Nella Market Basket Analysis (numero di items molto elevato) non interessano solo le associazioni a coppie associazioni a terne, quaterne, ecc. • Regole di associazione individuano insiemi di items (di numerosità variabile e non noti a priori) associati tra loro: insiemi che compaiono spesso insieme nel “carrello” (frequent sets) • Applicazioni a variabili binarie: presente / non presente nel “carrello” • Estensione anche a situazioni diverse: ad esempio, variabili nominali come? (variabili indicatrici)
Dati kitems (binari) A1, A2, … Ake n transazioni • n11…1 = numero di transazioni in cui tutti gli items sono acquistati congiuntamente • p11…1 =n11…1/n = frequenza relativa di transazioni in cui tutti gli items sono acquistati congiuntamente Supporto della regola che associa gli items: S(A1, A2, …, Ak) • Il supporto è una stima di P(A1, A2, …, Ak) probabilità di osservare congiuntamente tutti gli items in un “carrello” casuale • Due gruppidi items: G1 = “antecedente”; G2 = “conseguente”
Predittabilità (accuratezza, confidenza) della regola di associazione: C(G1G2)=S(G1, G2) / S(G1) Stima della probabilità condizionataP(G2/G1) • Lift della regola di associazione: L(G1G2) =C(G1G2)/S(G2) = S(G1, G2)/[S(G1)S(G2)] Stima della misura di associazione(Tab. 22): P(G1G2)/[P(G1)P(G2)] • Se G1 e G2 sono indipendenti, tale misura è 1 si può calcolare l’intervallo di confidenza(di livello 1-) per L e vedere se esso contiene il valore 1
Esempio (indagine pasti fuori casa) • Insieme di 3 items: Primi – Carne – Dolce • variabili binarie: spesso / sempre – mai / quasi mai Supporto della regola di associazione: S = 37/205 = 0.18 G1 = Primi Carne S = (37+32)/205 = 0.34; G2 = Dolce S = (46+54)/205 = 0.49 Predittabilità (Primi Carne Dolce): C= 0.18 / 0.34 = 0.53 Lift: L = 0.53 / 0.49 = 0.18 / (0.340.49) = 1.08 > 1 associazione positivatra i 3 items
Applicazioni di Market Basket Analysis • Numero di items molto elevato: quante e quali sono le associazioni rilevanti? • Algoritmi veloci per individuare tutti i possibili gruppidi itemsassociati: regole di associazione • Algoritmo aggregativo di tipo gerarchico (Apriori): • si fissa una soglia per il supporto • si scelgono gli items (singoli) con supporto > soglia • dati gli items selezionati al punto 2, si considerano le coppie (associazioni) con supporto > soglia • dati gli items selezionati al punto precedente, si itera la procedura aggregazioni successive di items (terne, quaterne, …) finché si trovano associazioni con supporto > soglia • varianti in cui si considera anche la predittabilità http://fuzzy.cs.uni-magdeburg.de/~borgelt/doc/apriori/apriori.html
Un esempio di Market Basket Analysis(v. file: basket analysis.sav) • 371 clienti Conad Card (Conad Le Querce – RE) • self scanning • dati riferiti ad una giornata • informazioni socio-demografiche (fidelity card): sesso, età, titolo di studio, ecc. • 25 categorie di prodotto • Quali sono le associazioni rilevanti (co-presenza delle categorie)?
Ad esempio: • Supporto della regola di associazione: S = 65/371 = 0.175 • Odds ratio: OR = (65133)/(11558) = 1,3 associazione positiva tra le 2 categorie • Predittabilità (Forno Gastronomia): • C = (65/371)/(180/371) = 0.175 / 0.485 = 0.36 • Predittabilità (Gastronomia Forno): • C = (65/371)/(123/371) = 0.175 / 0.332 = 0.53 nel 53% dei casi chi compra dal banco gastronomia compra anche dal banco forno • Lift: L = 0.175 / (0.4850.332) = 1.09 > 1
Conclusioni sulla Market Basket Analysis Le “regole di associazione” sono molto utilizzate e sono state una delle applicazioni di maggiore successo del Data Mining semplicità; informazioni di rilievo e facilmente interpretabili in azienda Inconveniente: il focus è sulle regole con supporto elevato (items più venduti) associazioni con elevata predittabilità / lift ma supporto limitato (items poco frequenti) possono non essere rilevate. Ad esempio: vodka caviale (prodotto con supporto molto piccolo) Inoltre il risultato finale dipende dalla soglia prescelta
Assignments sulla Market Basket Analysis • Analisi dettagliata delle associazioni (indici + regole) stimate dai dati del file: basket analysis.sav • Analisi dettagliata delle associazioni (indici + regole) stimate dai dati del file: : CharlesBookClub_Dati.xls acquisti di differenti tipologie di libri attraverso un distributore (Charles Book Club) specializzato in marketing diretto • Analisi dettagliata delle associazioni (indici + regole) stimate dai dati del file: : CatalogCrossSell.xls acquisti in differenti cataloghi di vendita • Approfondimento dell’algoritmo Apriori e uso dell’algoritmo in uno dei problemi precedenti.