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

Last modified 14 years ago

#658 new task

Incorporación a MMS del paquete GrzLinModel

Reported by: vdebuen Owned by: Pedro Gea
Priority: major Milestone: Next
Component: Estimation Keywords:
Cc: CN=Jorge Suit Perez Ronda

Description

El paquete de regresión booleana QltvRespModel que incorpora los modelos Logit y Probit ha sido generalizado hace un tiempo por el paquete GrzLinModel del cuál ahora depende, con el objeto de crear estimadores bayesianos y de máxima verosimilitud para la clase de modelos de regresión lineal generalizada con las siguientes extensiones:

  • ponderación de datos,
  • información a priori escalar normal,
  • restricciones de desigualdad lineal.

Más adelante está previsto incluir alguna otra extensión.
Concretamente existen dos especializaciones que pueden ser usadas de forma análoga a QltvRespModel::@WgtProbit y QltvRespModel::@WgtLogit

  • GrzLinModel::@WgtNormal: Modelo de regresión normal. Este modelo puede hacerse con BSR de forma mucho más genérica pero puede ser más rápido usar esta API si la matriz de regresión no es muy sparse y se puede expresar el problema dentro de la clase aceptada, es decir, si sólo se precisan las extensiones enumeradas más arriba. Nótese que sólo se estima el bloque lineal, mientras que de la desviación típica sólo se da el estadístico muestral en _.contrast::_.stdErr. Véase el ejemplo de uso.
  • GrzLinModel::@WgtPoisson: Modelo de regresión de Poinson (también llamada log-linear). Se trata de un tipo de modelo nuevo que habría que dar a conocer, pues puede ser interesante, ya que a veces se toma una log-normal para series que deberían ser una Poisson. Véase el ejemplo de uso.

En principio no habría mucho problema en generar especializaciones para cualquier modelo lineal generalizado dentro de GrzLinModel. Incluso podría facilitarse alguna forma de que el usuario especificara un par de métodos con el que generarlo de forma local, sin tener que integrarlo en el paquete.

Change History (7)

comment:1 Changed 14 years ago by Pedro Gea

Cc: CN=Jorge Suit Perez Ronda added; josp removed
Milestone: Future

comment:2 Changed 14 years ago by imendez

Hola, ¿cuál es la estrategia que utiliza esete paquete: NLO?
Gracias.

comment:3 Changed 14 years ago by vdebuen

No tengo la más mínima idea de a qué te refieres con estrategia ni qué significan las siglas NLO aunque sospecho que te refieres al método de estimación. En tal caso, el paquete es capaz de dar la solución de máxima probabilidad y de hacer simulación bayesiana. En este caso es mejor llamar primero a la solución máximo probable, aunque no la queramos ver, porque se ahorra muchas iteraciones de convergencia.

comment:4 Changed 14 years ago by Pedro Gea

El uso del paquete GrzLinModel aún no está incorporada en MMS.

Según sean sus características puede pensarse en incorporarlos en la estretegia MultiNLO o bien crear una nueva.

comment:5 Changed 14 years ago by Pedro Gea

Víctor, la pregunta de Iván no tiene nada que ver con el paquete GrzLinModel (entiendo que en ese caso la pregutna debería haberse remitido a TolProject) sino con su incorporación en MMS. Si quieres conocer algo más el diseño de MMS puedes leer algo en la introducción a MMS.

comment:6 Changed 14 years ago by Pedro Gea

Incorporo algunas anotaciones respecto a la implementación y el diseño de MMS.

En MMS se intentó desvincular en cierto modo la definición de un modelo con su estimación.
De modo que la definición fuese única y lo más cercana a su concepción matemática (módulo 02) dejando a las estrategias de estimación (módulo 03) la tarea de adaptar o adecuar a los modelos según las necesidades del estimador.

De acuerdo al diseño original de MMS (véase la [wiki/IntroModels introducción a los modelos] en MMS) el concepto de modelo se corresponde principlamente con el de un conjunto de modelos sobre las observaciones (denominados submodelos) junto a un posible conjunto de modelos sobre los parámetros (denominados jerarquías):

  • @Model
    • @Submodel
    • @Hierarchy

Se definieron así, en primer lugar, dos estrategias para modelos (@Model):

  • @StrategyBSR: basada en el uso del estimador bayesiano BSR, capaz de estimar los modelos en su conjunto.
  • @StrategyMultiMLE, o máximo-verosímil múltiple (MLE de las siglas de estimación máximo verosímil en inglés: Maximum-Likelihood Estimation) formada por distitnas subestrategias capaces de estimar por separado cada submodelo presente en el modelo. Por esta razón se denominó múltiple: MultiMLE y no simplemente MLE que correspondería a una posible estimación máximo-verosímil del modelo en su conjunto. Las subestrategias implementadas (y que gestiona internamente la estrategia según sea el submodelo) son:
    • @SubstrategyEstimate
    • @SubstrategyLinReg
    • @SubstrategyGLM: que adecúa los submodelos de tipo modelo lineal generalizado (GLM: Generalized Linear Model) los estimadores Probit o Logit.

La estrategia MultiNLO surge a raíz de los nuevos estimadores para submodelos, concretamente las siglas NLO hacen referencia a Non-Linear Optimization. La única subestrategia implementada corresponde a:

  • @SubstrategyQLM: que adecúa los submodelos correspondientes al estimador de modelos de respuesta cualitativa (y de ahí QRM: Qualitative Response Model) implementado en QltvRespModel.

comment:7 Changed 14 years ago by vdebuen

Bien, entiendo lo que dices.

En este caso hay que hacer lo mismo en GrzLinModel que en QltvRespModel, que de hecho es un caso particular del primero. Quizás habría que añadir una subestrategia que permita usar desde MMS la simulación bayesiana de este tipo de modelos.

Por una serie de desgracias del devenir, se han quedado los nombres de las subestrategias para los logit y probit casi al revés de lo que hacen o pueden hacer. Me imagino que esos nombres son internos de MMS así que si os entendéis no hay problemas. Me explico:

  • @SubstrategyGLM hace referencia a Generalized Linear Model cuando en realidad sólo existe para dos clases de modelos booleanos: Logit y Probit. El método usado no podría extenderse jamás a modelos generalizados no booleanos.
  • @SubstrategyQLM hace referencia a modelos cualitativos, que es una extensión de booleanos, como era en origen, pero ahora se podría extender a cualquier modelo lineal generalizado: booleano, cualitativo, discreto, continuo o mixto.

No pretendo ahora cambiar nada en la nomenclatura elegida para las estrategias de estimación en MMS, pero igual sí sería conveniente poner un poco de orden a nivel teórico, así que estoy intentándolo en

https://www.tol-project.org/wiki/TolDocEstimacionEstrategias

Note: See TracTickets for help on using tickets.