Share via


Sélection de caractéristiques par filtrage

Important

Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning avant cette date.

À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.

La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.

Identifie les fonctionnalités d'un jeu de données dont le potentiel prédictif est le plus important

Catégorie : modules de sélection de fonctionnalités

Notes

s’applique à: Machine Learning Studio (classic) uniquement

Des modules par glisser-déposer similaires sont disponibles dans Concepteur Azure Machine Learning.

Vue d’ensemble du module

cet article explique comment utiliser le module de sélection de fonctionnalités basée sur les filtres dans Machine Learning Studio (classic), pour identifier les colonnes de votre jeu de données d’entrée qui ont la plus grande puissance prédictive.

En général, la sélection de caractéristiques fait référence au processus d’application de tests statistiques à des entrées, en fonction d’une valeur de sortie donnée, pour déterminer quelles colonnes prédisent plus précisément la valeur de sortie. Le module de sélection de fonctionnalités basée sur les filtres fournit plusieurs algorithmes de sélection de fonctionnalités, y compris des méthodes de corrélation telles que la corrélation de Pearson ou de Kendall, des scores d’informations mutuels et des valeurs de khi-deux. Machine Learning prend également en charge le nombre de valeurs de fonctionnalités comme indicateur de valeur d’information.

Lorsque vous utilisez le module de sélection de caractéristiques par filtrage, vous fournissez un jeu de données, identifiez la colonne qui contient l’étiquette ou la variable dépendante, puis spécifiez une méthode unique à utiliser pour mesurer l’importance des caractéristiques.

Le module génère un jeu de données qui contient les meilleures colonnes de type Caractéristique, classées en fonction de leur capacité de prédiction. Il renvoie également le nom des caractéristiques et leur score selon la métrique sélectionnée.

Qu’est-ce que la sélection des caractéristiques par filtrage et pourquoi l’utiliser ?

Ce module pour la sélection de caractéristiques fonctionne « par filtrage », car vous utilisez la métrique sélectionnée pour identifier les attributs non pertinents et filtrer les colonnes redondantes de votre modèle. Vous choisissez une métrique statistique unique qui correspond à vos données et le module calcule un score pour chaque colonne de type Caractéristique. Les colonnes sont ensuite classées en fonction de leur score de caractéristique.

En choisissant les caractéristiques appropriées, vous pouvez potentiellement améliorer la précision et l’efficacité de la classification.

En général, vous n’utilisez que les colonnes avec le meilleur score pour générer votre modèle prédictif. Vous pouvez laisser dans votre jeu de données les colonnes dont le score de sélection de caractéristiques est bas ; elles seront ignorées quand vous générerez un modèle.

Comment choisir une métrique de sélection de caractéristiques

