Perché l'aggiunta di un effetto di ritardo aumenta la devianza in un modello gerarchico bayesiano?


14

Antefatto: attualmente sto lavorando a un confronto tra vari modelli gerarchici bayesiani. I dati sono misure numeriche di benessere per il partecipante i e il tempo j . Ho circa 1000 partecipanti e da 5 a 10 osservazioni per partecipante.yiojioj

Come con la maggior parte dei set di dati longitudinali, mi aspetto di vedere una qualche forma di auto-correlazione per cui le osservazioni più vicine nel tempo hanno una correlazione maggiore rispetto a quelle che sono più distanti. Semplificando alcune cose, il modello base è il seguente:

yioj~N(μioj,σ2)

dove sto confrontando un modello no lag:

μioj=β0io

con un modello di ritardo:

μioj=β0io+β1(yio(j-1)-β0io)

dove è una media a livello di persona e β 1 è il parametro di ritardo (ovvero, l'effetto di ritardo aggiunge un multiplo della deviazione dell'osservazione dal punto temporale precedente dal valore previsto di quel punto temporale). Ho anche dovuto fare alcune cose per stimare y i 0 (cioè l'osservazione prima della prima osservazione).β0ioβ1yio0

I risultati che sto ottenendo indicano che:

  • Il parametro lag è circa .18, 95% CI [.14, .21]. Cioè, è diverso da zero
  • La devianza media e il DIC aumentano entrambi di diverse centinaia quando il ritardo è incluso nel modello
  • Controlli predittivi posteriori mostrano che includendo l'effetto lag, il modello è in grado di recuperare meglio l'auto-correlazione nei dati

Quindi, in sintesi, il parametro di ritardo diverso da zero e i controlli predittivi posteriori suggeriscono che il modello di ritardo è migliore; tuttavia, devianza media e DIC suggeriscono che il modello no lag è migliore. Questo mi confonde.

La mia esperienza generale è che se aggiungi un parametro utile dovrebbe almeno ridurre la deviazione media (anche se dopo una penalità di complessità il DIC non viene migliorato). Inoltre, un valore pari a zero per il parametro lag raggiungerebbe la stessa deviazione del modello no lag.

Domanda

Perché l'aggiunta di un effetto di ritardo potrebbe aumentare la devianza in un modello gerarchico bayesiano anche quando il parametro di ritardo è diverso da zero e migliora i controlli predittivi posteriori?

Pensieri iniziali

  • Ho fatto molti controlli di convergenza (ad esempio, guardando i tracciati; esaminando la variazione dei risultati di devianza attraverso le catene e attraverso le corse) ed entrambi i modelli sembrano essere convergenti sul posteriore.
  • Ho fatto un controllo del codice in cui ho forzato l'effetto di ritardo su zero, e questo ha recuperato le deviazioni del modello senza ritardo.
  • Ho anche esaminato la devianza media meno la penalità che dovrebbe produrre devianza ai valori previsti, e questi hanno anche peggiorato il modello di ritardo.
  • β0io
  • Forse c'è qualche problema con come ho stimato il punto temporale implicito prima della prima osservazione.
  • Forse l'effetto di ritardo è solo debole in questi dati
  • Ho provato a stimare il modello usando la massima verosimiglianza usando lmecon correlation=corAR1(). La stima del parametro lag era molto simile. In questo caso il modello di ritardo presentava una probabilità di log maggiore e un AIC più piccolo (di circa 100) rispetto a uno senza ritardo (ovvero, suggeriva che il modello di ritardo era migliore). Quindi questo ha rafforzato l'idea che l'aggiunta del ritardo dovrebbe anche ridurre la devianza nel modello bayesiano.
  • Forse c'è qualcosa di speciale nei residui bayesiani. Se il modello di ritardo utilizza la differenza tra y previsto e effettivo nel punto temporale precedente, questa quantità sarà incerta. Pertanto, l'effetto di ritardo opererà su un intervallo credibile di tali valori residui.

Dici che il parametro lag è intorno a .18. Hai imparato il parametro lag? Se sì, quale precedente hai usato?
Summit

N(β0io,σ2)

Risposte:


1

Ecco i miei pensieri:

  • Invece di DIC, BIC, AIC suggerisco di lavorare direttamente con la probabilità marginale (nota anche come prova ) se te lo puoi permettere. Maggiore è l' evidenza , più probabile è la tua classe di modello. Potrebbe non fare una grande differenza, ma DIC, BIC, AIC sono, dopo tutto, solo approssimazioni.
  • 0,18
  • Facciamo un ulteriore passo avanti: prendiamo il modello che non considera l'effetto di ritardo (c) e calcoliamo la sua probabilità marginale . Quindi, prendi la tua classe di modello (d) che incorpora l'effetto lag e ha un precedente sul parametro lag; calcola la probabilità marginale di (d). Ti aspetteresti che (d) abbia una probabilità marginale maggiore . E allora, se non lo fai ?:

    (1) La probabilità marginale considera la classe del modello nel suo insieme. Ciò include l'effetto di ritardo, il numero di parametri, la probabilità, il precedente.

    (2) Il confronto di modelli con un numero diverso di parametri è sempre delicato, se vi è una notevole incertezza nel preambolo dei parametri aggiuntivi.

    (3) Se si specifica l'incertezza nel precedente del parametro di ritardo irragionevolmente grande, si penalizza l'intera classe del modello.

    (4) Quali sono le informazioni che supportano le pari probabilità per ritardi negativi e per un ritardo positivo? Credo che sia molto improbabile osservare un ritardo negativo, e questo dovrebbe essere incorporato nel precedente.

    (5) Il precedente che hai scelto sul tuo parametro di ritardo è uniforme. Di solito questa non è mai una buona scelta: sei assolutamente sicuro che i tuoi parametri debbano davvero rientrare nei limiti specificati? Ogni valore di ritardo all'interno dei limiti ha davvero la stessa probabilità? Il mio consiglio: scegli una distribuzione beta (se sei sicuro che il ritardo sia limitato) o con il log-normale se puoi escludere valori inferiori a zero .

    (6) Questo è un esempio particolare, in cui l'uso di priori non informativi non è buono (osservando la probabilità marginale ): privilegerai sempre il modello che ha un numero minore di parametri incerti; non importa quanto buono o cattivo possa fare il modello con più parametri.

Spero che i miei pensieri ti diano alcune nuove idee, suggerimenti ?!


Grazie per i suggerimenti Solo per arrotondare le cose, ho provato a vincolare il parametro lag per avere il valore della media del posteriore (cioè 0,18). Il modello no lag presentava ancora la devianza media più piccola.
Jeromy Anglim,
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.