Accueil Finances personnelles Comment utiliser Python pour sélectionner les bonnes variables pour la science des données - les nuls

Comment utiliser Python pour sélectionner les bonnes variables pour la science des données - les nuls

Table des matières:

Vidéo: Découvrez les librairies Python pour la Data Science 2025

Vidéo: Découvrez les librairies Python pour la Data Science 2025
Anonim

Sélectionner les bonnes variables dans Python peut améliorer le processus d'apprentissage en science des données en réduisant la quantité de bruit (inutile informations) qui peuvent influencer les estimations de l'apprenant. La sélection de variables peut donc réduire efficacement la variance des prédictions. Pour ne faire intervenir que les variables utiles à l'entraînement et ignorer celles qui sont redondantes, vous pouvez utiliser ces techniques:

  • Approche univariée: Sélectionnez les variables les plus proches du résultat cible.

  • Approche gourmande ou rétrograde: Ne conservez que les variables que vous pouvez retirer du processus d'apprentissage sans endommager ses performances.

Sélection par mesures univariées

Si vous décidez de sélectionner une variable en fonction de son niveau d'association avec sa cible, la classe SelectPercentile fournit une procédure automatique permettant de ne conserver qu'un certain pourcentage des meilleures fonctionnalités associées. Les métriques disponibles pour association sont

  • f_regression: Utilisé uniquement pour les cibles numériques et basé sur les performances de régression linéaire.

  • f_classif: Utilisé uniquement pour les cibles catégorielles et basé sur le test statistique Analysis of Variance (ANOVA).

  • chi2: Effectue la statistique du khi-carré pour les cibles catégorielles, ce qui est moins sensible à la relation non linéaire entre la variable prédictive et sa cible.

Lors de l'évaluation des candidats pour un problème de classification, f_classif et chi2 tendent à fournir le même ensemble de variables supérieures. C'est toujours une bonne pratique de tester les sélections des deux métriques d'association.

Hormis l'application d'une sélection directe des associations de percentiles supérieures, SelectPercentile peut également classer les meilleures variables afin de faciliter le choix du percentile pour exclure une fonctionnalité de la participation au processus d'apprentissage. La classe SelectKBest est analogue dans sa fonctionnalité, mais elle sélectionne les k variables supérieures, où k est un nombre, pas un centile.

de sklearn. feature_selection import SelectPercentile de sklearn. feature_selection import f_regression Selector_f = SelectPercentile (f_regression, percentile = 25) Sélecteur_f. fit (X, y) pour n, s dans zip (boston.nom_fonctions, Selector_f.tags_): affiche 'F-score:% 3. 2ft pour la caractéristique% s '% (s, n) F-score: 88. 15 pour la caractéristique CRIM F-score: 75. 26 pour la caractéristique ZN F-score: 153. 95 pour la caractéristique INDUS F-score: 15. 97 pour Caractéristique CHAS F-score: 112. 59 pour la fonction NOX F-score: 471. 85 pour le dispositif RM F-score: 83.48 pour la fonction F-score AGE: 33. 58 pour la caractéristique DIS F-score: 85. 91 pour la caractéristique RAD F-score: 141. 76 pour la caractéristique TAX F-score: 175. 11 pour la caractéristique PTRATIO F-score: 63. 05 pour la fonction B score F: 601. 62 pour la fonction LSTAT

L'utilisation du niveau de sortie de l'association vous aide à choisir les variables les plus importantes pour votre modèle d'apprentissage automatique, mais vous devez faire attention à ces problèmes possibles: > Certaines variables à forte association pourraient aussi être fortement corrélées, introduisant des informations dupliquées, qui agissent comme du bruit dans le processus d'apprentissage.

  • Certaines variables peuvent être pénalisées, notamment les variables binaires (variables indiquant un statut ou une caractéristique en utilisant la valeur 1 quand elle est présente, 0 quand elle ne l'est pas). Par exemple, notez que la sortie affiche la variable binaire CHAS comme étant la moins associée à la variable cible (mais vous savez d'après les exemples précédents qu'elle est influente à partir de la phase de validation croisée).

  • Le processus de sélection univariée peut vous donner un réel avantage lorsque vous avez un grand nombre de variables à sélectionner et que toutes les autres méthodes deviennent infaisables. La meilleure procédure consiste à réduire la valeur de SelectPercentile par au moins la moitié des variables disponibles, à réduire le nombre de variables à un nombre gérable et, par conséquent, à utiliser une méthode plus sophistiquée et plus précise, telle qu'une recherche gourmande.

Utiliser une recherche gourmande

Lorsque vous utilisez une sélection univariée, vous devez décider vous-même du nombre de variables à conserver: La sélection gourmande réduit automatiquement le nombre de caractéristiques impliquées dans un modèle d'apprentissage en fonction de leur contribution effective au la performance mesurée par la mesure d'erreur.

La classe RFECV, qui adapte les données, peut vous fournir des informations sur le nombre de fonctionnalités utiles, vous les signaler et transformer automatiquement les données X, par la méthode transform, en un ensemble de variables réduit, comme indiqué dans l'exemple suivant:

de sklearn. feature_selection import sélecteur RFECV = RFECV (estimateur = régression, cv = 10, scoring = "mean_squared_error") sélecteur. fit (X, y) print ("Nombre optimal de fonctionnalités:% d"% selector.n_features_) Nombre optimal de fonctionnalités: 6

Il est possible d'obtenir un index du jeu de variables optimal en appelant l'attribut support_ de RFECV classe après vous l'adapter.

imprimer boston. feature_names [sélecteur. support_] ['CHAS "NOX" RM "DIS" PTRATIO "LSTAT']

Notez que CHAS est maintenant inclus parmi les fonctionnalités les plus prédictives, ce qui contraste avec le résultat de la recherche univariée La méthode RFECV peut détecter si une variable est important, peu importe qu'il soit binaire, catégorique ou numérique, car il évalue directement le rôle joué par l'entité dans la prédiction.

La méthode RFECV est certainement plus efficace, comparée à l'approche -univariée, parce qu'elle prend en compte les caractéristiques hautement corrélées et est optimisé pour optimiser la mesure d'évaluation (qui n'est généralement pas un Chi-carré ou un F-score) étant un processus gourmand, il est exigeant en termes de calcul et peut seulement approcher le meilleur ensemble de prédicteurs.

