Outre les caractéristiques évidentes du classificateur comme
- coût de calcul,
- types de données attendus des fonctionnalités / étiquettes et
- l'adéquation à certaines tailles et dimensions d'ensembles de données,
quels sont les cinq premiers classificateurs (ou 10, 20?) à essayer en premier sur un nouvel ensemble de données dont on ne sait pas encore grand chose (par exemple la sémantique et la corrélation des caractéristiques individuelles)? Habituellement, j'essaie Naive Bayes, le plus proche voisin, l'arbre de décision et SVM - bien que je n'ai pas de bonne raison pour cette sélection autre que je les connais et comprends surtout comment ils fonctionnent.
Je suppose que l'on devrait choisir des classificateurs qui couvrent les approches de classification générale les plus importantes . Quelle sélection recommanderiez-vous, selon ce critère ou pour toute autre raison?
MISE À JOUR: Une formulation alternative pour cette question pourrait être: "Quelles approches générales de classification existent et quelles méthodes spécifiques couvrent les plus importantes / populaires / prometteuses?"
la source
Réponses:
Forêt aléatoire
Rapide, robuste, bonne précision, dans la plupart des cas rien à régler, ne nécessite aucune normalisation, à l'abri de la colinéarité, génère une très bonne approximation des erreurs et un classement d'importance utile comme effet secondaire de l'entraînement, trivialement parallèle, prédit en un clin d'œil.
Inconvénients: des méthodes plus lentes que banales comme kNN ou NB, fonctionnent mieux avec des classes égales, une précision pire que SVM pour les problèmes nécessitant désespérément une astuce du noyau, est une boîte noire dure, ne fait pas de café.
la source
Classificateur de processus gaussien (n'utilisant pas l'approximation de Laplace), de préférence avec marginalisation plutôt qu'optimisation des hyper-paramètres. Pourquoi?
Inconvénients
Le premier choix serait cependant une régression logistique régularisée ou une régression de crête [sans sélection de caractéristiques] - pour la plupart des problèmes, les algorithmes très simples fonctionnent plutôt bien et sont plus difficiles à se tromper (en pratique, les différences de performances entre les algorithmes sont plus petites que les différences de performances entre l'opérateur qui les conduit).
la source
Par moi-même, lorsque vous approchez d'un nouvel ensemble de données, vous devez commencer à surveiller l'ensemble du problème. Tout d'abord, obtenez une distribution des caractéristiques catégorielles et des écarts moyens et standard pour chaque caractéristique continue. Ensuite:
Ensuite, je divise généralement les techniques de classification en 2 ensembles: technique boîte blanche et technique boîte noire. Si vous avez besoin de savoir «comment fonctionne le classificateur», vous devez choisir dans le premier ensemble, par exemple des arbres de décision ou des classificateurs basés sur des règles.
Si vous avez besoin de classer de nouveaux enregistrements sans construire un modèle, vous devriez jeter un œil à un apprenant désireux, par exemple KNN.
Après cela, je pense qu'il vaut mieux avoir un seuil entre précision et vitesse: Neural Network est un peu plus lent que SVM.
Ceci est ma technique de classement des cinq premiers:
la source