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 12 years ago

Last modified 12 years ago

#295 closed doubt (fixed)

metodo GetParameters en submodel

Reported by: hfernandez Owned by: Pedro Gea
Priority: major Milestone: Development 1B
Component: Models Keywords: GetParameters, submodelo
Cc:

Description

El objeto submodelo debería tener un método genérico, Set GetParameters(Real void) para extraer los parámetros.

Change History (6)

comment:1 Changed 15 years ago by Pedro Gea

Component: GeneralResults
Milestone: Release 0.5
version: 0.5

comment:2 Changed 15 years ago by Pedro Gea

Milestone: Release 0.5Release 0.6
version: 0.50.6

comment:3 Changed 12 years ago by Pedro Gea

Status: newaccepted

Los parámetros se crean en las distintas partes del modelo, no siendo el submodelo, estrictamente poseedor de ninguno de ellos:

  • Los parámetros lineales de los términos explicativos (@ParameterLinear) están contenido en los términos explicativos: Submodel->ExpTerm->ParameterLinear, para localizarlos desde un submodelo podemos hacer:
    Set SetConcat(EvalSet(<submodel>::GetExpTerms(?), Set (MMS::@ExpTerm expTerm) {
      expTerm::GetParametersLinear(?)
    }));
    
  • Los parámetros no lineales de los términos explicativos (@ParameterNonLinear) sólo existen en los términos no lineales ("NonLinear") o de tipo ratio ("Ratio") para localizarlos haremos:
    Set SetConcat(EvalSet(<submodel>::GetExpTerms(?), Set (MMS::@ExpTerm expTerm) {
      If(expTerm::GetSubclass(?)<:[["Ratio", "NonLinear"]], 
        expTerm::GetParametersLinear(?), Copy(Empty))
    }));
    
  • Los parámetros ARIMA de los submodelos dinámicos (@ParameterARIMA) se encuentran en los distintos bloques ARIMA del ruido (noise) del modelo. Para localizarlos haremos:
    Set If(<submodel>::GetNoise(?)::GetSubclass(?)=="ARIMA", {
      Set SetConcat(EvalSet(<submodel>::GetNoise(?)::GetARIMABlocks(?), 
        Set (MMS::@ARIMABlock block) {
        block::GetParametersARIMA(?)
      }))
    }, Copy(Empty));
    
  • El parámetro de la varianza de las perturbaciones (@ParameterSigma2) se obtiene como:
    s::GetNoise(?)::GetParameterSigma2(?)
    
  • Los parámetros de omitido (@ParameterMissing) son, sin embargo, parámetros de las variables del modelo (@MVariable) de modo que estrictamente no pertenecen a un submodelo (podrían pertenecer a varios). Para obtener los parámetros de omitidos vinculados al output o a los inputs de un submodelo, haremos:
    Set <submodel>::GetOutput(?)::GetParametersMissing(?);
    Set SetConcat(EvalSet(<submodel>::GetExpTerms(?), Set (MMS::@ExpTerm expTerm) {
      expTerm::GetInput(?)::GetParametersMissing(?)
    }));
    
  • Los hiperparámetros (@ParameterHyper) se encuentran localizados en los términos de las jerarquías, de modo que no tienen ninguna vinculación directa con un submodelo.

comment:4 Changed 12 years ago by Pedro Gea

Component: ResultsModels

comment:5 Changed 12 years ago by Pedro Gea

Resolution: fixed
Status: acceptedclosed

comment:6 Changed 12 years ago by Pedro Gea

Type: enhancementdoubt
Note: See TracTickets for help on using tickets.