Sistemas Inteligentes y Redes Neuronales       (SI01)  Laboratorio: 4   La RNA Perceptron    Ing. José C. Benítez P.
Las RNA Perceptron  l   Objetivo  l   Fundamento teórico: La RNA Perceptron.  l   Implementación de la RNA Perceptron.  l ...
Objetivop   Revisar los conceptos de las RNA Perceptron.p   Mediante el Toolbox de Redes Neuronales de MatLab se    implem...
Las RNA Perceptron§ El Perceptron es una RNA que está en capacidad de realizar separaciones  lineales veamos como se puede...
Las RNA Perceptron1. Gráfica de patrones de aprendizaje:   Los patrones de aprendizaje se utilizarán para entrenar las red...
Las RNA Perceptron2. El problema de función lógica AND   La función lógica se define como:   X=[1 1 0 0; 1 0 1 0] % Las do...
Las RNA Perceptrona. Definición del problema   Se debe proporcionar a la RNA la información necesaria para que puede   lle...
Las RNA PerceptronLa gráfica resultante es la que se muestra y corresponde al patrón deaprendizaje:                       ...
Las RNA Perceptronb. Inicialización de la red neuronal   Ahora se crea la RNA, para el caso del Perceptron se usa la funci...
Las RNA PerceptronAhora se procederá a generar unos pesosiniciales a la red, este paso no es necesariohacerlo, pero permit...
Las RNA Perceptronc. Entrenamiento de la RNAEl entrenamiento de la red se realiza con elcomando train el cual implementa u...
Las RNA PerceptronAl entrenar MATLAB nos grafica la maneracomo va evolucionando error al transcurrirlas iteraciones.      ...
Las RNA PerceptronCuando se ha entrenado la red, se puedevisualizar en la gráfica donde se muestra lalínea clasificadora q...
Las RNA Perceptrond. Validación de la RNA   Luego de tener una RNA entrenada se procede a validar si   el comportamiento d...
Las RNA PerceptronMostrando la clasificación                                   X1        X2        DEn Matlab:            ...
Las RNA PerceptronMostrando la clasificación                                                                              ...
Las RNA Perceptron3. Un problema de clasificación.   La función se define como:               X1        X2 D1             ...
Las RNA Perceptrona. Definición del problema   La función se define como:                                                 ...
Las RNA Perceptron                                                       X1       X2 D1             D2b. Inicialización de...
Las RNA Perceptronc. Entrenamiento de la RNA                                                              X1       X2 D1  ...
Las RNA Perceptrond. Validación de la RNA                                                              X1       X2 D1   D2...
Las RNA PerceptronMostrando la clasificación                                   X1       X2 D1              D2En Matlab:   ...
Las RNA PerceptronMostrando la clasificación  X1     X2 D1    D2 0.1    0.2 1      1 0.2    0.1 1      1 -0.9   0.8 1     ...
Las RNA Perceptron - Tarea1.   Graficar los patrones de aprendizaje de las funciones lógicas:     • OR     • NOT     • XOR...
Las RNA Perceptron - Tarea3.   Con ayuda del toolbox de redes neuronales del MATLAB, clasificar     usando un Perceptron e...
Las RNA Perceptron - Tarea5.   Diseñe y entrene usando el toolbox de redes neuronales del MATLAB     un Perceptron que pue...
Informe de Laboratoriop   El Informe de Laboratorio es un documento gráfico en lo posible    y es redactado en Word con el...
Laboratorio 4. Las RNA Perceptron               Blog del curso:   utpsirn.blogspot.com                                    ...
Upcoming SlideShare
Loading in …5
×

Utp sirn sl4 la rna perceptron 2012-2

