Estimation des paramètres d'un processus spatial

12

On me donne une grille de valeurs entières positives. Ces chiffres représentent une intensité qui devrait correspondre à la force de croyance d'une personne occupant cet emplacement de grille (une valeur plus élevée indiquant une croyance plus élevée). Une personne aura en général une influence sur plusieurs cellules de la grille.n×n

Je crois que le schéma des intensités devrait "avoir l'air gaussien" en ce sens qu'il y aura un emplacement central de forte intensité, puis que les intensités diminueront radialement dans toutes les directions. Plus précisément, je voudrais modéliser les valeurs comme provenant d'une «Gaussienne mise à l'échelle» avec un paramètre pour la variance et un autre pour le facteur d'échelle.

Il y a deux facteurs de complication:

  • l'absence d'une personne ne correspondra pas à une valeur nulle, en raison du bruit de fond et d'autres effets, mais les valeurs doivent être plus petites. Ils peuvent cependant être erratiques et, en première approximation, ils peuvent être difficiles à modéliser en tant que simple bruit gaussien.
  • La plage d'intensité peut varier. Dans un cas, les valeurs peuvent être comprises entre 1 et 10 et dans un autre, entre 1 et 100.

Je suis à la recherche d'une stratégie d'estimation des paramètres appropriée ou de pointeurs vers la littérature pertinente. Des pointeurs sur la raison pour laquelle j'aborde ce problème dans le mauvais sens seraient également appréciés :). J'ai lu sur le krigeage et les processus gaussiens, mais cela semble être une machine très lourde pour mon problème.

Suresh Venkatasubramanian
la source
1
Qu'entendez-vous par un gaussien avec un paramètre de variance et d' échelle? Le paramètre de variance est le paramètre d'échelle d'un gaussien! Je suis également un peu incertain du modèle que vous avez configuré jusqu'à présent. Pouvez-vous décrire plus en détail le problème que vous essayez de résoudre? L'utilisation d'un gaussien pour modéliser des observations à valeur entière de faible granularité semble louche.
Cardinal
(+1) Pour une question intéressante. Au plaisir de mieux comprendre ce que vous essayez de résoudre.
Cardinal
Voici plusieurs observations: 1. Si vos valeurs sont entières, l'utilisation du gaussien ne semble pas appropriée. 2. Le but de votre modèle n'est pas clair, voulez-vous identifier les grappes de croyances fortes par exemple? Quelle sera l'interprétation de vos paramètres si vous les aviez? 3. Puisque vous avez une grille, pourquoi ne pas essayer d'ajuster un mélange de distributions bivariées? Ensuite, la grille sera le support de la distribution (disons unité de carré) et les intensités correspondront à des régions à forte probabilité.
mpiktas
Merci à tous pour les points intéressants. Permettez-moi d'essayer de clarifier. Le choix du «gaussien», à la lumière des commentaires, pourrait être un hareng rouge qui crée plus de confusion qu'il n'y aide. La caractéristique clé des données est les valeurs de haute intensité au point de croyance le plus élevé en l'emplacement de la personne et la réduction progressive «radiale» autour d'elle (que j'ai observée empiriquement). Les valeurs d'intensité proviennent de la solution d'un problème inverse (linéaire), et n'ont donc pas nécessairement besoin d'être intégrales - ce ne sont que les données que nous possédons.
Suresh Venkatasubramanian le
btw J'apprécie les tentatives pour rendre la question plus bien définie et mieux modélisée. Je ferai de mon mieux pour expliquer le paramétrage réel des données afin de converger vers les bonnes hypothèses de modélisation.
Suresh Venkatasubramanian

Réponses:

5

Vous pouvez utiliser ce module de la bibliothèque pysal python pour les méthodes d'analyse de données spatiales dont je parle ci-dessous.

Votre description de la façon dont l'attitude de chaque personne est influencée par les attitudes des personnes qui l'entourent peut être représentée par un modèle autorégressif spatial (SAR) (voir également mon explication simple SAR de cette réponse SE 2 ). L'approche la plus simple consiste à ignorer d'autres facteurs et à estimer la force de l'influence de la façon dont les personnes environnantes affectent les attitudes des autres en utilisant la statistique de Moran I.

