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

Magasin de données ou entrepôt de données? - les mannequins

Magasin de données ou entrepôt de données? - les mannequins

L'idée d'un dépôt de données n'est guère révolutionnaire, malgré ce que vous pourriez lire sur les blogs et dans la presse spécialisée, et ce que vous pourriez entendre lors de conférences ou de séminaires. Un magasin de données est simplement un entrepôt de données réduit - c'est tout. Les vendeurs font de leur mieux pour définir des ...

Classer Votre Entrepôt de données - mannequins

Classer Votre Entrepôt de données - mannequins

Bien que vous devez vous assurer que votre entrepôt de données correspond à vos besoins uniques, certaines directives peuvent vous aider. vous déterminez la complexité probable de son environnement et de sa structure. Une bonne configuration consiste à utiliser une classification à trois niveaux pour la planification d'un entrepôt de données. En déterminant une catégorie probable pour une mise en œuvre, vous pouvez avoir ...

Business Intelligence Architecture et Data Warehousing - Mannequins

Business Intelligence Architecture et Data Warehousing - Mannequins

Les débuts du Business Intelligence (toute variété sauf data mining) avait une forte saveur client / serveur de première génération à deux niveaux. (Certains environnements d'intelligence d'affaires qui étaient hébergés sur un mainframe et qui effectuaient des requêtes et des rapports étaient construits avec une architecture centralisée.) Conceptuellement, les premières architectures d'intelligence d'affaires avaient du sens, compte tenu de l'état de l'art ...

Le choix des éditeurs

Câblage réseau pour l'examen de certification Cisco ICND1 - mannequins

Câblage réseau pour l'examen de certification Cisco ICND1 - mannequins

L'examen de certification ICND1 vous teste sur les différents types de câblage utilisé dans différents scénarios de réseau. Voici quelques points clés à retenir sur le câblage réseau. Rollover Cable: Un câble de survol est aussi connu comme un câble de console et obtient le nom rollover parce que l'ordre des fils d'un ...

Pour la certification compTIA A + - mannequins

Pour la certification compTIA A + - mannequins

Les examens A +, y compris le réseau local (LAN) et le réseau étendu (WAN): LAN: Un réseau local (LAN) est un réseau qui implique généralement un immeuble de bureaux ou peut-être même des systèmes en réseau sur un étage. Le principal point à retenir lors de l'identification ...

Outils de dépannage réseau - nuls

Outils de dépannage réseau - nuls

Voici une liste d'outils de dépannage courants que vous devriez connaître pour les examens A +. L'un des défis des réseaux de soutien aujourd'hui est de savoir comment les résoudre. Vous trouvez tellement d'aspects du réseau qu'il est difficile de savoir par où commencer votre dépannage. Crimper: A ...

Le choix des éditeurs

En sélectionnant Logiciel de blog hébergé - duos

En sélectionnant Logiciel de blog hébergé - duos

Lorsque vous choisissez de bloguer en utilisant un service de blog hébergé, vous n'avez pas besoin de s'inquiéter de la technologie du logiciel du tout. Vous pouvez vous concentrer sur le sujet de votre prochain article de blog plutôt que sur la manière de configurer un serveur Web. Pour utiliser un logiciel de blog hébergé, connectez-vous à l'outil d'édition, écrivez un ...

Sélectionnant l'hébergement Web pour votre blog WordPress - les nuls

Sélectionnant l'hébergement Web pour votre blog WordPress - les nuls

Après avoir choisi un domaine approprié pour votre blog, vous besoin d'un endroit pour votre installation de WordPress à vivre. N'oubliez pas que vous pouvez également demander à d'autres blogueurs quel hôte ils utilisent et quelle a été leur expérience. Les logiciels Web tels que WordPress ont certaines exigences techniques. Les exigences pour WordPress sont PHP 5. 6 ou plus ...

ÉVolutivité et Mom Blogging - mannequins

ÉVolutivité et Mom Blogging - mannequins

L'évolutivité est l'un de ces mots de jargon MBA-ish absolument ennuyeux que vous n'auriez probablement jamais pense que cela s'appliquerait à un blogueur maman. Mais ce que l'évolutivité signifie vraiment, c'est qu'une entreprise doit avoir une structure en place qui lui permet de croître. Bien sûr, vous voulez augmenter votre revenu - mais vous ...