4/13/2015 Analisi Discriminante Analisi Discriminante Strumenti quantitativi per la gestione Emanuele Taufer Un esempio introduttivo Approccio con Bayes Perchè un altro metodo di classificazione? Classificazione con Bayes Analisi discriminante lineare (LDA): p Esempio Stima dei parametri Esempio grafico Analisi discriminante lineare (LDA): p Esempio = 1 > 1 LDA sul dataset Default Specificità e sensitività Modificare la decisione Trade­off sensitività­specificità La curva ROC Analisi discriminante quadratica (QDA) LDA­QDA: confronto grafico Comparazione dei metodi di classificazione LDA e regressione logistica KNN e QDA Simulazioni: scenari lineari Simulazioni: scenari non lineari Riferimenti bibliografici Un esempio introduttivo file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 1/13 4/13/2015 Analisi Discriminante Consideriamo il data set Default e supponiamo di usare un solo predittore, student per determinare P (def ault = Y es|student = Y es) Incrociando i dati otteniamo student default No Yes Sum No 6850 2817 9667 Yes 206 127 333 Sum 7056 2944 10000 Si noti che in questo caso, possiamo stimare direttamente ^ P (def ault = Y es|student = Y es) = 127 = 0.043 2944 Tuttavia nella pratica, volendo prevedere la probabilità di default sulla base di variabili qualitative e quantitative, risulta più semplice passare attraverso l’utilizzo dl teorema di Bayes Approccio con Bayes Indichiamo con π = P (def ault = Y es) e corrispondentemente (1 − π) = P (def ault = N o) Inoltre, P (S |D) = P (student = Y es|def ault = Y es) e ¯ P (S |D) = P (student = Y es|def ault = N o) Utilizzando il teorema di Bayes otteniamo π ⋅ P (S |D) P (def ault = Y es|student = Y es) = ¯ π ⋅ P (S |D) + (1 − π) ⋅ P (S |D) In assenza di qualsiasi informazione ulteriore, selezionata un’unità a caso, utilizzando la tabella, possiamo stimare ^ = π 333 = 0.0333 10000 ^ ^ P (S |D) = P (student = Y es|def ault = Y es) = 127 = 0.38 333 e ^ ¯ ^ P (S |D) = P (student = Y es|def ault = N o) = 2817 = 0.29 9667 file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 2/13 4/13/2015 Analisi Discriminante Inserendo i valori ottenuti nella formula di Bayes otteniamo 0.0333 ⋅ 0.38 ^ P (def ault = Y es|student = Y es) = 0.0333 ⋅ 0.38 + 0.9667 ⋅ 0.29 = 0.043 L’analisi discriminante utilizza il teorema di Bayes per produrre delle stime che una variabile risposta Y qualitativa appartenga ad una certa categoria k = 1, 2, … , K sulla base di informazioni fornite da predittori qualitativi e quantitativi. Perchè un altro metodo di classificazione? Quando le classi di Y sono ben separate dai predittori, le stime per il modello di regressione logistica sono sorprendentemente instabili. L’analisi discriminante lineare non soffre di questo problema. Se n è piccolo e la distribuzione del predittori X è approssimativamente normale in ciascuna delle classi, il modello discriminante lineare è più stabile rispetto al modello di regressione logistica. L’analisi discriminante lineare è più semplice da usare quando abbiamo più di due classi per Y . Classificazione con Bayes Supponiamo che la variabile risposta qualitativa Y possa assumere K ordinati). ≥ 2 possibili valori distinti (non Indichiamo con πk , k = 1, 2, … K la probabilità che un’osservazione scelta a caso appartenga alla classe k; (probabilità a priori) Indichiamo con fk (x) = P r(X = x|Y = k) la funzione di densità di X condizionata a Y = k . Il ricorso alle densità è necessario poiché X può essere un carattere continuo. Il teorema di Bayes ottiene π k fk (x) P (Y = k|X = x) = ∑ K j=1 π j fj (x) Definiamo pk (x) = P (Y = k|X = x) la probabilità a posteriori che l’unità appartenga alla classe k dato il valore dei predittori X = x . Poiché le probabilità a priori πk possono essere facilmente stimate ricorrendo alle frequenze relative di ciascuna classe di Y . Il problema si riduce alla determinazione di una buona stima di fk (x) . file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 3/13 4/13/2015 Analisi Discriminante Analisi discriminante lineare (LDA): p = 1 L’assunzione di base della LDA, che permette di stimare agevolmente fk (x) , è quella per cui fk è normale o gaussiana: 1 fk (x) = 1 −− σ k √2π exp (− 2σ 2 2 (x − μk ) ) k dove μk e σ2k sono rispettivamente la media e la varianza della classe k. Nella LDA assumiamo che σ21 = ⋯ = σ 2 k = σ 2 . Le probabilità a posteriori diventano πk 1 σ√2π exp (− 1 2σ 2 2 (x − μk ) ) pk (x) = ∑ K j=1 πj 1 σ√2π exp (− 1 2σ 2 2 (x − μj ) ) Si ricordi che la regola del classificatore di Bayes assegna l’unità alla classe k per la quale pk (x) è massima. Rielaborando l’espressione per pk (x) si ottiene che pk (x) è massima quando δk (x) = x μk σ 2 2 μ k − 2σ 2 + log(π k ) è massimo. Esempio Se K = 2 e π1 = π 2 = 0.5 allora il classificatore di Bayes assegna l’unità alla classe 1 se 2 2x ⋅ (μ1 − μ2 ) > μ 1 2 − μ 2 ed alla classe 2 altrimenti. Possiamo determinare la frontiera di decisione come 2 μ x = 1 2 − μ 2 2(μ1 − μ2 ) = μ1 + μ2 2 Stima dei parametri Per implementare il metodo in pratica è necessario procedere alla stima dei parametri μ1 , … μK , σ2 , π1 , … πK . Se nk indica la numerosità di osservazioni training nel gruppo k, gli stimatori usati sono molto semplici: file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 1 4/13 4/13/2015 Analisi Discriminante ^ μ = k 1 nk ∑ xi i:y =k i ^2 = σ K 1 n − K ∑ ∑ (x i − μk ) 2 k=1 i:y =k i ^k = π nk n I parametri stimati sono sostituiti nelle formule viste sopra per ottenere stime della probabilità di appartenenza ad una certa classe e per la classificazione. Esempio grafico Sinistra: popolazione. Destra: campione Tratteggiato: frontiera di decisione di Bayes Continuo: frontiera di decisione LDA Analisi discriminante lineare (LDA): p > 1 Nel caso in cui vi siano più predittori X = (X1 , X2 , … , Xp ) l’assunzione tipica nella LDA è che le ossevazioni del gruppo k, (k = 1, 2, … , K ) provengano da una distribuzione normale multivariata X ∼ N (μk , Σ) . Nota: nella LDA, il vettore μk è specifico per ciascuna classe mentre Σ è comune a tutte le classi K . Effettuata la stima dei parametri (μk , Σ) , k = 1, 2, … , K , le probabilità P (Y = k|X = x) sono stimate ricorrendo al teorema di Bayes. Attraverso queste è poi possibile procedere alla classificazione delle unità. file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 5/13 4/13/2015 Analisi Discriminante Esempio Analogamente a quanto visto nel caso p pratica delle frontiere di decisione. Nel grafico seguente vi sono K = 3 = 1 , utilizzando il classificatore di Bayes, la LDA determina in classi e tre frontiere di decisione. Il classificatore di Bayes assegna l’unità in base alla regione in cui trova. Sinistra: popolazione. Destra: campione Tratteggiato: frontiera di decisione di Bayes Continuo: frontiera di decisione LDA LDA sul dataset Default La procedura lda() (dettagli nel Laboratorio) utilizzata per il data­set Default fornisce la seguente tabella di classificazione previsione.default default No Yes Sum No 9645 22 9667 Yes 254 79 333 Sum 9899 101 10000 La procedura in totale ha una percentuale di errore pari a (254 + 22)/10000 = 0.0276 (2.76%) Sebbene l’errore totale sembri molto basso si noti che la semplice regola che classifica tutte le unità come non­Default ha un errore totale del 3,33%. file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 6/13 4/13/2015 Analisi Discriminante Se gli errori sono calcolati per sottogruppi si ha che 22/9667 = 0.002 sono stati scorrettamente classificati come defaulter 254/333 = 0.763 sono stati scorrettamente classificati come non­defaulter Dal punto di vista della società creditizia un percentuale così elevata di classificazioni sbagliate tra i defaulter può essere inaccettabile. Il classificatore di Bayes, assegnando l’unità alla classe con probabilità prevista più elevata garantisce il più basso errore totale. Non è detto che questa sia la strategia ottimale per tutte le situazioni. Specificità e sensitività Prendendo a prestito una terminologia tipica dei test clinici definiamo: La Sensitività del classificatore come la sua capacità di individuare correttamente i defaulter. In questo caso 79 su 333 pari al 23, 7 %, definiti anche veri positivi La Specificità del classificatore come la sua capacità di individuare correttamente i non defaulter. In questo caso 9645 su 9667 pari al 99.77 %, definiti anche veri negativi Le unità classificate scorrettamente sono definite falsi negativi: defaulters classficati come non defaulters falsi positivi: non­defaulters classificati come defaulters In un contesto di verifica delle ipotesi dove H0 : non − def ault contro Ha : def ault i falsi positivi sono associati all’errore di prima specie mentre i falsi negativi sono associati all’errore di seconda specie. Modificare la decisione Tornando all’esempio, se la classificazione in base alla regola P (def ault produce bassa sensitività, si potrebbe provare, ad esempio, con = Y es|X = x) > 0.5 P (def ault = Y es|X = x) > 0.2 I risultati sono nella tavola seguente: previsione.default.2 default No Yes Sum No 9435 232 9667 Yes 140 193 333 Sum 9575 425 10000 file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 140/333 7/13 4/13/2015 Analisi Discriminante In questo caso l’errore tra i defaulters è 140/333 pari al 42.04 %, rispetto al 76.28 % precedente La sensitività ci fornisce un altro modo per leggere il miglioramento: ora è pari a 193/333 ossia il 57.96 % rispetto al 23, 7 % precedente. Si noti che la specificità è ora diminuita passando da 99.77 % a 97.6% (9435/9667 ) Trade­off sensitività­specificità Nero: errore totale Arancio (puntutato): falsi positivi Blu (tratteggiato): falsi negativi La curva ROC file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 8/13 4/13/2015 Analisi Discriminante La curva ROC visualizza simultaneamente i due tipi di errore per tutte le soglie possibili. Il rendimento globale di un classificatore, in base a tutte le soglie possibili, è dato dall’area sotto la curva (AUC). Tanto più elevata è l’area tanto migliore è il classificatore Una curva ROC ideale dovrebbe arrivare fino all’angolo in alto a sinistra, Per i dati Default l’AUC è 0.95, molto vicino al massimo (1 ). Ci si aspetta che un classificatore totalmente casuale (ossia senza capacità predittiva), abbia valoredi AUC non superiore a 0.5 (valutati su un training set). Le curve ROC sono utili per confrontare diversi classificatori. Analisi discriminante quadratica (QDA) Nella LDA l’assunzione di base è che per ogni classe k, X decisione lineari file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html ∼ N (μk , Σ) ∼ ( , , ottenendo frontiere di ) 9/13 4/13/2015 Analisi Discriminante Nella QDA l’assunzione di base è che per ogni classe k, X che ogni gruppo abbia variabilità diversa. ∼ N (μk , Σk ) , ossia si prevede la possibilità In quest’ultimo caso si ottengono frontiere di decisione non­lineari. LDA­QDA: confronto grafico Viola (tratteggiato): classificatore di Bayes Nero (punteggiato): LDA Verde (continuo): QDA LDA è meno flessibile di QDA ed ha quindi minore varianza Ma c’è un trade­off: se l’assunto di LDA che le K classi condividano la stessa matrice di covarianza è totalmente errato, ci può essere bias elevato LDA tende ad essere la scelta migliore se ci sono relativamente poche osservazioni training e ridurre la variabilità è cruciale. Al contrario, QDA è consigliata se il training set è molto grande, o se l’assunzione di una matrice di covarianza comune per le K classi è chiaramente insostenibile. Comparazione dei metodi di classificazione Compariamo alcune caratteristiche e performance dei 4 metodi visti finora: 1. Regressione logistica 2. Analisi discriminante lineare (LDA) 3. Analisi discriminante quadratica (QDA) file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 10/13 4/13/2015 Analisi Discriminante 4. Classificazione K­nearest­neighbor (KNN) LDA e regressione logistica Consideriamo per semplicità il caso p possibile verificare che = 1 e K = 2 ; indichiamo con p1 (x) = P (Y = 1|X = x) ; è 1. Nella LDA, per c0 , c1 delle funzioni di μ1 , μ2 , σ p1 (x) log 1 − p1 (x) = c0 + c1 x 2. Nella regressione logistica abbiamo visto che p1 (x) log 1 − p1 (x) = β0 + β1 x Nella LDA la stima di c0 e c1 avviene sulla base di un assunzione di normalità nei gruppi, nella regressione logistica quest’assunzione non viene fatta. La performance dei due metodi è spesso comparabile tuttavia la LDA tende a superare la regressione logistica se l’assunzione di normalità è soddisfatta mentre accade il contrario se la situazione è lontana dal caso normale. Ricordiamo inoltre che nel caso K > 2 la LDA è più agevole da usare rispetto alla regressione logistica che richiede di formare K − 1 equazioni logistiche. KNN e QDA Se le regioni ottimali di separazione dei gruppi hanno frontiere non­lineari, l’uso di KNN oppure LDA può essere più appropriato. La KNN è un approccio non­parametrico che può accomodare agevolmente non­linearità di qualsiasi tipo, può richiedere tuttavia un elevato numero di unità training La QDA può performare meglio nel caso di un numero limitato di osservazioni poichè fa delle assunzioni sulla forma delle frontiere (di tipo quadratico) Si noti che, analogamente a quanto visto nel caso della regressione lineare, non linearità possono essere introdotte anche attraverso l’uso di interazioni e termini polinomiali Simulazioni: scenari lineari Nel grafico seguente si mettono in evidenza le performance dei diversi metodi di classificazione (attraverso la misurazione dell’errore test) 1. I gruppi (con stessa variabilità) sono generati da variabili casuali normali indipendenti. Caso che si adatta perfettamente alla LDA file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 11/13 4/13/2015 Analisi Discriminante 2. I gruppi sono generati da variabili casuali normali correlate fra loro. Caso che ancora si adatta bene alla LDA. 3. I gruppi sono generati da variabili casuali non­normali (distribuzione t). Caso che si allontana da quanto postulato dalla LDA. Simulazioni: scenari non lineari 4. I gruppi (con variabilità differenti) sono generati da variabili casuali normali indipendenti. Caso che si adatta perfettamente alla QDA 5. Situazione simile al caso 4, con non­linearità più marcata. 6. Situazione altamente non lineare Riferimenti bibliografici file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 12/13 4/13/2015 Analisi Discriminante An Introduction to Statistical Learning, with applications in R. (Springer, 2013) Alcune delle figure in questa presentazione sono tratte dal testo con il permesso degli autori: G. James, D. Witten, T. Hastie e R. Tibshirani file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/4d_AD.html 13/13