¿Cómo se puede utilizar una red neuronal artificial ANN para la agrupación no supervisada?

53

Entiendo cómo artificial neural network (ANN)se puede entrenar de forma supervisada usando la propagación hacia atrás para mejorar el ajuste al disminuir el error en las predicciones. He oído que un ANN se puede utilizar para el aprendizaje no supervisado, pero ¿cómo se puede hacer sin una función de costo de algún tipo para guiar las etapas de optimización? Con k-means o el algoritmo EM hay una función para la cual cada iteración busca aumentar.

  • ¿Cómo podemos agrupar con un ANN y qué mecanismo utiliza para agrupar puntos de datos en la misma localidad?

(¿y qué capacidades adicionales se aportan al agregarle más capas?)

Vass
fuente
¿Está interesado en el aprendizaje no supervisado de NN en general, o específicamente en la agrupación no supervisada con redes neuronales?
Denis Tarasov
@DenisTarasov, estoy interesado principalmente en la agrupación sin supervisión con NN, pero no sé mucho sobre el aprendizaje de NN sin supervisión en general. Sería genial si una respuesta incluyera un poco del aprendizaje no supervisado de NN en general antes de discutir la aplicación específica.
Vass
1
El mapa de organización propia (SOM) es un tipo de red utilizada para la agrupación.
Cagdas Ozgenc
aprendizaje no supervisado en ANN - Extrae propiedades estadísticas del conjunto de entrenamiento. - El aprendizaje no supervisado es más difícil pero se considera biológicamente plausible - No requiere maestro.
yonas

Respuestas:

57

Las redes neuronales se usan ampliamente en el aprendizaje no supervisado para aprender mejores representaciones de los datos de entrada. Por ejemplo, dado un conjunto de documentos de texto, NN puede aprender un mapeo de un documento a un vector de valor real de tal manera que los vectores resultantes sean similares para documentos con contenido similar, es decir, preservar la distancia. Esto se puede lograr utilizando, por ejemplo, codificadores automáticos, un modelo que está entrenado para reconstruir el vector original a partir de una representación más pequeña (activaciones de capa oculta) con un error de reconstrucción (distancia desde la función ID) como función de costo. Este proceso no le proporciona clústeres, pero crea representaciones significativas que pueden usarse para la agrupación. Podría, por ejemplo, ejecutar un algoritmo de agrupamiento en las activaciones de la capa oculta.

Agrupación: hay varias arquitecturas NN diferentes diseñadas específicamente para la agrupación. El más conocido es probablemente los mapas autoorganizados. Un SOM es un NN que tiene un conjunto de neuronas conectadas para formar una cuadrícula topológica (generalmente rectangular). Cuando se presenta algún patrón a un SOM, la neurona con el vector de peso más cercano se considera un ganador y sus pesos se adaptan al patrón, así como a los pesos de su vecindario. De esta manera, un SOM naturalmente encuentra grupos de datos. Un algoritmo algo relacionado es el crecimiento del gas neural (no se limita al número predefinido de neuronas).

Otro enfoque es la teoría de resonancia adaptativa, donde tenemos dos capas: "campo de comparación" y "campo de reconocimiento". El campo de reconocimiento también determina la mejor coincidencia (neurona) con el vector transferido desde el campo de comparación y también tiene conexiones inhibitorias laterales. Los detalles de implementación y las ecuaciones exactas se pueden encontrar fácilmente buscando en Google los nombres de estos modelos, por lo que no los pondré aquí.

Denis Tarasov
fuente
16

Desea buscar mapas autoorganizados . Kohonen (quien los inventó) escribió un libro sobre ellos. Hay paquetes para esto en R ( som , kohonen ), y hay implementaciones en otros lenguajes como MATLAB .

gung - Restablece a Monica
fuente
¿Puedes entrar en detalles sobre cómo el NN puede hacer esto y elaborar la teoría? posiblemente también explique el efecto de usar un NN profundo (DNN)?
Vass
1
Me temo que tengo muy poca experiencia aquí, @Vass. No creo que agregar capas adicionales haga mucho, aparte de ralentizarlo. Alguien más tendrá que darte la teoría, solo quería que empezaras.
gung - Restablece a Monica
1
Un estudiante en nuestro laboratorio experimentó con el agrupamiento usando SOM. Se tardó una eternidad en ejecutarse y los resultados fueron muy decepcionantes en comparación con otros enfoques (en nuestro caso, algoritmos de agrupamiento de gráficos estándar). Siempre me ha intrigado el hecho de que el dominio objetivo estándar 2D (cuadrícula topológica) parece ser un espacio altamente arbitrario. Más preocupante es que es muy simplista y esencialmente necesita comprimir los datos en un espacio descrito por solo dos variables.
micans
@micans hace algunos buenos puntos, pero los datos no se comprimen simplemente en un espacio descrito por solo dos variables, porque cada nodo también está asociado con un prototipo. Además, si la ejecución es lenta, puede ser un problema de implementación. Estadísticamente, otros métodos distintos de SOM deberían lograr mejores resultados de clasificación. En cuanto al tema de la topología, el cerebro parece estar organizado como capas de topología 2D, pero logra excelentes resultados (o eso me gustaría pensar).
Tom Anderson