3 votos

¿Cómo parametrizar una salida de distribución Normal bivariante para una red neuronal?

Para una red neuronal en la que la salida es una distribución gaussiana, la salida suele parametrizarse como $(\mu=O_1, \sigma^2=e^{O_2})$ . Es decir, la red neuronal emitirá la media, y también emitirá el Registrar de la varianza $O_2$ . Esta es la opción natural para que todas las salidas se ajusten a la línea real, y funciona bien a la hora de entrenar la red neuronal.

Sin embargo, quiero obtener una distribución gaussiana bivariante (con 2 medias $\mu_1$ y $\mu_2$ 2 varianzas $v_1$ y $v_2$ y una correlación $\rho$ ). El problema es que hay varias formas naturales de parametrizar las varianzas y la correlación (de forma que todo sea un número real).

Por nombrar sólo 2:

  1. Cada parámetro tiene su propia salida. \begin{align} v_1 &= e^{O_1} \\ v_2 &= e^{O_2} \\ \rho &= tanh(O_3) \end{align}

  2. Digamos que \begin{align} X_1 &= Z_1 + Z_c \\ X_2 &= Z_2 + Z_c \end{align} donde $Z_i\sim\mathcal{N}(0, e^{O_i})$ son "información privada" y $Z_c\sim\mathcal{N}(0, e^{O_3})$ es una información gaussiana "compartida". Entonces tendremos que \begin{align} v_1 &= e^{O_1} + e^{O_3} \\ v_2 &= e^{O_2} + e^{O_3} \\ \rho &= \frac{e^{O_3}}{\sqrt{v_1 \cdot v_2}} \end{align}

¿Cuál de estas formas de parametrizar la distribución gaussiana bivariante de salida sería la mejor? ¿O hay alguna mejor? Mi criterio principal sería qué funciona mejor a la hora de entrenar una red neuronal.

Personalmente, creo que la segunda forma sería mejor, ya que la elección de la correlación debería estar estrechamente ligada a la elección de las varianzas, y el modelo de "información privada"/"información compartida" para una gaussiana bivariante parece muy natural.

Por último, me basta con el caso bivariante, pero también puedo preguntar qué se podría hacer en el caso multivariante.

4voto

mclaughlinj Puntos 1099

Para el caso multivariante, puede intentar generar un vector $d$ de entradas diagonales y un $n\times k$ matriz $R$ y que $\Sigma = \text{diag}(d) + RR^T$ . Esto sería fácil de muestrear, fácil de backpropagate a través de, y también se puede compensar el coste de cálculo con expresividad (como $k \rightarrow n$ se tiene una matriz de covarianza completa).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X