Régression pondérée géographiquement (GWR) (GeoAnalytics)

Synthèse

Calcule la régression pondérée géographiquement (Geographically Weighted Regression, GWR), qui est une forme locale de régression linéaire utilisée pour modéliser des relations variant spatialement.

Remarque :

Cet outil correspond à un sous-ensemble de fonctionnalités ajouté à l’outil Régression pondérée géographiquement intégré à ArcGIS Pro 2.3.

Pour mieux comprendre les algorithmes de l’outil, reportez-vous à la rubrique Fonctionnement de la régression pondérée géographiquement. Cette rubrique décrit l’outil Spatial Statistics toolbox (Boîte à outils Statistiques spatiales) ; à l’heure actuelle, les fonctionnalités ne sont pas toutes incluses dans l’outil GeoAnalytics Server Toolbox (Boîte d’outils GeoAnalytics Server).

Utilisation

  • Cet outil de géotraitement est disponible avec ArcGIS Enterprise 10.8.1 ou version ultérieure.

  • Cet outil calcule la régression pondérée géographiquement (GWR), une forme locale de régression utilisée pour modéliser des relations variant spatialement. Cet outil offre un modèle local de la variable ou du processus que vous tentez de comprendre ou de prévoir en ajustant une équation de régression à chaque entité du jeu de données. L’outil Régression pondérée géographiquement crée ces équations distinctes en insérant les variables dépendantes et explicatives des entités contenues dans le voisinage de chaque entité cible. La forme et l’étendue de chaque voisinage analysé repose sur l’entrée des paramètres Neighborhood Type (Type de voisinage) et Neighborhood Selection Method (Méthode de sélection de voisinage).

  • Pour obtenir des résultats optimaux, appliquez l’outil GWR aux jeux de données contenant plusieurs centaines d'entités. Cet outil ne convient pas aux petits jeux de données. L'outil ne fonctionne pas avec les données multi-points.

  • Cet outil ne prend pas en charge les entrées avec des champs de type date uniquement ou heure uniquement.

  • Utilisez le paramètre Input Features (Entités en entrée) avec un champ représentant les phénomènes que vous modélisez (Dependent Variable (Variable dépendante)) et un ou plusieurs champs représentant les valeurs de paramètre Explanatory Variable(s) (Variables explicatives). Ces champs doivent être numériques 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. Vous pouvez utiliser l’outil Calculer un champ pour modifier les valeurs. Si vos données peuvent être utilisées dans ArcGIS Pro, utilisez l’outil Remplir les valeurs manquantes pour ajouter des valeurs manquantes au jeu de données avant d’exécuter l’outil Régression pondérée géographiquement.

  • L’outil Régression pondérée géographiquement génère également des entités en sortie et ajoute des champs indiquant des valeurs de diagnostic locales. Les valeurs de paramètre Output Features (Entités en sortie) et les diagrammes associés sont automatiquement ajoutés à la table des matières et un schéma de rendu hot/cold (chaud/froid) est appliqué aux résiduels du modèle. Une explication complète de chaque sortie est fournie dans la rubrique Fonctionnement de l’outil Geographically Weighted Regression (Régression pondérée géographiquement) (GWR).

    Remarque :

    L’outil Régression pondérée géographiquement produit différentes sorties. Un résumé du modèle de régression pondérée géographiquement est disponible sous forme de message au bas de la fenêtre Geoprocessing (Géotraitement) au cours de l’exécution de l’outil. Vous pouvez accéder au message en passant le curseur de la souris sur la barre d’avancement, en cliquant sur le bouton de menu contextuel ou en développant la section de messages dans la fenêtre Geoprocessing (Géotraitement). Vous pouvez également accéder aux messages d’une précédente exécution de l’outil Régression pondérée géographiquement (GWR) via l’historique du géotraitement.

  • Vous devez utiliser des données projetées.

  • Il est courant d’explorer des données globalement à l’aide de l’outil Régression linéaire généralisée avant de les explorer localement avec l’outil Régression pondérée géographiquement.

  • Les paramètres Dependent Variable (Variable dépendante) et Explanatory Variable(s) (Variables explicatives) doivent être des champs numériques contenant différentes valeurs. Ces valeurs doivent présenter une variation, à la fois globalement et localement. C’est pour cela que vous ne devez pas utiliser de variables explicatives fictives pour représenter différents régimes spatiaux dans votre modèle de régression pondérée géographiquement (en affectant par exemple la valeur 1 aux secteurs de recensement situés à l’extérieur du noyau urbain, tandis que tous les autres ont la valeur 0). L’outil Geographically Weighted Regression (Régression pondérée géographiquement) permettant aux coefficients variables explicatifs de varier, ces variables explicatives de régime spatial sont inutiles, et si elles sont incluses, sont susceptibles de créer des problèmes de multicolinéarité locale.

  • Dans les modèles de régression globaux, tels que Generalized Linear Regression (Régression linéaire généralisée), les résultats sont peu fiables si plusieurs variables présentent une multicolinéarité (lorsque plusieurs variables sont redondantes ou racontent la même histoire). L’outil Geographically Weighted Regression (Régression pondérée géographiquement) génère une équation de régression locale pour chaque entité dans le jeu de données. Si les valeurs d’une variable explicative particulière s’agrègent spatialement, vous risquez de rencontrer des problèmes de multicolinéarité locale. Un champ de conditionnement ajusté (COND_ADJ) dans la classe d’entités en sortie indique quand les résultats sont instables en raison d’un problème de multicolinéarité locale. En règle générale, soyez critique à l’égard des résultats d’entités présentant un conditionnement ajusté supérieur à 30, nul ou, pour les shapefiles, égal à -1.7976931348623158e+308.

  • Soyez prudent lorsque vous incluez des données nominales ou catégorielles dans un modèle de régression pondérée géographiquement. Lorsque les catégories s’agrègent spatialement, vous risquez de rencontrer des problèmes de multicolinéarité locale. Le conditionnement ajusté compris dans la sortie GWR indique quand la colinéarité locale présente un problème (conditionnement ajusté inférieur à 0, supérieur à 30, ou défini sur Nul). En présence de multicolinéarité locale, les résultats sont instables.

  • Un modèle de régression est incorrectement spécifié s’il manque une variable explicative clé. Une autocorrélation spatiale statistiquement signifiante des résiduels de régression ou une variation spatiale inattendue parmi les coefficients d’une ou de plusieurs variables explicatives indique que votre modèle est incorrectement spécifié. Vous devez découvrir (via l’analyse des résiduels du modèle de régression linéaire généralisée et l’analyse de la variation des coefficients du modèle de régression pondérée géographiquement, par exemple) ces variables manquantes clés et les inclure dans le modèle.

  • Examinez toujours la pertinence de la nature non stationnaire d’une variable explicative. Par exemple, supposons que vous modélisiez la densité d’une espèce de plante particulière en tant que fonction de plusieurs variables, notamment ASPECT. Si le coefficient change pour la variable ASPECT dans la zone d’étude, c’est vraisemblablement qu’il manque une variable explicative clé (la prédominance de la végétation concurrente, par exemple). Assurez-vous d'inclure toutes les variables explicatives clés dans votre modèle de régression.

  • Lorsque le résultat d’un calcul est l’infini ou indéfini, le résultat pour les fichiers qui ne sont pas des shapefiles sera nul.

  • Les problèmes graves de conception de modèle ou les erreurs indiquant que les équations locales ne comprennent pas assez de voisins, signalent souvent un problème de multicolinéarité globale ou locale. Pour déterminer l’origine du problème, exécutez un modèle global à l’aide de l’outil Régression linéaire généralisée et examinez la valeur VIF de chaque variable explicative. Si certaines valeurs VIF sont élevées (supérieures à 7,5, par exemple), la multicolinéarité globale empêche la résolution de la régression pondérée géographiquement. Toutefois, la multicolinéarité locale est plus vraisemblablement à l'origine du problème. Essayez de créer une carte thématique pour chaque variable explicative. Si la carte révèle une agrégation spatiale de valeurs identiques, envisagez la suppression de ces variables du modèle ou la combinaison de ces variables avec d'autres variables explicatives afin d'augmenter la variation des valeurs. Par exemple, si vous modélisez des valeurs d’habitat et que vous disposez de variables pour les chambres et les salles de bains, vous pouvez les combiner pour augmenter la variation des valeurs ou les représenter en tant que superficie de salle de bain/chambre. Évitez d’utiliser des variables de régime spatiale fictives, des variables catégorielles/nominales spatialement agrégées ou des variables avec très peu de valeurs possibles, lorsque vous créez des modèles GWR.

  • Le modèle de régression pondérée géographiquement est un modèle linéaire soumis aux mêmes conditions requises que l’outil Régression linéaire généralisée. Examinez attentivement les diagnostics expliqués dans la rubrique Fonctionnement de l’outil Geographically Weighted Regression (Régression pondérée géographiquement) (GWR) pour vérifier que votre modèle GWR est correctement spécifié. Tous les diagnostics décrits ne sont pas disponibles dans la boîte d’outils GeoAnalytics Desktop. La section Corruption des modèles de régression de la rubrique Principes de base de l’analyse de régression explique également comment s’assurer de l’exactitude du modèle.

  • Vous pouvez améliorer les performances de l’outil Geographically Weighted Regression (Régression pondérée géographiquement) (GWR) en effectuant toutes les tâches suivantes ou certaines d’entre elles :

    • Définissez l’environnement de l’étendue de manière à analyser uniquement des données d’intérêt.
    • Diminuez le nombre de voisins dans votre calcul.
    • Utilisez l’option Nombre de voisins au lieu de l’option Distance band Canal de distance dans le paramètre Type de voisinage (neighborhood_type = "NUMBER OF NEIGHBORS" dans Python).
    • Si possible, utilisez moins de variables explicatives.
    • Utilisez les données locales de l’environnement de l’analyse.

  • Cet outil de géotraitement est mis en œuvre par ArcGIS GeoAnalytics Server. L’analyse est réalisée sur GeoAnalytics Server et les résultats sont stockés dans votre contenu dans ArcGIS Enterprise.

  • Lors de l’exécution des outils GeoAnalytics Server, l’analyse est réalisée sur GeoAnalytics Server. Pour des performances optimales, GeoAnalytics Server doit pouvoir accéder aux données via les couches d’entités hébergées sur votre portail ArcGIS Enterprise ou les partages de fichiers Big Data. Les données qui ne sont pas locales pour GeoAnalytics Server sont transférées sur GeoAnalytics Server avant le début de l’analyse. Autrement dit, l’exécution d’un outil prend plus de temps et, dans certains cas, le transfert des données depuis ArcGIS Pro vers GeoAnalytics Server peut échouer. Le seuil d’échec dépend aussi bien des débits du réseau que de la taille et de la complexité des données. Il est recommandé de toujours partager les données ou de créer un partage de fichiers Big Data.

    Pour en savoir plus sur le partage des données dans votre portail.

    En savoir pus sur la création d’un partage de fichiers Big Data via ArcGIS Server Manager

  • Une analyse semblable peut également être réalisée à l’aide de l’outil Régression pondérée géographiquement de la boîte d’outils Statistiques spatiales. Utilisez l’outil de la boîte d’outils Spatial Statistics (Statistiques spatiales) pour effectuer les processus suivants :

    • Utilisez des couches locales de votre machine ArcGIS Pro (par exemple, des classes d’entités dans une géodatabase fichier).
    • Effectuez une prévision sur une autre couche ou créez une couche de coefficient raster.
    • Modélisez une variable binaire (logistique) ou une variable de total (valeur Poisson).
    • Définissez la recherche dans le voisinage à l’aide de la recherche absolue ou d’intervalles manuels.

