Stima dei parametri per un processo spaziale


12

Mi viene data una griglia di valori interi positivi. Questi numeri rappresentano un'intensità che dovrebbe corrispondere alla forza di convinzione di una persona che occupa quella posizione della griglia (un valore più alto che indica una convinzione più elevata). Una persona avrà in generale un'influenza su più celle della griglia.n×n

Credo che il modello di intensità dovrebbe "sembrare gaussiano" in quanto vi sarà una posizione centrale di alta intensità, e quindi le intensità si ridurranno radialmente in tutte le direzioni. In particolare, vorrei modellare i valori come provenienti da un "gaussiano ridimensionato" con un parametro per la varianza e un altro per il fattore di scala.

Esistono due fattori complicanti:

  • l'assenza di una persona non corrisponderà a un valore zero, a causa del rumore di fondo e di altri effetti, ma i valori dovrebbero essere più piccoli. Tuttavia possono essere irregolari e ad una prima approssimazione potrebbe essere difficile modellare come semplice rumore gaussiano.
  • La gamma di intensità può variare. Per un'istanza, i valori possono variare tra 1 e 10 e, in un'altra, tra 1 e 100.

Sto cercando una strategia di stima dei parametri appropriata, o suggerimenti per la letteratura pertinente. Indica il motivo per cui sto affrontando questo problema nel modo sbagliato del tutto sarebbe apprezzato anche :). Ho letto del kriging e dei processi gaussiani, ma sembra un meccanismo molto pesante per il mio problema.


1
Cosa intendi per gaussiano con un parametro varianza e scala? Il parametro varianza è il parametro scala di un gaussiano! Sono anche un po 'incerto sul modello che hai impostato finora. Puoi descrivere il problema che stai effettivamente cercando di risolvere in modo più dettagliato? L'uso di un gaussiano per modellare osservazioni a valore intero a bassa granularità sembra sospetto.
cardinale

(+1) Per una domanda interessante. Non vedo l'ora di capire cosa stai cercando di risolvere un po 'meglio.
cardinale

Ecco alcune osservazioni: 1. Se i tuoi valori sono interi, l'utilizzo di Gaussian non sembra appropriato. 2. Non è chiaro quale sia lo scopo del tuo modello, ad esempio vuoi identificare i gruppi di convinzioni forti? Quale sarà l'interpretazione dei tuoi parametri se li avessi? 3. Dato che hai una griglia, perché non provare ad adattare la miscela di distribuzioni bivariate? Quindi la griglia sarà il supporto della distribuzione (diciamo unità quadrata) e le intensità corrisponderanno alle regioni ad alta probabilità.
mpiktas,

Grazie a tutti per i punti interessanti. Vorrei provare a chiarire. La scelta di "gaussiano", alla luce dei commenti, potrebbe essere un'aringa rossa che provoca più confusione di quanto non aiuti. La caratteristica chiave dei dati sono i valori di alta intensità nel punto di massima credenza nella posizione della persona e la riduzione "radiale" attorno ad esso (che ho osservato empiricamente). I valori di intensità provengono dalla soluzione a un problema (lineare) inverso e quindi in realtà non devono necessariamente essere integrali - sono solo i dati che ci capita di avere.
Suresh Venkatasubramanian,

tra l'altro apprezzo i tentativi di rendere la domanda più ben definita e meglio modellata. Farò del mio meglio per spiegare l'impostazione dei dati effettivi in ​​modo da convergere sui presupposti di modellazione corretti.
Suresh Venkatasubramanian,

Risposte:


5

È possibile utilizzare questo modulo della libreria pysal python per i metodi di analisi dei dati spaziali che tratterò di seguito.

La tua descrizione di come l'atteggiamento di ogni persona è influenzata dagli atteggiamenti delle persone che la circondano può essere rappresentata da un modello autoregressivo spaziale (SAR) (vedi anche la mia semplice spiegazione SAR da questa risposta SE 2 ). L'approccio più semplice è ignorare altri fattori e stimare la forza dell'influenza del modo in cui le persone circostanti influenzano gli atteggiamenti reciproci usando la statistica I di Moran .

