Devi normalizzare i dati quando costruisci alberi decisionali usando R?


10

Quindi, il nostro set di dati questa settimana ha 14 attributi e ogni colonna ha valori molto diversi. Una colonna ha valori inferiori a 1 mentre un'altra colonna ha valori che vanno da tre a quattro cifre intere.

Abbiamo imparato la normalizzazione la scorsa settimana e sembra che dovresti normalizzare i dati quando hanno valori molto diversi. Per gli alberi decisionali, è lo stesso?

Non ne sono sicuro, ma la normalizzazione influenzerebbe l'albero decisionale risultante dallo stesso set di dati? Non sembra che dovrebbe ma ...

Risposte:


13

I tipi più comuni di alberi decisionali che si incontrano non sono interessati da alcuna trasformazione monotonica. Quindi, fintanto che conservi l'ode, gli alberi delle decisioni sono gli stessi (ovviamente per lo stesso albero qui comprendo la stessa struttura decisionale, non gli stessi valori per ogni test in ciascun nodo dell'albero).

Il motivo per cui accade è perché funzionano le normali funzioni di impurità. Per trovare la migliore suddivisione, cerca su ogni dimensione (attributo) un punto di divisione che è fondamentalmente una clausola if che raggruppa i valori target corrispondenti alle istanze che hanno un valore di test inferiore al valore diviso e sulla destra i valori maggiori di uguale. Questo accade per gli attributi numerici (che penso sia il tuo caso perché non so come normalizzare un attributo nominale). Ora potresti notare che i criteri sono inferiori o superiori a. Ciò significa che le informazioni reali dagli attributi per trovare la divisione (e l'intero albero) è solo l'ordine dei valori. Il che significa che finché trasformi i tuoi attributi in modo tale che l'ordine originale sia riservato, otterrai lo stesso albero.

Non tutti i modelli sono insensibili a questo tipo di trasformazione. Ad esempio i modelli di regressione lineare danno gli stessi risultati se moltiplichi un attributo con qualcosa di diverso da zero. Otterrai coefficienti di regressione diversi, ma il valore previsto sarà lo stesso. Questo non è il caso quando si prende un registro di quella trasformazione. Quindi, per la regressione lineare, ad esempio, la normalizzazione è inutile poiché fornirà lo stesso risultato.

Tuttavia, questo non è il caso di una regressione lineare penalizzata, come la regressione della cresta. Nelle regressioni lineari penalizzate viene applicato un vincolo ai coefficienti. L'idea è che il vincolo viene applicato alla somma di una funzione di coefficienti. Ora, se si gonfia un attributo, il coefficiente verrà sgonfiato, il che significa che alla fine la penalizzazione per quel coefficiente verrà modificata artificialmente. In tale tipo di situazione, si normalizzano gli attributi in modo che ciascun coefficiente sia "equo".

Spero che sia d'aiuto

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.