La sélection de caractéristiques par filtrage fournit diverses métriques pour évaluer la valeur des informations contenues dans chaque colonne. Cette section fournit une description générale de chaque métrique et de son mode d’application. Des exigences supplémentaires pour l’utilisation de chaque métrique sont indiquées dans la section Informations techniques et dans les instructions de configuration de chaque module.

  • Corrélation de Pearson

    Le coefficient de corrélation de Pearson est également représenté dans les modèles statistiques par la valeur r. Pour deux variables quelles qu’elles soient, il retourne une valeur qui indique la force de la corrélation.

    Le coefficient de corrélation de Pearson est calculé en prenant la covariance de deux variables et en la divisant par le produit de leurs écarts-types. Le coefficient n’est pas affecté par les changements d’échelle des deux variables.

  • Informations mutuelles

    Le score d’information mutuel mesure la contribution d’une variable à la réduction de l’incertitude concernant la valeur d’une autre variable : à savoir, l’étiquette. De nombreuses variations de la note d'information mutuelle ont été imaginées pour convenir à différentes distributions.

    La note d'information mutuelle est particulièrement utile pour sélectionner les fonctionnalités, car elle optimise les informations mutuelles entre la distribution conjointe et les variables cibles dans les jeux de données avec plusieurs dimensions.

  • Corrélation de Kendall

    La corrélation de rang de Kendall est une statistique qui mesure la relation entre les classements de différentes variables ordinales ou les différents classements de la même variable. En d'autres termes, elle mesure la similarité des classements par quantités. Ce coefficient et le coefficient de corrélation de Spearman sont conçus pour une utilisation avec des données non paramétriques et non normalement distribuées.

  • Corrélation de Spearman

    Le coefficient de Spearman est une mesure non paramétrique de dépendance statistique entre deux variables et est parfois désigné par la lettre grecque rhô. Le coefficient de Spearman exprime le degré de relation monotone de deux variables. Il est également appelé corrélation de rangs de Spearman, car il peut être utilisé avec des variables ordinales.

  • Khi disposé en carré

    Le test du Khi-deux bidirectionnel est une méthode statistique qui mesure l’écart entre les valeurs attendues et les résultats obtenus. La méthode suppose que les variables soient aléatoires et tirées d’un échantillon adéquat de variables indépendantes. La statistique Khi-deux résultante indique l’écart entre les résultats obtenus et le résultat attendu (aléatoire).

  • Score de Fisher

    Le score de Fisher (également appelé méthode de Fisher ou test de probabilité combinée de Fisher) est parfois appelé score d'informations, car il représente la quantité d'informations fournies par une variable sur un paramètre inconnu dont il dépend.

    Le score est calculé en mesurant la variance entre la valeur attendue des informations et la valeur observée. Lorsque la variance est réduite, les informations sont maximum. Dans la mesure où l'attente du score est de zéro, les informations de Fisher sont également la variance du score.

  • Basé sur un nombre

    La sélection de fonctionnalités basée sur le nombre est un moyen simple et relativement puissant de recherche d'informations sur les prédicteurs. L’idée de base sous-jacente caractérisation basée sur le nombre est simple : en calculant le nombre de valeurs individuelles dans une colonne, vous pouvez obtenir une idée de la distribution et de la pondération des valeurs, et à partir de cela, vous devez comprendre quelles colonnes contiennent les informations les plus importantes.

    La sélection de fonctionnalités basée sur le nombre est une méthode non supervisée de sélection de fonctionnalités, ce qui signifie que vous n’avez pas besoin d’une colonne d’étiquette. Cette méthode réduit également la dimensionnalité des données sans perdre d’informations.

    pour plus d’informations sur la façon dont les fonctionnalités basées sur le nombre sont créées et la raison pour laquelle elles sont utiles dans Machine Learning, consultez Learning avec des nombres.

Conseil

Si vous avez besoin d’une autre option pour une méthode de sélection des caractéristiques personnalisée, utilisez le module Exécuter un script R.

Comment configurer la sélection de caractéristiques par filtrage

Ce module fournit deux méthodes pour déterminer les scores des fonctionnalités :

