close Warning: Can't synchronize with repository "(default)" (/var/svn/mms does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 15 years ago

Closed 14 years ago

#307 closed enhancement (fixed)

Output en previsión

Reported by: irobles Owned by: Pedro Gea
Priority: major Milestone: Development 0.6
Component: Results Keywords:
Cc:

Description

Buenos días,

creo que no hay un metodo para coger el output en previsión sin tranformar (en terminos originales). Si hay alguno por favor decirme cual es o si no, nos vendría muy bien que hubiera uno.

Gracias,
Un cordial saludo

Change History (4)

comment:1 Changed 15 years ago by Pedro Gea

Component: ForecastGeneral
Status: newaccepted
Type: doubtenhancement

Este método, en el caso de las previsiones, no es tan trivial como pueda parecer.
La previsión del output es una variable aleatoria normal (comúnmente una previsión y su error), mientras que la transformación inversa de esta previsión es una variable aleatoria cuya distribución depende de la transformación escogida.

Ya que en MMS_0.5 la transformación sólo se conoce por las funciones directa e inversa implementadas, de manera general, lo único que podemos hacer es muestrear la previsión del output y obtener una muestra de la previsión de las observaciones (output transformado) y a partir de ahí obtener los momentos deseados.

La moda de la variable aleatoria (que coincide con la media sólo en el caso normal) se mantiene con la transformación, de modo que obtener la "previsión máximo-verosímil" (que no media) equivaldría a la transformada inversa de la media de la previsión del output.

Si la transformación es conocida podría utilizarse un método analítico para obtener los estadísticos de la previsión de las observaciones. Un ejemplo muy característico es el caso de transformación logarítmica donde la previsión se distribuye según una lognormal y la previsión media de las observaciones sería:

observations.forecast.mean = Exp(output.forecast.mean + 0.5*output.forecast.variance)
observations.forecast.variance = (Exp(output.forecast.variance)-1) * observations.forecast.mean**2

comment:2 Changed 15 years ago by Pedro Gea

Component: GeneralResults
Milestone: Release 0.5Development 0.6
version: 0.50.6

comment:3 Changed 14 years ago by Pedro Gea

(In [1812]) Se introducen las variables aleatorias que se distribuyen como una normal transformada con una boxcox.
La distribución Normal y LogNormal son casos particulares de esta BoxCoxNormal.
La transformación BoxCox se ha extendido para que tenga inversa en todo el espacio real.
Refs #307

comment:4 Changed 14 years ago by Pedro Gea

Resolution: fixed
Status: acceptedclosed

(In [1813]) Se introduce la variables aleatoria @Serie.BoxCoxNormal en la salida
del método de previsión ::GetObservations.Forecast y en su utilización
en la combinación de variables aleatorias.
En el caso de una transformación no BoxCox, la previsión de la variable
de observaciones (transformación inversa del output) se obtiene a partir
de una muestra de 1000 experimentos de la previsión del output.
Closes #307

Note: See TracTickets for help on using tickets.