Comme RFECV apprend le meilleur ensemble de variables à partir des données, la sélection peut être trop rapide, ce qui arrive avec tous les autres algorithmes d'apprentissage automatique. Essayer RFECV sur différents échantillons des données d'entraînement peut confirmer les meilleures variables à utiliser.

Comment utiliser Python pour sélectionner les bonnes variables pour la science des données - les nuls

Le choix des éditeurs

Principes de base du protocole de routage IP Multicast - dummies

Principes de base du protocole de routage IP Multicast - dummies

IP Le routage multicast est le routage du trafic multicast. La nature des données IP Multicast est telle qu'elle a ses propres problèmes de routage de réseau Cisco. Il existe quatre protocoles de multidiffusion principaux pris en charge par le Cisco IOS actuel. L'illustration vous montre approximativement où les protocoles sont utilisés; Ce qui suit est ...

Comment le protocole STP (Spanning Tree Protocol) gère les modifications du réseau - dummies

Comment le protocole STP (Spanning Tree Protocol) gère les modifications du réseau - dummies

Nouveau concentrateur ou passer à un réseau mappé STP (Spanning Tree Protocol)? Pour cet exemple, un concentrateur était connecté à un port sur les deux commutateurs 11: 99 et 77: 22. Un concentrateur était utilisé car il ne disposait pas d'une intelligence réseau. L'effet net est en fait le même que ...

Types de réseau local (LAN) - nuls

Types de réseau local (LAN) - nuls

Un WAN est un type de réseau local (LAN) . Un réseau local est un réseau privé généralement constitué d'une connexion réseau fiable, rapide et bien connectée. Les alternatives sur le framework LAN incluent CAN, MAN et WAN. Ces trois options de réseau sont illustrées ci-dessous: CAN Si vous utilisez le réseau LAN ...

Le choix des éditeurs

Bebo est l'application de médias sociaux pour vous? - les nuls

Bebo est l'application de médias sociaux pour vous? - les nuls

Comment savez-vous quel est le bon média social pour vous? La culture moderne devient de plus en plus dépendante des médias sociaux tels que Bebo, Facebook, Twitter et What'sApp, ainsi que de nombreux autres. Le questionnaire suivant vous aidera à déterminer si vous avez ou non ce qu'il faut pour être social sur le nouveau ...

Comment utiliser Bebo - dummies

Comment utiliser Bebo - dummies

Bebo, la nouvelle application des médias sociaux, est aussi facile à utiliser que C'est amusant à regarder. Vous pouvez obtenir cette nouvelle application sur Google Play Store et Apple App Store. Lancez Bebo et suivez les instructions à l'écran pour terminer le processus de création de compte. Après avoir téléchargé avec succès, ...

Le choix des éditeurs

Ce que vous pouvez trouver dans une barre latérale de blog - des mannequins

Ce que vous pouvez trouver dans une barre latérale de blog - des mannequins

La plupart des blogs contiennent du matériel de barre latérale. La plupart des blogs sont disposés en deux ou trois colonnes, et le contenu de la barre latérale apparaît généralement dans les deuxième et / ou troisième colonnes. Certains blogs n'ont pas de barres latérales, et sur d'autres blogs, vous pouvez découvrir des éléments supplémentaires au-delà de ce que vous voyez ici. Archives basées sur la date: Presque tous les blogs sont ...

Lorsqu'un réseau publicitaire est approprié pour votre blog maman - les mannequins

Lorsqu'un réseau publicitaire est approprié pour votre blog maman - les mannequins

Ne sont que quelques-unes modèles conflit en cours d'exécution des publicités avec vos meilleurs intérêts. C'est quand vous bloguez pour vendre vos propres produits ou pour promouvoir vos services professionnels. Même dans ce cas, il est toujours possible de diffuser des annonces sur ces blogs, surtout si les annonces font la promotion de produits et de services complémentaires et non concurrents. Mais si vous êtes ...

Quand maman blogue pour Swag is Okay - les mannequins

Quand maman blogue pour Swag is Okay - les mannequins

Dans certaines circonstances légitimes vous pouvez vous sentir travailler gratuitement vaut votre temps et la publicité que vous offrez à une marque. Cela peut être comparé à un stage non rémunéré. Si vous êtes stagiaire et que vous avez une excellente expérience de travail, alors c'est une entreprise précieuse. Si vous êtes stagiaire et que vous ne versez que du café et que vous livrez ...