Estoy tratando de encontrar la estimación MAP para un modelo por gradiente de descenso. Mi anterior es gaussiano multivariante con una matriz de covarianza conocida.
A nivel conceptual, creo que sé cómo hacer esto, pero esperaba ayuda con los detalles. En particular, si hay una manera más fácil de abordar el problema, entonces sería especialmente útil.
Esto es lo que creo que debo hacer:
- Para cada dimensión, encuentre la distribución condicional, dada mi posición actual en las otras dimensiones.
- Esto me da un Gaussiano univariado local en cada dimensión, con la media correcta y la desviación estándar.
- Creo que el gradiente debería ser un vector de derivadas para cada una de estas distribuciones univariadas.
Mi pregunta tiene dos partes:
- ¿Es este el mejor enfoque o hay una manera más fácil?
- Suponiendo que necesito ir por esta ruta, ¿cuál es la mejor manera de encontrar estas distribuciones condicionales?
Respuestas:
¿Qué pasa con la optimización?
A ver si te entiendo correctamente. Tiene un modelo condicionado a alguna observación un conjunto de parámetros y un anterior que conduce a una probabilidad conjunta de . Los parámetros se distribuyen de acuerdo con una normal multivariada conocida, es decir, . Desea encontrar la solución MAP para este problema, es decir, Un caso especial de este problema está bien estudiado en la comunidad de redes neuronales, conocida como pérdida de peso. En ese caso, y .p ( yEl | x,θ) X θ p ( θ ) L =p(yEl | x,θ)p(θ) θ ∼ N( μ , Σ )
Como ya señaló, el truco es que . Cuando tomas el logaritmo de la densidad gaussiana, se desvanecen muchos términos feos (el exponencial) y terminarás con algo como . Si diferencia eso, las identidades de la matriz de Sam Roweis serán útiles y le permitirán llegar aargmaxθL =argmaxθIniciar sesiónL Iniciar sesiónp ( θ ) =12( θ - μ)TΣ- 1( θ - μ ) + const
(Verifique, esto se hizo rápidamente y en mi cabeza). Junto con los derivados de su modelo, puede usar optimizadores listos para usar para llegar a una solución MAP.
Actualización : Comentario incorporado de David J. Harris. Las fórmulas deberían ser correctas ahora.
fuente
Si la probabilidad no es gaussiana, no es posible decir si hay resultados analíticos. Además, la segunda viñeta es incorrecta en general. Dado que la probabilidad gaussiana previa y general no permite distribuciones gaussianas condicionales en los componentes del vector.
Una forma de obtener el MAP sería hacer un análisis bayesiano completo, por ejemplo, usando MCMC y usar las muestras de la parte posterior para estimarlo. [En cuyo caso, tendrías mejor información disponible que solo usar el MAP.] Sin interés, ¿por qué no seguir esta ruta de todos modos?
Otro enfoque podría ser hacerlo (no he visto esto en general, así que alguien corríjame si está loco):
Luego resuelve paraθ (probablemente numéricamente).
fuente