CLASSIFICATION Flashcards
Cos’è la classificazione?
La classificazione è una tecnica di machine learning supervisionata dove l’obiettivo è etichettare un nuovo elemento in diverse classi. Esistono vari tipi di classificatori:
- Alberi di decisione
- Knn
- Svm
- Reti neurali
- Ecc.
Per valutare un modello dobbiamo:
1. Splittare il dataset in training e test set
2. Costruire il modello sul training set
3. Valutarlo utilizzando il test set
Cross validation
La cross validation è un metodo statistico per valutare la generalizzazione del nostro modello.
I dati vengono partizionati in parti di uguale dimensione, folds, e ad ogni iterazione viene scelta una di queste parti come test set e le altre come training set. Così utilizziamo i dati in maniera efficiente ma abbiamo un costo computazionale elevato.
Cos’è la confusion matrix?
La confusion matrix è usata per valutare un classificatore:
TP: casi dove il classificatore ha predetto correttamente gli esempi positivi
TN: casi dove il classificatore ha predetto correttamente gli esempi neativi
FP: casi dove il classificatore sbagliando ha predetto esempi negativi invece che positivi
FN: casi dove il classificatore sbagliando ha predetto esempi positivi invece che negativi
Accuracy: riassume i risultati della matrice
Precision: quanti campioni previsti positivi sono in realtà positivi
Recall: quanti sono campioni positivi indovinati dalle previsioni positive
Precision/recall tradeoff: all’aumento della precision riduce la recall
F1 score: media di precision e recall
ROC curve
Simile alla curva precision/recall ma in questo caso ROC traccia la recall contro il tasso dei falsi positivi.
Tradeoff: più alto recall più alti i falsi positivi
Un buon classificatore rimane il più lontano possibile dalla diagonale
Si preferisce la curva precision/recall quando:
1. La classe positiva è rara
2. Siamo più interessati ai falsi positivi che ai falsi negativi
Multiclass classification
È possibile distinguere tra più di due classi:
- One versus All(OvA): vengono allenati N classificatori diversi, ognuno per classe di output, e quindi per ogni elemento da classificare si fa la predict in ogni classificatore, scegliamo quello che ha dato il punteggio maggiore
- One versus One(OvO): utilizziamo classificatori binari, ognuno per ogni coppia di classe di output. Avremo bisogno di N*(N-1/2) classificatori
Classificazione binari OvA viene preferito, mentre OvO quando c’è poca scalabilità
Multilabel classification
Utili quando è necessario restituire in output più di una classe per elemento.
Per valutare l’accuratezza possiamo utilizzare F1 score
Multioutput - Multiclass classification
Generalizzazione della multilabel dove ogni label può essere una multiclass