Partager via


Algorithme d’arbres de décision Microsoft

S’applique à : SQL Server 2019 et versions antérieures d’Analysis Services Azure Analysis Services Fabric/Power BI Premium

Important

L’exploration de données a été déconseillée dans SQL Server 2017 Analysis Services et a maintenant été abandonnée dans SQL Server 2022 Analysis Services. La documentation n’est pas mise à jour pour les fonctionnalités déconseillées et abandonnées. Pour en savoir plus, consultez la compatibilité descendante des Analysis Services.

L’algorithme Microsoft Decision Trees est un algorithme de classification et de régression à utiliser pour la modélisation prédictive des attributs discrets et continus.

Pour les attributs discrets, l’algorithme effectue des prédictions en fonction des relations entre les colonnes d’entrée dans un jeu de données. Elle utilise les valeurs, appelées états, de ces colonnes pour prédire les états d’une colonne que vous désignez comme prévisible. Plus précisément, l’algorithme identifie les colonnes d’entrée corrélées à la colonne prévisible. Par exemple, dans un scénario pour prédire quels clients sont susceptibles d’acheter un vélo, si neuf sur dix jeunes clients achètent un vélo, mais seulement deux sur dix clients plus âgés le font, l’algorithme déduit que l’âge est un bon prédicteur de l’achat de vélos. L’arbre de décision fait des prédictions basées sur cette tendance à un résultat particulier.

Pour les attributs continus, l’algorithme utilise la régression linéaire pour déterminer où un arbre de décision fractionne.

Si plusieurs colonnes sont définies sur prédictibles ou si les données d’entrée contiennent une table imbriquée définie sur prévisible, l’algorithme génère un arbre de décision distinct pour chaque colonne prédictible

Example

Le service marketing de la société Adventure Works Cycles souhaite identifier les caractéristiques des clients précédents qui peuvent indiquer si ces clients sont susceptibles d’acheter un produit à l’avenir. La base de données AdventureWorks2012 stocke les informations démographiques qui décrivent les clients précédents. En utilisant l’algorithme Microsoft Decision Trees pour analyser ces informations, le service marketing peut créer un modèle qui prédit si un client particulier achète des produits, en fonction des états des colonnes connues sur ce client, telles que les données démographiques ou les modèles d’achat passés.

Fonctionnement de l’algorithme

L’algorithme Microsoft Decision Trees génère un modèle d’exploration de données en créant une série de fractionnements dans l’arborescence. Ces fractionnements sont représentés en tant que nœuds. L’algorithme ajoute un nœud au modèle chaque fois qu’une colonne d’entrée est trouvée comme étant considérablement corrélée à la colonne prévisible. La façon dont l’algorithme détermine un fractionnement est différent selon qu’il prédit une colonne continue ou une colonne discrète.

L’algorithme Microsoft Decision Trees utilise la sélection de fonctionnalités pour guider la sélection des attributs les plus utiles. La sélection des fonctionnalités est utilisée par tous les algorithmes d’exploration de données SQL Server pour améliorer les performances et la qualité de l’analyse. La sélection des fonctionnalités est importante pour empêcher les attributs non importants d’utiliser le temps processeur. Si vous utilisez trop d’attributs d’entrée ou prédictibles lorsque vous concevez un modèle d’exploration de données, le modèle peut prendre beaucoup de temps pour traiter, voire manquer de mémoire. Les méthodes utilisées pour déterminer s’il faut fractionner l’arborescence incluent des métriques standard pour les réseaux entropie et Bayésien*.* Pour plus d’informations sur les méthodes utilisées pour sélectionner des attributs significatifs, puis noter et classer les attributs, consultez Sélection des fonctionnalités (exploration de données).

Un problème courant dans les modèles d’exploration de données est que le modèle devient trop sensible aux petites différences dans les données d’entraînement, auquel cas on dit qu’il est surajusté ou surentraîné. Un modèle surajusté ne peut pas être généralisé à d’autres jeux de données. Pour éviter toute surajustement sur un ensemble particulier de données, l’algorithme Microsoft Decision Trees utilise des techniques pour contrôler la croissance de l’arbre. Pour obtenir une explication plus approfondie du fonctionnement de l’algorithme Microsoft Decision Trees, consultez la référence technique de l’algorithme d’arbres de décision Microsoft.

Prédiction de colonnes discrètes

La façon dont l’algorithme Microsoft Decision Trees crée une arborescence pour une colonne prédictible discrète peut être illustrée à l’aide d’un histogramme. Le diagramme suivant montre un histogramme qui représente une colonne prévisible, 'Acheteurs de vélos', en fonction d'une colonne d'entrée, 'Age'. L’histogramme montre que l’âge d’une personne permet de distinguer si cette personne achètera un vélo.

Histogramme des arbres de décision Microsoft

La corrélation affichée dans le diagramme entraîne la création d’un nœud dans le modèle par l’algorithme Microsoft Decision Trees.

Nœud de l'arbre de décision

À mesure que l’algorithme ajoute de nouveaux nœuds à un modèle, une structure d’arborescence est formée. Le nœud supérieur de l’arborescence décrit la répartition de la colonne prédictive pour l'ensemble de la clientèle. À mesure que le modèle continue de croître, l’algorithme considère toutes les colonnes.

Prédiction de colonnes continues

