Choisissez l'algorithme de classification binaire

17

J'ai un problème de classification binaire:

  • Environ 1000 échantillons dans le kit de formation
  • 10 attributs, y compris binaire, numérique et catégorique

Quel algorithme est le meilleur choix pour ce type de problème?

Par défaut, je vais commencer par SVM (préliminaire ayant des valeurs d'attributs nominales converties en fonctionnalités binaires), car il est considéré comme le meilleur pour les données relativement propres et non bruyantes.

IharS
la source

Réponses:

15

Il est difficile de dire sans en savoir un peu plus sur votre jeu de données et sur la façon dont votre jeu de données est séparable en fonction de votre vecteur d'entités, mais je suggérerais probablement d'utiliser une forêt aléatoire extrême sur des forêts aléatoires standard en raison de votre jeu d'échantillons relativement petit.

Les forêts aléatoires extrêmes sont assez similaires aux forêts aléatoires standard, à la seule exception qu'au lieu d'optimiser les divisions sur les arbres, la forêt aléatoire extrême effectue des divisions au hasard. Au début, cela semble négatif, mais cela signifie généralement que vous avez une généralisation et une vitesse nettement meilleures, bien que l'ASC de votre ensemble d'entraînement soit probablement un peu pire.

La régression logistique est également un pari assez solide pour ce type de tâches, mais avec votre dimensionnalité relativement faible et votre petite taille d'échantillon, je serais inquiet du sur-ajustement. Vous voudrez peut-être vérifier en utilisant K-Nearest Neighbors, car il effectue souvent très de volonté avec de faibles dimensions, mais il ne gère généralement pas très bien les variables catégorielles.

Si je devais en choisir un sans en savoir plus sur le problème, je placerais certainement mes paris sur une forêt aléatoire extrême, car il est très susceptible de vous donner une bonne généralisation sur ce type de jeu de données, et il gère également mieux un mélange de données numériques et catégorielles que la plupart des autres méthodes.

indico
la source
bien, merci! Je ne sais pas encore si je peux utiliser le package R "randomForest" ( cran.r-project.org/web/packages/randomForest/randomForest.pdf ) pour générer ERF. Probablement pas.
IharS
12

Pour des paramètres faibles, une taille d'échantillon assez limitée et une régression logistique de classificateur binaire devraient être suffisamment puissantes. Vous pouvez utiliser un algorithme plus avancé mais c'est probablement exagéré.

neone4373
la source
5

Lorsque des variables catégorielles sont dans le mélange, j'atteins les forêts de décision aléatoire, car il gère les variables catégorielles directement sans la transformation de codage 1 sur n. Cela perd moins d'informations.

Sean Owen
la source
5

La SVM linéaire devrait être un bon point de départ. Jetez un œil à ce guide pour choisir le bon estimateur.

Stanpol
la source
2

Je ne recommanderais pas d'abord l'utilisation de méthodes complexes. Utilisez d'abord des approches simples plus rapides (kNN, NBC, etc.), puis progressez par régression linéaire, régression logistique, LDA, CART (RF), KREG, puis vers les moindres carrés SVM, gradient ascension SVM, ANNs, puis métaheurustiques (gourmand escalade heuristique de collines avec GA, intelligence d'essaim, optimisation de colonies de fourmis, etc.)


la source