Paramètres

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

Classe d’entités ponctuelles qui contient les variables dépendantes et explicatives.

Feature Set
Variable dépendante

Champ numérique contenant les valeurs observées qui seront modélisées.

Field
Type de modèle

Précise le type de données à modéliser.

  • Continu (gaussien)La valeur Dependent Variable (Variable dépendante) est continue. Le modèle gaussien sera utilisé et l’outil effectue une régression des moindres carrés ordinaires.
String
Variables explicatives

Liste des champs qui représentent des variables explicatives indépendantes dans le modèle de régression.

Field
Entités en sortie

Nom du service d’entités en sortie.

String
Type de voisinage

Indique si le voisinage utilisé est construit en tant que distance fixe ou autorisé à varier dans l’étendue spatiale en fonction de la densité des entités.

  • Nombre de voisinsLa taille du voisinage est une fonction d’un nombre spécifié de voisins dans les calculs de chaque entité. Si les entités sont denses, l’étendue spatiale du voisinage est plus restreinte. Si les entités sont rares, l’étendue spatiale du voisinage est plus vaste.
  • Canal de distanceLa taille du voisinage est une distance fixe ou constante de chaque entité.
String
Méthode de sélection des voisins

Indique la manière dont la taille du voisinage est déterminée.

  • Défini par l’utilisateurLa taille du voisinage est déterminée par le paramètre Number of Neighbors (Nombre de voisins) ou Distance Band (Canal de distance).
