Préparer les données pour la prévision (Statistiques spatiales)

Synthèse

Améliore les données des processus prédictifs dans les outils tels que Classification et régression basées sur une forêt et à boosting de gradient, Régression linéaire généralisée et Prévision de présence seule, ainsi que dans d’autres modèles. Cela implique le fractionnement des entités en jeux d’entraînement et de test, l’extraction des variables à partir de rasters et d’entités de distance, l’équilibrage des données pour une meilleure précision de la classification et l’affinage spatial sur les données spatiales biaisées.

En savoir plus sur le fonctionnement de l’outil Préparer les données pour la prévision

Illustration

Illustration de l’outil Préparer les données pour la prévision

Utilisation

  • Les données d’entraînement ayant fait l’objet d’un équilibrage doivent uniquement être utilisées pour entraîner des modèles prédictifs. Les modèles ne doivent pas être validés sur des données ayant été équilibrées afin d’éviter les biais de précision et la fuite de données.

  • L’extension Extension ArcGIS Spatial Analyst est requise pour utiliser des rasters en tant que variables explicatives.

  • Si vous utilisez la classification pour prédvoir des événements rares ou des catégories non équilibrées, utilisez le paramètre Type d’équilibrage pour équilibrer le nombre d’échantillons dans chaque niveau catégoriel. Les méthodes de sur-échantillonnage augmentent le nombre d’entités globales et les méthodes de sous-échantillonnage entraînent la diminution du nombre d’entités globales.

  • Lorsque le paramètre Type de fractionnement est défini sur Fractionnement aléatoire ou sur Fractionnement spatial, les entités de test en sortie peuvent être utilisées pour évaluer la précision du modèle à l’aide de l’outil Prévoir à l’aide d’un fichier de modèle de statistiques spatiales. Vérifiez que la sortie est un fichier de modèle de statistiques spatiales lorsque vous exécutez l’outil d’analyse choisi.

  • Lorsque le paramètre Type de fractionnement est défini sur Fractionnement aléatoire ou sur Fractionnement spatial, l’outil s’assure que tous les niveaux catégoriels de la variable à prévoir et de toutes les variables explicatives sont présents dans les entités d’entraînement en sortie. Il n’est pas nécessaire que tous les niveaux catégoriels soient présents dans le jeu de données de test.

Paramètres

ÉtiquetteExplicationType de données
Entités en entrée

Entités sur lesquelles le fractionnement, l’extraction et l’équilibrage doivent être effectués.

Feature Class
Entités en sortie

Entités en sortie utilisées comme entités d’entraînement dans un outil de modèle.

Feature Class
Type de fractionnement
(Facultatif)

Indique la méthode utilisée pour fractionner les entités en entrée en sous-ensembles d’entraînement et de test.

  • Fractionnement aléatoireLes entités en entrée sont fractionnées de manière aléatoire en sous-ensembles d’entraînement et de test. Il s’agit de l’option par défaut.
  • Fractionnement spatialLes entités en entrée sont fractionnées spatialement en sous-ensembles d’entraînement et de test.
  • AucunLes entités en entrée ne sont pas fractionnées.
String
Sous-ensemble d’entités de test en sortie
(Facultatif)

Sous-ensemble de la valeur du paramètre Entités en entrée qui peut être utilisé comme entités de test. Ce paramètre est disponible lorsque le paramètre Type de fractionnement est défini sur Fractionnement aléatoire ou sur Fractionnement spatial.

Feature Class
Variable à prévoir
(Facultatif)

Variable de la valeur du paramètre Entités en entrée contenant les valeurs à utiliser pour entraîner un 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 localisations inconnues.

Field
Traiter les variables comme catégorielles
(Facultatif)

Indique si la valeur de paramètre Variable à prévoir est traitée comme une variable catégorielle.

  • Activé : la valeur du paramètre Variable à prévoir est traitée comme une variable catégorielle.
  • Désactivé : la valeur du paramètre Variable à prévoir n’est pas traitée comme une variable catégorielle, mais comme une variable continue. Il s’agit de l’option par défaut.

Boolean
Variables explicatives
(Facultatif)

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

Value Table
Entités de distance explicatives
(Facultatif)

Les entités de distance d’entraînement explicatives. Les variables explicatives sont automatiquement créées en calculant la distance entre les entités fournies et les valeurs du paramètre Entités en entrée. Les distances sont calculées entre chacune des entités indiquées dans la valeur du paramètre Entités en entrée et l’entité la plus proche dans ce paramètre. Si la valeur de ce paramètre indique des polygones ou des lignes, les attributs de distance sont calculés comme la distance entre les segments les plus proches de la paire d’entités.

Feature Layer
Rasters explicatifs
(Facultatif)

