floresta aleatória onehotencoder
Em um contexto de Random Forest, preciso configurar dummies/OnehotEncoder em um conjunto de dados onde os recursos/variáveis são numéricos, mas se referem a algum tipo de categoria?
Digamos que eu tenha as seguintes variáveis:
Onde Yestá a variável que quero prever. X'ssão características.
vou focar em X1. É numérico, mas refere-se a uma categoria específica (ou seja, 1 refere-se à matemática, 2 refere-se à literatura e 3 à história). Preciso aplicar OnehotEncoder (ou abordagem fictícia) para um algoritmo Random Forest?
Acho que não preciso fazer isso, mas não tenho certeza.
Respostas
Em teoria, as próprias categorias podem ser tratadas em árvores de decisão. No entanto, a maioria das implementações de python só funcionará com números, então você precisa convertê-los. Parece que você já tem. OneHot Encoding é uma maneira de fazer isso, mas agora que você fez isso, não é necessário. Você pode tentar outros esquemas para transformá-los em 1 2 3, se não houver uma razão lógica para tê-los dessa maneira. Isso é chamado de codificação categórica. Uma maneira popular é ordená-los em ordem alfabética e numerá-los. Outra forma, por ordem de frequência. No final das contas, não importa muito, porque a floresta aleatória agrupará o número de acordo com seu algoritmo. No entanto, pode fazer pequenas diferenças, então talvez tente maneiras diferentes. Mas não, você não precisará codificar suas categorias no OneHot porque elas já são números.