Valutazione del modello: classificazione sbilanciata

Esercitarsi con le domande di colloquio di Machine Learning in Python

Lisa Stuart

Data Scientist

Squilibrio di classe

  • Variabile target categoriale
    • N. osservazioni/classi circa uguale
    • Grande squilibrio -> risultati fuorvianti

Classi sbilanciate vs bilanciate

Esercitarsi con le domande di colloquio di Machine Learning in Python

Matrice di confusione

Matrice di confusione

1 https://scaryscientist.blogspot.com/2016/03/confusion-matrix.html
Esercitarsi con le domande di colloquio di Machine Learning in Python

Metriche di performance

Metriche di performance

1 https://scaryscientist.blogspot.com/2016/03/confusion-matrix.html
Esercitarsi con le domande di colloquio di Machine Learning in Python

Metriche dalla matrice

Metriche di performance

1 https://scaryscientist.blogspot.com/2016/03/confusion-matrix.html
Esercitarsi con le domande di colloquio di Machine Learning in Python

Tecniche di resampling

  • Oversampling della classe minoritaria
  • Undersampling della classe maggioritaria
  • NOTA: dividi in train e test PRIMA del resampling!

Tecniche di resampling

1 https://www.svds.com/learning-imbalanced-classes/
Esercitarsi con le domande di colloquio di Machine Learning in Python

Funzioni

Funzione restituisce
sklearn.linear_model.LogisticRegression regressione logistica
sklearn.metrics.confusion_matrix(y_test,y_pred) matrice di confusione
sklearn.metrics.precision_score(y_test,y_pred) precisione
sklearn.metrics.recall_score(y_test,y_pred) richiamo
sklearn.metrics.f1_score(y_test,y_pred) F1-score
sklearn.utils.resample(deny, n_samples=len(approve)) fa resampling
Esercitarsi con le domande di colloquio di Machine Learning in Python

Alleniamoci!

Esercitarsi con le domande di colloquio di Machine Learning in Python

Preparing Video For Download...