Les variables d’entraînement explicatives extraites de rasters. Les variables d’entraînement explicatives sont automatiquement créées en extrayant des valeurs de cellule raster. Pour chacune des entités indiquées par la valeur du paramètre Entités en entrée, la valeur de la cellule raster est extraite à la localisation exacte. Pour les rasters continus, la valeur de raster est extraite par la méthode de rééchantillonnage bilinéaire de raster. Pour les rasters catégoriels, la valeur de raster est extraite par la méthode d’affectation du voisin le plus proche. Cochez la case Categorical (Catégoriel) des rasters qui représentent des classes ou des catégories (comme l’occupation du sol, la présence ou l’absence).

Value Table
Convertir les polygones en résolution raster pour l'entraînement
(Facultatif)

Détermine le mode de traitement des polygones si les valeurs du paramètre Entités en entrée sont des polygones avec une valeur catégorielle pour le paramètre Variable à prévoir et que seules des valeurs du paramètre Rasters explicatifs ont été fournies.

  • Activé : les polygones sont divisés en la totalité des cellules raster dont les centroïdes se trouvent dans les polygones. Les valeurs de raster à chaque centroïde sont extraites et utilisées pour entraîner le modèle. Le modèle n’est plus entraîné sur les polygones, mais sur les valeurs de raster extraites pour chaque centroïde de cellule. Il s’agit de l’option par défaut.
  • Désactivé : chaque polygone se voit attribuer la valeur moyenne des rasters continus sous-jacents et la valeur majoritaire pour les rasters catégoriels sous-jacents.

Boolean
Pourcentage de données comme sous-ensemble de test
(Facultatif)

Pourcentage des entités en entrée qui est réservé en tant que jeu de données de test ou de validation. La valeur par défaut est 10.

Double
Type d’équilibrage
(Facultatif)

Spécifie la méthode utilisée pour équilibrer la valeur du paramètre non équilibré Variable à prévoir ou le biais spatial des entités en entrée. La méthode d’équilibrage est appliquée uniquement à la valeur du paramètre Entités en sortie.

  • AucunLes entités en entrée ne sont pas équilibrées. Il s’agit de l’option par défaut.
  • Affinage spatialLe biais spatial est réduit en supprimant des entités et en s’assurant que la distance entre chaque ensemble de points restants est supérieure ou égale à la valeur du paramètre Distance minimale par rapport au plus proche voisin. Si la valeur du paramètre Variable à prévoir est catégorielle, l’affinage spatial est appliqué à chaque classe individuelle. Dans le cas contraire, l’affinage spatial est appliqué à toutes les entités indiquées par la valeur du paramètre Entités en sortie.
  • Sous-échantillonnage aléatoireLes entités aléatoires sont supprimées de chaque classe non minoritaire jusqu’à ce que le nombre d’entités corresponde au nombre d’entités dans la classe minoritaire.
  • Sous-échantillonnage TomekLes entités de chaque classe non minoritaire qui sont proches des entités de la classe minoritaire sont supprimées. Cette méthode améliore la limite entre les classes ; toutefois, chaque classe peut comporter un nombre différent d’entités.
  • Sous-échantillonnage des K-médoïdesLes entités de la classe non minoritaire qui ne sont pas représentatives de la classe sont supprimées jusqu’à ce que le nombre d’entités corresponde au nombre d’entités dans la classe minoritaire.
  • Sur-échantillonnage aléatoireLes entités de la classe minoritaire sont dupliquées de manière aléatoire jusqu’à ce que le nombre d’entités corresponde au nombre d’entités de la classe majoritaire.
  • SMOTE (Sur-échantillonnage)Des entités synthétiques sont générées pour la classe minoritaire en interpolant entre les entités existantes jusqu’à ce que le nombre d’entités corresponde au nombre d’entités de la classe majoritaire.
String
Distance minimale par rapport au plus proche voisin
(Facultatif)

Distance minimale entre deux points quelconques ou entre deux points de la même catégorie de la valeur du paramètre Variable à prévoir lorsque l’affinage spatial est appliqué.

Linear Unit
Nombre d’itération pour l’affinage
(Facultatif)

Nombre d’itérations utilisées pour trouver la solution d’affinage spatial optimale, tout en conservant autant de points d’entités que possible et en veillant à ce qu’il n’y ait pas deux entités à une distance inférieure à la valeur spécifiée pour le paramètre Distance minimale par rapport au plus proche voisin. Le nombre minimal d’itérations est 1 et le nombre maximal est 50. La valeur par défaut est 10.

Long
Encoder les variables explicatives catégorielles
(Facultatif)

Indique si les variables explicatives catégorielles doivent être encodées.

  • Activé : les variables explicatives catégorielles sont encodées. Chaque valeur catégorielle est convertie en nouveau champ et la valeur 0 ou 1 lui est attribuée. La valeur 1 représente la présence de cette valeur catégorielle, et la valeur 0 représente son absence.
  • Désactivé : les variables explicatives catégorielles ne sont pas encodées. Il s’agit de l’option par défaut.

