Classification et régression basées sur une forêt

Icône d’outil Disponible dans les analyses de Big Data.

L’outil Forest-based Classification and Regression tool (Classification et régression basées sur une forêt) Outil Classification et régression basées sur une forêt modélise et génère des prévisions à l’aide d’une adaptation de l’algorithme des forêts aléatoires introduit par Leo Breiman, qui est une méthode d’apprentissage automatique supervisé. Les prévisions peuvent être réalisées sur des variables catégorielles (classification) ou des variables continues (régression). Les variables explicatives sont des champs de la table attributaire des entités d’entraînement. Outre la validation des performances du modèle en fonction des données d’entraînement, vous pouvez aussi réaliser des prévisions sur des entités.

Diagramme de workflow

Diagramme de processus Cassification et régression basées sur une forêt

Exemples

Vous trouverez ci-dessous des exemples d’utilisation de l’outil Régression et classification basées sur une forêt :

  • À l’aide de données sur la présence de la posidonie, ainsi que d’un nombre de variables explicatives environnementales représentées, en plus des distances vers les usines en amont et les principaux ports, la présence de la posidonie peut être prévue en fonction de projections concernant ces mêmes variables explicatives environnementales.
  • Il est possible de prévoir la valeur des logements en fonction du prix des maisons vendues au cours de l’année précédente. Vous pouvez étudier le prix de vente des logements et des données telles que le nombre de chambres, la proximité des établissements scolaires et des principaux axes routiers, le revenu moyen et le nombre de délits pour prévoir les prix de vente de logements similaires.
  • Si vous combinez les informations dont vous disposez sur les niveaux de plomb relevés dans le sang des enfants, les identifiants de parcelle fiscale de leurs domiciles avec des attributs au niveau de la parcelle comme l’année de construction d’un logement, des données de recensement telles que les niveaux de revenu et d’éducation et les jeux de données nationaux reflétant les émissions toxiques de plomb et de composés de plomb, vous pouvez prévoir le risque d’exposition au plomb des parcelles pour lesquelles vous n’avez pas de données sur les niveaux de plomb dans le sang. Ces prévisions du risque peuvent aider à mettre en place des politiques et programmes d’éducation dans la région.

Remarques sur l’utilisation

