Valutazione dei Modelli Corso di Apprendimento Automatico Laurea Magistrale in Informatica Nicola Fanizzi Dipartimento di Informatica UniversitĂ degli Studi di Bari
28 gennaio 2009
Corso di Apprendimento Automatico
Valutazione dei Modelli
Sommario
Principi di conservazione ed indeterminazione Errore, Bias e Varianza Intervalli di confidenza per l’errore osservato dell’ipotesi Stimatori Distribuzioni: Binomiale, Normale Teorema del Limite Centrale t-Test a coppie
Confronto di algoritmi di apprendimento Metodi di campionamento per la stima Altri metodi
Corso di Apprendimento Automatico
Valutazione dei Modelli
Valutazione
Quant’è predittivo il modello appreso? L’errore sui dati di training non è un buon indicatore della performance su dati futuri Altrimenti 1-NN sarebbe un classificatore ottimale
Soluzione semplice usabile se si hanno a disposizione molti esempi classificati: Suddividere i dati in training e test set
Tuttavia: i dati (soprattutto se classificati) sono in genere in numero limitato Si necessitano tecniche più sofisticate
Corso di Apprendimento Automatico
Valutazione dei Modelli
Confronto di algoritmi Domande 1
Se si è interessati alla performance sulla generalizzazione, ci sono ragioni per preferire un classificatore o un algoritmo piuttosto che un altro ?
2
Se non si fanno assunzioni supplementari, ci si può aspettare che un algoritmo sia globalmente superiore (o inferiore) rispetto agli altri ?
3
Si può trovare un algoritmo che risulti in generale superiore (o inferiore) ad una procedura di classificazione casuale ?
Risposte 1-2-3: NO L’apparente superiorità di un algoritmo dipende dal particolare problema e dalla distribuzione dei dati Corso di Apprendimento Automatico
Valutazione dei Modelli
Principio di conservazione dell’errore I Supponendo di lavorare nel discreto, sia P(h) la probab. a priori di h ∈ H e sia P(h|S) la probab. di costruire h in base al campione S, con n = |S| Errore atteso: E[err |S] =
XX
P(x)[1 − δ(f (x), h(x))]P(h|S)P(f |S)
h,f x6∈S
dato S, è correlato alla somma degli input, pesati dalla loro probabilità P(x), e all’allineamento della risposta dell’ipotesi con la risposta corretta, pesati, risp., da P(h|S) e P(f |S) Quindi: non conoscendo P(f |S) a priori, si può concludere poco sulla performance dell’alg. di classificazione P(h|S) Corso di Apprendimento Automatico
Valutazione dei Modelli
Principio di conservazione dell’errore II Errore atteso off-training del k -esimo algoritmo: X E[errk |f , n] = P(x)[1 − δ(f (x), hk (x))]P(hk (x)|S) x6∈S
Le assunzioni sul dominio del problema sono molto rilevanti Anche per alg. apparentemente ottimali, vi sono problemi per i quali le prestazioni sono basse: quelli in cui algoritmo e probab. a posteriori non collimano Si dimostra infatti una sorta di ”teorema di conservazione” per la generalizzazione: per ogni alg. di apprendimento, la somma delle prestazioni rispetto a tutte le possibili funzioni obiettivo è nulla più formalmente... Corso di Apprendimento Automatico
Valutazione dei Modelli
Teorema No Free Lunch Theorem (No Free Lunch) Dati due algoritmi, con probab. P(h1 (x)|S) e P(h2 (x)|S), indipendentemente dalla distribuzione dei campioni P(x) e dal loro numero n, sono vere le seguenti asserzioni: 1
Mediando uniformemente su tutte le funzioni f : E(err1 |f , n) − E(err2 |f , n) = 0;
2
Per ogni campione fissato S, mediando uniformemente su tutte le funzioni f : E(err1 |f , S) − E(err2 |f , S) = 0;
3
Mediando uniformemente sulle probab. a priori P(f ): E(err1 |n) − E(err2 |n) = 0;
4
Per ogni campione fissato S, mediando uniformemente sulle probab. a priori P(f ): E(err1 |f , S) − E(err2 |f , S) = 0 Corso di Apprendimento Automatico
Valutazione dei Modelli
No Free Lunch – osservazioni I 1
Stesso errore se si media su tutte le funzioni possibili: XX P(S|f )[E(err1 |f , n) − E(err2 |f , n)] = 0 f
S
se le funzioni sono equiprobabili, allora in generale un algoritmo (buono) non supera mai un altro (cattivo) 2
Fissato S, nessun algoritmo porta a migliorare l’errore off-training rispetto agli altri: X [E(err1 |f , D) − E(err2 |f , D)] = 0 f
3
come 1. per distribuzioni delle funzioni target non uniformi
4
come 2. per distribuzioni delle funzioni target non uniformi Corso di Apprendimento Automatico
Valutazione dei Modelli
impossibili
+ 0
sopra la media sotto la media in media
spazi dei problemi
possibili
No Free Lunch – osservazioni II
a)
buona accuratezza su pochi problemi, ma molto bassa sugli altri
b)
eccellente accuratezza su molti problemi, ma scarsa su molti altri
c)
media accuratezza generale, con punte molto alte o molto basse
d)
eccellenti prestazioni su tutto
e),f)
impossibile andar mediamente bene su tutti i problemi Corso di Apprendimento Automatico
Valutazione dei Modelli
SimilaritĂ e indeterminazione I
Supponiamo di lavorare ancora nel discreto in logica proposizionale Dati due esempi, supponiamo di usare un numero finito feature (e quindi di pattern) per descriverli In assenza di informazione a priori sulla distribuzione, una misura di similaritĂ tra esempi potrebbe semplicemente contare il numero di pattern condivisi Si stabilisce un risultato di indeterminazione basato sulla uguale similaritĂ di tutti gli esempi, se non si fanno assunzioni ulteriori in base alla conoscenza di fondo sul dominio
Corso di Apprendimento Automatico
Valutazione dei Modelli
SimilaritĂ e indeterminazione II Esempio Istanze xi come triple di feature fi binarie:
a)
f1 : ha_gambe, f2 : ha_braccio_dx, f3 : ha_mano_dx (notare che f3 ⇒ f2 )
b)
...
c)
f1 : arancio, f2 : marrone, f3 : blu mutualmente esclusive Corso di Apprendimento Automatico
Valutazione dei Modelli
Similarità e indeterminazione III Le feature fi corrispondono ad insiemi elementari, le formule / pattern ad insiemi complessi Diagramma generale per un problema con 2 feature
es. 4 insiemi descritti da formule congiuntive: x1 ∈ f1 ∧ ¬f2 x2 ∈ f1 ∧ f2 x3 ∈ ¬f1 ∧ f2 Corso di Apprendimento Automatico
Valutazione dei Modelli
x4 ∈ ¬f1 ∧ ¬f2
Similarità e indeterminazione IV Rango (rank) r di un pattern: numero di elementi che descrive/contiene NB.
`´ rank 0 ( 40 = 0):
∅ = f1 ∧ ¬f1 ∨ f2 ∧ ¬f2
Rank 1
2
3
4
`4´
= 4: 1 {x1 } = f1 ∧ ¬f2 {x2 } = f1 ∧ f2 {x3 } = ¬f1 ∧ f2 {x4 } = ¬(f1 ∨ f2 ) `4´ = 6: 2 {x1 , x2 } = f1 {x1 , x3 } = f1 ∧ ¬f2 ∨ ¬f1 ∧ f2 {x1 , x4 } = ¬f2 {x2 , x3 } = f2 {x2 , x4 } = (f1 ∧ f2 ) ∨ ¬(f1 ∨ f2 ) {x3 , x4 } = ¬f1 `4´ = 4: 3 {x1 , x2 , x3 } = f1 ∨ f2 {x1 , x2 , x4 } = f1 ∨ ¬f2 {x1 , x3 , x4 } = ¬(f1 ∧ f2 ) {x2 , x3 , x4 } = ¬f1 ∨ f2 `4´ = 1: 4 {x1 , x2 , x3 , x4 } = > = f1 ∨ ¬f1 ∨ f2 ∨ ¬f2 Corso di Apprendimento Automatico
Valutazione dei Modelli
Similarità e indeterminazione V In assenza di ulteriori informazioni: Misura di similarità basata sul numero di pattern condivisi Osservazioni Date d le istanze, # di pattern distinti condivisi: 0 di rank 1, 1 di rank 2, d−1 = d − 2 di rank 3, . . . 1 In generale, dato r (r ≤ d), # pattern condivisi:
d−1 r −2
Per cui il numero totale di predicati condivisi risulta: d X d −2 = (1 + 1)d−2 = 2d−2 r −2 r =1
indipendentemente dalla scelta delle feature / pattern Corso di Apprendimento Automatico
Valutazione dei Modelli
Teorema del brutto anatroccolo – Ugly Duckling
Theorem (Ugly Duckling) Dato un insieme finito di pattern atto a distinguere gli esempi, il numero di pattern condivisi da due generici esempi risulta costante e indipendente dalla loro scelta. Se la similaritĂ dipende dal totale di pattern condivisi, allora tutte le coppie di esempi sono ugualmente simili.
Corso di Apprendimento Automatico
Valutazione dei Modelli
Definizioni di errore I L’errore vero dell’ipotesi h rispetto alla funzione target f ed alla distribuzione D è la probabilità che h misclassificano un’istanza presa a caso seguendo D: errD (h) ≡ Px∈D [f (x) 6= h(x)]
L’errore sul campione di h rispetto ad f ed al campione di dati S è la proporzione di esempi che h misclassifica: errS (h) ≡
1X δ(f (x), h(x)) n x∈S
dove δ(f (x), h(x)) vale 1 se f (x) 6= h(x) e 0 altrimenti Quanto si riesce a stimare bene errD (h) con errS (h)? Corso di Apprendimento Automatico
Valutazione dei Modelli
Definizioni di errore II In caso di regressione (f , h a valori reali) Si definisce una loss function: L(f (x), h(x)) Tipicamente: (f (x) − h(x))2 errore quadratico L(f (x), h(x)) = |f (x) − h(x)| errore assoluto Quindi l’errore di generalizzazione sarà: errD (h) ≡ E[L(f (x), h(x))] Mentre l’errore di training è: errS (h) ≡
1X L(f (x), h(x)) n x∈S
Corso di Apprendimento Automatico
Valutazione dei Modelli
Problemi di stima dell’errore I bias alto bassa varianza
errore di predizione
bias basso alta varianza
alta
complessità del modello
bassa
errS (h) non è una buona stima di errD (h): decresce al crescere della complessità del modello, arrivando a 0 per modelli complessi Tali modelli, però risultano sovradattati (overfit) sul campione di training: scarsa generalizzazione
Corso di Apprendimento Automatico
Valutazione dei Modelli
Problemi di stima dell’errore II In caso i dati abbondino: suddivisione del dataset in 3 parti: training set: per costruire i modelli; validation set: per stimare l’errore di predizione al fine di selezionare il modello migliore; test set: per stabilire l’errore di generalizzazione del modello finale scelto Idealmente, il test set andrebbe preservato ed usato solo alla fine del processo Se si usasse il test set per la scelta del modello con il minimo errore di test, allora sottostimerebbe il vero errore Suddivisione tipica:
training 50%
Corso di Apprendimento Automatico
validation 25%
Valutazione dei Modelli
test 25%
Problemi di stima dell’errore III Bias Se S è il training set, errS (h) è una stima troppo ottimista (biased) bias ≡ E[errS (h)] − errD (h) Per una stima non falsata (unbiased), h e S devono essere scelti in modo indipendente Varianza Anche con un campione S falsato, errS (h) potrebbe nondimeno differire da errD (h)
Corso di Apprendimento Automatico
Valutazione dei Modelli
Bias vs. Varianza I Supponendo che h(x) = f (x) + ε con E(ε) = 0 e Var (ε) = σε2 allora l’errore atteso sarà: errD (h(x)) = E[L(h(x), f (x))] = E[(h(x) − f (x))2 ] = σε2 + [Eh(x) − f (x)]2 + {E[h(x) − Eh(x)]}2 = σε2 + [Bias(h(x))]2 + Var [h(x)] = Errore irriducibile + Bias2 + Varianza
Adottando una loss function 0/1 il compromesso bias/varianza si comporta diversamente
Corso di Apprendimento Automatico
Valutazione dei Modelli
Bias vs. Varianza II S1
S2
S3
Corso di Apprendimento Automatico
Valutazione dei Modelli
Stimatori
Esperimento: 1
scegliere il campione S di cardinalità n secondo la distribuzione D
2
misurare errS (h)
errS (h) è una variabile aleatoria (ossia, il risultato di esperimento) errS (h) è uno stimatore non falsato (unbiased) di errD (h) Dato il valore di errS (h) osservato, cosa si può concludere su errD (h) ?
Corso di Apprendimento Automatico
Valutazione dei Modelli
Intervalli di confidenza I
SE S contiene n esempi, scelti indipendentemente da h e da ognuno degli altri n ≥ 30 ALLORA con probabilità di circa il 95%, errD (h) cade nell’intervallo r errS (h)(1 − errS (h)) errS (h) ± 1.96 n
Corso di Apprendimento Automatico
Valutazione dei Modelli
Intervalli di confidenza II SE S contiene n esempi, scelti indipendentemente da h e da ognuno degli altri n ≥ 30 ALLORA con probabilità di circa N%, errD (h) cade nell’intervallo r errS (h)(1 − errS (h)) errS (h) ± zN n dove N%: zN :
50% 0.67
68% 1.00
80% 1.28
Corso di Apprendimento Automatico
90% 1.64
95% 1.96
Valutazione dei Modelli
98% 2.33
99% 2.58
Predire le prestazioni
Assumendo che il tasso di errore stimato sia del 25% Quant’è vicino questo valore al tasso d’errore reale ? dipende dal numero di dati
La predizione è come il lancio di una monetina (falsata) ad es. testa sta per ”successo”, croce sta per ”errore”
In statistica, una sequenza di eventi indipendenti come questa si chiama processo di Bernoulli La teoria della statistica fornisce intervalli di confidenza per la vera proporzione nascosta
Corso di Apprendimento Automatico
Valutazione dei Modelli
errS (h) come variabile aleatoria Ripetere l’esperimento con diversi campioni S estratti casualmente (di card. n) Probabilità di osservare r esempi misclassificati:
P(r ) =
n! errD (h)r (1 − errD (h))n−r r !(n − r )!
Corso di Apprendimento Automatico
Valutazione dei Modelli
Distribuzione binomiale Probabilità P(r ) di r teste in n lanci (con p = P(testa)) P(r ) =
n! pr (1 − p)n−r r !(n − r )!
Valore atteso, o media, di X : E[X ] ≡
n X
rP(r ) = np
r =0
Varianza di X : Var (X ) ≡ E[(X − E[X ])2 ] = np(1 − p) Deviazione standard di X : q p σX ≡ E[(X − E[X ])2 ] = np(1 − p) Corso di Apprendimento Automatico
Valutazione dei Modelli
Approssimazione della binomiale tramite normale I errS (h) segue una distribuzione Binomiale, con media: µerrS (h) = errD (h) deviazione standard: r σerrS (h) =
errD (h)(1 − errD (h)) n
Per approssimare con una Normale media: µerrS (h) = errD (h) deviazione standard: r σerrS (h) ≈
Corso di Apprendimento Automatico
errS (h)(1 − errS (h)) n
Valutazione dei Modelli
Approssimazione della binomiale tramite normale II Per usare la normale N(0, 1) si riduce la var. casuale X in modo da avere una media pari a 0 e varianza unitaria: trasformazione di X : f −p p p(1 − p)/N (ossia si sottrae la media e si divide per la dev. standard) Equazione risultante f −p P[−z ≤ p ≤ z] = c p(1 − p)/N Soluzione: z2 p=X+ ± 2N
r
X X2 z2 z2 − + / 1+ N N N 4N 2
Corso di Apprendimento Automatico
Valutazione dei Modelli
Distribuzione normale I
"
1
1 p(x) = √ exp − 2 2 2πσ
x −µ σ
2 #
La probabilità che X cada nell’intervallo [a, b] è data da Z
b
p(x)dx a Corso di Apprendimento Automatico
Valutazione dei Modelli
Distribuzione normale II Valore atteso o media di X : E[X ] = µ
Varianza di X : Var (X ) = σ 2
Deviazione standard di X : σX = σ
Corso di Apprendimento Automatico
Valutazione dei Modelli
Distribuzione normale III
L’80% della superficie (probabilità) cade nell’intervallo µ ± 1.28σ N% della superficie (probabilità) cade nell’intervallo µ ± zN σ N% zN
50% 0.67
68% 1.00
80% 1.28
Corso di Apprendimento Automatico
90% 1.64
95% 1.96
Valutazione dei Modelli
98% 2.33
99% 2.58
Intervalli di confidenza I
SE S contiene n esempi, estratti in modo indipendente da gli altri e da h n ≥ 30 ALLORA con circa il 95% di probabilità, errS (h) ricade nell’intervallo r errD (h)(1 − errD (h)) errD (h) ± 1.96 n
Corso di Apprendimento Automatico
Valutazione dei Modelli
Intervalli di confidenza II
Equivalentemente, errD (h) ricade nell’intervallo r errS (h) ± 1.96
errD (h)(1 − errD (h)) n
che è approssimativamente p errS (h) ± 1.96 errS (h)(1 − errS (h))/n
Corso di Apprendimento Automatico
Valutazione dei Modelli
Teorema del Limite Centrale Si considera un insieme di variabili indipendenti ed identicamente distribuite (i.i.d.) Y1 . . . Yn , che seguono una distribuzione arbitraria con media µ e varianza finita σ 2 Media campionaria n 1X ¯ Yi Y ≡ n i=1
Theorem (Teorema del Limite Centrale) ¯ si avvicina alla Al tendere di n → ∞, la distribuzione di Y σ2 Normale, con media µ e varianza n ossia, la somma di un gran numero di variabili i.i.d. segue una distribuzione che è approssimativamente Normale
Corso di Apprendimento Automatico
Valutazione dei Modelli
Calcolo degli intervalli di confidenza
1
Si considera il parametro p da stimare
2
Scegliere uno stimatore
errD (h) errS (h) 3
Determinare la distribuzione che segue lo stimatore errS (h) segue una distribuzione Binomiale, approssimata da una Normale quando n ≥ 30
4
Trovare l’intervallo [L, U] tale che il N% della massa di probabilità ricada nell’intervallo Si usa la tavola dei valori di zN
Corso di Apprendimento Automatico
Valutazione dei Modelli
Valutare ipotesi differenti I Testare h1 sul campione S1 e h2 su S2 1
Scegliere il parametro da stimare d ≡ errD (h1 ) − errD (h2 )
2
Scegliere uno stimatore dˆ ≡ errS1 (h1 ) − errS2 (h2 )
3
Determinare la distribuzione che regola lo stimatore s errS1 (h1 )(1 − errS1 (h1 )) errS2 (h2 )(1 − errS2 (h2 )) σdˆ ≈ + n1 n2 Corso di Apprendimento Automatico
Valutazione dei Modelli
Valutare ipotesi differenti II
4
Trovare l’intervallo [L, U] tale che l’N% della massa di probabilità ricada nell’intervallo s dˆ ±zN
errS1 (h1 )(1 − errS1 (h1 )) errS2 (h2 )(1 − errS2 (h2 )) + n1 n2
Corso di Apprendimento Automatico
Valutazione dei Modelli
t-Test accoppiato per confrontare hA e hB I
1
Partizionare i dati in k test set disgiunti T1 , T2 , . . . , Tk di pari cardinalità (≥ 30)
2
Per i da 1 a k , eseguire: δi ← errTi (hA ) − errTi (hB )
3
¯ dove Restituire il valore δ, k
1X δ¯ ≡ δi k i=1
Corso di Apprendimento Automatico
Valutazione dei Modelli
t-Test accoppiato per confrontare hA e hB II
Stima dell’intervallo per d con confidenza dell’N% : δ¯ ± tN,k −1 sδ¯ v u u s¯ ≡ t δ
k
X 1 ¯2 (δi − δ) k (k − 1) i=1
Nota: δi ha approssimativamente una distribuzione Normale
Corso di Apprendimento Automatico
Valutazione dei Modelli
Confronto degli algoritmi LA e LB I
Cosa si deve stimare: ES⊂D [errD (LA (S)) − errD (LB (S))] dove L(S) è l’ipotesi in output da L sul training set S ossia, la differenza attesa, in termini di errore reale, tra le ipotesi prodotte dagli algoritmi LA e LB , addestrati su campioni di training casuali S costruiti secondo la distribuzione D
Corso di Apprendimento Automatico
Valutazione dei Modelli
Confronto degli algoritmi LA e LB II
Ma, dato il numero limitato dei dati D0 , qual è un buono stimatore ? Si potrebbe partizionare D0 in un training set S e un test set T0 , e quindi misurare errT0 (LA (S0 )) − errT0 (LB (S0 ))
Ancor meglio se si ripete la procedura molte volte e si mediano i risultati
Corso di Apprendimento Automatico
Valutazione dei Modelli
Confronto degli algoritmi LA e LB III 1
2
Partizionare i dati D0 in k test set disgiunti T1 , T2 , . . . , Tk di pari cardinalità (≥ 30) Per i da 1 a k , eseguire: Usare Ti come test set e i dati rimanenti per il training set Si Si ← {D0 − Ti } hA ← LA (Si ) hB ← LB (Si ) δi ← errTi (hA ) − errTi (hB )
3
¯ dove Restituire il valore δ, k
1X δ¯ ≡ δi k i=1
Corso di Apprendimento Automatico
Valutazione dei Modelli
Confronto degli algoritmi LA e LB IV Si noti che si dovrebbe usare il t-test accoppiato su δ¯ per ottenere un intervallo di confidenza Ma questo non è del tutto corretto poichè i training set in questo algoritmo non sono indipendenti (si sovrappongono) È più corretto considerare l’output dell’algoritmo come una stima di ES⊂D0 [errD (LA (S)) − errD (LB (S))] anizichè di ES⊂D [errD (LA (S)) − errD (LB (S))] a volta anche l’approssimazione può almeno dare un’idea Corso di Apprendimento Automatico
Valutazione dei Modelli
Stima Holdout
Che fare se i dati sono pochi ? Il metodo holdout riserva un certo quantitativo per il test e usa il resto per il training In genere: 1/3 per il test, 2/3 per il training
Problema: i campioni potrebbero non essere rappresentativi Ad es. la classe target potrebbe mancare nei dati di test
Una versione avanzata usa la stratificazione Assicura che ogni classe sia rappresentata in proporzione equa (approssimativamente) in entrambi i sottoinsiemi
Corso di Apprendimento Automatico
Valutazione dei Modelli
Metodo di Holdout Ripetuto
La stima Holdout può essere resa piÚ affidabile ripetendo il processo con differenti sottoinsiemi di dati Ad ogni iterazione, si seleziona casualmente una certa proporzione è per il training (possibilmente con la stratificazione) I tassi d’errore nelle diverse iterate sono mediati in modo da produrre un tasso globale
Questo metodo si dice anche holdout ripetuto Ancora non rappresenta il metodo ottimo: i diversi test set si sovrappongono Come prevenire tale sovrapposizione ?
Corso di Apprendimento Automatico
Valutazione dei Modelli
Cross-validation I
La Cross-validation evita le sovrapposizioni di test set 1
2
primo passo: dividere i dati in k sottoinsiemi di pari cardinalitĂ secondo passo: usare un sottoinsieme alla volta per il test, ed il resto per il training
1: train
2: train
3: test
4: train
5: train
6: train
Si chiama anche k -fold Cross-Validation (CV) Le varie stime dell’errore sono mediate per produrre una stima dell’errore globale
Corso di Apprendimento Automatico
Valutazione dei Modelli
Cross-validation II Stima dell’errore n
CV =
1X L(f (xi ), h−π(i) (xi )) n i=1
dove π : {1, . . . , n} 7−→ {1, . . . , k } fa da indice della partizione nella quale l’i-esimo esempio è casualmente assegnato e h−p viene costruita togliendo la p-esima parte Spesso i sottoinsiemi sono stratificati prima di eseguire il metodo di cross-validation In caso di pochi esempi, si può usare la leave-one-out CV: il numero di fold corrisponde a quello degli esempi k = n
Corso di Apprendimento Automatico
Valutazione dei Modelli
Cross-validation III cv
errore misclassificazione
err
dim. sottoinsieme Corso di Apprendimento Automatico
Valutazione dei Modelli
Bootstrap
La CV usa il campionamento senza rimpiazzo: una stessa istanza, una volta selezionata, non può figurare di nuovo in un particolare training/test set Per costituire il training set, il metodo di bootstrap usa il campionamento con rimpiazzo Training set: campionare un dataset di n istanze n volte con rimpiazzo in modo da costituire un nuovo dataset di n istanze Testing set: usare le istanze dal dataset originario che non figurino nel training set
Corso di Apprendimento Automatico
Valutazione dei Modelli
0.632 Bootstrap
Questo metodo si chiama anche 0.632 bootstrap Una data istanza ha probabilità pari a 1 − 1/n di non essere selezionata Pertanto la probabilità di finire nel test set sarà: 1 n ≈ e−1 ≈ 0.368 1− n Ciò significa che il training set conterrà approssimativamente il 63.2% delle istanze
Corso di Apprendimento Automatico
Valutazione dei Modelli
Stima dell’errore nel metodo Bootstrap
La stima dell’errore sul test set sarà molto pessimistica Addestramento solo su circa il 63% delle istanze Pertanto, Si combina tale errore con quello di rimpiazzo: err = 0.632 × errtest + 0.368 × errtraining Notare che errtraining ha un peso inferiore di errtest Si ripete il processo diverse volte con differenti campioni (con rimpiazzo) Infine, si mediano i risultati
Corso di Apprendimento Automatico
Valutazione dei Modelli
Osservazioni sul metodo di Bootstrap È tra i metodi migliori quando i dati sono limitati Problemi, ad es. si consideri un dataset casuale un classificatore che semplicemente memorizzi gli esempi avrà errtraining = 0% e errtest =∼ 50% la stima del metodo di bootstrap sarà: 0.632 × 50% + 0.368 × 0% ≈ 31.6% mentre l’errore vero atteso è del 50%
Si ricorre in tali casi a metodi più complessi come il Bootstrap 0.632+ vedere anche metodo Jacknife
Corso di Apprendimento Automatico
Valutazione dei Modelli
Altri metodi
Lift chart Curve ROC Altre misure
Corso di Apprendimento Automatico
Valutazione dei Modelli
Lift chart I
Metodo grafico per il confronto tra diversi scenari Si crea una tabella ordinando le istanze secondo la probabilitĂ della previsione di positivitĂ ProbabilitĂ prevista .95 .94 .93 .92 .88 .87 .. .
Corso di Apprendimento Automatico
Classificazione reale + + + + .. .
Valutazione dei Modelli
Lift chart II Si costruisce un grafico con: sulle ascisse la dim. del campione e sulle ordinate il numero TP di veri positivi
Corso di Apprendimento Automatico
Valutazione dei Modelli
Curve ROC I
Le curve ROC sono simili alle lift charts ROC sta per �Receiver Operating Characteristic�
Si usano in teoria del segnale per mostrare il compromesso tra tasso di successi e falsi allarmi su canale rumoroso Differenze con le lift chart: sulle ordinate: percentuale dei veri positivi TP nel campione sulle ascisse: percentuale dei falsi positivi FP nel campione
Corso di Apprendimento Automatico
Valutazione dei Modelli
Curve ROC II
uso della cross validation set di dati di test generico
Corso di Apprendimento Automatico
Valutazione dei Modelli
Curve ROC III
Per ricavare la ROC curve dalla CV: Raccogliere le probabilità delle istanze nelle ripetizioni (fold) di test Ordinare le istanze secondo le loro probabilità Un’altro modo consiste nel generare una ROC curve per ogni fold e poi fare una media
Corso di Apprendimento Automatico
Valutazione dei Modelli
Curve ROC IV
campione piccolo: usare il metodo A campione grande: usare il metodo B caso intermedio: scegliere tra A e B usando le probabilitĂ Corso di Apprendimento Automatico
Valutazione dei Modelli
Altre misure I Dall’Information Retrieval Precision: percentuale di doc. ritrovati che sono rilevanti TP TP + FP Recall: percentuale di doc. rilevanti che sono ritrovati TP TP + FN Le curve di precision e recall hanno una forma iperbolica
Corso di Apprendimento Automatico
Valutazione dei Modelli
Altre misure II Misure riassuntive mediazione della precision a diversi valori della recall (es. 20%, 50% and 80% three-point average recall) F1 -measure
2 × recall × precision recall + precision
Sensitivity × Specificity TP TN × TP + FN FP + TN Area sotto la curva ROC (AUC): probabilità che un’istanza positiva scelta casualmente si posizioni al di sopra di una negativa (sempre presa a caso) Corso di Apprendimento Automatico
Valutazione dei Modelli
Fonti
R. Duda, P. Hart, D. Stork: Pattern Classification, Wiley T. Hastie, R. Tibshirani, J. Friedman: The Elements of Statistical Learning, Springer T. M. Mitchell: Machine Learning, McGraw Hill I. Witten & E. Frank: Data Mining: Practical Machine Learning Tools and Techniques, Morgan Kaufmann
Corso di Apprendimento Automatico
Valutazione dei Modelli