Enciclopedia/Diccionario de Psicología y Neurociencias:
ıllı Máquina de Boltzmann wiki: info, libros pdf y vídeos
- Detalles
- Categoría: PSICOLOGIA (WIKINFO)
Máquina de Boltzmann
Una máquina de Boltzmann es un género de red neuronal recurrente estocástica. El nombre le fue dado por los estudiosos Geoffrey Hinton y Terry Sejnowski. Las máquinas de Boltzmann pueden considerarse como la contraparte estocástica y generativa de las redes de Hopfield. Fueron de los primeros géneros de redes neuronales capaces de aprender a través de representaciones internas, son capaces de representar y (con tiempo preciso) solucionar difíciles inconvenientes combinatorios. No obstante, debido a una serie de cuestiones que se abordan más adelante, las máquinas de Boltzmann sin limitaciones de conectividad no han probado ser útiles para solucionar los inconvenientes que se dan en la práctica en el aprendizaje o bien inferencia de las máquinas. Incluso de este modo resultan interesantes en la teoría debido a la ubicación y a la naturaleza hebbiana de su algoritmo de adiestramiento, como por su paralelismo y por la similitud de su activa a fenómenos físicos fáciles. Si se restringe la conectividad, el aprendizaje puede ser lo suficiente eficiente para ser útil en la resolución de inconvenientes prácticos. En mecánica estadística se llaman distribuciones de Boltzmann y son usadas en funciones de muestreo. Las máquinas de Boltzmann, del mismo modo que las redes de Hopfield, tienen unidades con una "energía" definida para la red. Asimismo dispone de unidades binarias, mas en contraste a las redes de Hopfield, las unidades de una máquina de Boltzmann son estocásticas. La energía global, E, en una máquina de Boltzmann es idéntica en forma a la de una red de Hopfield: Las conexiones de una máquina de Boltzmann tienen 2 limitaciones: El incremento de energía global que resulta de una sola unidad i siendo 0 (off) en frente de 1 (on), expresada como ?Ei, viene dada por la expresión: Esto se puede expresar como la diferencia de energía entre 2 estados: A continuación reemplazamos la energía para cada Estado con su probabilidad relativa conforme con el factor de Boltzmann (la propiedad de la distribución de Boltzmann en la que la energía de un estado es proporcional por lo menos logaritmo de probabilidad de tal estado): Donde kB es la incesante de Boltzmann y se abarca en la noción artificial de temperatura T. Ahora se reordenan los términos estimando que la probabilidad de que una unidad esté en on y en off es uno: Finalmente podemos solucionar para pi=on, la probabilidad de que la unidad i esté en on. Donde el escalarT se refiere a de qué forma está la temperatura en el sistema. Esta relación es la fuente de la función logística que se halla en las expresiones de probabilidad de las diferentes variaciones de la máquina de Boltzmann. La red se ejecuta reiteradamente eligiendo una unidad y estableciendo su estado conforme con la fórmula precedente. Tras ejecutarse a lo largo de suficiente tiempo a una cierta temperatura, la probabilidad del estado global de la red dependerá solo del estado global de energía, conforme a una distribución de Boltzmann. Esto quiere decir que los logaritmos de las probabilidades de los estados globales se volverán lineales en sus energías. Esta relación se cumple cuando la máquina está "en equilibrio termodinámico", lo que quiere decir que la distribución de probabilidad de los estados globales ha convergido. Si comenzamos a hacer marchar la red a elevada temperatura, y desciende gradualmente hasta llegar a un equilibrio termodinámico a una baja temperatura, vamos a estar garantizando la convergencia a una distribución donde el nivel de energía oscile alrededor del mínimo global. Este proceso lleva por nombre Simulated annealing (sociedad anónima) o bien temperado simulado. Para adiestrar a la red de tal modo que la posibilidad de que confluya en un estado global se ajuste a una distribución externa, va a haber que establecer los pesos a fin de que los estados globales con mayor probabilidad tengan la energía más baja. Para ello se utiliza el próximo procedimiento de adiestramiento. Las unidades de la máquina de Boltzmann se dividen en unidades "perceptibles", V, y unidades "ocultas", H.Las primeras son las que van a recibir información del "ambiente", por poner un ejemplo la serie de adiestramiento podría ser un conjunto de vectores binarios aplicado sobre las unidades V. La distribución en el conjunto de adiestramiento se indica P+(V). En las máquinas de Boltzmann, como ya se ha dicho, la distribución de los estados globales confluyen hasta un equilibrio termodinámico. Una vez que marginalizar sobre las unidades perceptibles V, la convergencia de la distribución se puede indicar como P-(V). Nuestro objetivo es acercar la distribución "real" P+(V) a la expresión P-(V), la que es producida ocasionalmente por la máquina. Para medir la semejanza entre las 2 distribuciones se emplea la divergencia de Kullback-Leibler, G: Donde el sumatorio es superior a todos y cada uno de los posibles estados de V. G cambia en función de los pesos, puesto que estos determinan la energía de un estado, y la energía por su parte determina P-(v), conforme la distribución de Boltzmann. En consecuencia, podemos usar un algoritmo de descenso de gradiente sobre G para un peso determinado, wij, que se cambiará quitando la derivada parcial de G respecto al peso. El adiestramiento de una máquina de Boltzmann consta de 2 fases, que se marchan mudando iterativamente entre ellas. Una es la fase "positiva" en que los estados de las unidades perceptibles se sostienen a un vector de estado binario particular, muestra del conjunto de adiestramiento (conforme a P+). La otra es la fase "negativa", en la que a la red se le deja ejecutarse de manera libre, esto es, los estados de las unidades no están ciertos por datos externos. Sorprendentemente, el gradiente respecto a un peso determinado, wij, está dado por una ecuación sencillísima (probada por Ackley et al.): Donde: Este resultado se deduce del hecho de que en el equilibrio termodinámico la probabilidad P-(s) de cualquier estado global s cuando la red está marchando de forma libre viene dada por la distribución de Boltzmann (de ahí el nombre de "máquina de Boltzmann"). Sorprendentemente, esta regla de aprendizaje es bastante plausible desde el punto de vista biológico por el hecho de que la única información precisa para mudar los pesos es proporcionada de forma "local". Esto es, la conexión (o bien sinapsis utilizando terminología biológica) no precisa más información que la que proveen las 2 neuronas que conecta. Esto es considerablemente más realista biológicamente hablando que lo que pasa con la información que precisan otros muchos algoritmos de adiestramiento de redes neuronales, como por servirnos de un ejemplo el de retropropagación. En el entrenamiendo de una máquina de Boltzmann no se usa el algoritmo EM, muy empleado en Aprendizaje automático. Disminuir al mínimo la divergencia KL, es equivalente a aumentar al máximo el logaritmo de la verosimilitud de los datos. Por ende, el procedimiento de adiestramiento hace un gradiente de ascenso sobre el logaritmo de verosimilitud de los datos observados. Esto contrasta con el algoritmo EM, donde la distribución siguiente de los nodos ocultos ha de ser calculada ya antes de la maximización de la verosimilitud llevada a cabo en el paso M. En adiestramiento de cortes es afín, mas utiliza solo la actividad de un solo nodo: Aunque el aprendizaje es en general poco práctico en las máquinas de Boltzmann, puede ser muy eficaz en una arquitectura llamada Máquina de Boltzmann limitada o bien MBR (RBM en inglés: Restricted Boltzmann Machine). Esta arquitectura no deja las conexiones entre las unidades de las capas ocultas. Tras adiestrar a una MBR las actividades de sus unidades ocultas pueden ser tratadas como datos para el adiestramiento de una MBR de nivel superior. Este procedimiento de apilamiento MBR hace que resulte posible adiestrar muchas capas de unidades ocultas de forma eficaz y que cada nueva capa sea añadida para prosperar el modelo generativo primordial.