Puede calcular la probabilidad de un modelo usando model.logp (). Como entrada, requiere un punto. Por ejemplo, el MEJOR modelo del directorio de ejemplos que puedo hacer:
np.exp(model.logp({'group1_mean': 0.1,
'group2_mean': 0.2,
'group1_std_interval': 1.,
'group2_std_interval': 1.2,
'nu_minus_one_log': 1}))
Tenga en cuenta que este modelo está utilizando variables transformadas, por lo que tengo que proporcionarlas. Luego puede tomar el exp () de eso y usarlo dentro de un integrador numérico, por ejemplo, según lo provisto por scipy.integrate. El problema es que incluso con solo 5 parámetros, esto será muy lento.
Los factores de Bayes son generalmente muy difíciles de calcular porque tiene que integrarse en todo el espacio de parámetros. Hay algunas ideas para usar muestras de MCMC para eso. Vea esta publicación, y especialmente la sección de comentarios para obtener más información: https://radfordneal.wordpress.com/2008/08/17/the-harmonic-mean-of-the-likelihood-worst-monte-carlo-method-ever / El caso de BIC es lamentablemente similar.
Si realmente desea calcular el Factor Bayes, también puede consultar la prueba Savage Dickey Ratio (consulte, por ejemplo, http://drsmorey.org/bibtex/upload/Wagenmakers:etal:2010.pdf ), pero su aplicación es limitada.
Supongo que está tratando de hacer una comparación de modelos, que es un campo con muchas opiniones y soluciones (algunas difíciles de implementar, como los BF). Una medida que es muy fácil de calcular es el Criterio de información de desviación. Tiene sus inconvenientes, aunque algunos de ellos pueden remediarse (ver http://onlinelibrary.wiley.com/doi/10.1111/rssb.12062/abstract ). Desafortunadamente, todavía no hemos portado el código pymc3, pero sería bastante fácil (vea aquí la implementación de pymc2: https://github.com/pymc-devs/pymc/blob/895c24f62b9f5d786bce7ac4fe88edb4ad220364/pymc/MCMC.py# L410 ).
Kruschke favorece el enfoque de simplemente construir el modelo completo y dejar que le diga qué parámetros son importantes. También puede crear una selección de variables en el modelo mismo (consulte, por ejemplo, http://arxiv.org/pdf/math/0505633.pdf ).
Finalmente, para un tratamiento mucho más completo, vea esta reciente publicación de blog: http://jakevdp.github.io/blog/2015/08/07/frequentism-and-bayesianism-5-model-selection/