1 votos

Máquina de Boltzmann restringida: cómo implementar unidades visibles gaussianas

Por favor, soy novato con la Máquina de Boltzmann Restringida, soy psicólogo (no muy bueno con las matemáticas) y y tengo alguna confusión sobre el uso de unidades visibles gaussianas.

Nota Estoy trabajando en el original Hinton código , en particular:

  • Estoy utilizando el código Matlab "rbm.m" (implementando un RBM con unidades visibles y ocultas binarias);
  • Estoy utilizando el conjunto de datos MNIST como entrada;
  • Estoy leyendo el artículo de Hinton "Guía práctica para el entrenamiento de la máquina de Boltzman restringida (2010)"

Según tengo entendido, se corrigen las siguientes reclamaciones:

1) las entradas (un parche de 28x28 en escala de grises) son valores reales en [0,1], aunque la distribución de píxeles sea principalmente binario (casi todos los píxeles son 0 ó 1); supongo que "unidades visibles binarias" se refiere a la distribución de entrada.

2) las unidades ocultas se actualizan mediante la función sigmoidea en la suma ponderada de las entradas, que calcula la probabilidad de que la unidad se encienda o se apague; entonces los hiddens se encienden o se apagan estocasticamente.

3) una vez que las unidades ocultas se convierten en binarias, se utilizan (como entrada) para reconstruir las unidades visibles: las unidades visibles reconstruidas se actualizan utilizando la función función sigmoidea en la suma ponderada de hiddens. Hinton afirma (en el documento) que es habitual utilizar esta probabilidad como unidades visibles en lugar de muestrear valores binarios. Supongo que "unidades visibles binarias" también se refiere a esta característica.

4) por último, las unidades visibles reconstruidas (valores reales en [0,1]) se utilizan para muestrear de nuevo las unidades ocultas (misma operación del punto 2).

Ahora llego a mi pregunta. En el documento, Hinton afirma que, si se utilizan imágenes naturales como entrada, las unidades visibles binarias deben sustituirse por unidades lineales con ruido gaussiano.

Pregunta 1: ¿se refiere Hinton a la fase en la que las unidades visibles se construyen a partir de unidades ocultas (punto 3)? Es decir, ¿sugiere utilizar la simple suma ponderada de las unidades ocultas (más el sesgo) para reconstruir las unidades visibles?

Pregunta 2: para "Ruido gaussiano independiente", ¿significa que las imágenes naturales tienen una distribución gaussiana? ¿O debo añadir un ruido gaussiano a la entrada?

1voto

hannanessay Puntos 131

Recuerdo haber luchado con algo parecido. ¿Has mirado la implementación matlab de la RBM gaussiano de Hinton ? Supongo que es para unidades ocultas gaussianas y unidades visibles binarias, así que es al revés pero sigue siendo relevante.

En la sección 13.2 de su documento de formación tiene una fórmula diferente para la energía, donde las unidades visibles tienen media $a_i$ y varianza $\sigma_i^2$ . A eso se refiere con lineal y ruido independiente . Cada unidad visible tiene asociados esos dos parámetros. Aparte de eso, tienes razón al decir que "utilizas la simple suma ponderada de hiddens (más bias)".

Además, continúa diciendo que en la práctica hay que normalizar los datos para que tengan media cero y varianza unitaria. Ver esta respuesta sobre cómo conseguirlo. Así que en la realidad/práctica eliges 1 como varianza unitaria para la fórmula de energía y realizas el paso de normalización en tus datos.

Patric

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