Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La sélection des fonctionnalités est un terme couramment utilisé dans l’exploration de données pour décrire les outils et techniques disponibles pour réduire les entrées à une taille gérable pour le traitement et l’analyse. La sélection des caractéristiques implique non seulement la réduction de la cardinalité, ce qui signifie imposer un découpage arbitraire ou prédéfini sur le nombre d’attributs qui peuvent être pris en compte lors de la création d’un modèle, mais également le choix d’attributs, ce qui signifie que l’analyste ou l’outil de modélisation sélectionne ou ignore activement les attributs en fonction de leur utilité pour l’analyse.
La possibilité d’appliquer la sélection de fonctionnalités est essentielle pour une analyse efficace, car les jeux de données contiennent souvent beaucoup plus d’informations que nécessaire pour générer le modèle. Par exemple, un jeu de données peut contenir 500 colonnes qui décrivent les caractéristiques des clients, mais si les données de certaines colonnes sont très éparses, vous obtiendrez très peu d’avantages à les ajouter au modèle. Si vous conservez les colonnes inutiles lors de la génération du modèle, davantage de processeur et de mémoire sont nécessaires pendant le processus d’entraînement, et plus d’espace de stockage est nécessaire pour le modèle terminé.
Même si les ressources ne sont pas un problème, vous souhaitez généralement supprimer des colonnes inutiles, car elles peuvent dégrader la qualité des modèles découverts, pour les raisons suivantes :
Certaines colonnes sont bruitées ou inutiles. Ce bruit rend plus difficile la découverte de modèles significatifs à partir des données ;
Pour découvrir des modèles de qualité, la plupart des algorithmes d’exploration de données nécessitent un jeu de données d’apprentissage beaucoup plus volumineux sur un jeu de données à haute dimension. Toutefois, les données d’apprentissage sont très petites dans certaines applications d’exploration de données.
Si seules 50 des 500 colonnes de la source de données contiennent des informations utiles dans la création d’un modèle, vous pouvez simplement les laisser hors du modèle, ou vous pouvez utiliser des techniques de sélection de fonctionnalités pour découvrir automatiquement les meilleures fonctionnalités et exclure les valeurs qui sont statistiquement insignifiantes. La sélection de caractéristiques aide à résoudre les deux problèmes liés à la possession de trop de données ayant peu de valeur, ou de trop peu de données ayant une grande valeur.
Sélection des caractéristiques dans l’exploration de données avec Analysis Services
En règle générale, la sélection des fonctionnalités est effectuée automatiquement dans Analysis Services, et chaque algorithme a un ensemble de techniques par défaut pour appliquer intelligemment la réduction des fonctionnalités. La sélection des fonctionnalités est toujours effectuée avant l’apprentissage du modèle, pour choisir automatiquement les attributs d’un jeu de données qui sont les plus susceptibles d’être utilisés dans le modèle. Toutefois, vous pouvez également définir manuellement des paramètres pour influencer le comportement de sélection des fonctionnalités.
En général, la sélection de caractéristiques fonctionne en calculant un score pour chaque attribut, puis en sélectionnant uniquement les attributs qui ont les meilleurs scores. Vous pouvez également ajuster le seuil pour les scores les plus élevés. Analysis Services fournit plusieurs méthodes pour calculer ces scores, et la méthode exacte appliquée dans n’importe quel modèle dépend de ces facteurs :
Algorithme utilisé dans votre modèle
Type de données de l’attribut
Tous les paramètres que vous avez définis sur votre modèle
La sélection des caractéristiques est appliquée aux entrées, aux attributs prédictibles ou aux états d’une colonne. Lorsque le scoring pour la sélection des fonctionnalités est terminé, seuls les attributs et états que l’algorithme sélectionne sont inclus dans le processus de génération de modèles et peuvent être utilisés pour la prédiction. Si vous choisissez un attribut prédictible qui ne respecte pas le seuil de sélection des fonctionnalités, l’attribut peut toujours être utilisé pour la prédiction, mais les prédictions sont basées uniquement sur les statistiques globales qui existent dans le modèle.
Remarque
La sélection des fonctionnalités affecte uniquement les colonnes utilisées dans le modèle et n’a aucun effet sur le stockage de la structure d’exploration de données. Les colonnes que vous laissez hors du modèle d’exploration de données sont toujours disponibles dans la structure, et les données des colonnes qui se trouvent dans la structure d’exploration de données sont mises en cache.
Définition des méthodes de sélection de caractéristiques
Il existe de nombreuses façons d’implémenter la sélection de fonctionnalités, en fonction du type de données que vous utilisez et de l’algorithme que vous choisissez pour l’analyse. SQL Server Analysis Services fournit plusieurs méthodes populaires et bien établies pour les attributs de scoring. La méthode appliquée dans n’importe quel algorithme ou jeu de données dépend des types de données et de l’utilisation des colonnes.
Le score d’intérêt est utilisé pour classer et trier les attributs dans les colonnes qui contiennent des données numériques continues non liées.
L’entropie de Shannon et deux scores bayésiens sont disponibles pour les colonnes qui contiennent des données discrètes et discrétisées. Toutefois, si le modèle contient des colonnes continues, le score d’intérêt sera utilisé pour évaluer toutes les colonnes d’entrée afin de garantir la cohérence.
La section suivante décrit chaque méthode de sélection de fonctionnalités.
Score d’intérêt
Une fonctionnalité est intéressante si elle vous indique quelques informations utiles. Étant donné que la définition de ce qui est utile varie selon le scénario, l’industrie de l’exploration de données a développé différentes façons de mesurer l’intérêt. Par exemple, la nouveauté peut être intéressante dans la détection hors norme, mais la possibilité de distinguer les éléments étroitement liés ou le poids discriminant, peut être plus intéressante pour la classification.
La mesure d’intérêt utilisée dans SQL Server Analysis Services est basée sur l’entropie, ce qui signifie que les attributs avec des distributions aléatoires ont une plus grande entropie et un gain d’informations inférieur ; par conséquent, ces attributs sont moins intéressants. L’entropie pour un attribut particulier est comparée à l’entropie de tous les autres attributs, comme suit :
Interestingness(Attribute) = - (m - Entropy(Attribute)) * (m - Entropy(Attribute))
L’entropie centrale, ou m, signifie l’entropie de l’ensemble des caractéristiques. En soustrayant l’entropie de l’attribut cible de l’entropie centrale, vous pouvez évaluer la quantité d’informations fournies par l’attribut.
Ce score est utilisé par défaut chaque fois que la colonne contient des données numériques continues non liées.
Entropie de Shannon
L’entropie de Shannon mesure l’incertitude d’une variable aléatoire pour un résultat particulier. Par exemple, l’entropie d’une pièce de monnaie peut être représentée comme fonction de la probabilité qu’elle tombe sur face.
Analysis Services utilise la formule suivante pour calculer l’entropie de Shannon :
H(X) = -∑ P(xi) log(P(xi))
Cette méthode de scoring est disponible pour les attributs discrets et discrétisés.
Bayésien avec K2 Prior
Analysis Services fournit deux scores de sélection de fonctionnalités basés sur des réseaux bayésiens. Un réseau bayésien est un graphique dirigé ou acyclique d’états et de transitions entre les états, ce qui signifie que certains états sont toujours antérieurs à l’état actuel, que certains états sont postérieures et que le graphique ne se répète pas ou ne boucle pas. Par définition, les réseaux bayésiens permettent l’utilisation de connaissances antérieures. Toutefois, la question des états précédents à utiliser pour calculer les probabilités des états ultérieurs est importante pour la conception, les performances et la précision des algorithmes.
L’algorithme K2 pour apprendre à partir d’un réseau bayésien a été développé par Cooper et Herskovits et est souvent utilisé dans l’exploration de données. Il est évolutif et peut analyser plusieurs variables, mais nécessite l’ordre sur les variables utilisées comme entrée. Pour plus d’informations, consultez Learning Bayesian Networks by Chickering, Geiger et Heckerman.
Cette méthode de scoring est disponible pour les attributs discrets et discrétisés.
Bayésian Dirichlet équivalent avec Uniform Prior
Le score BDE (Bayesian Dirichlet Equivalent) utilise également l’analyse bayésienne pour évaluer un réseau donné à un jeu de données. La méthode de scoring BDE a été développée par Heckerman et est basée sur la métrique BD développée par Cooper et Herskovits. La distribution Dirichlet est une distribution multinomiale qui décrit la probabilité conditionnelle de chaque variable dans le réseau et possède de nombreuses propriétés utiles pour l’apprentissage.
La méthode BDEU de Dirichlet Bayésienne Équivalente avec prior uniforme suppose un cas spécial de la distribution Dirichlet, dans lequel une constante mathématique est utilisée pour créer une distribution fixe ou uniforme d’états préalables. Le score BDE suppose également l’équivalence des probabilités, ce qui signifie que les données ne peuvent pas être censées discriminer les structures équivalentes. En d’autres termes, si le score pour If A Then B est identique au score de If B Then A, les structures ne peuvent pas être distinguées en fonction des données, et la cause ne peut pas être déduite.
Pour plus d’informations sur les réseaux bayésiens et l’implémentation de ces méthodes de scoring, consultez Learning Bayesian Networks.
Méthodes de sélection des fonctionnalités utilisées par les algorithmes Analysis Services
Le tableau suivant répertorie les algorithmes qui prennent en charge la sélection des fonctionnalités, les méthodes de sélection de fonctionnalités utilisées par l’algorithme et les paramètres que vous définissez pour contrôler le comportement de sélection des fonctionnalités :
| Algorithme | Méthode d’analyse | Commentaires |
|---|---|---|
| Naïve Bayes | Entropie de Shannon Bayésien avec K2 Prior Bayesien-Dirichlet avec un a priori uniforme (valeur par défaut) |
L’algorithme Microsoft Naïve Bayes accepte uniquement les attributs discrets ou discrétisés ; par conséquent, il ne peut pas utiliser le score d’intérêt. Pour plus d’informations sur cet algorithme, consultez Microsoft Naive Bayes Algorithm Technical Reference. |
| Arbres de décision | Score d’intérêt Entropie de Shannon Bayésien avec K2 Prior Bayesien-Dirichlet avec un a priori uniforme (valeur par défaut) |
Si des colonnes contiennent des valeurs continues non binaires, le score d’intérêt est utilisé pour toutes les colonnes pour garantir la cohérence. Sinon, la méthode de sélection de fonctionnalité par défaut est utilisée ou la méthode que vous avez spécifiée lors de la création du modèle. Pour plus d’informations sur cet algorithme, consultez Microsoft Decision Trees Algorithm Technical Reference. |
| Réseau neuronal | Score d’intérêt Entropie de Shannon Bayésien avec K2 Prior Bayesien-Dirichlet avec un a priori uniforme (valeur par défaut) |
L’algorithme Réseaux neuronaux Microsoft peut utiliser à la fois des méthodes bayésiennes et basées sur l’entropie, tant que les données contiennent des colonnes continues. Pour plus d’informations sur cet algorithme, consultez Microsoft Neural Network Algorithm Technical Reference. |
| Régression logistique | Score d’intérêt Entropie de Shannon Bayésien avec K2 Prior Bayesien-Dirichlet avec un a priori uniforme (valeur par défaut) |
Bien que l’algorithme Microsoft Logistic Regression soit basé sur l’algorithme Microsoft Neural Network, vous ne pouvez pas personnaliser les modèles de régression logistique pour contrôler le comportement de sélection des fonctionnalités ; par conséquent, la sélection de caractéristiques est toujours par défaut la méthode la plus appropriée pour l’attribut. Si tous les attributs sont discrets ou discrétisés, la valeur par défaut est BDEU. Pour plus d’informations sur cet algorithme, consultez Microsoft Logistic Regression Algorithm Technical Reference. |
| Regroupement | Score d’intérêt | L’algorithme De clustering Microsoft peut utiliser des données discrètes ou discrétisées. Toutefois, étant donné que le score de chaque attribut est calculé comme une distance et est représenté comme un nombre continu, le score d’intérêt doit être utilisé. Pour plus d’informations sur cet algorithme, consultez Microsoft Clustering Algorithm Technical Reference. |
| Régression linéaire | Score d’intérêt | L’algorithme De régression linéaire Microsoft ne peut utiliser que le score d’intérêt, car il prend uniquement en charge les colonnes continues. Pour plus d’informations sur cet algorithme, consultez Microsoft Linear Regression Algorithm Technical Reference. |
| Règles d’association Regroupement de séquences |
Non utilisé | La sélection des fonctionnalités n’est pas effectuée avec ces algorithmes. Toutefois, vous pouvez contrôler le comportement de l’algorithme et réduire la taille des données d’entrée si nécessaire en définissant la valeur des paramètres MINIMUM_SUPPORT et MINIMUM_PROBABILIITY. Pour plus d’informations, consultez Microsoft Association Algorithm Technical Reference et Microsoft Sequence Clustering Algorithm Technical Reference. |
| série chronologique | Non utilisé | La sélection des fonctionnalités ne s’applique pas aux modèles de série chronologique. Pour plus d’informations sur cet algorithme, consultez Microsoft Time Series Algorithm Technical Reference. |
Paramètres de sélection des fonctionnalités
Dans les algorithmes qui prennent en charge la sélection de fonctionnalités, vous pouvez contrôler quand la sélection de fonctionnalités est activée à l’aide des paramètres suivants. Chaque algorithme a une valeur par défaut pour le nombre d’entrées autorisées, mais vous pouvez remplacer cette valeur par défaut et spécifier le nombre d’attributs. Cette section répertorie les paramètres fournis pour la gestion de la sélection des fonctionnalités.
ATTRIBUTS_MAXIMUM_ENTRÉE
Si un modèle contient plus de colonnes que le nombre spécifié dans le paramètre MAXIMUM_INPUT_ATTRIBUTES , l’algorithme ignore toutes les colonnes qu’il calcule pour être inintéressantes.
ATTRIBUTS_DE_SORTIE_MAXIMUM
De même, si un modèle contient des colonnes plus prévisibles que le nombre spécifié dans le paramètre MAXIMUM_OUTPUT_ATTRIBUTES , l’algorithme ignore toutes les colonnes calculées pour être inintéressantes.
MAXIMUM_STATES
Si un modèle contient plus de cas que spécifiés dans le paramètre MAXIMUM_STATES , les états les moins populaires sont regroupés et traités comme manquants. Si l’un de ces paramètres est défini sur 0, la sélection de fonctionnalités est désactivée, ce qui affecte le temps de traitement et les performances.
En plus de ces méthodes de sélection de fonctionnalités, vous pouvez améliorer la capacité de l’algorithme à identifier ou promouvoir des attributs significatifs en définissant des indicateurs de modélisation sur le modèle ou en définissant des indicateurs de distribution sur la structure. Pour plus d’informations sur ces concepts, consultez Indicateurs de modélisation (exploration de données) et distributions de colonnes (exploration de données) .
Voir aussi
Personnaliser les modèles et la structure d’exploration de données