Lorsque l’algorithme Microsoft Decision Trees génère une arborescence basée sur une colonne prévisible continue, chaque nœud contient une formule de régression. Un fractionnement se produit à un point de non-linéarité dans la formule de régression. Par exemple, considérez le diagramme suivant.

Lignes de régression multiples montrant la non-linéarité

Dans un modèle de régression standard, vous tentez de dériver une formule unique qui représente la tendance et les relations pour les données dans son ensemble. Toutefois, une seule formule peut faire un mauvais travail de capture de la discontinuité dans les données complexes. Au lieu de cela, l’algorithme Microsoft Decision Trees recherche des segments de l’arborescence qui sont largement linéaires et crée des formules distinctes pour ces segments. En décomposant les données en différents segments, le modèle peut faire un travail beaucoup plus efficace pour rapprocher les données.

Le diagramme suivant représente l'arbre du modèle dans le nuage de points ci-dessus. Pour prédire le résultat, le modèle fournit deux formules différentes : une pour la branche gauche, avec la formule y = .5x x 5, et une pour la branche droite, avec la formule y = .25x + 8,75. Le point où les deux lignes se rassemblent dans le nuage de points est le point de non-linéarité, à partir duquel un nœud dans un modèle d'arbre de décision se diviserait.

Équation représentant un point de non-linéarité

Il s’agit d’un modèle simple avec seulement deux équations linéaires ; par conséquent, le fractionnement dans l’arborescence est immédiatement après le nœud All . Toutefois, un fractionnement peut se produire à n’importe quel niveau de l’arborescence. Cela signifie que dans une arborescence contenant plusieurs niveaux et nœuds, où chaque nœud est caractérisé par une collection différente d’attributs, une formule peut être partagée entre plusieurs nœuds ou s’appliquer uniquement à un seul nœud. Par exemple, vous pouvez obtenir une formule pour un nœud défini par « clients ayant un certain âge et revenu », et une autre dans un nœud qui représente « les clients qui effectuent des déplacements de longues distances ». Pour afficher la formule d’un nœud ou d’un segment individuel, cliquez simplement sur le nœud.

Données requises pour les modèles d’arbre de décision

Lorsque vous préparez des données à utiliser dans un modèle d’arbre de décision, vous devez comprendre les exigences de l’algorithme particulier, y compris la quantité de données nécessaires et la façon dont les données sont utilisées.

Les exigences d’un modèle d’arbre de décision sont les suivantes :

  • Une seule colonne clé Chaque modèle doit contenir une colonne numérique ou texte qui identifie de manière unique chaque enregistrement. Les clés composées ne sont pas autorisées.

  • Une colonne prédictible Nécessite au moins une colonne prévisible. Vous pouvez inclure plusieurs attributs prédictibles dans un modèle, et les attributs prédictibles peuvent être de différents types, numériques ou discrets. Toutefois, l’augmentation du nombre d’attributs prévisibles peut augmenter le temps de traitement.

  • Colonnes d’entrée Nécessite des colonnes d’entrée, qui peuvent être discrètes ou continues. L’augmentation du nombre d’attributs d’entrée affecte le temps de traitement.

Pour plus d’informations sur les types de contenu et les types de données pris en charge pour les modèles d’arbre de décision, consultez la section Exigences de microsoft Decision Trees Algorithm Technical Reference.

Affichage d’un modèle d’arbre de décision

Pour explorer le modèle, vous pouvez utiliser microsoft Tree Viewer. Si votre modèle génère plusieurs arborescences, vous pouvez sélectionner une arborescence et la visionneuse vous montre comment les cas sont classés pour chaque attribut prédictible. Vous pouvez également afficher l’interaction des arborescences à l’aide de la visionneuse du réseau de dépendances. Pour plus d’informations, consultez Parcourir un modèle à l’aide du Microsoft Tree Viewer.

Si vous souhaitez en savoir plus sur n’importe quelle branche ou nœud de l’arborescence, vous pouvez également parcourir le modèle à l’aide de la visionneuse de l’arborescence de contenu générique Microsoft. Le contenu stocké pour le modèle inclut la distribution de toutes les valeurs de chaque nœud, les probabilités à chaque niveau de l’arborescence et les formules de régression pour les attributs continus. Pour plus d’informations, consultez Contenu du modèle d’exploration de données pour les modèles d’arbre de décision (Analysis Services - Exploration de données).

Création de prédictions

Une fois le modèle traité, les résultats sont stockés sous la forme d’un ensemble de modèles et de statistiques, que vous pouvez utiliser pour explorer les relations ou effectuer des prédictions.

Pour obtenir des exemples de requêtes à utiliser avec un modèle d’arbre de décision, consultez Exemples de requêtes de modèle d’arbre de décision.

Pour obtenir des informations générales sur la création de requêtes sur des modèles d’exploration de données, consultez Requêtes d’exploration de données.

Remarques

  • Prend en charge l’utilisation de PMML (Predictive Model Markup Language) pour créer des modèles d’exploration de données.

  • Prend en charge l’extraction.

  • Prend en charge l’utilisation de modèles d’exploration de données OLAP et la création de dimensions d’exploration de données.

Voir aussi

Algorithmes d’exploration de données (Analysis Services - Exploration de données)
Informations de référence techniques sur l’algorithme Arbres de décision Microsoft
Exemples de requêtes de modèle d’arbre de décision
Contenu du modèle d’exploration de données pour les modèles d’arbre de décision (Analysis Services - Exploration de données)