Je voudrais exécuter un modèle d'apprentissage automatique comme la forêt aléatoire, le renforcement du gradient ou SVM sur mon jeu de données. Il y a plus de 200 variables prédictives dans mon jeu de données et mes classes cibles sont une variable binaire.
Dois-je exécuter la sélection des fonctions avant l'ajustement du modèle? Cela affecte-t-il considérablement les performances du modèle ou n'y a-t-il pas beaucoup de différence si j'adapte directement le modèle en utilisant toutes les variables prédictives?
Réponses:
La sélection des fonctionnalités peut être considérée comme une étape à éviter. Vous devez passer du temps de calcul afin de supprimer des fonctionnalités et réellement perdre des données et les méthodes que vous devez effectuer pour la sélection des fonctionnalités ne sont pas optimales car le problème est NP-Complete . Son utilisation ne ressemble pas à une offre que vous ne pouvez pas refuser.
Alors, quels sont les avantages de l'utiliser?
Maintenant, pour votre cas spécifique: je vous recommande de commencer à calculer les corrélations entre les fonctionnalités et le concept. Le calcul des corrélations entre toutes les fonctionnalités est également informatif. Notez qu'il existe de nombreux types de corrélations utiles (par exemple, Pearson , informations mutuelles ) et de nombreux attributs qui peuvent les affecter (par exemple, rareté, déséquilibre conceptuel). Les examiner au lieu d'aller aveuglément avec un algorithme de sélection de fonctionnalités pourrait vous faire gagner beaucoup de temps à l'avenir.
Je ne pense pas que vous aurez beaucoup de problèmes de temps d'exécution avec votre jeu de données. Cependant, votre rapport échantillons / fonctionnalités n'est pas trop élevé, vous pouvez donc bénéficier de la sélection des fonctionnalités.
Choisissez un classificateur de faible complexité (par exemple, régression linéaire, petit arbre de décision) et utilisez-le comme référence. Essayez-le sur l'ensemble de données complet et sur certains ensembles de données avec un sous-ensemble des fonctionnalités. Une telle référence vous guidera dans l'utilisation de la sélection des fonctionnalités. Vous aurez besoin de ces conseils car il existe de nombreuses options (par exemple, le nombre de fonctionnalités à sélectionner, l'algorithme de sélection de fonctionnalités) et puisque l'objectif est généralement la prédication et non la sélection de fonctionnalités, de sorte que la rétroaction est au moins à un pas.
la source
J'ai posté une question très similaire sur Cross Validated il y a quelques mois et j'ai reçu un très grand nombre de réponses. Lisez les réponses et les commentaires.
/stats/215154/variable-selection-for-predictive-modeling-really-needed-in-2016
la source
Oui, la sélection des fonctionnalités est l'une des tâches les plus cruciales pour les problèmes d'apprentissage automatique, après avoir effectué la résolution et le nettoyage des données. vous pouvez trouver les fonctions implémentant le processus de sélection des fonctionnalités en utilisant l'importance des fonctionnalités XGBOOST ici.
https://github.com/abhisheksharma4194/Machine-learning
la source