Tutorial: cómo crear un motor de recomendaciones con una máquina de Boltzmann restringida usando TensorFlow

-

¿Qué es una máquina Boltzmann restringida?

Una máquina de Boltzmann restringida es una red neuronal artificial de dos capas (capa de entrada y capa oculta) que aprende una distribución de probabilidad basada en un conjunto de entradas. Es estocástico (no determinista), lo que ayuda a resolver diferentes problemas basados en combinaciones. Los RBM se pueden utilizar para la reducción de dimensionalidad, clasificación, regresión, filtrado colaborativo, aprendizaje de características y modelado de temas.

Como sugiere el nombre, un RBM es una clase de máquinas Boltzmann. Sin embargo, están restringidos de ciertas formas cuando se consideran las conexiones entre la entrada y los nodos ocultos de la red neuronal, por lo que es más fácil implementar un RBM que una máquina Boltzmann. Las capas y los nodos dentro de esas capas están conectados de uno a muchos, donde cada nodo en la capa de entrada está conectado a cada nodo en la capa oculta pero ningún nodo está conectado dentro de cada capa. La restricción permite algoritmos de entrenamiento más optimizados que los que se usan generalmente en las máquinas de Boltzmann.

La siguiente figura muestra cómo se ve un RBM. Como puedes ver, todos los nodos de la capa de entrada están conectados a cada nodo de la capa oculta. La estructura de la red neuronal en sí la hace eficiente al entrenar la red neuronal porque una capa de entrada puede usar muchas capas ocultas para el entrenamiento. También se pueden apilar múltiples RBM, creando una red de creencias profundas que permite un aprendizaje más profundo de la red neuronal e incorpora aprendizaje adicional.

Made by author

¿Cómo funciona una máquina Boltzmann restringida?

Hay dos pasos involucrados al observar cómo funciona una GBR:

  • Múltiples entradas.
  • Reconstrucción.

Múltiples entradas

Se considera que múltiples entradas son el primer paso al entrenar la red neuronal. Las entradas se toman en la capa de entrada, se multiplican por los pesos y se suman al sesgo. Después de esto, pasa por la función de activación (sigmoidea), y las salidas deciden si se activa el estado oculto.

Los pesos en la red neuronal están en una matriz, donde el número de nodos de entrada es el número de filas y el número de nodos ocultos es el número de columnas. El nodo oculto primario obtiene la multiplicación vectorial de las entradas y se multiplica por la primera columna de pesos antes de agregarle el término de sesgo correspondiente.

Made by author

Reconstrucción

En reconstrucción, la lógica es bastante simple. Tienes las activaciones, que son las entradas en este punto y luego se pasan a la capa oculta y luego a la entradaa. Después de esto, se obtienen nuevos sesgos y la reconstrucción es la nueva salida.

Made by author

Entonces, ¿cómo funciona realmente el proceso de aprendizaje? Debido a que estos dos pasos ocurren posteriormente, primero generas activaciones usando la fase de entradas múltiples, luego tiene lugar la reconstrucción. Cuando la reconstrucción se lleva a cabo en una época, el objetivo principal es disminuir el error de reconstrucción de modo que los pesos se ajusten luego por iteración en consecuencia por el algoritmo para disminuir el error de reconstrucción. Esto le brinda una buena predicción y una mayor precisión.

Creación de un sistema de recomendación de películas utilizando filtrado colaborativo y RBM

¿Está interesado en implementar una máquina Boltzmann restringida? Bueno, entonces sigue mi reciente tutorial sobre IBM Developer para crear un sistema de recomendación de películas usando RBM y TensorFlow.

En este tutorial, aprenda a construir una máquina Boltzmann restringida usando TensorFlow que le dará recomendaciones basadas en películas que se han visto. Los conjuntos de datos utilizados en el tutorial son de GroupLens y contienen películas, usuarios y clasificaciones de películas. Utiliza una función de activación sigmoidea para la red neuronal, y las recomendaciones devueltas se basan en la puntuación de recomendación que genera una máquina de Boltzmann restringida (RBM).

Objetivos de aprendizaje

En este tutorial, podrás:

  • Comprender cómo funcionan las máquinas de Boltzmann restringidas
  • Conocer cómo se puede implementar el filtrado colaborativo en máquinas Boltzmann restringidas
  • Comprender los casos de uso y el proceso de aprendizaje de las máquinas de Boltzmann restringidas.

Prerrequisitos

Se requieren los siguientes requisitos previos para seguir el tutorial:

Para implementar y seguir el tutorial, haz clic aquí.

  • Regístrate en IBM Cloud aquí.
  • Mira el tutorial aquí.

Entradas del mismo autor

Deja un comentario