Interpretazione del diagramma dei residui rispetto ai valori adattati dalla regressione di Poisson


25

Sto cercando di adattare i dati con un GLM (regressione di poisson) in R. Quando ho tracciato i residui rispetto ai valori adattati, il diagramma ha creato "linee" multiple (quasi lineari con una leggera curva concava). Cosa significa questo?

library(faraway)
modl <- glm(doctorco ~ sex + age + agesq + income + levyplus + freepoor + 
            freerepa + illness + actdays + hscore + chcond1 + chcond2,
            family=poisson, data=dvisits)
plot(modl)

inserisci qui la descrizione dell'immagine


Non so se puoi caricare la trama (a volte i nuovi arrivati ​​non possono), ma in caso contrario, potresti almeno aggiungere alcuni dati e codice R alla tua domanda in modo che le persone possano valutarla?
gung - Ripristina Monica

Jocelyn, ho aggiornato il tuo post con le informazioni che hai inserito in un commento. Ho anche taggato questo come da homeworkquando hai parlato di un incarico.
chl

prova plot (jitter (mod1)) per vedere se il grafico è un po 'più leggibile. Perché non definisci i residui per noi e ci dai la tua ipotesi migliore come interpretare il grafico tu stesso.
Michael Bishop,

1
Dalla domanda, suppongo che tu capisca la distribuzione di Poisson e il registro di Pois, e cosa ti dice una trama di residui vs valori adattati (aggiorna se è sbagliato), quindi ti stai solo chiedendo l'aspetto strano dei punti nella trama. B / c questo è un compito, non rispondiamo esattamente come la nostra politica generale, ma forniamo suggerimenti. Ho notato che hai molte covariate, mi chiedo se tu abbia 1 covariate continue e molte binarie.
gung - Ripristina Monica

1
Due follow-up dal commento di Gung. Innanzitutto, prova table(dvisits$doctorco). A cosa corrispondono le 10 linee curve sulla trama in questa tabella? Inoltre, con oltre 5000 osservazioni, non ti preoccupare troppo del montaggio di 13 coefficienti di regressione.
ospite

Risposte:


29

Questo è l'aspetto che ti aspetti da un simile diagramma quando la variabile dipendente è discreta.

Ogni traccia curvilinea di punti sul grafico corrisponde a un valore fisso della variabile dipendente y . Ogni caso in cui y = k ha una previsione yKyy=Ky^K-y^K-y^y^-1log(y^)Ky

Possiamo riprodurre la trama in questione abbastanza da vicino per mezzo di un modello simile ma arbitrario (usando piccoli coefficienti casuali):

# Create random data for a random model.
set.seed(17)
n <- 2^12                       # Number of cases
k <- 12                         # Number of variables
beta = rnorm(k, sd=0.2)         # Model coefficients
x <- matrix(rnorm(n*k), ncol=k) # Independent values
y <- rpois(n, lambda=exp(-0.5 + x %*% beta + 0.1*rnorm(n)))

# Wrap the data into a data frame, create a formula, and run the model.
df <- data.frame(cbind(y,x))    
s.formula <- apply(matrix(1:k, nrow=1), 1, function(i) paste("V", i+1, sep=""))
s.formula <- paste("y ~", paste(s.formula, collapse="+"))
modl <- glm(as.formula(s.formula), family=poisson, data=df)

# Construct a residual vs. prediction plot.
b <- coefficients(modl)
y.hat <- x %*% b[-1] + b[1]     # *Logs* of the predicted values
y.res <- y - exp(y.hat)         # Residuals
colors <- 1:(max(y)+1)          # One color for each possible value of y
plot(y.hat, y.res, col=colors[y+1], main="Residuals v. Fitted")

Residui vs. misura


6
(+1) Il colore fa molto per mostrare ciò che sta accadendo.
cardinale l'

Quindi la trama di cui sopra riguarda? Testi (Modellistica statistica per ricercatori biomedici: una semplice introduzione all'analisi di dati complessi, Dupont, 2002, p. 316, ad esempio) indicano che il diagramma adattato rispetto a quello residuo dovrebbe essere centrato sulla linea residua zero e su entrambi i fan (se non elaborati residui) oppure no (se devianza, ad es.). Con un intervallo limitato di conteggi nella variabile risultato, ottieni queste bande e, come nel grafico sopra, non sono centrate sulla linea in y = 0. Come facciamo a sapere il diagramma residuo dell'OP (o il diagramma di esempio fatto in questa risposta) indica che il modello sta adattando bene i dati?
Meg

1
@Meg Questo consiglio non si applica direttamente ai residui di un GLM. Si noti che il modello utilizzato per illustrare questa risposta è noto perché è quello utilizzato per generare i dati.
whuber

1/2: Grazie @whuber. Capisco per questa risposta che il modello è noto per essere corretto poiché i dati sono stati simulati da una determinata distribuzione, ma in pratica è sconosciuto (come nel post del PO). Inoltre, ciò che ho scritto sui residui si applica alla regressione dei POI (non tutti i GLM, no, ma questo) - il riferimento che ho dato è stato discutere specificamente della regressione dei POI. Ho visto solo testi che mostrano residui di POI standardizzati (Pearson o devianza, ad esempio) centrati su y = 0, quindi non sono sicuro di cosa dovrei cercare, perché per questo modello (che è ovviamente corretto), la trama appare niente del genere.
Meg

2/2: hai un riferimento a cui discutere i residui di POI più accuratamente per caso?
Meg

8

A volte strisce come queste nei grafici residui rappresentano punti con valori osservati (quasi) identici che ottengono previsioni diverse. Guarda i tuoi valori target: quanti valori unici sono? Se il mio suggerimento è corretto, dovrebbero essere presenti 9 valori univoci nel set di dati di allenamento.


1
0,1,...,9

-3

Questo modello è caratteristico di una corrispondenza errata della famiglia e / o del collegamento. Se hai dati sovradispersi, forse dovresti considerare le distribuzioni binomiali (conteggio) o gamma (continue) negative. Inoltre, dovresti tracciare i tuoi residui sul predittore lineare trasformato, non sui predittori quando usi modelli lineari generalizzati. Per trasformare il predittore di Poisson devi prendere 2 volte la radice quadrata del predittore lineare e tracciare i tuoi residui contro quello. I residui ulteriormente non dovrebbero essere esclusivamente residui di perle, provare i residui di devianza e residi studentizzati.


3
Perché 2 volte la radice quadrata, quando il legame canonico della famiglia di Poisson in un glm è log? Non dovrebbe essere exp () del predittore lineare? Ma non vedo quale sia il problema con la trama dei residui rispetto al predittore lineare stesso, che penso sia ciò che viene fatto qui - forse potresti ampliarlo.
Peter Ellis,

Ti dispiacerebbe spiegare quale aspetto del "modello" sta attirando la tua attenzione su una possibile specifica errata del modello, Ryan? Sembra essere una cosa sottile, ma potenzialmente è una visione importante.
whuber
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.