Download - Counterpropagation
Robert Hecht-Nielsen
• Co-fundador y Cientifico en jefe, de HNC Software, y profesor adjunto en el departamento de Ingenieria electrica y en computacion en la universidad de San Diego, California.
Antecedentes
• Al utilizar una combinación del aprendizaje no supervisado con el supervisado, se puede reducir el tiempo total de aprendizaje, en redes con mas de una capa oculta.
• Counterpropagation fue desarrollada por Robert Hecht Nielsen en 1987.
• Fue estudiada por Huang y Lippman en 1988.
• La Counterpropagation se clasifica en:
• Counterpropagation en un solo sentido (Forward only)
• Pi ti
• Counterpropagation Completa (Full)
• Pi ti
Counterpropagation
en un solo sentido (Forward only)
Características
• La red Counterpropagation es una red competitiva, diseñada para funcionar como una tabla de busqueda auto-programada con la habilidad adicional para interpolar entre entradas.
• Utiliza el modelo de Kohonen para acelerar el proceso de aprendizaje.
• Se le conoce también como: “Clasificador Jerárquico de Mapas de Características”.
• La red Global se le puede imaginar como una Tabla de Búsqueda.
• Combina el aprendizaje no supervisado (Competitivo) y supervisado (Regla delta).
• Tiene un aprendizaje OFF LINE.
• Se utilizan valores numéricos reales.
• Su entrenamiento ocurre mas rápido que la Backpropagation
Arquitectura
• Esta constituida por 3 capas: entrada, oculta y salida; las cuales están completamente conectadas
• Es una red compuesta de dos subredes:– Red de Kohonen (Winner-Take-all):Esta formada
por la capa de entrada y la intermedia u oculta. La capa oculta tiene un aprendizaje competivo.
– OUTSTAR: Capas oculta y de salida, la capa de salida no tiene conexiones laterales.
Red de Kohonen
“Winner-Take-all”
Arquitectura de CPP
Algoritmo de
aprendizaje
Entrenamiento• Consiste de 2 fases, con una razón de
aprendizaje separada variante en el tiempo.
• Primera Fase: Los nodos de la capa oculta se utilizan para dividir el conjunto de entrenamiento en “Clusters” con patrones similares.
• Usa un aprendizaje competitivo simple, con una razón de aprendizaje que se reduce conforme se estabiliza la red.
• Los pesos cambian muy poco en las ultimas fases del entrenamiento.
• Al final cada nodo oculto representa un centroide de un cluster o vector correspondiente a una región de Voronoi en el espacio de entrada.
• Segunda Fase: La tarea principal es ajustar los pesos de las conexiones de los nodos ocultos a los de salida; usando la regla de gradiente descendente y disminuyendo su razón de aprendizaje.
• Se lleva acabo usando una variante de la regla delta : La regla de aprendizaje OUTSTAR.
• Con la cual todos los pesos salientes de un nodo ganador en la capa competitiva son modificados simultáneamente.
• El cambio en cada peso es proporcional a la diferencia entre la salida deseada y el peso en el nodo.
– Donde j* es el nodo oculto ganador
oldji
oldj
newj WtWW *
Una vez entrenada la Counterpropagation
• Se proporciona un vector de entrada.
• La red encuentra el nodo oculto cuyo vector de pesos se “iguale” mejor con el de entrada.
• El patrón de salida generado por la red es idéntico al vector de pesos conducido por el nodo culto ganador.
• Este método es como una tabla de búsqueda.
• La diferencia con una tabla de búsqueda es que los vectores de pesos son obtenidos por el algoritmo de entrenamiento en vez de manera “ad hoc”.
Aplicaciones
• Procesamiento de imágenes• Clasificación de patrones• Reconocimiento de Voz• Codificación y compresión de datos• Aproximación de funciones matemáticas• Análisis estadístico.• Visión
Determinación del Angulo de Rotación
Conclusiones
• El modelo Counterpropagation permite acelerar el proceso de aprendizaje del orden de 10 a 100 veces respecto al algoritmo de Backpropagation en redes multicapa.
• No es un algoritmo optimo.
• Solo se deberá utilizar cuando se trabaje con pocos patrones de entrenamiento; menor o igual al numero de neuronas ocultas, o con un numero mayor si los mas parecidos generan salidas también parecidas.
Counterpropagation completa
(Full Counterpropagation)
Características
• Tanto counterpropagation completa y en un solo sentido funcionan similarmente en encontrar un nodo ganador “cluster” de la capa oculta.
• La diferencia principal entre las dos variantes, es que, Full counterpropagation trata a Pi y ti indistintamente.
• Full counterpropagation se diseña para trabajar en ambas direcciones.
• 1.- Para predecir Ti dado Pi.
• 2.- Para predecir Pi dado Ti.
Funcionamiento
• La red consiste de un conjunto de entrenamiento con muchos patrones; la red se entrena en 2 fases:
• Se inicializan los cuatro conjuntos de pesos con valores aleatorios comprendidos entre cero y uno.
2121 ,,, VVWW
• Primera fase: ajusta los pesos W1 y W2, asociados con las conexiones conducidas hacia los nodos ocultos.
• Esta parte es similar a la primera fase del algoritmo Forward-only , excepto que Pi y Ti son usados ambos en este proceso.
• La segunda fase tiene el propósito principal de ajustar los pesos V1 y V2, asociado con las conexiones conducidas afuera de los nodos ocultos.
• Cuando se completa el entrenamiento, la red puede ser usada en cualquier dirección para predecir Pi a partir de Ti, o Ti a partir de Pi.
Arquitectura Full CPPPatrón de Salida
Predicho
Patrón de Entrada
Predicho
Capa oculta con Conex inhibit. 2
1P
1W
1 2W
1T
Red counterpropagation
Full counterpropagation
Feeforward counterpropagation
Bibliografía
Bibliografía• Hecht-Nielsen Robert. Counterpropagation
Networks. Applied Optics, 26(23): 4979-4984, diciembre de 1987.
• Hecht-Nielsen Robert. Counterpropagation Networks Proceedings of the IEEE International Conference on Neural Networks, II, IEEE Press, New York, NY, pp. 19-32, 1987
Bibliografía (2)
• Hecht-Nielsen Robert. Applications of Counterpropagation Networks. Neural Networks, 1(2): 131-139,1988.
• Hecht-Nielsen Robert. Neurocomputing. Addison Wesley, Reading MA. 1990
Simulación en Matlab /
NNT
• El Modelo para Counterpropagation no esta disponible actualmente.
Dudas ???
Hasta la próxima !!!
Ejercicios
Ejemplo