Boolean
Ajouter tous les champs des entités en entrée
(Facultatif)

Indique si tous les champs sont copiés depuis les entités en entrée vers les entités en sortie.

  • Désactivé : seuls les champs en entrée sont copiés dans les entités en sortie.
  • Activé : tous les champs des entités en entrée sont copiés dans les entités en sortie. Il s’agit de l’option par défaut.

Boolean

arcpy.stats.PrepareData(in_features, out_features, {splitting_type}, {out_test_features}, {variable_predict}, {treat_variable_as_categorical}, {explanatory_variables}, {distance_features}, {explanatory_rasters}, {use_raster_values}, {percent}, {balancing_type}, {thinning_distance_band}, {number_of_iterations}, {encode_variables}, {append_all_fields})
NomExplicationType de données
in_features

Entités sur lesquelles le fractionnement, l’extraction et l’équilibrage doivent être effectués.

Feature Class
out_features

Entités en sortie utilisées comme entités d’entraînement dans un outil de modèle.

Feature Class
splitting_type
(Facultatif)

Indique la méthode utilisée pour fractionner les entités en entrée en sous-ensembles d’entraînement et de test.

  • RANDOM_SPLITLes entités en entrée sont fractionnées de manière aléatoire en sous-ensembles d’entraînement et de test. Il s’agit de l’option par défaut.
  • SPATIAL_SPLITLes entités en entrée sont fractionnées spatialement en sous-ensembles d’entraînement et de test.
  • NONELes entités en entrée ne sont pas fractionnées.
String
out_test_features
(Facultatif)

Sous-ensemble de la valeur du paramètre in_features qui peut être utilisé comme entités de test. Ce paramètre est activé lorsque le paramètre splitting_type est défini sur RANDOM_SPLIT ou sur SPATIAL_SPLIT.

Feature Class
variable_predict
(Facultatif)

Variable de la valeur du paramètre in_features contenant les valeurs à utiliser pour entraîner un 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 localisations inconnues.

Field
treat_variable_as_categorical
(Facultatif)

Indique si la valeur du paramètre variable_predict est traitée comme une variable catégorielle.

  • CATEGORICALLa valeur du paramètre variable_predict est traitée comme une variable catégorielle.
  • NUMERICLa valeur du paramètre variable_predict n’est pas traitée comme une variable catégorielle, mais comme une variable continue. Il s’agit de l’option par défaut.
Boolean
explanatory_variables
[explanatory_variables,...]
(Facultatif)

Liste des champs qui représentent les variables explicatives utilisées pour prévoir la valeur ou la catégorie de la valeur de variable_predict. Utilisez une valeur CATEGORICAL pour une variable qui représente des classes ou des catégories (par exemple, l’occupation du sol, la présence ou l’absence).

Value Table
distance_features
[distance_features,...]
(Facultatif)

Les entités de distance d’entraînement explicatives. Les variables explicatives sont automatiquement créées en calculant la distance entre les entités fournies et les valeurs du paramètre in_features. Les distances sont calculées entre chacune des entités indiquées dans la valeur du paramètre in_features et l’entité la plus proche dans ce paramètre. Si la valeur de ce paramètre indique des polygones ou des lignes, les attributs de distance sont calculés comme la distance entre les segments les plus proches de la paire d’entités.

Feature Layer
explanatory_rasters
[explanatory_rasters,...]
(Facultatif)

Les variables d’entraînement explicatives extraites de rasters. Les variables d’entraînement explicatives sont automatiquement créées en extrayant des valeurs de cellule raster. Pour chacune des entités indiquées par la valeur du paramètre in_features, la valeur de la cellule raster est extraite à la localisation exacte. Pour les rasters continus, la valeur de raster est extraite par la méthode de rééchantillonnage bilinéaire de raster. Pour les rasters catégoriels, la valeur de raster est extraite par la méthode d’affectation du voisin le plus proche. Utilisez une valeur CATEGORICAL pour tous les rasters qui représentent des classes ou des catégories (comme l’occupation du sol, la présence ou l’absence).

Value Table
use_raster_values
(Facultatif)

Détermine le mode de traitement des polygones si les valeurs du paramètre in_features sont des polygones avec une valeur catégorielle pour le paramètre variable_predict et que seules des valeurs du paramètre explanatory_rasters ont été fournies.

  • SAMPLE_POLYGONLes polygones sont divisés en la totalité des cellules raster dont les centroïdes se trouvent dans les polygones. Les valeurs de raster à chaque centroïde sont extraites et utilisées pour entraîner le modèle. Le modèle n’est plus entraîné sur les polygones, mais sur les valeurs de raster extraites pour chaque centroïde de cellule. Il s’agit de l’option par défaut.
  • NO_SAMPLE_POLYGONChaque polygone se voit attribuer la valeur moyenne des rasters continus sous-jacents et la valeur majoritaire pour les rasters catégoriels sous-jacents.