Générer des scores de fonctionnalités à l’aide d’une mesure statistique traditionnelle

  1. Ajoutez le module de sélection de caractéristiques basée sur les filtres à votre expérience. Vous pouvez le trouver dans la catégorie sélection de fonctionnalités de Studio (classique).

  2. Connectez un jeu de données d’entrée qui contient au moins deux colonnes qui sont des caractéristiques potentielles.

    Pour indiquer qu’une colonne doit être analysée et qu’un score de caractéristique doit être généré, utilisez le module Modifier les métadonnées pour définir l’attribut IsFeature.

    Important

    Assurez-vous que les colonnes que vous fournissez comme entrées sont des caractéristiques potentielles. Par exemple, une colonne qui contient une valeur unique n’a pas de valeur d’information.

    Si vous savez que certaines colonnes risquent de créer des caractéristiques inadaptées, vous pouvez les supprimer de la sélection. Vous pouvez également utiliser le module Modifier les métadonnées pour les définir comme Catégorie.

  3. Pour la méthode de notation des caractéristiques, choisissez l’une des méthodes statistiques établies ci-dessous. Celle-ci sera utilisée pour le calcul des scores.

    Méthode Spécifications
    Corrélation de Pearson L’étiquette peut être de type texte ou numérique. Les caractéristiques doivent être numériques.
    Informations mutuelles Les étiquettes et les caractéristiques peuvent être de type texte ou numérique. Utilisez cette méthode pour calculer l’importance des caractéristiques pour deux colonnes Catégorie.
    Corrélation de Kendall L’étiquette peut être de type texte ou numérique, mais les fonctionnalités doivent être numériques.
    Corrélation de Spearman L’étiquette peut être de type texte ou numérique, mais les fonctionnalités doivent être numériques.
    Test du Khi-deux Les étiquettes et les caractéristiques peuvent être de type texte ou numérique. Utilisez cette méthode pour calculer l’importance des caractéristiques pour deux colonnes Catégorie.
    Score de Fisher L’étiquette peut être de type texte ou numérique, mais les fonctionnalités doivent être numériques.
    Nombres Consultez : pour utiliser Count-Based sélection de fonctionnalités

    Conseil

    Si vous modifiez la métrique sélectionnée, toutes les autres sélections seront réinitialisées. Par conséquent, pensez à définir cette option en premier.

  4. Sélectionnez l’option Operate on feature columns only (Travailler avec les colonnes de type Caractéristique uniquement) pour générer un score uniquement pour les colonnes de type Caractéristique.

    Si vous désélectionnez cette option, le module crée un score pour toutes les colonnes qui répondent aux autres critères, jusqu’à atteindre le nombre de colonnes spécifié dans Number of desired features (Nombre de caractéristiques souhaité).

  5. Pour la colonne cible, cliquez sur Launch column selector (Lancer le sélecteur de colonne) pour afficher la colonne Étiquette par nom ou par son index (les index sont de base un).

    Une colonne de type Étiquette est requise pour toutes les méthodes qui impliquent une corrélation statistique. Le module renvoie une erreur au moment de la conception si vous ne choisissez aucune colonne Étiquette ou plusieurs colonnes Étiquette.

  6. Dans le champ Number of desired features (Nombre de caractéristiques souhaité), entrez le nombre de colonnes de type Caractéristique que vous souhaitez retourner dans les résultats.

    • Le nombre minimal de caractéristiques que vous pouvez spécifier est 1, mais nous vous recommandons d’augmenter cette valeur.

    • Si le nombre de caractéristiques spécifié est supérieur au nombre de colonnes dans le jeu de données, toutes les caractéristiques seront retournées, même celles avec des scores nuls.

    • Si vous spécifiez moins de colonnes de résultat qu’il n’y a de colonnes de type Caractéristique, les caractéristiques seront classées selon leur score par ordre décroissant et seules les caractéristiques principales seront retournées.

  7. Exécutez l’expérience ou sélectionnez le module filtrage des fonctionnalités basé sur un filtre, puis cliquez sur exécuterla sélection.

Résultats de la sélection des fonctionnalités

Une fois le processus terminé :

  • Pour afficher la liste complète des colonnes de type Caractéristique qui ont été analysées ainsi que leur score, cliquez avec le bouton droit sur le module, sélectionnez Caractéristiques, puis cliquez sur Visualiser.

  • Pour afficher le jeu de données qui est généré en fonction de vos critères de sélection de caractéristiques, cliquez avec le bouton droit sur le module, sélectionnez Jeu de données, puis cliquez sur Visualiser.

Si le jeu de données contient moins de colonnes que prévu, vérifiez les paramètres du module et les types de données des colonnes fournies comme entrée. Par exemple, si vous avez indiqué 1 dans Number of desired features (Nombre de caractéristiques souhaité), le jeu de données de sortie contient seulement deux colonnes : la colonne Étiquette et la colonne de type Caractéristique la mieux classée.

