Version 3 (modified by 15 years ago) (diff) | ,
---|
Actualización a MMS_0.6
Modelos
Los modelos en MMS_0.6 tienen una estructura ligeramente distinta a los de los modelos en MMS_0.5. Los cambios más llamativos son:
- Los outputs de MMS_0.5
MMS.Output
pasan a ser submodelosMMS::@Submodel
formados por una mvariableMMMS::@MVariable
que hace de output un conjunto de términos explicativos y un noise. - Los términos explicativos se construyen sobre cada submodelo
MMS::@ExpTerm
desapareciendo así los términos base y los términos explicativos multi-output. Para conseguir parámetros internodales (pertenecientes a varios submodelos) aparece una nueva clase para definir equivalencias entre parámetrosMMS::@MEquivalence
, es decir indicar que dos parámetros han de ser estimados como el mismo a ser posible. - El ruido o noise dispone de una clase propia destinada a gestionar la sigma2 del submodelo (o jerarquía) y también los parámetros relativos a su estructura como en el caso de los modelos ARIMA.
- La información a priori para parámetros (distribución a priori y restricciones) está contenida en el parámetro y se gestiona desde él.
Creación de modelos
Los modelos se crean con argumentos similares a los encontrados en MMS_0.5.
La diferencia más importante es que aparece un nuevo argumento _.dataSets
destinado
a recoger los datasets que desean ser utilizados.
Téngase también en cuenta el nuevo nombre del contenedor de MMS.
Código en MMS_0.5
Real MMS::CreateModel([[ Text _.name = "modelo"; Text _.description = "..." ]]); @MMS.Model model = MMS::GetModel2("Mat.Veh","1.0");
Nótese que los modelos en MMS no son de ningún tipo. Argumentos como _.type:
Text _.type = "ARIMAX";
llevan obsoletos ya un tiempo. Este rol lo desempeñan los submodelos (o outputs en MMS_0.5).
Código en MMS_0.6
MMS::@Model model = MMS::Container::CreateModel([[ Text _.name = "modelo"; Text _.version = "test.1"; // continua siendo opcional Text _.description = "..."; Set _.dataSets = [[ "dataset1_identifier", .. ]] ]]);
Nótese que en MMS_0.6 la versión de los modelos recupera su verdadero significado e itera a partir de un modelo guardado al hacer cambios. El texto que representa a la versión del modelo ha de acabar en un número entero (que es el que se iterará) precedido por un '.'.