String
Nombre de voisins
(Facultatif)

Le nombre le plus proche de voisins (1000 au maximum) à prendre en compte pour chaque entité. Ce nombre doit être un entier compris entre 2 et 1 000.

Long
Canal de distance
(Facultatif)

L’étendue spatiale du voisinage.

Linear Unit
Structure de pondération locale
(Facultatif)

Spécifie le type de noyau qui sera utilisé pour fournir la pondération spatiale dans le modèle. Le noyau indique comment les entités sont associées entre elles dans leur voisinage.

  • BicarréUne pondération de 0 est attribuée aux entités situées en dehors du voisinage spécifié. Il s’agit de l’option par défaut.
  • GaussienToutes les entités reçoivent des pondérations, mais ces dernières sont réduites exponentiellement à mesure qu’elles s’éloignent de l’entité cible.
String
Data store
(Facultatif)

Indique l’instance ArcGIS Data Store dans laquelle la sortie est enregistrée. La valeur par défaut est Stockage de Big Data spatio-temporelles. Tous les résultats stockés dans un répertoire de données Big Data spatio-temporelles seront stockés en WGS84. Les résultats stockés dans un répertoire de données relationnelles conservent leur système de coordonnées.

  • Stockage de Big Data spatio-temporellesLa sortie sera stockée dans un stockage de Big Data spatio-temporelles. Il s’agit de l’option par défaut.
  • Stockage des données relationnellesLa sortie sera stockée dans un data store relationnel.
