Como um ponto de divisão é escolhido para variáveis ​​contínuas em árvores de decisão?

14

Eu tenho duas perguntas relacionadas às árvores de decisão:

  1. Se temos um atributo contínuo, como escolhemos o valor de divisão?

    Exemplo: Idade = (20,29,50,40 ....)

  2. Imagine que temos um atributo contínuo que têm valores em . Como posso escrever um algoritmo que encontre o ponto de divisão , para que, quando dividimos por , tenhamos um ganho mínimo para ?fRvfvf>v

WALID BELRHALMIA
fonte

Respostas:

18

Para chegar a um ponto de divisão, os valores são classificados e os pontos médios entre valores adjacentes são avaliados em termos de alguma métrica, geralmente ganho de informação ou impureza de gini. Para o seu exemplo, digamos que temos quatro exemplos e os valores da variável idade são . Os pontos médios entre os valores são avaliados e qualquer divisão fornece o melhor ganho de informação (ou qualquer métrica que você esteja usando) nos dados de treinamento.(20,29,40,50)(24.5,34.5,45)

Você pode economizar algum tempo de computação verificando apenas os pontos de divisão que estão entre exemplos de classes diferentes, porque somente essas divisões podem ser ideais para obter informações.

timleathart
fonte
@timleathart o OP espera ser "alimentado com colher" na implementação em R. Gostaria de saber o que o OP tentou até agora com referência à implementação de R? Que tal "mostrar algum esforço", OP?
Mnm 4/11
@timleathart, mas normalmente para um atributo f, escolhemos a divisão v que oferece o maior ganho de informação para f> v, mas veja a pergunta que eles fizeram para obter um ganho mínimo.
WALID BELRHALMIA
@timleathart, você pode explicar mais? Preciso conhecer a melhor maneira otimizada de identificar essas divisões e verificar o ganho de informações. Digamos que uma variável tenha muita variação e a outra seja quase constante. Quantas divisões devem existir?
Arpit Sisodia
@timeleathart, estendendo sua resposta, essa divisão não será otimizada quando os valores forem (20,21,22,23, 45,67,80). a iteração de min a max não deve ser usada aqui? Corrija-me se estou errado na minha suposição :)
Arpit Sisodia
Isso esclarece minhas confusões!
Jinhua Wang