Aprendi que, para criar um modelo de regressão, precisamos cuidar de variáveis categóricas convertendo-as em variáveis fictícias. Como exemplo, se, em nosso conjunto de dados, houver uma variável como local:
Location
----------
Californian
NY
Florida
Temos que convertê-los como:
1 0 0
0 1 0
0 0 1
No entanto, foi sugerido que temos que descartar uma variável dummy, não importa quantas variáveis dummy existem.
Por que precisamos descartar uma variável dummy?
machine-learning
regression
categorical-data
Mithun Sarker Shuvro
fonte
fonte
Respostas:
Simplificando, porque um nível de seu recurso categórico (aqui local) se torna o grupo de referência durante a codificação fictícia para regressão e é redundante. Estou citando a forma aqui "Uma variável categórica de categorias ou níveis K geralmente entra em uma regressão como uma sequência de variáveis fictícias K-1. Isso equivale a uma hipótese linear sobre as médias de nível".
Isso já foi discutido nesta resposta muito legal de stats.stackexchange .
Me disseram que há um curso avançado da Yandex no Coursera que aborda esse assunto com mais detalhes, se você ainda tiver dúvidas, veja aqui . Observe que você sempre pode auditar o conteúdo do curso gratuitamente. ;-)
Outro bom post, se você quiser uma explicação completa com muitos exemplos com perspectiva estatística e não se limitando apenas à codificação fictícia, veja isso na UCLA (em R)
Observe que, se você estiver usando
pandas.get_dummies
, existe um parâmetro, oudrop_first
seja, para obter k-1 manequins de k níveis categóricos removendo o primeiro nível. Observedefault = False
, o que significa que a referência não é descartada e k são criados fora de k níveis categóricos!fonte
Você não precisa diminuir o nível, dependendo do seu caso de uso.
Consulte
Em quais casos não devemos abandonar o primeiro nível de variáveis categóricas?
e a pergunta muito mais geral
No aprendizado supervisionado, por que é ruim ter recursos correlatos?
fonte