13 votos

¿Máquinas de Boltzmann restringidas para la regresión?

Sigo con la pregunta que había hecho antes RBMs . Veo mucha literatura que los describe pero ninguna que hable realmente de regresión (ni siquiera de clasificación con datos etiquetados). Tengo la sensación de que sólo se utiliza para datos no etiquetados. ¿Existen recursos para manejar la regresión? ¿O es tan sencillo como añadir otra capa encima de la capa oculta y ejecutar el algoritmo de CD arriba y abajo? Muchas gracias de antemano.

18voto

LexVjatkin Puntos 126

Tienes razón sobre los datos no etiquetados. Los RBM son modelos generativos y se suelen utilizar como aprendices no supervisados.

Cuando se utiliza para construir una Red Profunda de Creencia, el procedimiento más típico es simplemente entrenar cada nueva RBM de una en una, a medida que se apilan unas sobre otras. Así que la divergencia contrastiva no es subir y bajar en el sentido que creo que quieres decir. Sólo trabaja con un RBM a la vez, utilizando la capa oculta del RBM superior anterior como entrada para el nuevo RBM superior. Después de todo esto puedes tratar la pila de pesos RBM como los pesos iniciales de una red neuronal estándar y entrenar usando tus datos etiquetados y retropropagación o hacer algo más exótico como usar el algoritmo wake-sleep. Observe que no hemos utilizado ningún dato etiquetado hasta este último paso, que es uno de los beneficios de este tipo de modelos. Podemos aprender un buen modelo generativo utilizando muchos datos sin etiquetar e incluso si nuestro objetivo final es tener un buen rendimiento discriminativo, debería ayudar.

Por otro lado, existen varias formas de utilizar los RBM para la clasificación.

  • Entrenar un RBM o una pila de varios RBM. Utiliza la capa oculta superior como entrada para otro aprendiz supervisado.
  • Entrenar un RBM para cada clase y utilizar las energías no normalizadas como entrada para un clasificador discriminativo.
  • Entrenar el RBM para que sea un modelo de densidad conjunta de P(X, Y). Entonces, dada una entrada x, simplemente elige la clase y que minimiza la función de energía (la normalización no es un problema aquí como en el caso anterior, ya que la constante Z es la misma para todas las clases).
  • Formar a RBM discriminativo

Le recomiendo encarecidamente que lea el informe técnico Guía práctica para entrenar máquinas de Boltzmann restringidas por Geoff Hinton. En él se tratan varias de estas cuestiones con mucho más detalle, se ofrecen valiosos consejos, se citan muchos artículos relevantes y puede ayudar a aclarar cualquier otra confusión que pueda tener.

1 votos

¿pueden utilizarse los RBM para la regresión?

0 votos

¿Cómo se entrena un RBM para que sea un modelo de densidad conjunta? ¿Proporcionando X e Y como entradas no ocultas, es decir, entrenándolo para que sea P(X,Y|H) (H es la capa oculta)?

0 votos

Me autorrespondo a mi comentario: sí, en "a Practical guide to training RBM" (Hinton, 2010), se explican en detalle los 3 métodos descritos anteriormente y, en el 3º método, habla de tener "dos conjuntos de unidades visibles", donde, además de los datos, se presenta una unidad de etiqueta softmax para representar la clase.

2voto

Deepan Puntos 26

Eche un vistazo a la aplicación , http://code.google.com/p/matrbm/ . Tiene una función de ajuste rmb de clasificación que vale la pena considerar. Avísame también si encuentras mejores implementaciones de DBNs y RMBs para clasificación y regresión.

0voto

jason albalah Puntos 1

Creo que una forma de probar redes neuronales como la Máquina de Boltzman Restringida (RBM) es aplicarlas a nuevos conjuntos de datos, o más comúnmente a un subconjunto del conjunto total de datos, y ver cómo funcionan. También se puede probar el modelo con validación cruzada. He utilizado un popular conjunto de herramientas de software de aprendizaje automático (ML) de código abierto que es fácil de instalar y utilizar, y que permite probar fácilmente muchos tipos de algoritmos de ML por separado con una serie de estadísticas de regresión del modelo ( http://www.cs.waikato.ac.nz/ml/weka/ ). Eso podría darte un análisis rápido sin mucha intervención excepto lo básico de ejecutar el programa, aunque dependiendo de ello puede que no merezca la pena si va a ser difícil formatear tus datos (aunque normalmente puedes buscar en google "csv to arff convert online" por ejemplo para formatear en un solo paso).

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