Boolean
percent
(Facultatif)

Pourcentage des entités en entrée qui est réservé en tant que jeu de données de test ou de validation. La valeur par défaut est 10.

Double
balancing_type
(Facultatif)

Spécifie la méthode utilisée pour équilibrer la valeur du paramètre non équilibré variable_predict ou le biais spatial des entités en entrée. La méthode d’équilibrage est appliquée uniquement à la valeur du paramètre out_features.

  • NONELes entités en entrée ne sont pas équilibrées. Il s’agit de l’option par défaut.
  • SPATIAL_THINNINGLe biais spatial est réduit en supprimant des entités et en s’assurant que la distance entre chaque ensemble de points restants est supérieure ou égale à la valeur du paramètre thinning_distance_band. Si la valeur du paramètre variable_predict est catégorielle, l’affinage spatial est appliqué à chaque classe individuelle. Dans le cas contraire, l’affinage spatial est appliqué à toutes les entités indiquées par la valeur du paramètre out_features.
  • RANDOM_UNDERLes entités aléatoires sont supprimées de chaque classe non minoritaire jusqu’à ce que le nombre d’entités corresponde au nombre d’entités dans la classe minoritaire.
  • TOMEK_UNDERLes entités de chaque classe non minoritaire qui sont proches des entités de la classe minoritaire sont supprimées. Cette méthode améliore la limite entre les classes ; toutefois, chaque classe peut comporter un nombre différent d’entités.
  • KMED_UNDERLes entités de la classe non minoritaire qui ne sont pas représentatives de la classe sont supprimées jusqu’à ce que le nombre d’entités corresponde au nombre d’entités dans la classe minoritaire.
  • RANDOM_OVERLes entités de la classe minoritaire sont dupliquées de manière aléatoire jusqu’à ce que le nombre d’entités corresponde au nombre d’entités de la classe majoritaire.
  • SMOTE_OVERDes entités synthétiques sont générées pour la classe minoritaire en interpolant entre les entités existantes jusqu’à ce que le nombre d’entités corresponde au nombre d’entités de la classe majoritaire.
String
thinning_distance_band
(Facultatif)

Distance minimale entre deux points quelconques ou entre deux points de la même catégorie de la valeur du paramètre variable_predict lorsque l’affinage spatial est appliqué.

Linear Unit
number_of_iterations
(Facultatif)

Nombre d’itérations utilisées pour trouver la solution d’affinage spatial optimale, tout en conservant autant de points d’entités que possible et en veillant à ce qu’il n’y ait pas deux entités à une distance inférieure à la valeur spécifiée pour le paramètre thinning_distance_band. Le nombre minimal d’itérations est 1 et le nombre maximal est 50. La valeur par défaut est 10.

Long
encode_variables
(Facultatif)

Indique si les variables explicatives catégorielles doivent être encodées.

  • ENCODELes variables explicatives catégorielles sont encodées. Chaque valeur catégorielle est convertie en nouveau champ et la valeur 0 ou 1 lui est attribuée. La valeur 1 représente la présence de cette valeur catégorielle, et la valeur 0 représente son absence.
  • NO_ENCODELes variables explicatives catégorielles ne sont pas encodées. Il s’agit de l’option par défaut.
Boolean
append_all_fields
(Facultatif)

Indique si tous les champs sont copiés depuis les entités en entrée vers les entités en sortie.

  • NO_APPENDSeuls les champs en entrée est copié dans les entités en sortie.
  • APPENDTous les champs des entités en entrée sont copiés dans les entités en sortie. Il s’agit de l’option par défaut.
Boolean

Exemple de code

Exemple 1 d’utilisation de la fonction PrepareData (fenêtre Python)

Le script suivant de la fenêtre Python illustre l’utilisation de la fonction PrepareData.

# Prepare data for prediction.
import arcpy

arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.PrepareData(
    in_features = r"in_feature_class",
    out_features = r"out_feature_class",
    splitting_type="RANDOM_SPLIT",
    variable_predict=None,
    treat_variable_as_categorical="NUMERIC"   
)
Exemple 2 d’utilisation de la fonction PrepareData (script autonome)

Le script autonome ci-dessous illustre l’utilisation de la fonction PrepareData.

# Prepare data for prediction.
import arcpy

# Set the current workspace.
arcpy.env.workspace = r"c:\data\project_data.gdb"

# Run tool
arcpy.stats.PrepareData(
    in_features = r"in_feature_class",
    out_features = r"out_feature_class",
    splitting_type="RANDOM_SPLIT",
    variable_predict=None,
    treat_variable_as_categorical="NUMERIC"
)

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes