#284 closed defect (fixed)
convergencia en la estimación
Reported by: | jconde | Owned by: | Pedro Gea |
---|---|---|---|
Priority: | blocker | Milestone: | Release 0.5 |
Component: | Estimation | Keywords: | convergence, estimation, parameters |
Cc: |
Description (last modified by )
Problema con la estimación y/o convergencia de una estimación:
no he conseguido trazar bien el error, pero explico lo que ocurre: en un modelo con un output con gran número de omitidos la estimación de los mismos, en ocasiones, es divergente, esto es, el valor del parametro asociado al omitido crece sin limites.
(De hecho estoy bastante seguro que cuando esto ocurre, alguna vez tol da un error al no saber manejar tal problema:
ERROR: [1] EXCEPTION: Uncontrolled exception in TOL evaluator
).
Inicialmente pensamos que fijando el valor del prior del omitido (media y sigma, valor inferior y valor superior) a traves de los atributos del output (o también del input, pues lo mismo ocurre para los omitidos de un input) se deberia resolver el problema, por lo menos evitar la divergencia, pero esto no esta ocurriendo asi!
(se estan fijando, en la definición del modelo, el prior del omitido de la forma:
Real output::_.parametersMissing.PriorAverage := 1;
)
Realmente el que esto no funcione es lo que me hace pensar en un problema de divergencias, pero no lo tengo claro.
Adjunto un ejemplo donde se produce la divergencia al estimar (es el modelo en texto + info en ozas escrita por MMS, pues reproducir el modelo que estoy corriendo en codigo sería algo engorroso).
Adjunto también un oza con el set de parametros estimados, donde se pueden ver los parametros y sus valores estimados (y de paso también los parametros de previsión).
El ticket es subido como blocker + defect, pues claro, no puedo estimar, pero como no tengo clara la naturaleza del problema no se muy bien donde corresponderia (o si me estoy pasando al ponerla como blocker). El modelo es sencillo (ARIMA, un input, omitidos) y no deberia de ser el responsable (pero no se, no lo descarto), y las restricciones/priors están puestos, y parece que no están siendo bien cogidas.
Como última curiosidad/problema: la estimación se hace en dos pasos, primero con el contenido del modelo tal cual, y después se le pasa un AIA, que añade algunos input pulso. Estos también divergen!!!
Change History (7)
comment:1 Changed 15 years ago by
Description: | modified (diff) |
---|---|
Owner: | set to Pedro Gea |
Status: | new → accepted |
comment:2 Changed 15 years ago by
Milestone: | → Release 0.5 |
---|---|
version: | → 0.5 |
comment:3 Changed 15 years ago by
(In [1457]) Se crean métodos para manejar la información a priori de los parámetros de omitido que se construirán automáticamente:
GetParametersMissing.PriorInfo
y SetParametersMissing.PriorInfo
.
Además se incluye la persistencia de estos valores para que se conserven con las copias y guardados.
Refs #284
comment:4 Changed 15 years ago by
comment:5 Changed 15 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Creo que con los cambios anteriores ya no habrá problemas de divergencia, pues la información a priori de los omitidos entrará correctamente.
Utiliza siempre el método
Real [output|input]::SetParametersMissing.PriorInfo(mean, sigma, inferior, superior)
para establecer la información a priori para los omitidos, sólo de esta forma podemos asegurar que se construyen los parámetros adecuadamente.
comment:6 Changed 15 years ago by
comment:7 Changed 12 years ago by
Los archivos adjuntos con datos privados se han ubicado en la unidad local B.
¿dónde está el modelo?