Quando e perché standardizzare i dati?

Source: 365DATASCIENCE.COM

La standardizzazione è una tecnica importante che viene per lo più eseguita come passo di pre-elaborazione prima di molti modelli di Machine Learning, per standardizzare la gamma di caratteristiche del set di dati di input.

Alcuni sviluppatori di ML tendono a standardizzare i loro dati alla cieca prima di “ogni” modello di Machine Learning senza fare lo sforzo di capire perché deve essere utilizzato, o anche se è necessario o meno. Quindi l’obiettivo di questo post è quello di spiegare come, perché e quando standardizzare i dati.

Standardizzazione

La standardizzazione entra in scena quando le caratteristiche del set di dati di input hanno grandi differenze tra i loro intervalli, o semplicemente quando sono misurati in diverse unità di misura (ad esempio, libbre, metri, miglia … ecc).

Queste differenze negli intervalli delle caratteristiche iniziali causano problemi a molti modelli di apprendimento automatico. Per esempio, per i modelli che si basano sul calcolo della distanza, se una delle caratteristiche ha una vasta gamma di valori, la distanza sarà governata da questa particolare caratteristica.

Per illustrare questo con un esempio: diciamo che abbiamo un set di dati bidimensionale con due caratteristiche, Altezza in Metri e Peso in Libbre, che vanno rispettivamente da Metri e Libbre. Non importa quale modello basato sulla distanza si esegue su questo set di dati, la caratteristica Peso dominerà sulla caratteristica Altezza e avrà più contributo al calcolo della distanza, solo perché ha valori più grandi rispetto all’Altezza. Quindi, per prevenire questo problema, la soluzione è trasformare le caratteristiche in scale comparabili usando la standardizzazione.

Come standardizzare i dati?

Z-score

Z-score è uno dei metodi più popolari per standardizzare i dati, e può essere fatto sottraendo la media e dividendo per la deviazione standard per ogni valore di ogni caratteristica.

Una volta che la standardizzazione è fatta, tutte le caratteristiche avranno una media di zero, una deviazione standard di uno, e quindi, la stessa scala.

Esistono altri metodi di standardizzazione ma per il bene della semplicità, in questa storia mi accontento del metodo Z-score.

Quando standardizzare i dati e perché?

Come visto sopra, per i modelli basati sulla distanza, la standardizzazione viene eseguita per evitare che le caratteristiche con intervalli più ampi dominino la metrica della distanza. Ma il motivo per cui standardizziamo i dati non è lo stesso per tutti i modelli di apprendimento automatico, e differisce da un modello all’altro.

Quindi, prima di quali modelli e metodi di ML dovete standardizzare i vostri dati e perché?

1- Prima della PCA:

Nell’analisi delle componenti principali, le caratteristiche con alte varianze/ampie gamme, ottengono più peso di quelle con bassa varianza, e di conseguenza, finiscono per dominare illegittimamente le prime componenti principali (componenti con massima varianza). Ho usato la parola “illegittimamente” qui, perché la ragione per cui queste caratteristiche hanno alte varianze rispetto alle altre è solo perché sono state misurate in scale diverse.

La standardizzazione può prevenire questo, dando lo stesso peso a tutte le caratteristiche.

2- Prima del Clustering:

I modelli di clustering sono algoritmi basati sulla distanza, per misurare le similarità tra le osservazioni e formare cluster usano una metrica di distanza. Quindi, le caratteristiche con intervalli elevati avranno una maggiore influenza sul clustering. Pertanto, la standardizzazione è necessaria prima di costruire un modello di clustering.

3- Prima di KNN:

k-nearest neighbors è un classificatore basato sulla distanza che classifica le nuove osservazioni sulla base di misure di somiglianza (ad esempio, le metriche di distanza) con le osservazioni etichettate del set di allenamento. La standardizzazione fa sì che tutte le variabili contribuiscano ugualmente alle misure di similarità.

4- Prima di SVM

Support Vector Machine cerca di massimizzare la distanza tra il piano di separazione e i vettori di supporto. Se una caratteristica ha valori molto grandi, dominerà sulle altre caratteristiche quando si calcola la distanza. Quindi la standardizzazione dà a tutte le caratteristiche la stessa influenza sulla metrica della distanza.

Fonte: Arun Manglick: arun-aiml.blogspot.com

5- Prima di misurare l’importanza delle variabili nei modelli di regressione

È possibile misurare l’importanza delle variabili nell’analisi di regressione, inserendo un modello di regressione usando le variabili indipendenti standardizzate e confrontando il valore assoluto dei loro coefficienti standardizzati. Ma, se le variabili indipendenti non sono standardizzate, confrontare i loro coefficienti diventa privo di significato.

6- Prima di Lasso e Ridge Regression

Le regressioni LASSO e Ridge pongono una penalità sulla grandezza dei coefficienti associati a ciascuna variabile. E la scala delle variabili influirà su quanta penalità sarà applicata sui loro coefficienti. Perché i coefficienti delle variabili con grande varianza sono piccoli e quindi meno penalizzati. Pertanto, la standardizzazione è necessaria prima di applicare entrambe le regressioni.

Casi in cui la standardizzazione non è necessaria?

Modelli basati sulla regressione logistica e sugli alberi

La regressione logistica e gli algoritmi basati sugli alberi come l’albero delle decisioni, la foresta casuale e il gradient boosting, non sono sensibili alla grandezza delle variabili. Quindi la standardizzazione non è necessaria prima di adattare questo tipo di modelli.

Concludendo la standardizzazione dei dati

Come abbiamo visto in questo post, quando standardizzare e quando no, dipende da quale modello si vuole usare e cosa si vuole fare con esso. Quindi, è molto importante per uno sviluppatore di ML capire il funzionamento interno degli algoritmi di apprendimento automatico, per essere in grado di sapere quando standardizzare i dati e costruire un modello di apprendimento automatico di successo.

N.B: L’elenco dei modelli e dei metodi quando è necessaria la standardizzazione, presentato in questo post non è esaustivo.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.