Estratto del documento

VALUTAZIONE DELLE PERFORMANCE

MATRICE DI CONFUZIONE→

Metriche:

SENSIBILITA’: True Positive Rate

➢ → = /

SPECIFICITA’: True Negative Rate

➢ → = /

ERRORE DI TIPO I: False Positive Rate

➢ → = /

ERRORE DI TIPO II: False Negative Rate

➢ → = /

+

ACCURACY

➢ → = +

PRECISIONE (fedeltà)

➢ → = +

RECALL (completezza)

➢ → = + ∙

F1 SCORE (accuratezzaa)

➢ → 1 = 2 ∙ +

SCHEMA GENERALE della valutazione delle

performance --------------------------------------------->

Addestrare un algoritmo di apprendimento

automatico e valutarne le prestazioni sul medesimo

dataset è un errore metodologico.

Quando si sbaglia l’addestramento del modello si va

incontro a 2 rischi principali: overfitting e

underfitting.

1. OVER-FITTING:

Un modello «complesso» con elevate performance

in fase di training potrebbe non estenderle (generalizzare)

a dati originali, non riuscendo a realizzare una predizione

accurata su dati estranei a quelli «visti» in fase di

addestramento. Un tale scenario viene definito di

overfitting (high variance): il modello si sta sovra-

adattando ai pattern specifici del dataset di addestramento

2. UNDER-FITTING

un algoritmo eccessivamente «semplice» potrebbe

non essere in grado di rappresentare i pattern

presenti nei dati (high bias). Un tale modello

mostrerà performance carenti non solo sul test set,

ma anche sullo stesso dataset di addestramento deve trovare un COMPROMESSO TRA BIAS E VARIANZA. È

si

impossibile minimizzare entrambi, quindi si cerca di trovarsi nel

punto in cui il classificatore dà un errore minimo per entrambi

ovvero nella zona “modello ottimo”.

K-FOLD CROSS-VALIDATION

LA k-fold cross-validation è un metodo

utilizzato per valutare le PRESTAZIONI di un

modello di apprendimento automatico.

(in genere si usa in modo empirico K=10 o

K=5→quindi in questo caso si può scegliere

noi il k). Passaggi:

1. Creazione dei fold: il dataset viene

diviso in k sottoinsiemi di

dimensioni uguali, detti FOLD.

Nell’esempio K=5, quindi il dataset è

diviso in 5 fold.

2. Iterazione: in ogni iterazione un fold

viene utilizzato come set di test (VALIDAZIONE) e i restanti k-1 fold vengono utilizzati come test di

TRAINING.

Nell’esempio di vede che nella partizione #1, i fold da 1 a 4 sono utilizzati per il training e il fold 5 per il

test.

3. Training: nella fase di training, il modello di apprendimento automatico viene addestrato utilizzando i

dati nel set di training. Quindi il modello cerca di apprendere le relazioni tra le caratteristiche (variabili

indipendenti) e l’obiettivo (variabile dipendente) nel set di training

4. Testing: il modello viene testato sul set di test. Quindi il modello utilizza le relazioni che ha appreso

durante la fase di training per fare previsioni sui dati nel set di tests

5. Valutazione: le prestazioni del modello vengono valutate confrontando le previsioni del modello con i

valori reali nel set di test. Questa valutazione fornisce una misura di quanto bene il modello sia in grado

di generalizzare sui nuovi dati.

6. Ripetizione: il processo viene ripetuto, in modo tale che ogni punto sia nel set di test 1 volta e nel set di

training k-1 volte.

7. Prestazioni medie: le prestazioni del modello in tutte le k iterazioni vengono mediate per ottenere una

stima finale delle prestazioni del modello.

Per scegliere tra due modelli diversi, ad esempio SVM con kernel lineare e SVM con kernel RBF, si può eseguire

la cross-validation separatamente per ciascun modello e confrontare le loro performance medie.

LEAVE-ONE-OUT CROSS VALIDATION (LOOCV)

Nel LOOCV il numero di fold k è = al

numero totale di punti dati nel dataset;

quindi se il dataset ha N punti, avrò N fold

in questo caso NON si sceglie noi

→quindi

il k.

Il LOOCV è utile quando si lavora con

piccoli dataset, perché massimizza la

quantità di dati utilizzati per il training.

Tuttavia può essere costoso a livello

computazionale se si lavora con grandi

dataset (richiede di addestrare il modello

N volte).

SCELTA DEL NUMERO DI FOLD PER LA K-FOLD

CROSS VALIDATION

Si assume che il valore massimo di accuracy che si

può avere per la k-fold cross validation è quello del

LOOCV.

Si sceglie il numero di fold che permette di

avvicinarsi alla prestazione massima, ma allo

stesso tempo che permette di avere tempi di

training accettabile.

Di base solitamente si usa k=5/10

3 modelli principali del k-fold cross validation:

1) REPEATED K-FOLD CROSS VALIDATION: La k-fold cross

validation viene ripetuta N volte e dopo ogni validazione si

randomizza il dataset.

2) STRATIFIED K-FOLD CROSS VALIDATION: le varie

partizioni preservano la proporzione originale dei

campioni appartenenti a una determinata classe in

entrambi i set di training e validazione.

3) GROUP K-FOLD CROSS VALIDATION: i set di training e

validazione non comprendono campioni associati allo

stesso gruppo/soggetto. I dati di un determinato gruppo

sono compresi in una sola delle K fold di validazione.

PERMUTATION TEST SCORE

Per verificare se i risultati ottenuti in fase di cross-validation sono casuali o no si esegue un TEST DI

PERMUTAZIONE.

Si esegue un numero elevato di randomizzazione del dataset e si riclassificano i dati. Si va a distruggere le

