0
Red  de Hamming
Richard P. Lippmann <ul><li>Areas de interes: Reconocimiento de Voz, Desarrollo de mejoras en Redes Neuronales, Clasificac...
Características
Características Generales <ul><li>Red Creada por  Richard P. Lippmann  en 1987 </li></ul><ul><li>Aprendizaje no supervisad...
<ul><li>La neurona ganadora indica cual es el patron prototipo mas representativo del patron de entrada. </li></ul><ul><li...
Arquitectura
ARQUITECTURA
<ul><li>Se le llama red de Hamming debido a que la neurona en la capa feedforward con la salida mas grande, corresponderá ...
<ul><li>Posee tres capas: entrada, oculta y salida. </li></ul><ul><li>Los pesos en las capas representan los componentes d...
Capa oculta Red para el calculo de la distancia de Hamming
Red de Hamming Simple <ul><li>Calcula la distancia de Hamming, sumando las entradas ponderadas a un nodo. </li></ul><ul><l...
<ul><li>2a Capa: Realiza una correlación entre los vectores de entrada y los vectores prototipo. </li></ul><ul><li>3a Capa...
<ul><li>Consta de 3 capas: </li></ul><ul><ul><li>Capas de Instars & Capa competitiva Maxnet </li></ul></ul>
Red de Hamming
Algoritmo de  Aprendizaje
La segunda capa de las redes de Hamming, es la llamada capa de competencia, por que cada neurona se excita e inhibe a las ...
Esta   trabaja encontrando el índice i *   de la neurona con la entrada mas grande en la red y mandando la salida de esta ...
Capa 1 (Correlación) vectores prototipo para reconocimiento : Primera capa de la matriz de pesos y umbrales La respuesta d...
Capa 2 (Competición) La neurona con la condición inicial más grande ganará la competencia. La segunda capa es inicializada...
Capa Competitiva
Aprendizaje Competitivo En la red competitiva, la neurona ganadora tiene una salida de  1, y las otra tienen salida 0. Reg...
Representación Gráfica O bien Regla de Kohonen
Ejemplo
Después de Cuatro Iteraciones
Típica Convergencia (Clustering) Antes del entrenamiento Después del entrenamiento Pesos Vectores de entrada
Problemas de las capas competitivas <ul><li>1) Compromiso entre la velocidad de aprendizaje y estabilidad de los vectores ...
1) Compromiso entre la velocidad de aprendizaje y estabilidad de los vectores de pesos. <ul><li>   tiende a cero; aprendi...
<ul><li>  tiende a uno; aprendizaje rápido. Sin embargo una vez alcanzado el cluster este continua oscilando conforme s...
Estabilidad Si los vectores de entrada no quedan bien agrupados por un cluster, entonces para velocidades de aprendizaje g...
Estabilidad 1 w (0) 2 w (0) p 1 p 3 p 2 p 5 p 6 p 7 p 4 p 8 1 w (8) 2 w (8) p 1 p 3 p 2 p 5 p 6 p 7 p 4 p 8
2) Problemas de clasificación cuando los patrones están muy próximos. <ul><li>Un vector de pesos forma un prototipo de una...
3 ) Neuronas muertas. <ul><li>Esto es cuando una neurona del vector de pesos inicial se localiza lejos de los vectores de ...
Neuronas Muertas Neuronas con pesos iniciales lejos de cualquier vector de entrada podrían nunca ganar Neurona  Muerta Sol...
Conciencia <ul><li>La solución al problema anterior consiste en agregar un umbral negativo a la entrada de la red de cada ...
Aplicaciones
Ejercicios
Ejercicio 1 Entrene una red competitiva con los siguientes parametros:  A) Calcular los pesos resultantes después del entr...
Ejercicio 2 Calcular los pesos resultantes después del entrenamiento de la capa competitiva con una razón de aprendizaje  ...
Solución   Calcular los pesos resultantes después del entrenamiento de la capa competitiva con una razón de aprendizaje  ...
<ul><li>         Luego calculamos con el primer vector de entrada p 1 . </li></ul><ul><li>La segunda neurona respondió, a...
<ul><li>         Ahora repetimos este proceso con p 2 . </li></ul><ul><li>La tercera neurona ganó, así que sus pesos se m...
<ul><li>Ahora pasamos con p 3 .   </li></ul><ul><li>La tercera neurona volvió a ganar.   </li></ul>
<ul><li>Después de pasar de p1 a p3 otra vez, la neurona 2 ganará una vez más y la  </li></ul><ul><li>neurona 3 dos veces....
Código en  Matlab/NNT
Aprendizaje Competitivo <ul><li>Donde: </li></ul><ul><li>R= Numero de entradas </li></ul><ul><li>S= Numero de neuronas </l...
Inicialización <ul><li>W= initc (P,S); </li></ul><ul><li>La función  initc toma una matriz de vectores de entrada P y un n...
Entrenamiento <ul><li>Las redes competitivas se pueden entrenar con vectores de entrada con la regla de aprendizaje instar...
Entrenamiento <ul><li>Puesto que la salida del vector a contiene solo 1/0. Se puede sustituir la regla instar (learnis) po...
<ul><li>La funcion  trainc  entrena una capa competitiva con vectores de entrada en orden aleatorio. </li></ul><ul><li>Tp=...
<ul><li>Trainc  toma el peso W y el umbral b de una capa competitiva, una matriz de vectores de entrada P y los parámetros...
Ejemplo 1 <ul><li>P= [0.5827  0.6496  -0.7798; </li></ul><ul><li>0.8127  0.7603  0.6260] </li></ul><ul><li>Se entrenará un...
Ejemplo 2 clear;echo on;clc;nntwarn off; P= [ -0.1961 0.1961 0.9806  0.9806 -0.5812 -0.8137; 0.9806 0.9806 0.1961 -0.1961 ...
Dudas ???
Hasta la próxima !!!
Upcoming SlideShare
Loading in...5
×

Red NEURONAL de Hamming

4,186

Published on

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,186
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
171
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Red NEURONAL de Hamming"

  1. 1. Red de Hamming
  2. 2. Richard P. Lippmann <ul><li>Areas de interes: Reconocimiento de Voz, Desarrollo de mejoras en Redes Neuronales, Clasificacion de patrones estadísticos, Desarrollo de software portable para la clasificación de patrones, Desarrollo de redes neuronales en VLSI de baja potencia, aplicaciones de redes neuronales y patrones estadísticos a la solución de problemas de detección a través de la computadora. </li></ul>Recibio el grado de Dr. en Ingenieria electrica del Instituto Tecnologico de Massachusetts (MIT) en 1978.
  3. 3. Características
  4. 4. Características Generales <ul><li>Red Creada por Richard P. Lippmann en 1987 </li></ul><ul><li>Aprendizaje no supervisado tipo competitivo </li></ul><ul><li>Es una de las redes mas simples de tipo competitiva. </li></ul><ul><li>Las neuronas en la capa de salida compiten para determinar la ganadora. </li></ul>
  5. 5. <ul><li>La neurona ganadora indica cual es el patron prototipo mas representativo del patron de entrada. </li></ul><ul><li>La competencia se implementa a través de inhibiciones laterales; es decir un conjunto de conexiones negativas laterales entre las neuronas en la capa de salida. </li></ul><ul><li>Son clasificadores adaptativos eficientes </li></ul>
  6. 6. Arquitectura
  7. 7. ARQUITECTURA
  8. 8. <ul><li>Se le llama red de Hamming debido a que la neurona en la capa feedforward con la salida mas grande, corresponderá al patrón prototipo que este mas próximo en distancia de Hamming al patrón de entrada. </li></ul>
  9. 9. <ul><li>Posee tres capas: entrada, oculta y salida. </li></ul><ul><li>Los pesos en las capas representan los componentes de los patrones de entrada almacenados. </li></ul>
  10. 10. Capa oculta Red para el calculo de la distancia de Hamming
  11. 11. Red de Hamming Simple <ul><li>Calcula la distancia de Hamming, sumando las entradas ponderadas a un nodo. </li></ul><ul><li>La distancia de Hamming es el número diferente de bits en dos vectores. </li></ul><ul><li>P = [1 1 -1 1], </li></ul><ul><li>W= [1 -1 -1 -1] </li></ul><ul><li>Distance de Hamming </li></ul><ul><li>= 0 + 1 + 0 + 1 = 2 </li></ul>
  12. 12. <ul><li>2a Capa: Realiza una correlación entre los vectores de entrada y los vectores prototipo. </li></ul><ul><li>3a Capa:Realiza una competencia para determinar cual de los vectores prototipos esta mas próximo al vector de entrada </li></ul>
  13. 13. <ul><li>Consta de 3 capas: </li></ul><ul><ul><li>Capas de Instars & Capa competitiva Maxnet </li></ul></ul>
  14. 14. Red de Hamming
  15. 15. Algoritmo de Aprendizaje
  16. 16. La segunda capa de las redes de Hamming, es la llamada capa de competencia, por que cada neurona se excita e inhibe a las demás neuronas . Para simplificar esto definiremos una función de transferencia que haga el trabajo de la capa competitiva. a= compet (n) Algoritmo
  17. 17. Esta trabaja encontrando el índice i * de la neurona con la entrada mas grande en la red y mandando la salida de esta a 1. Todas las demás salidas serán 0. La capa competitiva es mostrada de la sig. Forma:
  18. 18. Capa 1 (Correlación) vectores prototipo para reconocimiento : Primera capa de la matriz de pesos y umbrales La respuesta de la primera capa es: El prototipo mas cercano al vector de entrada produce la respuesta mas grande.
  19. 19. Capa 2 (Competición) La neurona con la condición inicial más grande ganará la competencia. La segunda capa es inicializada con la salida de la primera capa.
  20. 20. Capa Competitiva
  21. 21. Aprendizaje Competitivo En la red competitiva, la neurona ganadora tiene una salida de 1, y las otra tienen salida 0. Regla Instar Regla de Kohonen
  22. 22. Representación Gráfica O bien Regla de Kohonen
  23. 23. Ejemplo
  24. 24. Después de Cuatro Iteraciones
  25. 25. Típica Convergencia (Clustering) Antes del entrenamiento Después del entrenamiento Pesos Vectores de entrada
  26. 26. Problemas de las capas competitivas <ul><li>1) Compromiso entre la velocidad de aprendizaje y estabilidad de los vectores de pesos. </li></ul><ul><li>2) Problemas de clasificación cuando lo patrones están muy próximos. </li></ul><ul><li>3) Neuronas muertas. </li></ul>
  27. 27. 1) Compromiso entre la velocidad de aprendizaje y estabilidad de los vectores de pesos. <ul><li> tiende a cero; aprendizaje lento. Una vez que el vector ha alcanzado el centro del “cluster” este tiende a permanecer cercano al centro del mismo. </li></ul><ul><li>Ver figura </li></ul>
  28. 28. <ul><li>  tiende a uno; aprendizaje rápido. Sin embargo una vez alcanzado el cluster este continua oscilando conforme se presenten los diferentes vectores. Ver figura. </li></ul><ul><li>Posible solución: Usar una razón de aprendizaje variable:  grande para un rápido aprendizaje y luego decrementar  conforme el entrenamiento progresa a alcanzar los vectores prototipos estables </li></ul>
  29. 29. Estabilidad Si los vectores de entrada no quedan bien agrupados por un cluster, entonces para velocidades de aprendizaje grandes la presentación de cada vector de entrada puede modificar la configuración de tal forma que el sistema experimentará una evolución continua.
  30. 30. Estabilidad 1 w (0) 2 w (0) p 1 p 3 p 2 p 5 p 6 p 7 p 4 p 8 1 w (8) 2 w (8) p 1 p 3 p 2 p 5 p 6 p 7 p 4 p 8
  31. 31. 2) Problemas de clasificación cuando los patrones están muy próximos. <ul><li>Un vector de pesos forma un prototipo de una clase que pudiera invadir el territorio de otro vector de pesos y por lo tanto perturbar el esquema de clasificación. </li></ul><ul><li>Ver figuras: </li></ul>
  32. 32. 3 ) Neuronas muertas. <ul><li>Esto es cuando una neurona del vector de pesos inicial se localiza lejos de los vectores de entrada de tal forma que nunca gana la competencia y nunca aprende. </li></ul><ul><li>Esto produce una neurona muerta la cual resulta inútil. Ver figura. </li></ul>
  33. 33. Neuronas Muertas Neuronas con pesos iniciales lejos de cualquier vector de entrada podrían nunca ganar Neurona Muerta Solución: Agregar un umbral negativo a cada neurona, e incrementar el valor del umbral a la neurona ganadora. Esto hará mas difícil ganar a una neurona, si esta gana frecuentemente. A esto se le llama “conciencia.”
  34. 34. Conciencia <ul><li>La solución al problema anterior consiste en agregar un umbral negativo a la entrada de la red de cada neurona y disminuir su valor de umbral cada vez que la neurona gana. </li></ul><ul><li>Esto hace mas difícil que una neurona gane la competencia. </li></ul>
  35. 35. Aplicaciones
  36. 36. Ejercicios
  37. 37. Ejercicio 1 Entrene una red competitiva con los siguientes parametros: A) Calcular los pesos resultantes después del entrenamiento
  38. 38. Ejercicio 2 Calcular los pesos resultantes después del entrenamiento de la capa competitiva con una razón de aprendizaje  de 0.5.
  39. 39. Solución   Calcular los pesos resultantes después del entrenamiento de la capa competitiva con una razón de aprendizaje  de 0.5. <ul><li>       Primero combinamos el vector de pesos en la matriz W. </li></ul>
  40. 40. <ul><li>        Luego calculamos con el primer vector de entrada p 1 . </li></ul><ul><li>La segunda neurona respondió, así que 2 w es la más cercana a p 1 . </li></ul><ul><li>Después, actualizamos los pesos 2 w. </li></ul>
  41. 41. <ul><li>        Ahora repetimos este proceso con p 2 . </li></ul><ul><li>La tercera neurona ganó, así que sus pesos se mueven más cerca de p 2 </li></ul>
  42. 42. <ul><li>Ahora pasamos con p 3 . </li></ul><ul><li>La tercera neurona volvió a ganar. </li></ul>
  43. 43. <ul><li>Después de pasar de p1 a p3 otra vez, la neurona 2 ganará una vez más y la </li></ul><ul><li>neurona 3 dos veces. Así que los pesos finales son: </li></ul>Hay que notarse que que el vector 1w, nunca se actualizó. Aquella neurona como la primera que nunca gana una competición, se conoce como una neurona muerta.
  44. 44. Código en Matlab/NNT
  45. 45. Aprendizaje Competitivo <ul><li>Donde: </li></ul><ul><li>R= Numero de entradas </li></ul><ul><li>S= Numero de neuronas </li></ul>
  46. 46. Inicialización <ul><li>W= initc (P,S); </li></ul><ul><li>La función initc toma una matriz de vectores de entrada P y un numero de neuronas S y regresa los pesos para una capa competitiva sin umbrales. </li></ul><ul><li>Ejemplo: </li></ul><ul><li>W= initc ([0 10; -3 3],5); </li></ul><ul><li>La funcion initc fija los umbrales en cero y para cada peso wij asocia una entrada i en el centro del intervalo de i. </li></ul>
  47. 47. Entrenamiento <ul><li>Las redes competitivas se pueden entrenar con vectores de entrada con la regla de aprendizaje instar. Cada neurona compite para responder a un vector de entrada P. Si los umbrales son todos cero,la neurona cuyo vector de peso este mas próximo a P obtiene la mas alta entrada de red y gana la competencia </li></ul><ul><li>A= simuc (p,W); </li></ul><ul><li>dW= learnis (p,a,lr,W); </li></ul><ul><li>W= W + dW; </li></ul>
  48. 48. Entrenamiento <ul><li>Puesto que la salida del vector a contiene solo 1/0. Se puede sustituir la regla instar (learnis) por la regla de Kohonen (learnk) disminuyendo el numero de cálculos y haciendo el código anterior mas eficiente. </li></ul><ul><li>A= simuc (p,W,b); </li></ul><ul><li>dW= learnk (p,a,lr,W); </li></ul><ul><li>W= W + dW; </li></ul>
  49. 49. <ul><li>La funcion trainc entrena una capa competitiva con vectores de entrada en orden aleatorio. </li></ul><ul><li>Tp= [disp_freq max_pres lr ]; </li></ul><ul><li>[W,b]= trainc (W,p,tp); </li></ul><ul><li>Donde: disp_freq = 25 </li></ul><ul><li>max_pres =100 </li></ul><ul><li>lr = 0.01 </li></ul>
  50. 50. <ul><li>Trainc toma el peso W y el umbral b de una capa competitiva, una matriz de vectores de entrada P y los parámetros de entrenamiento tp y regresa nuevos pesos </li></ul>
  51. 51. Ejemplo 1 <ul><li>P= [0.5827 0.6496 -0.7798; </li></ul><ul><li>0.8127 0.7603 0.6260] </li></ul><ul><li>Se entrenará una red competitiva con 3 entradas. </li></ul><ul><li>[W,b] = initc (P,3); </li></ul><ul><li>[W,b] = trainc (W,P,[10 100 0.5]); </li></ul><ul><li>a = simuc(P,W) </li></ul>
  52. 52. Ejemplo 2 clear;echo on;clc;nntwarn off; P= [ -0.1961 0.1961 0.9806 0.9806 -0.5812 -0.8137; 0.9806 0.9806 0.1961 -0.1961 -0.8137 -0.5812]; [W]= initc(P,3) [W]= trainc(W,P,[2 100 0.5]) a= simuc(P,W) echo off
  53. 53. Dudas ???
  54. 54. Hasta la próxima !!!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×