Escolha o algoritmo de classificação binária

16

Eu tenho um problema de classificação binária:

  • Aproximadamente 1000 amostras em conjunto de treinamento
  • 10 atributos, incluindo binários, numéricos e categóricos

Qual algoritmo é a melhor escolha para esse tipo de problema?

Por padrão, vou começar com o SVM (preliminar, com valores de atributos nominais convertidos em recursos binários), pois é considerado o melhor para dados relativamente limpos e sem ruído.

IharS
fonte

Respostas:

15

É difícil dizer sem conhecer um pouco mais sobre o seu conjunto de dados e quão separável é o seu conjunto de dados com base no seu vetor de recursos, mas eu provavelmente sugeriria o uso de floresta aleatória extrema sobre florestas aleatórias padrão por causa do seu conjunto de amostras relativamente pequeno.

As florestas aleatórias extremas são bastante semelhantes às florestas aleatórias padrão, com a única exceção que, em vez de otimizar as divisões nas árvores, a floresta aleatória extrema faz divisões aleatoriamente. Inicialmente, isso parece negativo, mas geralmente significa que você tem uma generalização e velocidade significativamente melhores, embora a AUC no seu conjunto de treinamento provavelmente seja um pouco pior.

A regressão logística também é uma aposta bastante sólida para esse tipo de tarefa, embora com a sua dimensionalidade relativamente baixa e o tamanho pequeno da amostra, eu me preocupasse com o ajuste excessivo. Você pode querer dar uma olhada no K-Nearest Neighbors, pois geralmente executa muita vontade com baixas dimensionalidades, mas geralmente não lida com variáveis ​​categóricas muito bem.

Se eu tivesse que escolher um sem saber mais sobre o problema, certamente colocaria minhas apostas em florestas aleatórias extremas, pois é muito provável que lhe dê uma boa generalização nesse tipo de conjunto de dados, e também lida melhor com uma mistura de dados numéricos e categóricos do que a maioria dos outros métodos.

indico
fonte
bom obrigado Embora ainda não tenha certeza se posso usar o pacote R "randomForest" ( cran.r-project.org/web/packages/randomForest/randomForest.pdf ) para gerar ERF. Provavelmente não.
IharS
12

Para parâmetros baixos, o tamanho da amostra bastante limitado e uma regressão logística do classificador binário devem ser suficientemente poderosos. Você pode usar um algoritmo mais avançado, mas provavelmente é um exagero.

neone4373
fonte
5

Quando as variáveis ​​categóricas estão na mistura, eu alcanço as Florestas de Decisão Aleatória, pois lida com variáveis ​​categóricas diretamente sem a transformação de codificação 1-n-1. Isso perde menos informações.

Sean Owen
fonte
5

O SVM linear deve ser um bom ponto de partida. Dê uma olhada neste guia para escolher o estimador certo.

Stanpol
fonte
2

Não recomendaria o uso de métodos complexos primeiro. Use abordagens simples mais rápidas inicialmente (kNN, NBC etc.), depois progrida através de regressão linear, regressão logística, LDA, CART (RF), KREG e, em seguida, para SVM de mínimos quadrados, SVM de subida gradual, ANNs e depois metaheurustics (ganancioso escalada heurística com AGs, inteligência de enxame, otimização de colônias de formigas etc.)


fonte