Eu tenho um conjunto de dados com 330 amostras e 27 recursos para cada amostra, com um problema de classe binária para Regressão Logística.
De acordo com a "regra se dez", preciso de pelo menos 10 eventos para que cada recurso seja incluído. No entanto, tenho um conjunto de dados desequilibrado, com 20% de classe positiva e 80% de classe negativa.
Isso me dá apenas 70 eventos, permitindo que aproximadamente apenas 7/8 sejam incluídos no modelo Logístico.
Eu gostaria de avaliar todos os recursos como preditores, não quero escolher nenhum recurso manualmente.
Então, o que você sugeriria? Devo fazer todas as combinações possíveis de 7 recursos? Devo avaliar cada recurso sozinho com um modelo de associação e escolher apenas os melhores para um modelo final?
Também estou curioso sobre o manuseio de recursos categóricos e contínuos, posso misturá-los? Se eu tiver um [0-1] categórico e um [0-100] contínuo, devo normalizar?
Atualmente, estou trabalhando com Python.
Muito obrigado por sua ajuda!
Respostas:
Para reduzir seu modelo para 7 variáveis, existem algumas abordagens que você pode adotar:
Como o @ E_net4 comentou, sua pergunta contínua é abordada em outro post.
fonte
Você está levando a "Regra dos 10" muito a sério. É uma regra muito difícil. Não se destina a ser usado como você está usando.
Parece que você está pensando: "Eu tenho apenas 70 instâncias positivas; portanto, pela regra dos 10, só posso usar 7 recursos; como posso escolher quais 7 recursos usar?"
Não é isso que significa a Regra dos 10. Não é uma regra que especifique quantos recursos você tem permissão para usar. A Regra dos 10 é descritiva, não prescritiva, e é uma diretriz aproximada: se o número de instâncias for muito menor que 10 vezes o número de recursos, você corre um risco especialmente alto de sobreajuste e pode obter resultados ruins.
Então o que você deveria fazer? Você deve fazer o que faria de qualquer maneira: use a regularização e a validação cruzada para selecionar os hiperparâmetros da regularização. Além disso, é importante ter um conjunto de testes de espera que você não toque até ter finalizado tudo sobre o classificador, para evitar estimativas de precisão excessiva ou excessiva.
E se você puder obter mais dados, isso realmente ajudaria.
Finalmente, como você tem classes desequilibradas, considere ler sobre desequilíbrio de classe e métodos para lidar com isso.
fonte