relazioni tra caratteristiche e i labels. Quindi si fa una permutazione dei labels e si rifacciamo la cross

validation, questo permette di valutare se la classificazione ovvero i labels ottenuti sono casuali oppure

significativi.

Se l’accuratezza scelta è mediamente simile sia nel caso reale sia nel caso delle permutazioni avrò un

➢ p-value alto e un test poco significativo.

Se l’accuratezza nel caso reale è >> rispetto al caso delle permutazioni, la classificazione NON è

➢ casuale.

SELEZIONE CLASSIFICATORE E TUNING DEGLI IPER-PARAMETRI

Utilizzare i medesimi dati per valutare le performance di un classificatore e individuare la combinazione

«ottima» dei suoi iper-parametri, può condurre a un overfitting del training set.

Per scegliere il tipo di classificatore si utilizza la K-FOLD CROSS VALIDATION ANNIDATA:

Dentro ogni partizione si

fa un’altra cross

validation (cv) con un k +

piccolo (k=2/3).

In questa cv si valuta la

performance di 2

modelli (es. SVM RBF e

SVM lineare) e si

seleziona il modello

migliore su quel training

set.

Questo modello viene

poi usato per fare la cv

su la partizione… e si continua così per tutte le k partizioni.

Dopo la cv annidata con cui scelgo il modello migliore, si può scegliere la miglior combinazione degli IPER-

PARAMETRI:

GRID SEARCH: ricerca sistematica della combinazione ottimale di iper-parametri su una griglio di

➢ valori discreti

+: esaustività, -: scarsa efficienza

RANDOM SEARCH: numero (non esaustivo) di combinazioni, campionato da distribuzioni

➢ probabilistiche.

+: efficienza, -: ricerca non sistematica

SEARCH WITH SUCCESSIVE HALVING (grid o random): processo iterativo di selezione in cui le

➢ combinazioni candidate vengono valutate con una ridotta quantità di risorse alla prima iterazione

+: efficienza

2) DECISION TREES (ALBERO DECISIONALE)

ALBERO DECISIONALE= modello in cui ogni biforcazione (nodo) corrisponde a una decisione binaria basata su

valori di soglia applicati a determinate feature.

Ogni arco (ramo) discendente corrisponde a 2 alternative possibili, fino al raggiungimento dei nodi terminali

(foglie) che mostrano la classe prevista per un particolare gruppo di dati.

MECCANISMO: Un albero decisionale partiziona in modo ricorsivo lo spazio delle feature in modo da

raggruppare i dati associati alla stessa classe. Per ogni suddivisione dei dati in ingresso al nodo m sono create 2

partizioni. La qualità di ogni suddivisione viene valutata in termini di IMPURITA’ (l’impurità cresce quando una

partizione contiene elementi di classi diverse).

Vantaggi

+ Il meccanismo degli alberi decisionali è semplice da interpretare

+ Costo computazionale in fase di predizione = logaritmico rispetto al numero di campioni

+ Non è richiesta una preparazione del dataset in ingresso

Svantaggi

- Gli alberi decisionali possono essere instabili rispetto a piccole variazioni del training set

- Elevato rischio di overfitting

- Si deve bilanciare le classi di dati prima dell’addestramento

Accorgimenti

Ridurre la dimensionalità dei dati (PCA) per impiegare solo featire informative

▪ Assicurarsi che molti campioni informino ogni decisione (nodo) nell’albero

▪ -->un numero basso porta all’overfitting del training set

-->un numero elevato facilita l’apprendimento di pattern generali presenti nei dati

contenere in fase iniziale la profondità dell'albero per sondare le sue prestazioni: il numero di campioni

▪ necessari per popolare i nodi dell'albero raddoppia per ogni livello aggiuntivo, e si può cadere

facilmente in regimi di overfitting

3) RANDOM FORESTS

RANDOM FOREST= algoritmi di apprendimento automatico di

insieme che combinano l’output di + alberi decisionali. La classe

predetta viene determinata dalla precisione maggioritaria prodotta

dai singoli alberi.

Obiettivo: generare il numero massimo di alberi scorrelati.

La mutua correlazione degli alberi viene contenuta tramite il BAGGING del training set:

• Un campione casuale di dati del training set viene selezionato per addestrare un particolare albero del

random forest

• Ogni albero considera solo un subset aleatorio delle feature originali

• La selezione del training set di ciascun albero esclude un particolare campione di dati (detto OUT OF

BAG), utilizzato per validare la bontà della previsione del random forest.

Vantaggi :

+ Ridotto rischio di overfitting

+ Le metriche di impurità possono essere sfruttate per valutare la diminuzione dell’accuratezza del modello

quando viene esclusa una determinata feature

Svantaggi

- Previsione lenta (perché devono eseguire una previsione per ogni singolo albero decisionale al loro interno)

- maggiore opacità nel meccanismo di classificazione

4) NEURAL NETWORKS (RETI NEURALI) PERCETTRONE= rete ad un singolo layer nascosto che

usa la funzione di attivazione di Heavyside→ non molto

efficace quindi non si usa più.

Ogni neurone (nodo) della rete coinci

Anteprima
Vedrai una selezione di 9 pagine su 36
Appunti di Bioingegneria per la decisione clinica Pag. 1 Appunti di Bioingegneria per la decisione clinica Pag. 2
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 6
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 11
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 16
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 21
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 26
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 31
Anteprima di 9 pagg. su 36.
Scarica il documento per vederlo tutto.
Appunti di Bioingegneria per la decisione clinica Pag. 36
1 su 36
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-IND/34 Bioingegneria industriale

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Giuliab17 di informazioni apprese con la frequenza delle lezioni di Bioingegneria per la decisione clinica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Firenze o del prof Sorelli Michele.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community