Recientemente comencé a usar la validación cruzada de muestreo de importancia suavizada Pareto (PSIS-LOO), descrita en estos documentos:
- Vehtari, A. y Gelman, A. (2015). Pareto suavizó el muestreo de importancia. preimpresión arXiv ( enlace ).
- Vehtari, A., Gelman, A. y Gabry, J. (2016). Evaluación práctica del modelo bayesiano utilizando validación cruzada de dejar uno fuera y WAIC. preimpresión arXiv ( enlace )
Esto representa un enfoque muy atractivo para la evaluación de modelos fuera de muestra, ya que permite realizar LOO-CV con una sola ejecución de MCMC, y supuestamente es mejor que los criterios de información existentes como WAIC.
PSIS-LOO tiene un diagnóstico que le indica si la aproximación es confiable, dada por los exponentes estimados de las distribuciones de Pareto ajustadas a las colas de las distribuciones empíricas de pesos de importancia (un peso por punto de datos). En resumen, si se estima un peso , pueden suceder cosas malas.
Lamentablemente, descubrí que en mi aplicación de este método a mi problema, para la mayoría de los modelos de interés, encuentro que una gran fracción de . Como era de esperar, algunos de los log-verosimilitudes de LOO fueron evidentemente sin sentido (en comparación con otros conjuntos de datos). Como doble verificación, realicé una validación cruzada tradicional (y que lleva mucho tiempo) 10 veces, y descubrí que, de hecho, en el caso anterior, PSIS-LOO estaba dando resultados terriblemente incorrectos (por el lado positivo, los resultados estaban muy de acuerdo con 10 CV doble para los modelos en los que todos ). Para el registro, estoy usando la implementación MATLAB de PSIS-LOO por Aki Vehtari.
Quizás soy muy desafortunado porque mi primer problema actual en el que aplico este método es "difícil" para PSIS-LOO, pero sospecho que este caso podría ser relativamente común. Para casos como el mío, el documento de Vehtary, Gelman & Gabry simplemente dice:
Incluso si la estimación de PSIS tiene una varianza finita, cuando , el usuario debe considerar tomar muestras directamente de para la problemática , use -fold cross- validación, o use un modelo más robusto.
Estas son soluciones obvias pero no realmente ideales, ya que requieren mucho tiempo o requieren violines adicionales (aprecio que MCMC y la evaluación del modelo tengan que ver con los violines, pero cuanto menos, mejor).
¿Existe algún método general que podamos aplicar de antemano para tratar de evitar que PSIS-LOO falle? Tengo algunas ideas tentativas, pero me pregunto si ya hay una solución empírica que la gente ha estado adoptando.