Se si desidera valutare l'importanza di altri fattori mentre si stima la forza dell'influenza delle persone circostanti, un compito più complesso, è possibile stimare i parametri di una regressione: . Vedi i documenti qui . (I metodi per stimare questo tipo di regressione provengono dal campo dell'econometria spaziale e possono diventare molto più sofisticati del riferimento che ho dato.)y=bx+rhoWy+e

La tua sfida sarà quella di costruire una matrice di pesi spaziali ( ). Penso che ogni elemento della matrice dovrebbe essere 1 o 0 in base al fatto che la persona sia a una certa distanza che ritieni sia necessaria per influenzare l'altra persona .Wwijioj

Per avere un'idea intuitiva del problema, di seguito illustrerò come un processo di generazione di dati autoregressivi spaziali (DGP) creerà un modello di valori. Per i 2 reticoli di valori simulati i blocchi bianchi rappresentano valori alti e i blocchi scuri rappresentano valori bassi.

Nel primo reticolo sotto i valori della griglia sono stati generati da un processo casuale normalmente distribuito (o gaussiano), dove è zero.rho

Casuale (gaussiano)

Nel reticolo successivo sotto i valori della griglia sono stati generati da un processo autoregressivo spaziale, dove è stato impostato su qualcosa di alto, diciamo .8. rhoinserisci qui la descrizione dell'immagine


È molto interessante (e lo stesso vale per il Geary C correlato). Questo potrebbe essere vicino a ciò di cui ho bisogno.
Suresh Venkatasubramanian,

Geary C ti aiuta a vedere come i valori si avvicinano l'un l'altro, anche i valori nel mezzo della distribuzione. Moran's I ti aiuta a vedere come valori molto alti si raggruppano con valori molto alti e valori molto bassi si raggruppano attorno a valori molto bassi. Quindi forse hai ragione e il metodo più semplice e migliore è il Geary C. Ricorda che l'approccio del Geary C è esplorativo e non ti permetterà di condizionare i tuoi risultati su altri fattori. Guarda questo modulo python per il codice per eseguire Geary C: pysal.org/1.1/library/esda/geary.html .
b_dev,

Fammi giocare ancora con questi. Se sembra fare ciò di cui ho bisogno (e penso che lo farà), sembra la risposta migliore.
Suresh Venkatasubramanian,

3

Ecco un'idea semplice che potrebbe funzionare. Come ho detto nei commenti, se si dispone di una griglia con intensità, perché non adattarsi alla densità della distribuzione bivariata?

Ecco il grafico di esempio per illustrare il mio punto: inserisci qui la descrizione dell'immagine

Ogni punto della griglia con viene visualizzato come un quadrato, colorato in base all'intensità. Sul grafico è sovrapposto il grafico di contorno del grafico a densità normale bivariata. Come puoi vedere le linee di contorno si espandono nella direzione di intensità decrescente. Il centro sarà controllato dalla media della bivariata normale e dalla diffusione dell'intensità secondo la matrice di covarianza.

Per ottenere le stime della matrice media e della covarianza è possibile utilizzare una semplice ottimizzazione numerica, confrontare le intensità con i valori della funzione di densità utilizzando la matrice media e la covarianza come parametri. Riduci a icona per ottenere le stime.

Questo ovviamente non è una stima statistica, ma almeno ti darà un'idea di come procedere oltre.

Ecco il codice per riprodurre il grafico:

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")

2

X[io,j]X[io,j](X[io1,j1],...,X[iom,jm])(X[io1+K,j1+l]...,X[iom+K,jm+l])corr(X[io1,j1],X[io2,j2])d([io1,j1],[io2,j2])ρ(d)ρ(d)=Kd-1K

d([io1,j1],[io2,j2])=|io1-io2|+|j1-j2|ρ(d)ad es. tramite la massima probabilità. Per ulteriori idee, cerca "campo casuale".


1
"Vuoi assumere la stazionarietà spaziale" sembra direttamente contraddire l'assunto del PO secondo cui "le intensità si assottigliano radialmente in tutte le direzioni".
whuber

Come mai? Tale modello si verificherebbe con la struttura di autocorrelazione che ho proposto.
charles.y.zheng

1
@charles È un punto importante: se davvero questa apparente tendenza deve essere attribuita all'autocorrelazione, allora in linea di principio un'altra realizzazione indipendente del processo potrebbe avere una tendenza drammaticamente diversa, come un aumento di valore lontano da un punto centrale. Poiché l'OP ha chiaramente articolato e distinto alcuni elementi deterministici rispetto all'andamento (il "tapering radiale") e agli elementi correlativi ("hanno influenza su più celle della griglia"), una risposta che rispetti ciò verrebbe probabilmente considerata più positivamente di quella che afferma l'OP "vorrà" cambiare idea.
whuber

Non sono sicuro di aver capito la condizione di stazionarietà spaziale. In apparenza, sembra essere in contrasto con l'idea di avere un "picco che si assottiglia" in una posizione specifica, ma chiaramente non capisco qualcosa.
Suresh Venkatasubramanian,

1
@charles, il modello che descrivi sarà presente per ciascuno dei punti della griglia, a causa del presupposto della stazionarietà spaziale. La stazionarietà sta sostanzialmente dicendo che tutti i miei punti si comportano in modo simile. Questo non è il caso descritto da OP. La risposta è ancora molto buona, ma non appropriata in questo caso.
mpiktas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.