Come si prevede una categoria di risposta in base a un modello di regressione logistica ordinale?


13

Voglio prevedere un problema di salute. Ho 3 categorie di risultati ordinate: "normale", "lieve" e "grave". Vorrei prevederlo da due variabili predittive, un risultato del test (una covariata a intervalli continui) e una storia familiare con questo problema (sì o no). Nel mio campione, le probabilità sono del 55% (normale), 35% (lieve) e 10% (grave). In questo senso, potrei sempre prevedere "normale" ed avere ragione il 55% delle volte, anche se questo non mi darebbe alcuna informazione sui singoli pazienti. Mi adatto al seguente modello:

il punto di taglio per (y1)^=-2.18il punto di taglio per (y2)^=-4.27β^teSt=0.60β^fun'mioly hioStory=1.05

Supponiamo che non ci siano interazioni e che tutto vada bene con il modello. La concordanza, c, è del 60,5%, che intendo essere la massima precisione predittiva offerta dal modello.

Mi imbatto in due nuovi pazienti con i seguenti dati: 1. test = 3.26, famiglia = 0; 2. test = 2.85, famiglia = 1. Voglio prevederne la prognosi. Utilizzando la formula: (e quindi prendendo le differenze tra le probabilità cumulative), posso calcolare la distribuzione della probabilità sulle categorie di risposta in base al modello. Codice R (nb, a causa di problemi di arrotondamento, l'output non corrisponde perfettamente):

exp(-Xβ-cutPoiont)(1+exp(-Xβ-cutPoiont))
cut1 <- -2.18
cut2 <- -4.27
beta <- c(0.6, 1.05)
X    <- rbind(c(3.26, 0), c(2.85, 1))

pred_cat1      <- exp(-1*(X%*%beta)-cut1)/(1+exp(-1*(X%*%beta)-cut1))
pred_cat2.temp <- exp(-1*(X%*%beta)-cut2)/(1+exp(-1*(X%*%beta)-cut2))
pred_cat3      <- 1-pred_cat2.temp
pred_cat2      <- pred_cat2.temp-pred_cat1

predicted_distribution <- cbind(pred_cat1, pred_cat2, pred_cat3)

Vale a dire: 1. 0 = 55.1%, 1 = 35.8%, 2 = 9.1%; e 2. 0 = 35,6%, 1 = 46,2%, 2 = 18,2%. La mia domanda è: come posso passare dalla distribuzione di probabilità a una categoria di risposta prevista?

Ho provato diverse possibilità usando i dati di esempio, in cui il risultato è noto. Se scelgo solo max (probabilità), la precisione è del 57%, un leggero miglioramento rispetto allo zero, ma al di sotto della concordanza. Inoltre, nel campione, questo approccio non sceglie mai "severo", che è quello che voglio davvero sapere. Ho provato un approccio bayesiano convertendo le probabilità null e del modello in probabilità e quindi selezionando il massimo (odds ratio). Questo a volte diventa 'grave', ma produce una precisione peggiore del 49,5%. Ho anche provato una somma delle categorie ponderate per probabilità e arrotondamento. Questo, ancora una volta, non sceglie mai "grave" e ha una bassa precisione del 51,5%.

Qual è l'equazione che prende le informazioni sopra e produce un'accuratezza ottimale (60,5%)?

Risposte:


11

Yrmslrmpredict.lrm


1
Grazie per l'aiuto. Sospettavo che la bassa frequenza di gravi fosse parte del problema. Penso che il mio Y grezzo, 0 1 2, non sia sufficientemente uguale intervallo. Raccolgo il mio obiettivo è sbagliato. Sfortunatamente, penso di voler sapere in quale categoria rientrerà un nuovo paziente / non capire pienamente quale dovrebbe essere il mio obiettivo . È possibile fornire ulteriori informazioni? (In realtà, sospetto che CV non sia il forum per una lezione completa; in alternativa, sai dove posso imparare su questo problema? Ho letto le sezioni da Intro di Agresti & Hosmer & Lemeshow's Logistic, ma senza risultati.)
gung - Ripristina Monica

1
L'obiettivo è guidato dalla decisione necessaria o dall'argomento. Se dichiari l'obiettivo finale, potrei essere in grado di commentare.
Frank Harrell,

Mi dispiace per la mia mancanza di chiarezza, sembra essere stato un problema anche sopra. Al momento, voglio essere in grado di prevedere il risultato per nuovi casi. A lungo termine, voglio capire meglio il registro, ad esempio come si ottengono i residui se non si hanno categorie previste? Raccolgo una precisione leggermente migliore è possibile, ma non so come ottenerlo. Sono sicuro che non hai tempo per spiegare tutto, ma né Agresti, né H&L dicono nulla su previsioni o residui, ecc. E non sono riuscito a trovare nulla con Google. Quindi, ho chiesto il CV. Apprezzo la tua continua assistenza.
gung - Ripristina Monica

Yj per varijè un buon metodo e non richiede decisioni arbitrarie. Osservando l'istogramma delle probabilità previste è possibile giudicare l'utilità del modello, ovvero la frequenza con cui fornisce probabilità più definitive più vicine a 0 o 1 rispetto a 0,5.
Frank Harrell,

-1

La concordanza viene definita controllando il punteggio medio, non il punteggio massimo.

Quindi, per i tuoi esempi, i punteggi medi per 1 sono 0 * 55,1% + 1 * 35,8% + 2 * 9,1% = 0,54 e 2 è (attraverso calcoli simili) 0,826.

È questo valore che dovresti confrontare per ottenere la concordanza o qualsiasi altra statistica dell'associazione.

Rif: http://support.sas.com/documentation/cdl/en/statug/63347/HTML/default/viewer.htm#statug_logistic_sect042.htm


3
No, la concordanza viene calcolata utilizzando la variabile di risultato non elaborata Y e il predittore lineare Xβo una qualsiasi delle probabilità previste (dato che sono tutte monotonicamente correlate tra loro, cioè sono appena passate in intercetta prima di calcolare l'expit). Somers'DXyil coefficiente di correlazione dei ranghi utilizza questa misura di concordanza.
Frank Harrell,

2
PS Nota che la documentazione SAS, che è una riscrittura della mia documentazione originale per il precursore che SAS PROC LOGISTho scritto molti anni fa, ora è errata e la sua formula per la media è errata a meno cheYè costituito da numeri interi consecutivi.
Frank Harrell,
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.