Apprendimento automatico per la regressione con dati sbilanciati

Apprendimento automatico per la regressione

Perché è così difficile prevedere gli outlier nel tuo dataset e cosa puoi fare contro di esso

Cosa sono i dati sbilanciati?

Molti dataset reali soffrono di sbilanciamento, in cui certi tipi di campioni sono sovrarappresentati nel dataset, mentre altri si verificano meno frequentemente. Alcuni esempi sono:

  • Quando si classificano le transazioni con carta di credito come fraudolente o legittime, la stragrande maggioranza delle transazioni apparterrà a quest’ultima categoria
  • Le precipitazioni intense si verificano meno spesso rispetto alle precipitazioni moderate, ma possono causare maggiori danni a persone e infrastrutture
  • Quando si cerca di identificare l’uso del suolo, ci sono più pixel che rappresentano foreste e agricoltura rispetto agli insediamenti urbani

In questo post, intendiamo fornire una spiegazione intuitiva su perché gli algoritmi di machine learning hanno difficoltà con i dati sbilanciati, mostrarti come quantificare le prestazioni del tuo algoritmo utilizzando una valutazione dei quantili e mostrarti tre diverse strategie per migliorare le prestazioni del tuo algoritmo.

Foto di Elena Mozhvilo su Unsplash

Esempio di dataset per la regressione: case in California

Lo sbilanciamento del dataset viene spesso illustrato per problemi di classificazione, in cui una classe maggioritaria oscura una classe minoritaria. Qui, ci concentriamo sulla regressione, in cui l’obiettivo è un valore numerico continuo. Utilizzeremo il dataset delle case in California disponibile con scikit-learn. Il dataset contiene più di 20.000 campioni di case con caratteristiche come la posizione, il numero di stanze e camere da letto, l’età della casa, i metri quadrati e il reddito mediano del quartiere. La variabile target è il valore mediano della casa, misurato in milioni di dollari statunitensi. Per verificare se il dataset è sbilanciato, plottiamo l’istogramma della variabile target.