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

Closed 13 years ago

#932 closed doubt (fixed)

Resultado no esperado en estimación de parámetros

Reported by: Ines Miranda Owned by: Pedro Gea
Priority: blocker Milestone: Release 0.6
Component: Parameters Keywords: sigma variable, prior, parametros
Cc: fortra.vivbra@…

Description

Hola MMS,

para evitar el error de Choleski cuando tenemos poco histórico y no estamos midiendo bien los parámetros, hemos introducido en la definición de los parámetros, información a priori "fijando" la media y dejando la sigma libre "pero controlada", de la siguiente manera:

// adiciona os ExpTer
  Text vble = "Esp_SexVesDiaDosPais";
  NameBlock expterm = submodel::CreateExpTerm_TransferFunction([[
    Text _.name = vble;
    NameBlock _.input = [[
      Text _.name = vble;
      Text _.variableIdentifier = vble
    ]];    
    Polyn _.transferFunction = 1+B+B^2+B^3
  ]]);

  // restrição de sinal. Efeito positivo
  Set param = expterm::GetParametersLinear(?);
  Set EvalSet(param, Real(NameBlock par) {
    Real par::SetInitialValue(0.01);
    Real par::SetConstraint([[
      Real _.inferiorValue = 0;
      Real _.superiorValue = ?
    ]])
  });  
  //Info a priori com sigma variavel e meia fixa
  Set EvalSet(param, NameBlock(NameBlock par) {
    MMS::@Hierarchy priorConSigmaVariable = model::CreateHierarchy([[
      Text _.name = Replace(par::GetIdentifier(?), "__", "_")<<"_Prior";
      Set _.mElements = [[ par ]];
      NameBlock _.noise = [[
        Text _.type = "Normal";
        Real _.sigma = 10;
        Real _.sigmaFixed = 0.1
      ]]
    ]]);
    MMS::@HierarchyTerm  priorConSigmaVariable::CreateHierarchyTerm([[
      Text _.name = "Mean";
      Real _.initialParameter = 0.01; // Media
      Real _.isFixed = True
    ]])
  }); 
  1

Para este ejemplo en particular, el resultado del parámetro en algún caso (para algún output) está saliendo en torno a 0.073, pero en otros casos, nos están saliendo en torno a 0.5.

Puesto que estamos "fijando" la media en 0.01, a pesar de que la sigma esté libre y bastante amplia, no esperaría que me salieran parámetros tan alejados de la media definida.

Estamos definiendo bien nuestro objetivo o hay algun error en el proceso de estimación?

Si necesitáis hacer alguna prueba, puedo abrir un ticket en el trac privado y colocar un objeto forecast para que lo veais.

Muchas gracias!!

Change History (5)

comment:1 Changed 13 years ago by Ines Miranda

Type: defectdoubt

Hola,
alguna comentario?

comment:2 Changed 13 years ago by Pedro Gea

Milestone: Next

comment:3 Changed 13 years ago by CN=Giselle Shimidt Ragazzo

Priority: criticalblocker

Hola MMS,

¿Alguna novedad sobre el ticket? Dependemos de esto para migrar los resultados al entorno de homologación de Vivo! Es urgente... ¿tenéis alguna previsión para ver este ticket?

Gracias.
Giselle

comment:4 Changed 13 years ago by Pedro Gea

Milestone: NextRelease 0.6
Status: newaccepted
version: 0.6

comment:5 Changed 13 years ago by Pedro Gea

Resolution: fixed
Status: acceptedclosed

Si no me equivoco, que el parámetro tome esos valores cuando la sigma es tan grande: 10 (o incluso podría ser mayor, porque ésta es estimada) no es nada raro. Quizá lo que hay que reconsiderar es la modelación que se está haciendo, o la información a priori que se tiene.

Note: See TracTickets for help on using tickets.