2012-10-30 15 views
5

Voglio calcolare i parametri mu e lambda per il Inverse Gaussian Distribution dato il CDF.Come si calcola la distribuzione gaussiana inversa da CDF dato?

Con "dato il CDF" intendo che ho dato i dati E il quantile (stimato) per i dati I.e.

Quantile - Value 

0.01 - 10 

0.5 - 12 

0.7 - 13 

Ora voglio scoprire la distribuzione gaussiana inversa per questi dati in modo che possa ad es. Cerca il quantile per il valore 11 in base alla mia distribuzione.

Come posso trovare i valori mu e lambda?

L'unica soluzione a cui riesco a pensare è l'utilizzo della discesa in gradiente per trovare la migliore mu e lambda utilizzando RMSE come misura di errore.

Non c'è una soluzione migliore?

Commento: L'algoritmo MLE di Matlab non è un'opzione, poiché non utilizza i dati quantili.

+0

Avete più di 3 punti dati? I valori che vuoi cercare rientrano nell'intervallo dei valori che conosci? Ti preoccupi veramente dei parametri di distribuzione o sei interessato solo a cercare i quantili per i valori arbitrari? – slayton

+0

Ho abbastanza punti dati (circa 1000) I valori sono nell'intervallo che conosco. Non sono interessato ai parametri di distribuzione. Vuoi che usi una distribuzione personalizzata? Non mi piace questa idea dal momento che voglio preservare la forma gaussiana. – user1141785

risposta

0

Secondo @mpiktas here ho implementato un algoritmo di discesa del gradiente per stimare i miei mu e lambda:

  1. Fai un'ipotesi iniziale utilizzando MLE

  2. Imparare mu e lambda con discesa del gradiente con RMSE come misura di errore.

1

Come tutto ciò che si vuole veramente fare è stimare i quantili della distribuzione a valori sconosciuti e si hanno molti punti dati che possono semplicemente interpolare i valori che si vogliono cercare.

quantile_estimate = interp1(values, quantiles, value_of_interest); 
+0

Questo è veloce e sporco. – user1141785

0

Il seguente articolo spiega in dettaglio come calcolare quantili (l'inverso CDF) per la distribuzione gaussiana inversa:

Giner, G, e Smyth, GK (2016). statmod: calcoli di probabilità per la distribuzione gaussiana inversa. R Journal. http://arxiv.org/abs/1603.06687

Il codice per il linguaggio R è contenuto nello statmod del pacchetto R disponibile da CRAN. Ad esempio:

> library(statmod) 
> qinvgauss(0.01, lower.tail=FALSE) 
[1] 4.98 

calcola il quantile di coda superiore 0,01 della distribuzione IG standard.