Você precisa normalizar os dados ao criar árvores de decisão usando R?


10

Portanto, nosso conjunto de dados esta semana possui 14 atributos e cada coluna possui valores muito diferentes. Uma coluna tem valores abaixo de 1, enquanto outra coluna tem valores que variam de três a quatro dígitos inteiros.

Aprendemos a normalização na semana passada e parece que você deveria normalizar os dados quando eles têm valores muito diferentes. Para árvores de decisão, o mesmo acontece?

Não tenho certeza disso, mas a normalização afetaria a árvore de decisão resultante do mesmo conjunto de dados? Não parece que deveria, mas ...

Respostas:


13

Os tipos mais comuns de árvores de decisão que você encontra não são afetados por nenhuma transformação monotônica. Portanto, desde que você preserve o orde, as árvores de decisão são as mesmas (obviamente, pela mesma árvore aqui, eu entendo a mesma estrutura de decisão, não os mesmos valores para cada teste em cada nó da árvore).

A razão pela qual isso acontece é porque o funcionamento normal da impureza funciona. Para encontrar a melhor divisão, ele procura em cada dimensão (atributo) um ponto de divisão que é basicamente uma cláusula if que agrupa valores de destino correspondentes a instâncias que têm valor de teste menor que o valor de divisão e, à direita, valores maiores que iguais. Isso acontece para atributos numéricos (que eu acho que é o seu caso, porque não sei como normalizar um atributo nominal). Agora você pode observar que o critério é menor ou maior que. O que significa que as informações reais dos atributos para encontrar a divisão (e a árvore inteira) são apenas a ordem dos valores. O que significa que, desde que você transforme seus atributos de forma que a ordem original seja reservada, você obterá a mesma árvore.

Nem todos os modelos são insensíveis a esse tipo de transformação. Por exemplo, modelos de regressão linear fornecem os mesmos resultados se você multiplicar um atributo por algo diferente de zero. Você obterá diferentes coeficientes de regressão, mas o valor previsto será o mesmo. Este não é o caso quando você registra essa transformação. Portanto, para regressão linear, por exemplo, normalizar é inútil, pois fornecerá o mesmo resultado.

No entanto, esse não é o caso de uma regressão linear penalizada, como a regressão de crista. Nas regressões lineares penalizadas, uma restrição é aplicada aos coeficientes. A idéia é que a restrição seja aplicada à soma de uma função dos coeficientes. Agora, se você inflar um atributo, o coeficiente será esvaziado, o que significa que, no final, a penalização por esse coeficiente será modificada artificialmente. Nesse tipo de situação, você normaliza os atributos para que cada coeficiente seja restrito 'razoavelmente'.

Espero que ajude

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.