Redes de propagación hacia delante y aprendizaje supervisado

Post on 14-Jun-2015

2.781 views 6 download

description

Redes NEURONALES de propagación hacia delante y aprendizaje supervisado

Transcript of Redes de propagación hacia delante y aprendizaje supervisado

UNIDAD VIUNIDAD VI

Redes de propagación hacia delante y

aprendizaje supervisado

6.1 Red Perceptron

1943Warren Mc Culloch/Walter Pitts.-

Originaron el primer modelo de operación neuronal, el cual fue mejorado en sus aspectos biológicos por Donald Hebb en 1948.

CaracterísticasLa característica principal del modelo

neuronal de Warren es que la suma ponderada de las señales de entrada es comparada con un umbral para determinar la salida de la neurona. Cuando la suma es mayor o igual al umbral, la salida es igual a 1. Cuando la suma es menor que el umbral, la salida es 0.

Rosenblatt1950.Frank Rosenblatt.- presentó el

Perceptron, el cual es similar a las neuronas de Mc Culloch & Pitts.

Su contribución fue: Una regla de aprendizaje para entrenar el perceptrón en la solución de problemas de reconocimiento.

Características

La regla de aprendizaje simple convergirá a los pesos correctos de la red si es que existen los pesos que solucionan dicho problema. La regla de aprendizaje es simple y automáticamente la red aprende de sus errores.

Perceptron Multicapa

1980.Se presenta el perceptrón multicapa.-

Esta red aprendía aun cuando sé inicializaba con valores aleatorios.

Regla De Aprendizaje O Algoritmo De Entrenamiento.-

Se entiende por regla de aprendizaje al procedimiento para modificar los pesos y umbrales de polarización de una red.

El propósito de la regla de aprendizaje es entrenar a la red para ejecutar alguna tarea.

Las categorías en las cuales caen todas las reglas de aprendizaje para redes neuronales son: Aprendizaje supervisado, Aprendizaje por refuerzo, Aprendizaje no supervisado.

Regla De Aprendizaje O Algoritmo De Entrenamiento.-

La salida de la red se calcula mediante:

6.1.1 Modelo y Arquitectura de un Perceptrón

bWphardlima

Fig. 6.1 Red Perceptron

La matriz de pesos de la red es:

RSSS

R

R

www

www

www

.2,1,

.22,21,2

.12,11,1

W

Se definirá un vector compuesto de los elementos de la ith fila de W:

Ri

i

i

w

w

w

,

2,

1,

wi

Ahora se puede particionar la matriz de pesos:

TS

T

T

w

w

w

2

1

Wi

Esto permitirá escribir el ith elemento del vector de salida de la red como:

iTiii bhardlimnhardlima pw

Recordando que la función de transferencia hardlim se define

como:

contrariolotodo

nsinhardlima

0

01

n=Wp+b n

a

Conclusión

Por lo tanto, si el producto punto de la ith fila de la matriz de pesos con el vector de entradas es más grande que o igual a -b, la salida será 1, de otro modo la salida será 0.

De lo anterior se deduce que cada neurona en la red divide el espacio de entrada en dos regiones.

Perceptrón Simple

Considerando un perceptrón de dos entradas con una neurona:

Fig. 6.2 Perceptrón de dos entradas / una salida

p1

p2

w1,1

w1,2

n a

b1

La salida es determinada por:

bpw

pwhardlimbhardlima

bhardlimnhardlima

T

22,1

11,1

1 pw

Wp

La frontera de decisión se determina por los vectores de entrada para los cuales el conjunto de entradas n es cero:

.022,111,11 bpwpwbpwn T

Por ejemplo:

.1,1,1 2,11,1 bww

La frontera de decisión es entonces:

.012122,111,11 ppbpwpwbpwn T

Esto define una línea en el espacio de entrada.

En un lado de la linea la salida de la red será 0; en la línea y en el otro lado será 1.

Para dibujar la línea, se pueden encontrar los puntos donde se interceptan los ejes p1 y p2. Para encontrar la interceptación p2 el conjunto p1 = 0:

.0111

12,1

2 psiwb

p

Para encontrar la intercepción p1, el conjunto p2 = 0:

.0111

21,1

1 psiwb

p

La frontera de decisión resultante se ilustra a continuación:

p2

a=0

a=1

p1

1WTp+b=0

Fig. 6.3 Frontera de decisión para un Perceptron de dos entradas

La salida de la red será 1 para la región

arriba y a la derecha de la frontera de decisión.

Examinando un punto, tomaremos en cuenta la entrada p= [2 0]T, la salida de la red será:

110

2111

hardlimbhardlima Tpw

Frontera de Decisión Gráficamente

También se puede encontrar la frontera de decisión gráficamente.

Para realizar esto ultimo el Primer paso es hacer notar que la frontera siempre es ortogonal a 1w, como se ilustra en las siguientes figuras:

Para todos los puntos en la frontera, el producto punto del vector de entrada con el vector de pesos es el mismo.