String

Sortie obtenue

ÉtiquetteExplicationType de données
Sortie

Les entités en sortie.

Record Set

arcpy.geoanalytics.GWR(in_features, dependent_variable, model_type, explanatory_variables, output_features, neighborhood_type, neighborhood_selection_method, {number_of_neighbors}, {distance_band}, {local_weighting_scheme}, {data_store})
NomExplicationType de données
in_features

Classe d’entités ponctuelles qui contient les variables dépendantes et explicatives.

Feature Set
dependent_variable

Champ numérique contenant les valeurs observées qui seront modélisées.

Field
model_type

Précise le type de données à modéliser.

  • CONTINUOUSLa valeur dependent_variable est continue. Le modèle gaussien sera utilisé et l’outil effectuera une régression des moindres carrés ordinaires.
String
explanatory_variables
[explanatory_variables,...]

Liste des champs qui représentent des variables explicatives indépendantes dans le modèle de régression.

Field
output_features

Nom du service d’entités en sortie.

String
neighborhood_type

Indique si le voisinage utilisé est construit en tant que distance fixe ou autorisé à varier dans l’étendue spatiale en fonction de la densité des entités.

  • NUMBER_OF_NEIGHBORSLa taille du voisinage est une fonction d’un nombre spécifié de voisins dans les calculs de chaque entité. Si les entités sont denses, l’étendue spatiale du voisinage est plus restreinte. Si les entités sont rares, l’étendue spatiale du voisinage est plus vaste.
  • DISTANCE_BANDLa taille du voisinage est une distance fixe ou constante de chaque entité.
