Regla de aprendizaje del perceptrón simple

17,532 views

Published on

Regla de aprendizaje del Perceptrón Simple. Redes Neuronales Artificiales de aprendizaje supervisado (offline). Regla del Perceptrón

Published in: Education
0 Comments
21 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
17,532
On SlideShare
0
From Embeds
0
Number of Embeds
57
Actions
Shares
0
Downloads
0
Comments
0
Likes
21
Embeds 0
No embeds

No notes for slide

Regla de aprendizaje del perceptrón simple

  1. 2. Redes Neuronales Artificiales Las entradas Xi representan las señales que provienen de otras neuronas Los pesos Wi son la intensidad con que están conectadas dos neuronas; tanto Xi como Wi son valores reales. neta =  XiWi
  2. 3. <ul><ul><li>El aprendizaje es el proceso por medio del cual, los parámetros libres de una red neuronal son adaptados a través de un proceso de estimulación por el ambiente en el cual la red se encuentra inmersa. </li></ul></ul><ul><ul><li>El tipo de aprendizaje es determinada por la manera en la cual el cambio de parámetros tiene lugar. </li></ul></ul>
  3. 4. El aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en respuesta a una informacíon de entrada. Los cambios que se producen durante el proceso de aprendizaje son la destrucción, modificación y creación de conexiones entre las neuronas. W = 0 Destrucción; W › 0 Creación Aprendizaje Hay dos vías: - No adaptativo : Se determina de antemano cual será el valor de los pesos - Adaptativo : No existe una forma para determinar de antemano los pesos, por lo que se necesita un proceso iterativo: Wi(t) = Wi(t-1) + Δ Wi
  4. 5. <ul><ul><li>Aprendizaje Supervisado </li></ul></ul><ul><ul><ul><ul><ul><li>entrada, salida, objetivo </li></ul></ul></ul></ul></ul><ul><ul><li>Aprendizaje No supervisado </li></ul></ul><ul><ul><ul><ul><ul><li>entrada, salida </li></ul></ul></ul></ul></ul><ul><ul><li>Aprendizaje por Reforzamiento . </li></ul></ul><ul><ul><ul><ul><ul><li>Recompensa/castigo </li></ul></ul></ul></ul></ul>
  5. 6. • Aprendizaje Supervisado A la red se le proporciona un conjunto de ejemplos del comportamiento propio de la red (inputs/targets) • Aprendizaje por Reforzamiento A la red se proporciona un grado de desempeño de la misma. • Aprendizaje No supervisado Las entradas son las unicas disponibles para el aprendizaje, el algoritmo de la red aprende a categorizar las entradas (clustering)
  6. 8. <ul><ul><li>Se realiza mediante un entrenamiento controlado por un agente externo (supervisor, maestro), que determina la respuesta que debería generar la red apartir de una entrada determinada. </li></ul></ul>
  7. 9. <ul><li>Se realiza mediante un entrenamiento controlado por un agente externo (supervisor, maestro), que determina la respuesta que debería generar la red apartir de una entrada determinada. </li></ul><ul><ul><li>Aprendizaje por Corrección de error. </li></ul></ul><ul><ul><li>Aprendizaje por Refuerzo. </li></ul></ul><ul><ul><li>Aprendizaje Estocástico. </li></ul></ul>
  8. 10. Consiste en ajustar los pesos de las conexiones de la red en función de la diferencia entre los valores deseados y los obtenidos en la salida de la red; es decir en función del error cometido en la salida
  9. 11. <ul><ul><li>Regla de aprendizaje del perceptrón </li></ul></ul><ul><ul><li>Regla delta (  ) o del mínimo error cuadrado ; LMS (Widrow - Hoff). </li></ul></ul><ul><ul><li>Regla delta generalizada o algoritmo de Retropropagación de error (Rumelhart, Hinton, Williams), </li></ul></ul><ul><ul><li>Ejemplos de Redes: Perceptrón , Adaline/Madaline, y Backpropagation </li></ul></ul>
  10. 12. PERCEPTRÓN Características -Entradas reales -Aprendizaje supervisado -El espacio debe ser linealmente separable
  11. 13. PERCEPTRÓN - Antecedentes -La primera red neuronal conocida, fue desarrollada en 1943 por Warren McCulloch y Walter Pitts -Suma de las señales de entrada, multiplicadas por unos valores de pesos escogidos aleatoriamente. - La entrada es comparada con un patrón preestablecido para determinar la salida de la red. -Si en la comparación, la suma de las entradas multiplicadas por los pesos es mayor o igual que el patrón preestablecido la salida de la red es uno (1), en caso contrario la salida es cero (0).
  12. 14. PERCEPTRÓN - Antecedentes -La red tipo Perceptrón fue inventada por el sicólogo Frank Rosenblatt en el año 1957 -El primer modelo de Perceptrón fue desarrollado en un ambiente biológico imitando el funcionamiento del ojo humano. El fotoperceptrón: era un dispositivo que respondía a señales ópticas.
  13. 15. PERCEPTRÓN Esquema general de un Perceptrón sencillo:
  14. 16. PERCEPTRÓN -Era inicialmente un dispositivo de aprendizaje -En su configuración inicial no estaba en capacidad de distinguir patrones de entrada muy complejos -Sin embargo mediante un proceso de aprendizaje era capaz de adquirir esta capacidad -En esencia, el entrenamiento implicaba un proceso de refuerzo mediante el cual la salida de las unidades A se incrementaba o se decrementaba dependiendo de si las unidades A contribuían o no a las respuestas correctas del Perceptrón para una entrada dada.
  15. 17. PERCEPTRÓN -En 1969 Marvin Minsky y Seymour Papert publicaron su libro: “Perceptrons: An introduction to Computational Geometry” -Análisis detallado del Perceptrón, en términos de sus capacidades y limitaciones
  16. 18. PERCEPTRÓN -La función de salida de la red es llamada función umbral o función de transferencia (tipo hardlim): 1 si (neta+bias) >= 0 f(neta+bias) = 0 si (neta+bias) < 0 -También puede utilizarse una función de transferencia tipo hardlims (salidas 1 ó -1)
  17. 19. Estructura de la Red (Perceptrón) La neurona de salida realiza la suma ponderada de las entradas, suma el bias y pasa el resultado a una función de transferencia de tipo hardlim(s). La regla e decisión es responder +1 si el patrón presentado pertenece a la clase A, o 0(–1) si el patrón pertenece a la clase B.
  18. 20. Regla de Aprendizaje (Perceptrón) El Perceptrón es un tipo de red de aprendizaje supervisado , es decir necesita conocer los valores esperados para cada una de las entradas presentadas; su comportamiento está definido por pares de esta forma: Cuando p j es aplicado a la red, la salida de la red es comparada con el valor esperado t j Recordemos que la salida de la red esta determinada por: a = f(  XiWi + bias) = hardlim(  XiWi + bias)
  19. 21. <ul><li>Algoritmo general de aprendizaje: </li></ul><ul><li>1) Se inicializa la matriz de pesos y el valor del bias, por lo general se asignan valores aleatorios a cada uno de ellos. 2) Se presenta el primer patrón a la red, junto con la salida esperada en forma de pares entrada/salida </li></ul><ul><li>Se calcula la salida de la red por medio de a = f(  XiWi + bias) </li></ul><ul><li>donde f puede ser la función hardlim o hardlims </li></ul><ul><ul><li>3) Cuando la red no retorna la salida correcta, es necesario alterar el valor de los pesos, tratando de llevarlo hasta p y así aumentar las posibilidades de que la clasificación sea correcta, una posibilidad es adicionar p a w haciendo que el vector w apunte en la dirección de p, y de esta forma después de repetidas presentaciones de p a la red, w se aproximará a p; este es el procedimiento adoptado para la regla de aprendizaje del Perceptrón. </li></ul></ul>
  20. 22. En general: El valor a correspondiente a la aplicación del objeto p a la red constituye la clasificación (o salida) de la red para p. Este valor puede ser igual a t (la clasificación real de p) ó diferente. Si son iguales significa que la red a brindado el valor correcto para p, de lo contrario la red de ha “equivocado” Los posibles casos son los siguientes: 1) a = t La salida de la Red es igual a la clasificación de p por tanto funcionó correctamente y no hay que hacer cambios en los pesos 2) t = 1 y a = 0 3) t = 0 y a = 1 En los dos últimos casos la red se ha equivocado por tanto sería necesario modificar los pesos (aprender)
  21. 23. Las acciones para el aprendizaje, en cada caso serían: 1. t = a W N = W A 2. t=1, a=0 W N = W A + p 3. t=0, a=1 W N = W A – p Simplificaremos los casos haciendo: e = t-a 1. e = 0 W N = W A 2. e = 1 W N = W A + p 3. e = -1 W N = W A – p En general: W N = W A + e * p Bias N = Bias A + e
  22. 24. Ejemplo:
  23. 25. Ejemplo: Utilizaremos cuatro puntos para el aprendizaje de la RNA P1 = ( 2, 1) T1 = 1 (clase A) P2 = ( 0, -1) T2 = 1 (clase A) P3 = (-2, 1) T3 = -1 (clase B) P4 = ( 0, 2) T4 = -1 (clase B) Partimos de cualquier valor (aleatorios) para los pesos y el bias: W = ( -0.7, 0.2 ) bias = 0.5
  24. 26. Procedimiento general: El procedimiento de aprendizaje de la red (ajuste de los pesos) se resume en aplicar cada objeto de la muestra a la red y ajustar los pesos en caso de que la salida de la red no sea correcta , de acuerdo a las fórmulas ya explicadas: W N = W A + e * p Bias N = Bias A + e Donde e = t-a t = valor real del objeto a = valor calculado por la Red
  25. 27. Paso 1 . Objeto P1 = (2,1) T1 = 1 W = ( -0.7, 0.2 ) bias = 0.5 Aplicamos la Red para P1 neta+bias = -0.7*2 + 0.2*1 + 0.5 = -0.7 a = hardlims(-0.7) = -1 T1 = 1 K a = -1 Por tanto es necesario ajustar los pesos: e = T1 – a = 1 – (-1) = 2 W N = W + e*P1 = (-0.7,0.2) + 2*(2,1) W N = (3.3, 2.2) bias N = bias + e = 0.5 + e = 2.5
  26. 28. Paso 2 . Objeto P2 = (0,-1) T2 = 1 W = ( 3.3, 2.2 ) bias = 2.5 Aplicamos la Red para P2 neta+bias = 3.3*0 + 2.2*-1 + 2.5 = 0.3 a = hardlims(0.3) = 1 T2 = 1 = a = 1 Por tanto NO es necesario ajustar los pesos
  27. 29. Paso 3 . Objeto P3 = (-2,1) T3 = -1 W = ( 3.3, 2.2 ) bias = 2.5 Aplicamos la Red para P3 neta+bias = 3.3*-2 + 2.2*1 + 2.5 = -1.9 a = hardlims(-1.9) = -1 T3 = -1 = a = -1 Por tanto NO es necesario ajustar los pesos
  28. 30. Paso 4 . Objeto P4 = (0,2) T4 = -1 W = ( 3.3, 2.2 ) bias = 2.5 Aplicamos la Red para P4 neta+bias = 3.3*0 + 2.2*2 + 2.5 = 6.9 a = hardlims(6.9) = 1 T4 = -1 K a = 1 Por tanto es necesario ajustar los pesos: e = T1 – a = -1 – (1) = -2 W N = W + e*P4 = (3.3,2.2) + -2*(0,2) W N = (3.3, -1.8) bias N = bias + e = 0.5 + e = 0.5
  29. 31. Hemos concluido con todos los objetos de la muestra, por tanto los pesos calculados para la red son: W = (3.3, -1.8) bias 0.5 Podemos verificar la Red para los cuatro objetos: RNA(P1) = 1 ( neta+bias = 5.3 ) RNA(P2) = 1 ( neta+bias)= 2.3 ) RNA(P3) = -1 ( neta+bias = -7.9 ) RNA(P4) = -1 ( neta+bias = -3.1 )
  30. 32. Limitación Este tipo de red puede resolver solamente problemas cuyas salidas estén clasificadas en dos categorías diferentes y que permitan que su espacio de entrada sea dividido en regiones linealmente separables El proceso para determinar si un problema es linealmente separable o no, se realiza gráficamente sin problema, cuando los patrones de entrada generan un espacio de dos dimensiones , como en el caso del ejemplo; sin embargo, esta visualización se dificulta cuando el conjunto de patrones de entrada es de tres dimensiones, y resulta imposible de observar gráficamente cuando los patrones de entrada son de dimensiones superiores; en este caso se requiere plantear condiciones de desigualdad que permitan comprobar la separabilidad lineal de los patrones, esto se realiza con base en la ecuación de salida del Perceptrón: W*P+Bias >= 0 para los Objetos P, clasificados como 1 W*P+Bias < 0 para los Objetos P, clasificados como 0 (-1)
  31. 33. La solución al problema de clasificación de patrones de la función XOR se encontraría fácilmente si se descompone el espacio en tres regiones: una región pertenecería a una de las clases de salida y las otras dos pertenecen a la segunda clase, así que si en lugar de utilizar únicamente una neurona de salida se utilizaran dos, se obtendrían dos rectas por lo que podrían delimitarse tres zonas; para poder elegir entre una zona u otra de las tres, es necesario utilizar otra capa con una neurona cuyas entradas serán las salidas de las neuronas anteriores; las dos zonas o regiones que contienen los puntos (0,0) y (1,1) se asocian a una salida nula de la red y la zona central se asocia a la salida con valor 1, de esta forma es posible encontrar una solución al problema de la función XOR, por tanto se ha de utilizar una red de tres neuronas, distribuidas en dos capas para solucionar este problema, pero esto seria ya una red Perceptrón multicapa y esa parte no abarcaremos en esta presentación.
  32. 34. Muchas Gracias…

×