Gardez les points suivants à l’esprit lorsque vous utilisez l’outil Régression et classification basées sur une forêt :

  • Cet outil peut être configuré pour s’exécuter à l’aide de l’une des deux méthodes opérationnelles suivantes :
    • Méthode 1 : si seules les données cibles (entraînement) sont fournies, l’outil entraîne un modèle pour en évaluer les performances. Cette option peut être utilisée pour évaluer les performances d’une configuration et examiner une diversité de variables explicatives et de paramètres de l’outil.
    • Méthode 2 : une fois que vous avez identifié un modèle approprié et des variables explicatives, configurez un modèle pour qu’il fournisse également des données de jointure (prévision). Si les données de jointure (prévision) sont configurées, l’outil prévoit les valeurs de la variable spécifiée pour les entités de vos données de jointure (prévision) en fonction des variables explicatives appairées.
  • Utilisez le paramètre Variable to predict (Variable à prévoir) pour sélectionner un champ du pipeline en entrée cible (données d’entraînement) qui représente le phénomène que vous modélisez. Utilisez le paramètre Explanatory variable(s) (Variables explicatives) pour sélectionner un ou plusieurs champs représentant les variables explicatives du pipeline en entrée cible (données d’entraînement). Ces champs doivent être numériques ou catégoriels et comporter une plage de valeurs. Les entités qui contiennent les valeurs manquantes dans la variable dépendante ou explicative seront exclues de l’analyse. Si vous modifiez les valeurs nulles, utilisez l’outil Calculate Field (Calculer un champ) avant de mettre à jour les valeurs.
  • Les variables explicatives peuvent provenir des champs et doivent contenir une variété de valeurs. Si la variable explicative est catégorielle, la case à cocher Categorical (Catégoriel) doit être sélectionnée. Les variables explicatives catégorielles sont limitées à 60 valeurs uniques, sachant que les performances du modèle sont améliorées si le nombre de catégories est restreint. Pour une taille de données indiquée, plus une variable contient de catégories, plus elle sera susceptible de monopoliser le modèle et d’entraîner des résultats prévisionnels moins efficaces.
  • Lors de l’appariement de variables explicatives, les champs cible (données d’entraînement) et de jointure (données de prévision) doivent comporter des champs du même type (par exemple, un champ double dans le champ d’entraînement doit être apparié à un champ double dans le champ de prévision).
  • Les modèles de forêt n’extrapolent pas. Ils peuvent seulement classer ou prédire en fonction d’une valeur sur laquelle le modèle a été entraîné. Entraînez le modèle avec des entités d’entraînement et des variables explicatives qui figurent dans la plage des entités et variables cibles. L'outil connaîtra un échec si les catégories existent dans des variables explicatives de prévision qui n’étaient pas présentes dans les entités d’entraînement.
  • La valeur par défaut du paramètre Number of Trees (Nombre d'arbres) est 100. L’augmentation du nombre d’arbres dans le modèle de forêt permet d’obtenir une prévision plus précise, mais son calcul est plus long.
  • L’outil Classification et régression basées sur une forêt produit également des entités en sortie et des diagnostics. Un schéma de rendu est automatiquement appliqué aux couches d’entités en sortie. Une explication complète de chaque sortie est disponible ci-dessous dans Couche en sortie.
  • Les entités qui comportent une ou plusieurs valeurs nulles ou encore des valeurs de chaîne vide dans les champs de prévision ou explicatifs seront exclues de la sortie. Si nécessaire, modifiez les valeurs à l'aide de l'outil Calculate Field (Calculer un champ).
  • Pour en savoir plus sur la manière dont cet outil fonctionne, et sur l’outil de géotraitement ArcGIS Pro sur lequel cette implémentation est basée, voir Fonctionnement de la classification et de la régression basées sur une forêt.

Paramètres

Les paramètres de l’outil Régression et classification basées sur une forêt sont les suivants :

ParamètreDescriptionType de données

Couche en entrée cible (données d'entraînement)

Entités d'entraînement utilisées pour générer un modèle. Pipeline contenant le paramètre Variable to predict (Variable à prévoir) et les champs de variables d’entraînement explicatives.

Entités

Couche en entrée de jointure (données de prévision)

(Facultatif)

Entités de prévision pour lesquelles la variable à prévoir est prédite en fonction des variables explicatives et des paramètres spécifiés.

Ce paramètre est facultatif. Si cette option n’est pas spécifiée, l’outil Classification et régression basées sur une forêt adapte un modèle pour en évaluer les performances en fonction des données d’entraînement.

Entités

Variable to predict (Variable à prévoir)

Variable du pipeline Target Input Layer (training data) (Couche en entrée cible (données d’entraînement)) contenant les valeurs à utiliser pour entraîner le modèle. Ce champ contient des valeurs (d'entraînement) connues de la variable qui sera utilisée pour réaliser des prévisions à des emplacements inconnus.

FieldName

Treat variable as categorical (Traiter la variable comme catégorielle)

Indique si la variable à prévoir est une variable catégorielle.

  • Checked (Activé) : la variable à prévoir est une variable catégorielle et l’outil exécute une classification.
  • Unchecked (Désactivé) : la variable à prévoir est continue et l’outil exécute une régression. Il s’agit de l’option par défaut.

Booléen

Variables explicatives

Liste des champs qui représentent les variables explicatives utilisées pour prévoir la valeur ou la catégorie de Variable to Predict (Variable à prévoir). Cochez la case Categorical (Catégoriel) des variables qui représentent des classes ou des catégories (comme l’occupation du sol, la présence ou l’absence).

ExplanatoryVariablesConfiguration

Appariement des variables explicatives (prévision uniquement)

Apparie les noms de champ de variable explicative sélectionnés dans la structure cible (entraînement) aux noms de champ correspondant dans la structure de jointure (prévision).

Ce paramètre est facultatif. Les appariements de variables explicatives ne doivent être spécifiés que si des données de jointure (prévision) sont spécifiées.

ExplanatoryVariableMappings

Nombre d’arbres

Nombre d'arbres à créer dans le modèle de forêt. Un grand nombre d’arbres produit habituellement des résultats plus précis, mais le calcul du modèle prend davantage de temps. Le nombre d’arbres par défaut est défini sur 100.

Entier

Taille de feuille minimale

Nombre minimal d’observations requises pour conserver une feuille (c’est-à-dire le nœud terminal d’un arbre sans fractionnements supplémentaires). La valeur minimale par défaut est de 5 pour la régression et de 1 pour la classification. Si les données sont très volumineuses, plus ces valeurs augmentent, plus le temps d’exécution de l’outil diminue.

Entier

Profondeur d'arbre maximum

Nombre maximum de fractionnements pouvant être effectués pour un arbre. Si la profondeur maximum est élevée, le nombre de fractionnements créés augmente, ce qui accroît les risques de sur-ajustement du modèle. La valeur par défaut est dynamique et dépend du nombre d’arbres créés et du nombre de variables incluse.

Entier

Taille de l’échantillon

Pourcentage de Target Input Layer (training data) (Couche en entrée cible (données d’entraînement)) utilisé pour chaque arbre décisionnel. La valeur par défaut est 100 pour cent des données. Les échantillons de chaque arbre sont sélectionnés de manière aléatoire dans les deux tiers des données spécifiées.

Chaque arbre décisionnel de la forêt est créé à partir d’un échantillon aléatoire ou d’un sous-ensemble (équivalant approximativement aux deux tiers) des données d’entraînement disponibles. Si un pourcentage plus faible de données est utilisé en entrée pour chaque arbre décisionnel, l’outil s’exécute plus rapidement sur les jeux de données très volumineux.

Entier

Variables aléatoires

Nombre de variables explicatives utilisées pour créer chaque arbre décisionnel.

Chaque arbre décisionnel de la forêt est créé à l'aide d’un sous-ensemble aléatoire des variables explicatives spécifiées. L’augmentation du nombre de variables utilisées dans chaque arbre décisionnel augmente la probabilité de sur-ajustement du modèle, en particulier si une ou plusieurs variables dominent. Si la variable à prévoir est numérique, il est courant d’utiliser la racine carrée du nombre total de variables explicatives ou, si la variable à prévoir est catégorielle, de diviser le nombre total de variables explicatives par 3.

Chaîne

Pourcentage de validation

Pourcentage (entre 10 pour cent et 50 pour cent) des entités d’entraînement en entrée cibles à réserver en guise de jeu de données de test pour la validation. Le modèle sera formé sans ce sous-ensemble aléatoire de données et les valeurs observées pour ces entités seront comparées aux valeurs prévues. La valeur par défaut est 10 pour cent.

Entier

Couche en sortie

L’outil Régression et classification basées sur une forêt produit divers résultats. Un résumé du modèle Régression et classification basées sur une forêt et des résumés statistiques sont disponibles dans la page des détails des éléments de la couche d’entités en sortie ou dans les journaux d’analyse.

Si vous implémentez la méthode 1 ci-dessus pour entraîner un modèle afin d’évaluer ses performances (uniquement les données d’entraînement fournies à l’outil), l’outil génère les deux sorties suivantes :

  • Output trained features (Entités formées en sortie) : contient toutes les entités d’entraînement (structure cible) utilisées dans le modèle créé, ainsi que toutes les variables explicatives utilisées dans le modèle. Elle contient également les prévisions pour toutes les entités utilisées pour entraîner le modèle, ce qui peut être utile lors de l’évaluation des performances du modèle créé.
  • Outil Messages de synthèse : messages pour aider à comprendre les performances du modèle créé. Les messages incluent des informations sur les caractéristiques de votre modèle, les erreurs OOB, l’importance des variables et les diagnostics de validation. Pour accéder au résumé des résultats, consultez les journaux d’analyse ou la page des détails des éléments de la couche d’entités en sortie, qui contient également les informations récapitulatives.

Si vous implémentez la méthode 2 ci-dessus pour ajuster un modèle et prévoir des valeurs (données d’entraînement et de prévision fournies à l’outil), l’outil génère les deux sorties suivantes :

  • Entités prévues en sortie : une couche des résultats prévus. Les prévisions sont appliquées à la couche à prévoir (prévision de valeurs pour les données du schéma de jointure) à l’aide du modèle généré depuis la couche d’entraînement.
  • Outil Messages de synthèse : messages pour aider à comprendre les performances du modèle créé. Les messages incluent des informations sur les caractéristiques de votre modèle, les erreurs OOB, l’importance des variables et les diagnostics de validation. Pour accéder au résumé des résultats, consultez les journaux d’analyse ou la page des détails des éléments de la couche d’entités en sortie, qui contient également les informations récapitulatives.

Considérations et limitations

Un seul pipeline de données pour les données d’entraînement et un seul pipeline de données pour les données de prévision sont pris en charge.