Utiliser la sélection de fonctionnalités basée sur le nombre

  1. Ajoutez le module de sélection de caractéristiques basée sur les filtres à votre expérience. Vous pouvez le trouver dans la liste des modules de Studio (Classic) dans le groupe sélection de fonctionnalités .

  2. Connecter un jeu de données d’entrée qui contient au moins deux colonnes qui sont des fonctionnalités possibles.

  3. Sélectionnez nombre en fonction de la liste des méthodes statistiques dans la liste déroulante méthode de notation des fonctionnalités .

  4. Pour le nombre minimal d’éléments non nuls, indiquez le nombre minimal de colonnes de fonctionnalités à inclure dans la sortie.

    Par défaut, le module génère toutes les colonnes qui remplissent les conditions requises. Le module ne peut pas générer une colonne dont le score est égal à zéro.

  5. Exécutez l’expérience ou sélectionnez uniquement le module, puis cliquez sur exécuter la sélection.

Résultats de la sélection des fonctionnalités basée sur le nombre

  • Pour afficher la liste des colonnes de fonctionnalités avec leurs scores, cliquez avec le bouton droit sur le module, sélectionnez fonctionnalités, puis cliquez sur visualiser .
  • Pour afficher le jeu de données contenant les colonnes analysées, cliquez avec le bouton droit sur le module, sélectionnez DataSet, puis cliquez sur visualiser.

Contrairement aux autres méthodes, la méthode de sélection de fonctionnalités basée sur le nombre ne classe pas les variables par les scores les plus élevés, mais retourne toutes les variables dont le score est différent de zéro, dans leur ordre d’origine.

Les fonctionnalités de chaîne obtiennent toujours un score égal à zéro (0) et ne sont donc pas des sorties.

Exemples

Vous pouvez voir des exemples d’utilisation de la sélection des fonctionnalités dans le Azure ai Gallery:

  • Classification du texte; Dans la troisième étape de cet exemple, la sélection de caractéristiques basée sur les filtres est utilisée pour identifier les 15 meilleures fonctionnalités. Le hachage des fonctionnalités est utilisé pour convertir les documents texte en vecteurs numériques. La corrélation de Pearson est ensuite utilisée sur les fonctionnalités vectorielles.

  • Sélection des fonctionnalités machine learning et ingénierie des fonctionnalités: cet article fournit une introduction à la sélection des fonctionnalités et à l’ingénierie des fonctionnalités dans machine learning.

Pour voir des exemples de scores de fonctionnalité, consultez table des scores comparé.

Notes techniques

Vous pouvez trouver ce module sous transformation des donnéesdans la catégorie filtres .

Informations d’implémentation

Si vous utilisez la corrélation de Pearson, la corrélation Kendall ou le Spear correlation sur une caractéristique numérique et une étiquette catégorique, le score de fonctionnalité est calculé comme suit :

  1. Pour chaque niveau de la colonne de type Catégorie, calculez la moyenne conditionnelle de la colonne numérique.

  2. Mettez en corrélation la colonne des moyennes conditionnelles avec la colonne numérique.

Spécifications

  • Il est impossible de générer un score de sélection de caractéristiques pour une colonne de type Étiquette ou Score.

  • Si vous tentez d’utiliser une méthode de calcul de score avec une colonne d’un type de données non pris en charge par cette méthode, soit le module génère une erreur, soit un score de zéro est attribué à la colonne.

  • Si une colonne contient des valeurs logiques (true/false), celles-ci sont traitées comme suit : true = 1 et false = 0.

  • Une colonne ne peut pas être une fonctionnalité si elle été désignée comme colonne d'Étiquette ou de Score.

Gestion des valeurs manquantes

  • Vous ne pouvez pas indiquer comme cible (étiquette) une colonne dont toutes les valeurs sont manquantes.

  • Si une colonne contient des valeurs manquantes, celles-ci sont ignorées lors du calcul du score de la colonne.

  • Si une colonne désignée comme colonne de type Caractéristique ne contient que des valeurs manquantes, elle reçoit un score de zéro.

