Puntos de referencia de rendimiento para MCMC

14

¿Se han realizado estudios a gran escala de métodos MCMC que comparen el rendimiento de varios algoritmos diferentes en un conjunto de densidades de prueba? Estoy pensando en algo equivalente al artículo de Rios y Sahinidis (2013), que es una comparación exhaustiva de una gran cantidad de optimizadores de caja negra sin derivados en varias clases de funciones de prueba.

Para MCMC, el rendimiento puede estimarse en, por ejemplo, el número efectivo de muestras (ESS) por evaluación de densidad, o alguna otra métrica apropiada.

Algunos comentarios:

  • Aprecio que el rendimiento dependerá en gran medida de los detalles del pdf objetivo, pero un argumento similar (posiblemente no idéntico) es válido para la optimización y, sin embargo, hay una gran cantidad de funciones de referencia, suites, concursos, documentos, etc. que se ocupan de la optimización de la evaluación comparativa algoritmos

  • Además, es cierto que MCMC difiere de la optimización en que comparativamente se necesita mucho más cuidado y ajuste por parte del usuario. Sin embargo, ahora hay varios métodos MCMC que requieren poca o ninguna sintonización: métodos que se adaptan en la fase de quemado, durante el muestreo, o métodos multiestado (también llamados conjuntos ) (como Emcee ) que desarrollan múltiples cadenas de interacción y uso información de otras cadenas para guiar el muestreo.

  • Estoy particularmente interesado en la comparación entre los métodos estándar y multiestado (también conocido como conjunto). Para la definición de multiestado, consulte la Sección 30.6 del libro de MacKay :

En un método multiestado, se mantienen múltiples vectores de parámetros ; evolucionan individualmente bajo movimientos como Metropolis y Gibbs; También hay interacciones entre los vectores.X

  • Esta pregunta se originó a partir de aquí .

Actualizar

  • Para una versión interesante de los métodos de conjuntos aka de múltiples estados, vea esta publicación de blog de Bob Carpenter en el blog de Gelman, y mi comentario se refiere a esta publicación de CV.
lacerbi
fuente

Respuestas:

5

Después de algunas búsquedas en línea, he tenido la impresión de que no existe un punto de referencia integral de los métodos MCMC establecidos, análogo a lo que uno puede encontrar en la literatura de optimización. (Estaría feliz de estar equivocado aquí).

Es fácil encontrar comparaciones de algunos métodos MCMC en problemas específicos dentro de un dominio aplicado. Esto estaría bien si pudiéramos agrupar esta información; sin embargo, la calidad de tales puntos de referencia a menudo es insuficiente (por ejemplo, debido a la falta de métricas informadas o malas elecciones de diseño).

A continuación publicaré lo que creo que son contribuciones valiosas a medida que las encuentro:

  • Nishihara, Murray y Adams, MCMC paralelo con muestreo generalizado de rebanadas elípticas , JMLR (2014). Los autores proponen un nuevo método multiestado, GESS, y realizan una comparación con otros 6 métodos de estado único y multiestado en 7 funciones de prueba. Evalúan el rendimiento como ESS (Tamaño de muestra efectivo) por segundo y por evaluación de la función.

  • SamplerCompare es un paquete R con el objetivo de realizar una evaluación comparativa de los algoritmos MCMC: exactamente sobre lo que estaba preguntando en mi pregunta original. Desafortunadamente, el paquete contiene solo unas pocas funciones de prueba; El documento adjunto no informa sobre puntos de referencia reales (solo un pequeño ejemplo) y parece que no ha habido seguimientos.

Thompson, Madeleine B. "Introducción a SamplerCompare". Journal of Statistical Software 43.12 (2011): 1-10 ( enlace ).

  • Para una versión interesante de los métodos de conjuntos aka de múltiples estados, vea esta publicación de blog de Bob Carpenter en el blog de Gelman, y mi comentario se refiere a esta publicación de CV.
lacerbi
fuente
Su segundo enlace está muerto, ¿podría cambiarlo por uno que funcione?
Tim
Es posible que desee echar un vistazo a este artículo de diciembre de 2017: Ryan Turner y Brady Neal, ¿Qué tan bien funciona realmente su muestra? Parece proporcionar una solución ordenada para exactamente este problema de llegar a un buen punto de referencia para los algoritmos MCMC.
Carl
2

Estoy de acuerdo con su evaluación de que no hay puntos de referencia exhaustivos establecidos para los métodos MCMC. Esto se debe a que cada muestra MCMC tiene pros y contras, y son extremadamente específicos de problemas.

En una configuración típica de modelado bayesiano, puede ejecutar el mismo muestreador con diversas velocidades de mezcla cuando los datos son diferentes. Diría que si en el futuro sale un estudio de referencia exhaustivo de varios muestreadores MCMC, no confiaría en que los resultados sean aplicables fuera de los ejemplos mostrados.

Con respecto al uso de ESS para evaluar la calidad del muestreo, vale la pena mencionar que ESS depende de la cantidad que se estimará a partir de la muestra. Si desea encontrar la media de la muestra, el ESS obtenido será diferente de si desea estimar el 25º cuantil. Dicho esto, si la cantidad de interés es fija, ESS es una forma razonable de comparar muestreadores. Quizás una mejor idea es ESS por unidad de tiempo.

Una falla con ESS es que para problemas de estimación multivariada, ESS devuelve un tamaño de muestra efectivo para cada componente por separado, ignorando todas las correlaciones cruzadas en el proceso de estimación. En este documento recientemente, se ha propuesto un ESS multivariado, e implementado en Rpaquete a mcmcsetravés de la función multiESS. No está claro cómo este método se compara con el ESS del codapaquete, pero al principio parece más razonable que los métodos univariados de ESS.

Greenparker
fuente
2
(+1) Gracias por la respuesta. Estoy de acuerdo con algunos de sus puntos, pero sigo pensando que podría obtenerse alguna información de ese punto de referencia. La forma en que uno usa los resultados de tales puntos de referencia para guiar las elecciones futuras depende de ellos, pero alguna evidencia es mejor que ninguna evidencia. Buenos puntos sobre ESS. Por multiestado me refiero a multiestado (o multicadena, si lo prefiere), no simplemente multivariante: vea la cita del libro de MacKay en mi pregunta original.
lacerbi
2
En general, se sabe que algunos muestreadores tienen un bajo rendimiento para distribuciones multimodales (MH, Gibbs), y algunos son malos para el soporte no convexo (Hamiltonian MC). Por otro lado, para problemas de alta dimensión, Hamiltonian MC funciona bien y para distribuciones multimodales, el templado simulado, etc., es bueno. Para realizar cualquier evaluación comparativa, es posible que sea necesario definir diferentes clases amplias de distribuciones objetivo (sub-exponencial, log cóncavo, etc.) para que los resultados sean generalmente interpretables.
Greenparker
1
Bueno, sí, ese es el objetivo de construir un punto de referencia para una clase de algoritmos. Vea, por ejemplo, esto para la optimización global. Claramente, un punto de referencia para MCMC no puede simplemente tomar prestados los existentes para la optimización; es necesario centrarse en las características de las densidades objetivo que son específicas, comunes y de interés para los problemas de MCMC, como las que mencionó.
lacerbi