Perché usare il collegamento logit nella regressione beta?


14

Di recente, sono stato interessato all'implementazione di un modello di regressione beta, per un risultato che è proporzionale. Si noti che questo risultato non si adatterebbe al contesto binomiale, poiché in questo contesto non esiste un concetto significativo di "successo" discreto. In effetti, il risultato è in realtà una proporzione di durate; il numeratore è il numero di secondi mentre una determinata condizione è attiva sul numero totale di secondi durante i quali la condizione era ammissibile per essere attiva. Mi scuso per i capricci, ma non voglio concentrarmi troppo su questo preciso contesto, perché mi rendo conto che ci sono una varietà di modi in cui un tale processo potrebbe essere modellato oltre alla regressione beta, e per ora sono più interessato specificamente alla teoria domande che sono sorte nei miei tentativi di attuare un tale modello (anche se, ovviamente,

In ogni caso, tutte le risorse che sono stato in grado di trovare hanno indicato che la regressione beta è in genere adatta utilizzando un collegamento logit (o probit / cloglog) e i parametri interpretati come cambiamenti nelle probabilità del log. Tuttavia, devo ancora trovare un riferimento che fornisca effettivamente qualsiasi vera giustificazione per il motivo per cui si vorrebbe utilizzare questo collegamento.

Il documento originale Ferrari & Cribari-Neto (2004) non fornisce una giustificazione; notano solo che la funzione logit è "particolarmente utile", a causa dell'interpretazione del rapporto di probabilità dei parametri esponenziali. Altre fonti alludono al desiderio di mappare dall'intervallo (0,1) alla linea reale. Tuttavia, abbiamo necessariamente bisogno di una funzione di collegamento per tale mappatura, dato che stiamo già assumendo una distribuzione beta? Quali vantaggi offre la funzione di collegamento al di là dei vincoli imposti dall'ipotesi che la distribuzione beta inizi?Ho eseguito un paio di simulazioni rapide e non ho visto previsioni al di fuori dell'intervallo (0,1) con un collegamento di identità, anche durante la simulazione da distribuzioni beta la cui massa di probabilità è ampiamente raggruppata vicino a 0 o 1, ma forse le mie simulazioni non sono stati abbastanza generici da cogliere alcune delle patologie.

Mi sembra basato sul modo in cui gli individui, in pratica, interpretano le stime dei parametri dai modelli di regressione beta (cioè come rapporti di probabilità) che implicitamente stanno facendo una deduzione rispetto alle probabilità di un "successo"; cioè usano la regressione beta come sostituto di un modello binomiale. Forse questo è appropriato in alcuni contesti, dato il rapporto tra beta e distribuzioni binomiali, ma mi sembra che questo dovrebbe essere più un caso speciale di quello generale. In questa domanda, viene fornita una risposta per l'interpretazione del rapporto di probabilità rispetto alla proporzione continua piuttosto che al risultato, ma mi sembra inutilmente ingombrante cercare di interpretare le cose in questo modo, invece di usare, diciamo, un registro o collegamento identità e interpretazione di% variazioni o spostamenti di unità.

Quindi, perché utilizziamo il collegamento logit per i modelli di regressione beta? È semplicemente una questione di convenienza, collegarlo ai modelli binomiali?

Risposte:


8

Giustificazione della funzione di collegamento: Una funzione di collegamento assicura che tutti i valori adattati sono sempre in . Questo potrebbe non importare molto in alcune applicazioni, ad es. Perché le previsioni o solo valutate nel campione o non sono troppo vicine a 0 o 1. Ma può importare in alcune applicazioni e in genere non si sa in anticipo se è importante o non. I problemi tipici che ho visto includono: la valutazione di previsioni di nuovi valori che sono (leggermente) al di fuori dell'intervallo del campione di apprendimento originale o la ricerca di valori iniziali adeguati. Per quest'ultimo considerare:g(μ):(0,1)Rμ^=g1(xβ^)(0,1)x

library("betareg")
data("GasolineYield", package = "betareg")
betareg(yield ~ batch + temp, data = GasolineYield, link = make.link("identity"))
## Error in optim(par = start, fn = loglikfun, gr = if (temporary_control$use_gradient) gradfun else NULL,  : 
##   initial value in 'vmmin' is not finite

Ma, naturalmente, si può semplicemente provare entrambe le opzioni e vedere se si verificano problemi con il collegamento di identità e / o se migliora l'adattamento del modello.