Comparaison entre table des scores

Pour vous donner une idée de la comparaison des scores lors de l’utilisation de différentes mesures, le tableau suivant présente des scores de sélection de fonctionnalités à partir de plusieurs fonctionnalités dans le jeu de données de prix automobile, en fonction de la variable subordonnée autoroute-MPG.

Colonne de fonctionnalité Score de Pearson Score de nombre Score Kendall Informations mutuelles
highway-mpg 1 205 1 1
city-mpg 0,971337 205 0,892472 0,640386
curb-weight 0,797465 171 0,673447 0,326247
horsepower 0,770908 203 0,728289 0,448222
price 0,704692 201 0,651805 0,321788
length 0,704662205 205 0,53193 0,281317
engine-size 0,67747 205 0,581816 0,342399
width 0,677218 205 0,525585 0,285006
bore 0,594572 201 0,467345 0,263846
wheel-base 0,544082 205 0,407696 0,250641
compression-ratio 0,265201 205 0,337031 0,288459
système de carburant na na na 0,308135
make na na na 0,213872
roues motrices na na na 0,213171
height na na na 0,1924
pertes normalisées na na na 0,181734
symboling na na na 0,159521
nombre de cylindres na na na 0,154731
type de moteur na na na 0,135641
propres na na na 0,068217
body-style na na na 0,06369
type de carburant na na na 0,049971
nombre de portes na na na 0,017459
emplacement du moteur na na na 0,010166
  • Vous pouvez créer des scores mutuels pour tous les types de colonne, y compris les chaînes.

  • Les autres scores inclus dans ce tableau, tels que la corrélation de Pearson ou la sélection de fonctionnalités basée sur le nombre, requièrent des valeurs numériques. Les fonctionnalités de chaîne obtiennent un score de 0 et ne sont donc pas incluses dans la sortie. Pour obtenir des exceptions, consultez la section Notes techniques .

  • La méthode basée sur le nombre ne traite pas une colonne d’étiquette différemment des colonnes de fonctionnalité.

Entrées attendues

Nom Type Description
Dataset Table de données Jeu de données d'entrée

Paramètres du module

Nom Plage Type Default Description
Méthode de notation des fonctionnalités Liste Méthode de calcul de score Choisissez la méthode à utiliser pour calculer les scores
Utiliser les colonnes de fonctionnalités uniquement Quelconque Boolean true Indiquer s'il faut utiliser uniquement les colonnes de fonctionnalités dans le processus de calcul des scores
Colonne cible Quelconque ColumnSelection None Spécifier la colonne cible
Nombre de fonctionnalités souhaitées >=1 Integer 1 Spécifier le nombre de fonctionnalités dans les résultats de sortie
Nombre minimal d'éléments non nuls >=1 Integer 1 Spécifier le nombre de fonctionnalités en sortie (pour la méthode CountBased)

Sorties

Nom Type Description
Jeu de données filtré Table de données Jeu de données filtré
Fonctionnalités Table de données Noms des colonnes de sortie et scores de sélection de fonctionnalités

Exceptions

Exception Description
Erreur 0001 Une exception se produit si une ou plusieurs colonnes spécifiées du jeu de données sont introuvables.
Erreur 0003 Cette exception se produit si une ou plusieurs entrées sont null ou vide.
Erreur 0004 Une exception se produit si le paramètre est inférieur ou égal à une valeur spécifique.
Erreur 0017 Une exception se produit si une ou plusieurs colonnes spécifiées présentent un type non pris en charge par le module actuel.

pour obtenir la liste des erreurs spécifiques aux modules Studio (classiques), consultez Machine Learning codes d’erreur.

pour obtenir la liste des exceptions d’api, consultez Machine Learning les Codes d’erreur de l' api REST.

Voir aussi

Sélection de caractéristiques
Analyse discriminante linéaire de Fisher
Liste alphabétique des modules