String
neighborhood_selection_method

Indique la manière dont la taille du voisinage est déterminée.

  • USER_DEFINEDLa taille du voisinage est déterminée par le paramètre number_of_neighbors ou distance_band.
String
number_of_neighbors
(Facultatif)

Le nombre le plus proche de voisins (1000 au maximum) à prendre en compte pour chaque entité. Ce nombre doit être un entier compris entre 2 et 1 000.

Long
distance_band
(Facultatif)

L’étendue spatiale du voisinage.

Linear Unit
local_weighting_scheme
(Facultatif)

Spécifie le type de noyau qui sera utilisé pour fournir la pondération spatiale dans le modèle. Le noyau indique comment les entités sont associées entre elles dans leur voisinage.

  • BISQUAREUne pondération de 0 est attribuée aux entités situées en dehors du voisinage spécifié. Il s’agit de l’option par défaut.
  • GAUSSIANToutes les entités reçoivent des pondérations, mais ces dernières sont réduites exponentiellement à mesure qu’elles s’éloignent de l’entité cible.
String
data_store
(Facultatif)

Indique l’instance ArcGIS Data Store dans laquelle la sortie est enregistrée. La valeur par défaut est SPATIOTEMPORAL_DATA_STORE. Tous les résultats stockés dans un répertoire de données Big Data spatio-temporelles seront stockés en WGS84. Les résultats stockés dans un répertoire de données relationnelles conservent leur système de coordonnées.

  • SPATIOTEMPORAL_DATA_STORELa sortie sera stockée dans un stockage de Big Data spatio-temporelles. Il s’agit de l’option par défaut.
  • RELATIONAL_DATA_STORELa sortie sera stockée dans un data store relationnel.
String

Sortie obtenue

NomExplicationType de données
output

Les entités en sortie.

Record Set

Exemple de code

Exemple d’utilisation de la fonction GeographicallyWeightedRegression (script autonome)

Le script ci-dessous pour la fenêtre Python illustre l’utilisation de la fonction GWR.

Dans ce script, vous créez un modèle permettant de déterminer les variables environnementales qui ont un impact sur la fréquence des incendies de forêt.


# Name: GWR.py
# Description: Run GWR on forest fire occurrence report data to understand 
#              which variables explain reoccurring forest fires
#
# Requirements: ArcGIS GeoAnalytics Server

# Import system modules
import arcpy

# Set local variables
inputFeatures = "https://analysis.org.com/server/rest/services/DataStoreCatalogs/bigDataFileShares_EcoData/BigDataCatalogServer/fireLocations"
outputLayerName = "GWR_ForestFireFrequency"
dependentVariable = "Fire_Frequency"
explanatoryVariables = "GroundCover, TreeCover, SoilMoisture, slope"
distanceValue = "5 Miles"

# Execute GWR
arcpy.geoanalytics.gwr(inputFeatures, dependentVariable, 
                                                    "CONTINUOUS", explanatoryVariables, 
                                                    outputLayerName, "DISTANCE_BAND", 
                                                    "USER_DEFINED", None, distanceValue, 
                                                    "GAUSSIAN", "SPATIOTEMPORAL_DATA_STORE"))

Environnements

Cas particuliers

Système de coordonnées en sortie

Système de coordonnées qui sera utilisé pour l'analyse. L’analyse sera réalisée dans le système de coordonnées en entrée, à moins que ce paramètre en spécifie un autre. Pour GeoAnalytics Tools, les résultats finaux sont stockés dans le stockage des données spatio-temporelles dans WGS84.

Informations de licence

  • Basic: Nécessite ArcGIS GeoAnalytics Server
  • Standard: Nécessite ArcGIS GeoAnalytics Server
  • Advanced: Nécessite ArcGIS GeoAnalytics Server

Rubriques connexes