Вы находитесь на странице: 1из 11

Aplicacin de Redes Neuronales en o MATLAB

Simulacin de Procesos Industriales o Trabajo Prctico # 5 a Jos Eduardo Laruta Espejo e


Resumen El presente trabajo trata acerca de las aplicaciones bsicas de las a redes neuronales, en espec co el perceptron, para aproximar funciones lgicas combinacionales, explorando las ventajas y limitaciones de una o red de un perceptron simple y analizando aspectos acerca de la separabilidad lineal de los problemas. Tambien analizamos los algoritmos de aprendizaje de dichas redes y su rendimiento. Se implementan 3 funciones lgicas combinacionales bsicas en el software MATLAB con el o a n de analizar los resultados del entrenamiento de dicha red.

1.
1.1.

DESCRIPCION DEL PROBLEMA


Funciones lgicas AND, OR y XOR o

Se intenta implementar la funcin AND en un perceptron simple con 2 o entradas y una salida, siguiendo con la tabla de verdad propia de la funcin o mostrada en 1.1. x1 x2 x1 x2 0 0 0 0 1 0 1 0 0 1 1 1 Cuadro 1: Tabla de verdad de la funcin AND o 1

Luego, tambin procederemos a implementar la funcin OR inclusivo en e o nuestra red neuronal, cuya tabla de verdad se muestra a continuacin: o x1 x2 x1 x2 0 0 0 0 1 1 1 0 1 1 1 1 Cuadro 2: Tabla de verdad de la funcin OR o Y por ultimo, tenemos que implementar o aproximar la funcin OR- Ex o clusivo o XOR mediante una red neuronal, vemos su tabla de verdad: x1 x2 x1 x2 0 0 0 0 1 1 1 0 1 1 1 0 Cuadro 3: Tabla de verdad de la funcin XOR o Para implementar esta funcin utilizaremos un perceptron simple cuyo o esquema y estructura se muestra a continuacin: o

Figura 1: Estructura del percepttron simple

1.2.

Aprendizaje de la red

El aprendizaje de una red neuronal se maniesta a travs del cambio e y ajuste de los pesos sinpticos de sus entradas y de su nivel de umbral. a Iniciando con valores aleatorios, si no se conoce nada del sistema, para luego, mediante pruebas sucesivas con patrones de entrenamiento, se logre ajustar dichos pesos para obtener el comportamiento deseado [2]. Para el entrenamiento (ajuste de pesos) utilizamos en siguiente algoritmo: 1. Inicializacin. Asignar a los pesos w1 , w2 , w3 , . . . , wn y el umbral o valores aleatorios en el rango [0,5, 0,5]. 2. Activacin. Activar el perceptron aplicando las entradas x1 (p).x2 (p) . . . , xn (p) o y la salida deseada Yd (p), calcular la salida en la iteracin p = 1: o
n

Y (p) = step
i=1

xi (p)wi (p)

donde n es el nmero de entradas al perceptrn y step es una funcin u o o de activacin tipo escaln. o o 3. Entrenamiento de ponderaciones Adaptar los pesos del perceptrn: o wi (p + 1) = wi (p) + wi (p) donde wi (p) es la correccin del peso en la iteracin p. la correccin o o o se calcula mediante la regla delta: wi (p) = xi (p) e(p) 4. Iteracin. Incrementamos la iteracin p en 1 y volvemos al paso 2 y o o repetimos hasta que exista la convergencia.

2.

IMPLEMENTACION EN MATLAB

Para la implementacin y simulacin de nuestras redes neuronales utio o lizaremos el toolbox de redes neuronales del software especializado MATLAB

2.1.

Funcin AND o

En primer lugar ingresamos los patrones de entrada con 2 variables de entrada y su correspondiente salida en matrices y las visualizamos en una grca: a P=[0 0 1 1 ; 0 1 0 1 ] ; T=[0 0 0 1 ] ; p l o t p v (P ,T)

Figura 2: Patrones de entrada y salidas deseadas Luego procedemos a crear la red neuronal del perceptron simple: n e t=newp ( [ 0 1 ; 0 1 ] , 1 ) ; y luego simulamos la red para ver los pesos: a=sim ( net , P)

Figura 3: Red sin entrenamiento 4

Despues de inicializar todas las herramientas procedemos a entrenar la red neuronal: n e t=t r a i n ( net , P ,T ) ; p l o t p c ( n et .IW{ 1 , 1 } , n et . b {1})

Figura 4: Grca de entrenamiento a y simulamos su comprtamiento con los nuevos pesos que se ajustaron luego del entrenamiento: a=sim ( net , P)

Figura 5: Resultados, pesos y umbral

2.2.

Funcin OR o

Como en el anterior caso, ingresamos los patrones de entrada con 2 variables de entrada y su correspondiente salida en matrices y las visualizamos en una grca: a P=[0 0 1 1 ; 0 1 0 1 ] ; T=[0 1 1 1 ] ; p l o t p v (P ,T)

Figura 6: Patrones de entrada y salidas deseadas Luego procedemos a crear la red neuronal del perceptron simple: n e t=newp ( [ 0 1 ; 0 1 ] , 1 ) ; y luego simulamos la red para ver los pesos: a=sim ( net , P) Despues de inicializar todas las herramientas procedemos a entrenar la red neuronal: n e t=t r a i n ( net , P ,T ) ; p l o t p c ( n et .IW{ 1 , 1 } , n et . b {1}) 6

Figura 7: Red sin entrenamiento

Figura 8: Grca de entrenamiento a y simulamos su comprtamiento con los nuevos pesos que se ajustaron luego del entrenamiento: a=sim ( net , P)

2.3.

Funcin XOR o

Esta funcin no se puede implementar por un perceptron simple dada la o propiedad de la no separabilidad lineal, tal como vemos en el grco de los a patrones de entrada y salida: Entonces procedemos a utilizar una red de perceptrones multicapa feedforward: P=[0 0 1 1 ; 0 1 0 1 ] ; T=[0 1 1 0 ] ; 7

Figura 9: Resultados, pesos y umbral

Figura 10: Funcin XOR o p l o t p v (P ,T) n e t=n e w f f ( minmax (P ) , [ 2 , 1 ] , { t a n s i g , p u r e l i n } , t r a i n g d ) simulamos su comportamiento inicial: luego denimos algunos parmetros para el entrenamiento de la red: a n e t . trainParam . show =50; n e t . trainparam . l r = 0 . 0 5 ; n e t . trainParam . epochs =30000; n e t . trainParam . g o a l = 0 . 0 0 1 ; 8

Figura 11: Xomportamiento inicial de la red nalmente entrenamos nuestra red dados los anteriores parmetros. a

Figura 12: Grcas del entrenamiento a

Figura 13: Comportamiento nal de la red

3.

CONCLUSIONES

Pudimos implementar y simular las redes neuronales gracias al software matlab mediante su toolbox de redes neuronales articiales. Observamos el fenmeno de la separabilidad lineal con una funcin XOR o o la cual no puede implementarse en una sola neurona. Para realizar esta tuvimos que implementar una red multicapa con varias neuronas arrojando los resultados que se ven en la guta(13).

10

Referencias
[1] G. Choque, Redes Neuronales Articiales, Aplicaciones en MATLAB Centro de Publicaciones de la Facultad de Ciencias Puras y Naturales UMSA [2] M. Amestegui, Apuntes sobre Redes Neuronales Articiales

11

Вам также может понравиться