3,028 views
2,976 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,028
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
63
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Utp sirn sl4 la rna perceptron 2012-2

  1. 1. Sistemas Inteligentes y Redes Neuronales (SI01) Laboratorio: 4 La RNA Perceptron Ing. José C. Benítez P.
  2. 2. Las RNA Perceptron l Objetivo l Fundamento teórico: La RNA Perceptron. l Implementación de la RNA Perceptron. l Conclusiones. l Tarea. 2 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  3. 3. Objetivop Revisar los conceptos de las RNA Perceptron.p Mediante el Toolbox de Redes Neuronales de MatLab se implementara algunas Perceptron.p Identificar el proceso de implementación de una RNA.p Al final del laboratorio el alumno debe presentar un documento grafico en word con el desarrollo del laboratorio y adjuntar sus fuentes que le han ayudado a fortalecer sus destrezas en el presente laboratorio.p Presentar las fuentes y el informe en USB. 3 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  4. 4. Las RNA Perceptron§ El Perceptron es una RNA que está en capacidad de realizar separaciones lineales veamos como se puede realizar un problema de estos con ayuda del toolbox de redes neuronales del MATLAB§ Entre las funciones utilizadas por el MATLAB para el Perceptron se tienen: ü NEWP – Crea el Perceptron. ü PLOTPV - Grafica los vectores de entrada cuando la salida es 1/0. ü PLOTPC - Grafica la línea de clasificación que genera el Perceptron. ü TRAIN - Entrena la red con el algoritmo del Perceptron. ü SIM - Simula o prueba la red. 4 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  5. 5. Las RNA Perceptron1. Gráfica de patrones de aprendizaje: Los patrones de aprendizaje se utilizarán para entrenar las redes neuronales. En Matlab: >> X=[1 1 0 0; 1 0 1 0]; %Posibles entradas en la RNA >> D=[1 0 0 0] %Es el resultado de la función lógica AND >> plotpv(X,D) %Grafica los patrones de aprendizaje. Nos mostrará el gráfico mostrado.Como se puede observar, MATLAB grafica lospuntos dados en el vector X y le asigna unsímbolo para la clasificación dependiendo dela salida deseada, en esta caso:Para salida deseada cero (0) = oPara salida deseada uno (1) = + 5 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  6. 6. Las RNA Perceptron2. El problema de función lógica AND La función lógica se define como: X=[1 1 0 0; 1 0 1 0] % Las dos variables lógicas. D=[1 0 0 0] % El resultado de hacer AND con las dos variables lógicasSolución:Pasos para resolver este problema con el MATLAB : a. Definición del problema b. Inicialización de la RNA c. Entrenamiento de la RNA d. Validación de la RNA X D 6 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  7. 7. Las RNA Perceptrona. Definición del problema Se debe proporcionar a la RNA la información necesaria para que puede llevar la tarea con éxito. Se debe definir los patrones de aprendizaje de la RNA que se van a utilizar en el proceso de entrenamiento. En MATLAB esto se hace definiendo dos matrices una para las entradas (X) y otra para las salidas (D) donde cada patrón de aprendizaje se define por columnas. En Matlab: >> X=[0 0 1 1 ; 0 1 0 1 ] ; % Definición de la función lógica AND >> D=[0 0 0 1] ; %Las salidas Para ver la gráfica de estos patrones se usa el comando plotpv >> plotpv(X,D) 7 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  8. 8. Las RNA PerceptronLa gráfica resultante es la que se muestra y corresponde al patrón deaprendizaje: 8 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  9. 9. Las RNA Perceptronb. Inicialización de la red neuronal Ahora se crea la RNA, para el caso del Perceptron se usa la función newp de la siguiente manera: >> red = newp([0 1;0 1],1) Donde: red = objeto donde se va almacenar la red creada por el MATLAB [0 1;0 1] = Rango del valor de la entrada de la RNA. El número de filas de esta matriz lo utilizará MATLAB para definir el número de entradas que tiene la RNA. 1 = Número de neuronas que tiene la red neuronal en la capa de salida. NET = NEWP(P,T,TF,LF) takes these inputs, Para mayor información: P - RxQ matrix of Q1 representative input vectors. En Matlab: T - SxQ matrix of Q2 representative target vectors. >> help newp TF - Transfer function, default = hardlim. LF - Learning function, default = learnp. Returns a new perceptron. The transfer function TF can be HARDLIM or HARDLIMS. The learning function LF can be LEARNP or LEARNPN. 9 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  10. 10. Las RNA PerceptronAhora se procederá a generar unos pesosiniciales a la red, este paso no es necesariohacerlo, pero permite generar un Perceptroncon una superficie de separación conocida.>> red.iw{1,1}=[1 1];>> red.b{1}=0.5;>> Pesos=red.iw{1,1};>> Bias=red.b{1};Con el siguiente comando se grafica la líneade separación que tiene el Perceptron>>plotpc(Pesos,Bias)Este comando agrega la recta clasificadora algráfico generado por plotpv, la gráficaquedaría así: 10 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  11. 11. Las RNA Perceptronc. Entrenamiento de la RNAEl entrenamiento de la red se realiza con elcomando train el cual implementa unentrenamiento con la regla de aprendizajetipo Perceptron.En MATLAB:>> red = train(red,X,D)Dondered = red a ser entrenada por el MATLAB.X = Entrada de los patrones de aprendizaje.D = Salida deseada de los patrones deaprendizaje. 11 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  12. 12. Las RNA PerceptronAl entrenar MATLAB nos grafica la maneracomo va evolucionando error al transcurrirlas iteraciones. 12 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  13. 13. Las RNA PerceptronCuando se ha entrenado la red, se puedevisualizar en la gráfica donde se muestra lalínea clasificadora que la red ha llevado acabo la tarea.En Matlab:>> figure;>> Pesos=red.iw{1,1};>> Bias=red.b{1};>> plotpv(X,D)>> plotpc(Pesos,Bias) 13 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  14. 14. Las RNA Perceptrond. Validación de la RNA Luego de tener una RNA entrenada se procede a validar si el comportamiento de la misma es correcto o no, para esto se usa el comando sim como se muestra a continuación: >> prueba1=[0;0]; % Patrón de prueba >> % Prueba de la red ante el patrón de prueba “prueba1”. W son los pesos y b el bias de la red entrenada. >> a = sim(red, prueba1) a= 0 >> prueba2=[1;1]; % Otro patrón de prueba “prueba2”. >> a = sim(red, prueba2) a= 1 Como se puede observar el comportamiento de la red es el adecuado por lo que se da por finalizado el entrenamiento. 14 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  15. 15. Las RNA PerceptronMostrando la clasificación X1 X2 DEn Matlab: 0 0 0 0 1 0>> red.iw{1,1} % Nuevos Pesos 1 1 0ans = 1 1 1 2 1>> red.b{1} %Nuevo Biasans = -2.5000>> plotpv(X,D)>> plotpc(Pesos,Bias) 15 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  16. 16. Las RNA PerceptronMostrando la clasificación 16 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  17. 17. Las RNA Perceptron3. Un problema de clasificación. La función se define como: X1 X2 D1 D2 0.1 0.2 1 1 0.2 0.1 1 1 -0.9 0.8 1 0 -0.7 -0.8 0 0 0.5 -0.5 0 1Pasos para resolver este problema con el MATLAB : a. Definición del problema b. Inicialización de la RNA X D c. Entrenamiento de la RNA d. Validación de la RNA 17 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  18. 18. Las RNA Perceptrona. Definición del problema La función se define como: X1 X2 D1 D2 0.1 0.2 1 1 X=[0.1 0.2 -0.9 -0.7 0.5; 0.2 0.1 0.8 -0.8 -0.5] % Las 0.2 0.1 1 1 entradas de la RNA. -0.9 0.8 1 0 D=[1 1 1 0 0; 1 1 0 0 1] % El resultado deseado de la RNA. -0.7 -0.8 0 0En Matlab: 0.5 -0.5 0 1>> X=[0.1 0.2 -0.9 -0.7 0.5; 0.2 0.1 0.8 -0.8 -0.5]>> D=[1 1 1 0 0; 1 1 0 0 1]>> plotpv(X,D) 18 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  19. 19. Las RNA Perceptron X1 X2 D1 D2b. Inicialización de la RNA 0.1 0.2 1 1 0.2 0.1 1 1En Matlab: -0.9 0.8 1 0>> red=newp([-0.9 0.5;-0.8 0.8],2); -0.7 -0.8 0 0 0.5 -0.5 0 1 19 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  20. 20. Las RNA Perceptronc. Entrenamiento de la RNA X1 X2 D1 D2 0.1 0.2 1 1En Matlab: 0.2 0.1 1 1>> red=train(red,X,D); -0.9 0.8 1 0Mostrar los pesos y las bias calculados: -0.7 -0.8 0 0>> red.iw{1,1} 0.5 -0.5 0 1ans = 0.8000 1.0000 2.2000 -0.3000>> red.b{1}ans = 0 0>> 20 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  21. 21. Las RNA Perceptrond. Validación de la RNA X1 X2 D1 D2En Matlab: 0.1 0.2 1 1>> prueba1=[0.1;0,2] 0.2 0.1 1 1>> a=sim(red, prueba1) -0.9 0.8 1 0a= -0.7 -0.8 0 0 1 0.5 -0.5 0 1 1>> prueba2=[-0.9;0,8]>> b=sim(red, prueba2)b= 1 0>> prueba3=[-0.5;0,2]>> a=sim(red, prueba3)c= 0 0 21 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  22. 22. Las RNA PerceptronMostrando la clasificación X1 X2 D1 D2En Matlab: 0.1 0.2 1 1 0.2 0.1 1 1>> Pesos=red.iw{1,1} -0.9 0.8 1 0Pesos = -0.7 -0.8 0 0 0.8000 1.0000 0.5 -0.5 0 1 2.2000 -0.3000>> Bias=red.b{1}Bias = 0 0>> plotpc(Pesos,Bias) 22 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  23. 23. Las RNA PerceptronMostrando la clasificación X1 X2 D1 D2 0.1 0.2 1 1 0.2 0.1 1 1 -0.9 0.8 1 0 -0.7 -0.8 0 0 0.5 -0.5 0 1 23 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  24. 24. Las RNA Perceptron - Tarea1. Graficar los patrones de aprendizaje de las funciones lógicas: • OR • NOT • XOR • CONDICIONAL • LA BICONDICIONAL2. Graficar los patrones de aprendizaje de: X1 X2 D1 D2 -0.5 -1.0 0 1 1.0 1.0 1 1 1.0 0.5 1 0 -1.0 -0.5 0 0 -1.0 -1.0 0 1 0.5 1.0 1 1 24 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  25. 25. Las RNA Perceptron - Tarea3. Con ayuda del toolbox de redes neuronales del MATLAB, clasificar usando un Perceptron el siguiente patrón de aprendizaje. X1 X2 D -0.5 -1.0 0 1.0 1.0 1 1.0 0.5 1 -1.0 -0.5 0 -1.0 -1.0 0 0.5 1.0 14. Trate de resolver el problema de la XOR con una RNA Perceptron, ¿a que conclusión llega?. 25 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  26. 26. Las RNA Perceptron - Tarea5. Diseñe y entrene usando el toolbox de redes neuronales del MATLAB un Perceptron que pueda identificar los números del 0 al 9 donde cada número se puede definir en una matriz de 5*3, por ejemplo el número 2 sería : 111 001 111 100 1116. Modifique el programa del Perceptron presentado de tal forma que permita trabajar un Perceptron de N neuronas en la capa de entrada y de M neuronas en la capa de salida, pruebe el Perceptron codificado con el ejercicio anterior. 26 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.
  27. 27. Informe de Laboratoriop El Informe de Laboratorio es un documento gráfico en lo posible y es redactado en Word con el desarrollo del laboratorio.p Niveles de Informe: p Primer nivel: Observaciones. Imágenes con comentarios cortos. Redactar al ir desarrollando el laboratorio. (Requiere desarrollar el laboratorio). p Segundo nivel: Conclusiones. Redactar al terminar el laboratorio.(Requiere haber desarrollado el laboratorio). p Tercer Nivel: Recomendaciones. (Requiere lectura de otras fuentes).p Dentro de su Carpeta Personal del Dropbox crear una carpeta para el laboratorio 4 con el siguiente formato: SIRN_PaternoM_Lab4p Adjuntar fuentes que le han ayudado en esta carpeta creada.p Las fuentes deben conservar el nombre original de archivo y se debe agregar _L4 al final.p Presentar el Informe de Laboratorio 4 en esta carpeta creada. Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P. 27
  28. 28. Laboratorio 4. Las RNA Perceptron Blog del curso: utpsirn.blogspot.com 28 Sistemas Inteligentes y Redes Neuronales - Prof. Ing. José C. Benítez P.

×