Interpretazione dei parametri: concordo sul fatto che interpretare i parametri nei modelli con funzioni di collegamento sia più difficile che nei modelli con un collegamento di identità e che i professionisti spesso sbagliano. Tuttavia, ho anche visto spesso interpretazioni errate dei parametri nei modelli di probabilità lineari (regressioni binarie con collegamento di identità, in genere con minimi quadrati). L'ipotesi che gli effetti marginali siano costanti non può valere se le previsioni si avvicinano abbastanza a 0 o 1 e si dovrebbe fare molta attenzione. Ad esempio, per un'osservazione con un aumento di non può portare a una diminuzione di di, diciamo,μ^=0.01xμ^0.02. Ma questo è spesso trattato in modo molto sciatto in quegli scenari. Quindi, direi che per un modello di risposta limitata i parametri di qualsiasi funzione di collegamento devono essere interpretati attentamente e potrebbero aver bisogno di un po 'di pratica. Il mio solito consiglio è quindi (come mostrato nell'altra discussione che hai collegato alla tua domanda) di esaminare gli effetti delle configurazioni di regresso di interesse. Questi sono più facili da interpretare e spesso (ma non sempre) piuttosto simili (dal punto di vista pratico) per diverse funzioni di collegamento.


10

Non è corretto che la regressione logistica possa essere utilizzata solo per modellare i dati di risultati binari. Il modello di regressione logistica è appropriato per tutti i dati in cui 1) il valore atteso del risultato segue una curva logistica in funzione dei predittori 2) la varianza del risultato è il risultato atteso per un tempo meno il risultato atteso (o una parte di esso) 3) (conseguenza di 2) i dati vanno da 0 a 1. Queste proprietà valgono sicuramente per i dati di Bernoulli. Ma si dovrebbero intraprendere alcune statistiche esplorative e grafici prima di screditare immediatamente il modello logistico come mezzo valido (e facile da implementare / spiegare) per rispondere a una domanda scientifica.

Un modello di regressione logistica è un caso speciale del modello lineare generalizzato (GLM), il che significa che il modello fornisce stime e inferenze di parametri coerenti. I modelli logistici vengono utilizzati per modellare proporzioni, variabili ordinali, tariffe, punteggi degli esami, gradi e tutti i tipi di risultati non binari in diversi punti della letteratura.

Mi dispiace che questa risposta non indirizzi la tua domanda in un secondo momento, ma affermare il ragionamento precedente fa apparire un malinteso che vale la pena affrontare.

Molti utenti di R hanno suggerito di sopprimere l '"avvertimento" che deriva dall'adattare una risposta continua a modelli logistici. Un "mezzo alla strada" modo è quello di cambiare family=binomiala family=quasibinomial. Un esempio di simulazione di questi dati, adattamento di un modello e ottenimento dell'inferenza corretta è mostrato qui:

set.seed(123)
## logistic non-binary response
x <- rep(c(-2, 0, 2), each=50)
n <- length(x)
b0 <- 0
b1 <- 0.3
yhat <- plogis(b0 + b1*x)

do.one <- function(){
  e <- rnorm(n, 0, yhat*(1-yhat))
  y <- yhat + e

  yfixed <- pmin(y, 1)
  yfixed <- pmax(yfixed, 0)

  est <- glm(yfixed ~ x, family=quasibinomial())
  ci <- confint.default(est, level = 0.9)
  cov0 <- b0 > ci[1,1] & b0 < ci[1,2]
  cov1 <- b1 > ci[2,1] & b1 < ci[2,2]
  c(cov0, cov1)
}

reg <- replicate(10000, do.one())
rowMeans(reg)

Fornisce una copertura accurata del 90% degli EC


1
Apprezzo il chiarimento fornito riguardo al modello di regressione logistica. Hai ragione sul fatto che si tratta di un modello più generale di quanto si pensi spesso. Sono titubante ad accettarlo come risposta, tuttavia, perché sembra che non sviluppi abbastanza la linea di ragionamento. Mi sembra che tu stia dicendo che le mie preoccupazioni sul collegamento logit in un modello beta sono infondate, perché un collegamento logit funziona bene su dati non binari. Che è una posizione ragionevole, ma penso che non riesca a capire il motivo della mia domanda sul perché usiamo il logit in un modello beta e su come interpretarlo.
Ryan Simmons,

1
@RyanSimmons Grazie per il feedback. Sono d'accordo con il tuo ragionamento qui. Penso che ogni "opportunità di apprendere" meriti una risposta e quindi una domanda può avere molte risposte possibili con vari gradi di "correttezza". Non ho toccato la tua domanda, che è buona, quindi la risposta "più giusta" potrebbe ancora apparire. Sono curioso di questo, quindi sto cercando di leggere un po 'di più sull'argomento.
AdamO
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.