Qu'est-ce que la sélection des fonctionnalités?
Le processus de sélection des fonctionnalités consiste à réduire le nombre de variables prédictives utilisées dans les modèles que vous créez. Par exemple, votre première inclination devrait être de sélectionner le modèle avec moins de variables lorsqu'il est présenté avec deux modèles avec le même score ou presque identique. Mais ce dernier modèle a plus de variables. Ce modèle est moins susceptible d'être fuit, plus facile à gérer et plus simple à comprendre et à s'entraîner. Il vient facilement dans le cadre du processus de construction de modèles pour régler le nombre de paramètres dans un modèle, qui est une composante naturelle de la science des données dans la pratique. La sélection des fonctionnalités est principalement une procédure manuelle, même lorsqu'il y a peu de fonctionnalités, ou que vous avez le temps de vous asseoir et d'y penser. La sélection de fonctionnalités automatisées ou semi-automatisées peut accélérer les processus dans des situations lorsqu'il y a trop de variables, ou vous n'avez pas beaucoup de temps.
Implémentation de la sélection des fonctionnalités dans Sklearn
Nous importons d'abord les données à l'aide de pandas. L'ensemble de données peut être trouvé ici.
Importer des pandas en tant que PDSortir
SEPALLENGHNETHCM | Sepalwidthcm | PetAlNGLASTCM | Pétalwidthcm | Espèces | |
---|---|---|---|---|---|
0 | 5.1 | 3.5 | 1.4 | 0.2 | Iris-setosa |
1 | 4.9 | 3.0 | 1.4 | 0.2 | Iris-setosa |
2 | 4.7 | 3.2 | 1.3 | 0.2 | Iris-setosa |
3 | 4.6 | 3.1 | 1.5 | 0.2 | Iris-setosa |
4 | 5.0 | 3.6 | 1.4 | 0.2 | Iris-setosa |
Sélection des fonctionnalités de seuil de variance
Un seuil de variance est une méthode simple pour supprimer les fonctionnalités en fonction de la variance que nous prévoyons pour chaque fonctionnalité. Sans considérer aucune donnée de la variable dépendante, la sélection des fonctionnalités de seuil de variance considère simplement les fonctionnalités d'entrée. En conséquence, il est seulement efficace pour la modélisation non supervisée lorsque les fonctionnalités sont éliminées. Vous trouverez ci-dessous la mise en œuvre de l'approche:
de Sklearn.caractéristique_selection import variancethresholdSortir
Index (['PetAlNGLNGTHCM'], dtype = "objet")
SelectKbest
Une technique de sélection des fonctionnalités appelée sélection de fonctionnalités univariées est basée sur le test statistique univarié. Le fondement de «SelectKBest» est la combinaison d'un test statistique univarié avec la sélection des fonctionnalités du nombre K basé sur la corrélation statistique entre les variables dépendantes et indépendantes. Vous trouverez ci-dessous l'implémentation de 'selectKBest'.
X = df.Drop ('espèces', axe = 1)Sortir
Index (['PetAlNGLNGTHCM', 'PetalWidthcm'], dType = 'Object')Conclusion
Nous avons discuté des méthodes de sélection des fonctionnalités dans Sklearn. La sélection des fonctionnalités est importante lorsque vous travaillez avec de nombreuses fonctionnalités et nous devons abandonner les fonctionnalités redondantes pour une meilleure compréhension des données et de meilleures performances. Sklearn nous fournit un module 'ftealing_selection' utilisé pour implémenter cette technique.