Meu entendimento é que no aprendizado de máquina pode ser um problema se o seu conjunto de dados tiver recursos altamente correlacionados, pois codificam efetivamente as mesmas informações.
Recentemente, alguém apontou que, quando você codifica uma variável quente em uma variável categórica, você acaba com recursos correlatos; portanto, você deve descartá-los como uma "referência".
Por exemplo, a codificação de gênero como duas variáveis is_male
e is_female
produz dois recursos perfeitamente correlacionados negativamente; portanto, eles sugeriram o uso de um deles, definindo efetivamente a linha de base para dizer masculino e verificando se a coluna is_female é importante no algoritmo preditivo. .
Isso fez sentido para mim, mas não encontrei nada on-line que sugira que esse pode ser o caso, então isso está errado ou estou faltando alguma coisa?
Possível duplicata (sem resposta): a colinearidade dos recursos codificados de um modo importante é importante para SVM e LogReg?
you end up with correlated features, so you should drop one of them as a "reference"
Variáveis fictícias ou variáveis indicadoras (esses são os dois nomes usados nas estatísticas, sinônimo de "codificação one-hot" no aprendizado de máquina) são correlacionados de maneira dupla, sejam elas variáveis k ou k-1. Portanto, a melhor palavra é "estatisticamente / informativamente redundante" em vez de "correlacionada".Does keeping all k values theoretically make them weaker features
. Não (embora eu não tenha 100% de certeza do que você quer dizer com "mais fraco").using something like PCA
Observe, apenas no caso, que o PCA em um conjunto de manequins representando uma mesma variável categórica tem pouco ponto prático, porque as correlações dentro do conjunto de manequins refletem apenas as relações entre as frequências da categoria (portanto, se todas as frequências são iguais, todas as correlações são iguais para 1 / (k-1)).is_male
variável em oposição a ambas as opções? Talvez isso não faça sentido nesse contexto, e isso só pode ser um problema quando você tem duas variáveis diferentes que realmente codificam a mesma informação (por exemplo, altura em polegadas e altura em cm).Respostas:
lm
glm
Com outros modelos, use os mesmos princípios. Se as previsões obtidas dependem de quais colunas você deixa de fora, não faça isso. Caso contrário, está tudo bem.
Até agora, esta resposta menciona apenas modelos lineares (e alguns levemente não lineares). Mas e os modelos não lineares, como árvores e florestas aleatórias? As idéias sobre codificação categórica, como one-hot, decorrem principalmente de modelos e extensões lineares. Há poucas razões para pensar que as idéias derivadas desse contexto devem ser aplicadas sem modificação para árvores e florestas! para algumas idéias, consulte Regressão aleatória da floresta com dados esparsos no Python .
fonte