Si vous souhaitez évaluer l'importance d'autres facteurs tout en estimant la force de l'influence des personnes environnantes, une tâche plus complexe, vous pouvez estimer les paramètres d'une régression: . Voir la documentation ici (les méthodes d'estimation de ce type de régression proviennent du domaine de l'économétrie spatiale et peuvent être beaucoup plus sophistiquées que la référence que j'ai donnée).y=bx+rhoWy+e

Votre défi sera de construire une matrice de pondérations spatiales ( ). Je pense que chaque élément de la matrice devrait être 1 ou 0 selon que la personne est à une certaine distance vous pensez qu'il est nécessaire d'influencer l'autre personne .w i j i jWwijij

Pour avoir une idée intuitive du problème, j'illustre ci-dessous comment un processus de génération de données autorégressives spatiales (DGP) créera un modèle de valeurs. Pour les 2 réseaux de valeurs simulées, les blocs blancs représentent des valeurs élevées et les blocs sombres représentent des valeurs faibles.

Dans le premier réseau ci-dessous, les valeurs de la grille ont été générées par un processus aléatoire normalement distribué (ou gaussien), où est nul.rho

Aléatoire (gaussien)

Dans le treillis suivant, les valeurs de la grille ont été générées par un processus autorégressif spatial, où a été défini sur quelque chose de élevé, par exemple 0,8. rhoentrez la description de l'image ici

b_dev
la source
C'est très intéressant (tout comme le Geary C connexe). Cela pourrait être proche de ce dont j'ai besoin.
Suresh Venkatasubramanian
Geary C vous aide à voir comment les valeurs sont proches les unes des autres, même les valeurs au milieu de la distribution. Moran's I vous aide à voir comment les valeurs très élevées se regroupent avec des valeurs très élevées et les valeurs très faibles se regroupent autour de valeurs très faibles. Alors peut-être que vous avez raison et que la méthode la plus simple et la meilleure est Geary's C. N'oubliez pas que l'approche Geary's C est exploratoire et ne vous laissera pas conditionner vos résultats à d'autres facteurs. Regardez ce module python pour le code pour exécuter C: pysal.org/1.1/library/esda/geary.html de Geary .
b_dev
Permettez-moi de jouer avec ceux-ci un peu plus. S'il semble faire ce dont j'ai besoin (et je pense qu'il le fera), cela semble être la meilleure réponse.
Suresh Venkatasubramanian
3

Voici une idée simple qui pourrait fonctionner. Comme je l'ai dit dans les commentaires, si vous avez une grille avec des intensités, pourquoi ne pas adapter la densité de distribution bivariée?

Voici l'exemple de graphique pour illustrer mon propos: entrez la description de l'image ici

Chaque point de grille avec est affiché sous forme de carré, coloré selon l'intensité. Sur le graphique est superposé le tracé de contour du tracé de densité normale bivariée. Comme vous pouvez le voir, les courbes de niveau se développent dans le sens d'une intensité décroissante. Le centre sera contrôlé par la moyenne des normales bivariées et la répartition de l'intensité selon la matrice de covariance.

Pour obtenir les estimations de la moyenne et de la matrice de covariance, une optimisation numérique simple peut être utilisée, comparer les intensités aux valeurs de la fonction de densité en utilisant la moyenne et la matrice de covariance comme paramètres. Minimisez pour obtenir les estimations.

Il ne s'agit bien sûr pas à proprement parler d'une estimation statistique, mais au moins cela vous donnera une idée de la marche à suivre.

Voici le code pour reproduire le graphique:

require(mvtnorm)
sigma=cbind(c(0.1,0.7*0.1),c(0.7*0.1,0.1))

x<-seq(0,1,by=0.01)
y<-seq(0,1,by=0.01)
z<-outer(x,y,function(x,y)dmvnorm(cbind(x,y),mean=mean,sigma=sigma))

mz<-melt(z)

mz$X1<-(mz$X1-1)/100
mz$X2<-(mz$X2-1)/100

colnames(mz)<-c("x","y","z")

mz$intensity<-round(mz$z*1000)

ggplot(mz, aes(x,y)) + geom_tile(aes(fill = intensity), colour = "white") + scale_fill_gradient(low = "white",     high = "steelblue")+geom_contour(aes(z=z),colour="black")
mpiktas
la source
2

Votre modèle est un champ aléatoire bidimensionnel , et vous essayez d'estimer la distribution conjointe des variables aléatoires à valeurs entières . Vous voudrez supposer une stationnarité spatiale: c'est-à-dire que la distribution conjointe de est la même que la distribution conjointe de . En particulier, la distribution marginale est la même pour chaque cellule. Une question simple à poser est la structure d'autocorrélation du champ. Autrement dit, qu'est-ce que compte tenu de la distance ? Nous représentons cela comme une fonctionX[i,j]X[i,j](X[i1,j1],...,X[im,jm])(X[i1+k,j1+l]...,X[im+k,jm+l])corr(X[i1,j1],X[i2,j2])d([i1,j1],[i2,j2])ρ(d). Un modèle simple pour la structure d'autocorrélation est , où est une constante.ρ(d)=kd1k

Un effet «gaussien» correspond à une fonction de distance quadratique, mais il existe de nombreuses autres fonctions de distance que vous devriez considérer, telles que la norme taxicab. Une fois que vous avez décidé d'une fonction de distance et de la forme de votre modèle pour l'autocorrélation, il est assez simple d'estimer par exemple via le maximum de vraisemblance. Pour plus d'idées, recherchez "champ aléatoire".ρ ( d )d([i1,j1],[i2,j2])=|i1i2|+|j1j2|ρ(d)

charles.y.zheng
la source
1
"Vouloir assumer la stationnarité spatiale" semble directement contredire l'hypothèse du PO selon laquelle "les intensités diminuent radialement dans toutes les directions".
whuber
Comment? Un tel schéma se produirait avec la structure d'autocorrélation que j'ai proposée.
charles.y.zheng
1
@charles C'est un point important: si en effet cette tendance apparente doit être attribuée à l'autocorrélation, alors en principe une autre réalisation indépendante du processus pourrait sembler avoir une tendance radicalement différente, telle qu'une augmentation de la valeur loin d'un point central. Étant donné que le PO a clairement articulé et distingué certains éléments déterministes de la tendance (le "rétrécissement radial") et des éléments corrélationnels ("ont une influence sur plusieurs cellules de la grille"), une réponse qui respecte cela serait probablement perçue de manière plus positive que celle qui affirme le PO "voudra" changer d'avis.
whuber
Je ne suis pas sûr de comprendre la condition de stationnarité spatiale. En surface, il semble être en contradiction avec l'idée d'avoir un "pic qui s'effile" à un endroit spécifique, mais je ne comprends clairement pas quelque chose.
Suresh Venkatasubramanian
1
@charles, le motif que vous décrivez sera présent pour chacun des points de la grille, en raison de l'hypothèse de stationnarité spatiale. La stationnarité signifie essentiellement que tous mes points se comportent de la même manière. Ce n'est pas le cas décrit par OP. La réponse est toujours très bonne, mais pas appropriée dans ce cas.
mpiktas