La frontera se define por:wT

1 p b+ 0=

Frontera de Decisión Gráficamente

Lo cual implica que estos vectores de entrada tengan todos la misma proyección en el vector de pesos, así es que deberán caer sobre la línea ortogonal para el vector de pesos. Además, cualquier vector en la región sombreada tendrá un producto punto más grande que –b:

wT1 p b–=

Frontera de Decisión Gráficamente

Frontera de Decisión Gráficamente

Por lo tanto el vector de pesos 1w siempre apuntará hacia la región donde la salida de la neurona sea igual a 1.

Después de haber seleccionado un vector de pesos con la orientación angular correcta, el valor de umbral (polarización) puede ser calculado al seleccionar un punto en la frontera y satisfacer la ecuación:

wT1 p b+ 0=

Tarea 6_3: Ejemplo - OR

p10

0= t1 0=

p20

1= t2 1=

p31

0= t3 1=

p41

1= t4 1=

Usando un Perceptron simple solucione el problema de clasificación de la compuerta or.

– a).- Encontrar el valor de la matriz de pesos w.– b).- Encontrar el valor del umbral de activación.– c).- Con los valores obtenidos comprobar el

funcionamiento de la red al aplicar los pares de entrada.

– d).- Verificar el funcionamiento del Perceptron mediante el simulador.

Solución a la OR:

w10.5

0.5=

wT1 p b+ 0.5 0.5

0

0.5b+ 0.25 b+ 0= = = b 0.25–=

El vector de pesos debería ser ortogonal a la frontera de decisión.

Se tomará un punto sobre la frontera de decisión para encontrar el umbral.

Problema 2:

Diseño de una red Perceptron para implementar una función lógica simple:

La Compuerta AND.

x1 x2 S

0 0 0

0 1 0

1 0 0

1 1 1

Continuación: Problema 2

Las parejas entrada/objetivo son:

Perceptrón Multineuronas La frontera de decisión para una neurona i

se define por:

01 iT bpw

Un perceptrón de una neurona puede clasificar vectores de entrada en dos categorías, ya que su salida puede ser 0 o 1.

Un perceptrón de múltiples neuronas puede

clasificar entradas en muchas categorías. Cada categoría se representa por un vector de salida diferente.

Ya que cada elemento del vector de salida puede ser 0 o 1, hay un total de 2S categorías posibles, donde S es el número neuronas.

6.1.2 Regla de Aprendizaje del Perceptrón y entrenamiento de la red

La regla de aprendizaje es un ejemplo del entrenamiento supervisado, en el cual la regla de aprendizaje es probada con un conjunto de ejemplos propios del comportamiento de la red:

,,,,,,, 2211 QQ tptptp

Donde pq es una entrada a la red y tq es el

objetivo de salida correspondiente.

Con cada entrada aplicada a la red, la salida de la red se compara con el objetivo.

La regla de aprendizaje entonces ajusta los pesos y las polarizaciones de la red en orden a mover la salida de la red hacia el objetivo.

Ejercicio: La siguiente figura, muestra 3 vectores

representados por círculos vacíos y llenos.

Fig. 6.4 Vectores entrada/objetivo

Las entradas y las salidas a considerar en este problema son:

0,

1

0,0,

2

1,1,

2

1332211 tptptp

En la figura anterior se representan los dos vectores cuyo objetivo es CERO (circulo blanco), y el vector cuyo objetivo es 1 se representa con un circulo negro.

Del ejercicio anterior soluciona el problema de clasificación mediante un perceptrón y determine:

– 1.- La estructura de la red indicando el número de entradas y salidas.

– 2.- Partiendo de valores iniciales de sus parámetros de la red use la regla de aprendizaje del perceptrón para ajustar el valor de los pesos y umbral que den solución al problema.

RESULTADOS 1.- Analizando las entradas al sistema pq , tq;

se concluye que, para el problema la red debe tener 2 entradas y un salida.

Fig.. 6.5 Red del ejercicio

2.- Regla de Aprendizaje– a).- El entrenamiento se inicia asignando

valores iniciales pequeños a los parámetros de la red.

• Se propone: w11.0

0.8–=

No existe un umbral de polarización la frontera de decisión pasará por el origen.

b=0

– b).- Presentar los vectores de entrada a la red; iniciando con p1.

a hardlim wT1 p1 hardlim 1.0 0.8–

1

2

= =

p11

2= t1 1=

a hardlim 0.6– 0= =

Como n< 0 la salida a= 0, pero t1 =1 por lo que a debería ser 1; por lo tanto:

La clasificación es incorrecta

– c).- Se suma p1 a w y se obtiene el nuevo

valor para w:• Una regla tentativa.

If t 1 and a 0, then w1ne w

w1old

p+== =

w1new w1

ol d p1+ 1.0

0.8–

1

2+ 2.0

1.2= = =

– Se gráfica la frontera de decisión y el vector

de pesos.

– d).- Se utiliza el siguiente vector de entrada en la función de salida:

a hardlim wT1 p2 hardlim 2.0 1.2

1–

2

= =

a ha rdlim 0.4 1= =

Como n 0 la salida a= 1, pero t2 = 0 por lo que a debería ser 0; por lo tanto:

La clasificación es incorrecta

– e).- El resultado de a debería ser cero, por lo tanto:

• Se modifica la regla:

If t 0 and a 1, then w1ne w

w1old

p–== =

w1ne w

w1ol d

p2–2.0

1.2

1–

2–

3.0

0.8–= = =

– Se gráfica la frontera de decisión y el vector de pesos.

– f ).- Usando el tercer vector de entrada:

a hardlim wT

1 p3 hardlim 3.0 0.8–0

1–

= =

a = hardlim (0.8) = 1

Como n 0 la salida a= 1, pero t3 = 0 por lo que a debería ser 0; por lo tanto:

La clasificación es incorrecta

– g).- Así es que :

w1ne w w1

ol d p3– 3.00.8–

01–

– 3.00.2

= = =

If t a, then w1ne w w1

o ld.==

También, puede llegar a presentarse que la salida a sea igual a el objetivo t, con lo que se tendría la tercer regla para la actualización de los pesos:

Y se gráfica la frontera de decisión y el vector de pesos.

Por ultimo se verifican las entradas y salidas

Unificación de la regla de aprendizaje

If t 1 and a 0, then w1ne w

w1old

p+== =

If t 0 and a 1, then w1n ew w1

old p–== =

If t a, then w1new w1

ol d==

e t a–=

If e 1, then w1ne w

w1old

p+= =

If e 1,– then w1ne w

w1old

p–==

If e 0, then w1ne w w1

old==

w1new

w1ol d

ep+ w1ol d

t a– p+= =

bne w

bol d

e+=

El umbral es unpeso con

una entrada de 1.

Perceptron de Múltiples-Neuronas

winew wi

olde ip+= bi

ne wbi

ol dei+=

Wne w Wol d epT+=

bnew

bol d

e+=

Para actualizar la ith fila de la matriz de pesos:

En forma de Matriz:

Capacidad de la regla de aprendizaje del Perceptron

La regla del Perceptron siempre convergirá a los pesos que cumplan con la clasificación deseada, asumiendo que

tales pesos existan.

NOTA: Recordar que la longitud del vector de pesos no es importante, lo único importante es su dirección.

Limitaciones del Perceptron

wT1 p b+ 0=

Frontera de decisión lineal

Problemas linealmente No separables

Tarea 6_4: Resolver el problema de clasificación de naranjas y manzanas tomando los siguientes conjuntos de entrenamiento*:

p1

1–

11–

t1 1= =

p2

1

11–

t2 0= =

Considerar a p1 = naranjas y p2 = manzanas, así como:

W 0.5 1– 0.5–= b 0.5=

Solución al clasificador de naranjas/manzanas:

W 0.5 1– 0.5–= b 0.5=

a hardlim Wp1 b+ hardlim 0.5 1– 0.5–1–1

1–

0.5+

= =

Pesos Iniciales

Primera Iteración

p1

1–

11–

t1 1= =

p2

1

11–

t2 0= =

a hardlim 0.5– 0= =

Wne w Wol depT

+ 0.5 1– 0.5– 1 1– 1 1–+ 0.5– 0 1.5–= = =

bne w

bol d

e+ 0.5 1 + 1.5= = =

e t1 a– 1 0– 1= = =

Segunda Iteración

a hardlim Wp2 b+( ) hardlim 0.5– 0 1.5–11

1–

1.5 +( )= =

a hardlim 2.5( ) 1= =

e t2 a– 0 1– 1–= = =

Wne w WoldepT

+ 0.5– 0 1.5– 1– 1 1 1–+ 1.5– 1– 0.5–= = =

bne w

bol d

e+ 1.5 1– + 0.5= = =

Comprobación

a hardl im Wp1 b+( ) hardlim 1.5– 1– 0.5–

1–

11–

0.5+( )= =

a hardlim 1.5( ) 1 t1= = =

a hardl im Wp2 b+( ) hardlim 1.5– 1– 0.5–

1

11–

0.5+( )= =

a hardlim 1.5–( ) 0 t2= = =

Problemas Propuestos

1.- Clasifique los siguientes problemas usando la regla de aprendizaje del Perceptron mediante código en Matlab.– Grafique los puntos de cada problema.– Obtenga el código necesario para simular cada

problema.– Simule el código obtenido y observe sus

resultados.

2.-

3.-

Tarea 6_1: Reglas de Aprendizaje

p1 t1{ , } p2 t2{ , } pQ tQ{ , }

• Supervised LearningNetwork is provided with a set of examplesof proper network behavior (inputs/targets)

• Reinforcement LearningNetwork is only provided with a grade, or score,which indicates network performance

• Unsupervised LearningOnly network inputs are available to the learningalgorithm. Network learns to categorize (cluster)the inputs.