A1262697376xghIN - PowerPoint PPT Presentation

1 / 46
About This Presentation
Title:

A1262697376xghIN

Description:

La caracter stica principal de ese modelo es que comparaba una suma ... gustar a mover el vector de pesos lejos de esta entrada se puede modificar la regla a: ... – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 47
Provided by: lucianom3
Category:

less

Transcript and Presenter's Notes

Title: A1262697376xghIN


1
Regla de Aprendizaje del Perceptrón
Objetivo Entrenar perceptrones para que aprendan
a resolver problemas de clasificación.
Problema Determinar la matriz de pesos y el
vector de sesgos para las redes perceptrónicas
con muchas entradas, donde es difícil obtener
gráficamente las fronteras de decisión.
Historia En 1943, W. McCulloch y W. Pitts
produjeron una de las primeras neuronas
artificiales. La característica principal de ese
modelo es que comparaba una suma pesada de sus
entradas con un umbral para obtener la salida.
2
Regla de Aprendizaje del Perceptrón
Cuando la suma es mayor o igual al umbral, la
salida es 1 y 0 en caso contrario. Ellos pensaron
que una red con este tipo de neuronas podría
calcular cualquier función aritmética o lógica.
Problema A diferencia de las neuronas
biológicas, los parámetros se debían diseñar, ya
que no habían métodos de entrenamiento.
Finalizando los 1950, F. Rosenblatt y sus
colaboradores desarrollaron una clase de red
neural que llamaron perceptrónes. Las neuronas de
esas redes eran similares a las de McCulloch y
Pitts.
3
Regla de Aprendizaje del Perceptrón
Contribución Rosenblatt introdujo una regla de
aprendizaje para entrenar las redes
perceptrónicas para resolver problemas de
reconocimiento de patrones. El probó que la regla
de aprendizaje siempre converge a los pesos
correctos, si esos pesos existen, es decir, si el
problema tiene solución. Es un aprendizaje simple
y automático donde la red aprende de sus
errores.
El perceptrón aprende incluso cuando se
inicializan sus pesos y sesgos con valores
aleatorios.
Desafortunadamente el perceptrón es limitado.
La limitación fue publicada en el libro
Perceptrones de Minsky y Papert. Donde se
demostraba que una red de perceptrones era
incapaz de implementar ciertas funciones
elementales
4
Regla de Aprendizaje del Perceptrón
Problema Resuelto Las limitaciones fueron
superadas en la década de 1980 con redes
perceptrónicas multicapas y nuevas reglas de
aprendizaje.
Posteriormente Las redes perceptrónicas jugaron
un rol importante. Hay muchas clases de problemas
que pueden resolver rápida y eficientemente.
Entender las operaciones de los perceptrones es
la base para entender redes más complejas.
5
Reglas de Aprendizaje de las RNA
Reglas de aprendizaje procedimientos para
modificar los pesos y los sesgos de las redes.
También se habla de etapa de entrenamiento. El
propósito del aprendizaje es entrenar la red para
que realice alguna tarea.
Hay muchos tipos de reglas de aprendizajes
neurales que se clasifican en tres categorías
aprendizaje supervisado, aprendizaje no
supervisado y aprendizaje por reforzamiento.
 Aprendizaje supervisado La red dispone de un
conjunto de patrones ejemplos (conjunto de
entrenamiento) a partir de los cuales aprende
p1,t1, p2,t2, ....,pQ,tQ
6
Reglas de Aprendizaje de las RNA
Pq es una entrada a la red y tq es la salida
correcta para esa entrada. A medida que las
entradas se aplican a la red, las salidas
obtenidas se comparan con las salidas
pre-establecidas.
La regla de aprendizaje se usa para ajustar los
pesos y los sesgos con el fin de mover las
salidas de la red tan cerca como sea posible de
las salidas pre-establecidas.
7
Reglas de Aprendizaje de las RNA
 Aprendizaje reforzado Es similar al supervisado
pero en lugar de poseer la salida correcta para
cada entrada, el algoritmo solamente da un valor
aproximado. Ese score es una medida de la
capacidad de la red de reconocer secuencias de
entradas. Este tipo de aprendizaje es menos común
que el supervisado y aparece en aplicaciones de
sistemas de control.
Aprendizaje no supervisado Los pesos y los
sesgos se modifican en respuesta a las entradas
solamente. No hay salidas pre-establecidas para
las entradas.
8
Reglas de Aprendizaje de las RNA
Aunque parece poco práctico entrenar una red si
no sabemos qué debe obtener como salida, muchos
de estos algoritmos realizan algún tipo de
operación de agrupamiento.
Las redes aprenden a categorizar los patrones de
entrada en un número finito de clases. Son
especialmente útiles en aplicaciones donde se
realiza cuantificación vectorial.
 La regla de aprendizaje del perceptrón es del
tipo supervisado.
9
Arquitectura del perceptrón
La salida de la red perceptrónica esta dada por
a hardlim(Wpb)  
10
Redes de perceptrones
Sea
un vector compuesto por los elementos de la
i-ésima fila de W.
ai hardlim(ni) hardlim(iwTp bi)
11
Redes de perceptrones
Si el producto interno de la i-ésima fila de la
matriz de pesos con el vector de entrada es mayor
o igual a bi, la salida es 1, de lo contrario es
0.
Cada neurona en la red divide el espacio de
entradas en dos regiones. Hay que averiguar las
fronteras entre esas regiones.
Perceptrón único de dos entradas R 2 y S
1  a hardlim(n) hardlim(Wpb)
hardlim(1wTpb) hardlim(w1,1p1 w1,2p2 b)
12
Redes de perceptrones
La frontera de decisión la determinan los
vectores de entrada para los cuales la entrada de
red n es cero  w1,1p1 w1,2p2 b 0
Si asignamos los siguientes valores a los pesos y
al sesgo w1,1 1, w1,2 1, b -1 
la frontera de decisión será entonces p1 p2 -
1 0
Esto define una recta en el espacio de entradas,
donde a un lado de la recta, la red sacará un 0 y
del otro lado y sobre ésta sacará un 1.
13
Redes de perceptrones
Para dibujar la recta, buscamos los puntos donde
intersecta a los ejes p1 y p2.
Para encontrar el punto de intersección con p2,
hacemos p1 0, luego p2 1 y la intersección
con p1, será donde p2 0, es decir, en p1 1.
14
Redes de perceptrones
                 
 
La frontera de decisión se observa en la
figura. Para probar a cuál lado de la frontera
corresponde la salida de un 1, tomemos un punto
de entrada p 2 0T, con lo que la salida de la
red será
15
Redes de perceptrones
a hardlim(n) hardlim(Wpb)
hardlim(1wTpb) hardlim(w1,1p1 w1,2p2 b)
hardlim(2-1) 1
Por lo tanto la salida de la red será 1 para la
región de arriba y a la derecha de la frontera de
decisión.
También podemos encontrar la frontera de decisión
en forma gráfica.
Notemos que la frontera es siempre ortogonal a
1w y que está definida por 1wTpb
0
16
Redes de perceptrones
Para todos los puntos sobre la frontera, el
producto interno del vector de entrada con el
vector de pesos es el mismo. Eso significa que
los vectores de entrada (sobre la frontera)
tendrán todos la misma proyección sobre el vector
de pesos, es decir, ellos están sobre una recta
ortogonal al vector de pesos.
Además, cualquier vector en la región sobre y a
la derecha de la frontera tendrá un producto
interno mayor que b y el resto tendrá un
producto interno menor que b. El vector de pesos
1w apuntará siempre a la región donde la neurona
saca un 1 (averiguar si siempre el vector de
pesos apunta a esa región en todas las redes). 
17
Redes de perceptrones
Ejemplo implementación de la función lógica AND
con una red perceptrónica. Los pares de
entrada/salida para esa compuerta lógica son
18
Redes de perceptrones
El primer paso del diseño es seleccionar una
frontera de decisión. Queremos una recta que
separe las salidas 1 de las salidas 0. Hay un
número infinito de soluciones a este problemas.
Parece razonable la siguiente, cuando cada punto
es un par
19
Redes de perceptrones
El siguiente paso es escoger un vector de pesos
ortogonal a la frontera de decisión. El vector de
pesos puede ser de cualquier longitud, así que
hay infinitas posibilidades.
Una sería 1w 2 2T
Finalmente necesitamos un vector de sesgo b.
Podemos escoger un punto sobre la frontera de
decisión que satisfaga 1wTpb 0.
20
Redes de perceptrones
 
21
Redes de perceptrones
Red perceptrónica de múltiples neuronas (una
frontera de decisión para cada neurona). La
frontera de decisión para la neurona i estará
definida por iwTpbi 0.
Un perceptrón de una neurona puede clasificar los
vectores de entradas en dos categorías dado que
su salida puede ser 0 ó 1.
Un perceptrón de múltiples neuronas puede
clasificar entradas en muchas categorías, cada
categoría está representada por un vector de
salida diferente. Dado que cada elemento del
vector de salida puede ser 0 ó 1, hay 2S
categorías posibles.
22
Redes de perceptrones
Regla de aprendizaje del perceptrón es un
ejemplo del aprendizaje supervisado, en el cual
la regla de aprendizaje requiere un conjunto de
ejemplos del comportamiento esperado de la red
p1,t1, p2,t2, ....,pQ,tQ.
Problema de prueba. Para desarrollar la intuición
de cómo trabaja la regla de aprendizaje tenemos
un ejemplo.
Sean los siguientes pares entrada/salida
23
pi ti
Supongamos la red sin sesgo, es decir, la
frontera de decisión pasa por el origen.  a
harlim(Wp)
Debemos encontrar una frontera que separe los
vectores p2 y p3 del vector p1 (hay un número
infinito de posibilidades, un número infinito de
vectores de pesos).
Deseamos una regla de aprendizaje que encuentre
un vector de pesos que apunte en una de esas
direcciones (no importa su longitud, sólo su
dirección).
24
CONSTRUCCIÓN DE LA REGLA DE APRENDIZAJE El
entrenamiento comienza asignando algunos valores
iniciales a los parámetros de la red.
Inicializamos los dos pesos con valores
aleatorios   1wT 1.0 0.8
Se le presentan los vectores de entrada a la red.
Comenzamos con p1
25
La red no obtuvo el valor correcto que es t1 1.
Gráficamente podemos observar que fue lo que
pasó.   Los valores iniciales del vector de pesos
dan origen a una frontera de decisión que
clasifica de manera incorrecta al vector p1.   Se
requiere alterar el vector de pesos que apunte
hacia el vector p1 para que en el futuro tenga
una clasificación correcta.
26
Un enfoque sería hacer al vector de pesos igual a
p1 pero desafortunadamente esta regla no
encontraría una solución, ya que es imposible que
el vector de pesos sea ortogonal a una frontera
que separe correctamente todos los vectores de
entrada de una misma clase (el vector de pesos
oscilaría sin encontrar una solución).
27
                 
 
                 
 
Otra posibilidad sería agregar p1 a 1w. Esto
haría que 1w apunte más en la dirección de p1.
Haciendo repetidas presentaciones de p1 a la red
haría que la dirección de 1w se aproxime
asintóticamente a la dirección de p1.   La regla
sería como sigue Si t 1 y a 0 entonces
1wnuevo 1Wviejo p   Aplicando esta regla a
nuestro problema, el nuevo vector de pesos será
28
1.0
1 2
 Esta operación se ilustra a continuación
1
2
1w
3
Ahora nos movemos sobre los próximos vectores de
entrada y cambiamos los pesos repetidamente,
hasta que las entradas sean clasificadas
correctamente.
29
Trabajando con p2 encontramos como salida de la
red
El vector de la clase 0 fue clasificado como
clase 1. Como nos gustaría mover el vector de
pesos lejos de esta entrada se puede modificar la
regla a Si t 0 y a 1 entonces 1wnuevo
1Wviejo - p   Aplicando la regla
  1wnuevo 1Wviejo - p2 -

1.2 2 -0.8  
2.0
-1 3
30
                       
 
Ahora le presentamos el vector p3
 
-1
a harlim(1WT p3) hardlim 3.0 0.8 0
hardlim(0.8) 1
El vector de pesos actual produce una frontera de
decisión que no puede clasificar a p3. Aplicamos
la regla
31
                     
El diagrama muestra que la red perceptrón ha
aprendido a clasificar los tres vectores de forma
apropiada. Si presentamos cualquiera de los tres
vectores de entrada a la neurona, ésta obtendrá
la clase correcta para ese vector.
32
Ahora tenemos la regla final   Si t a
entonces 1wnuevo 1Wviejo   Resumen de las
reglas que cubren todas las combinaciones
posibles de las salidas obtenidas y las
esperadas   Si t 1 y a 0 entonces 1wnuevo
1Wviejo p Si t 0 y a 1 entonces 1wnuevo
1Wviejo - p Si t a entonces 1wnuevo 1Wviejo
33
Regla de aprendizaje unificada Es una expresión
compacta para las tres reglas vistas. Se define
una nueva variable como el error del perceptrón
e e t-a Si e 1 entonces 1wnuevo 1Wviejo
p Si e -1 entonces 1wnuevo 1Wviejo - p Si
e 0 entonces 1wnuevo 1Wviejo
Como el signo de p es el mismo de e y como en la
tercera regla, la ausencia de p corresponde a un
e 0, se pueden unificar las tres reglas
en 1wnuevo 1Wviejo ep 1Wviejo (t-a)p
34
 Esta regla se puede extender para entrenar el
sesgo sabiendo que éste es simplemente un peso
con entrada 1. La regla del perceptrón para el
sesgo es   bnuevo bviejo e   ENTRENAMIENTO
DE PERCEPTRONES CON MÚLTIPLES NEURONAS   Se
generaliza la regla que conocemos para una
neurona. Se modifica la i-ésima fila de la matriz
de pesos   iwnuevo iWviejo eip y para
modificar el i-ésimo elemento del vector de sesgo
es ibnuevo ibviejo ei
35
En general, la regla del perceptrón se escribe en
forma matricial como wnuevo Wviejo
epT bnuevo bviejo e   Consideremos de
nuevo el problema de reconocer manzanas y
naranjas
pi
ti
(como se está usando hardlim en lugar de hardlims
se está usando salida 0 en lugar de 1 para las
naranjas). Típicamente los pesos y los sesgos se
inicializan con números aleatorios pequeños.
  Supongamos w 0.5 1 0.5, b 0.5   El
primer paso es aplicar el primer vector p1 de
entrada a la red
36
  a harlim(W p1 b) hardlim 0.5 1 0.5
-1 0.5 hardlim(2.5) 1

-1

1
e t1 a 0 1 -1 wnuevo Wviejo epT
0.5 1 0.5 (-1)1 1 -1 -0.5 0
0.5 bnuevo bviejo e 0.5 1
-0.5   esto completa la primera iteración.   La
segunda iteración de la regla del perceptrón

1
  a harlim(W p2 b) hardlim -0.5 0 0.5
1 - 0.5 hardlim(-1.5) 0

-1
e t2 a 1 0 1 wnuevo Wviejo epT
-0.5 0 0.5 (1)1 1 -1 0.5 1
-0.5 bnuevo bviejo e -0.5 1
0.5  
37
La tercera iteración comienza de nuevo con el
primer vector de entrada

1
  a harlim(W p1 b) hardlim 0.5 1 0.5
-1 0.5 hardlim(0.5) 1

-1
e t1 a 0 1 -1 wnuevo Wviejo epT
0.5 1 0.5 (-1)1 1 -1 -0.5 2
0.5 bnuevo bviejo e 0.5 1
-0.5   Si se continua con las iteraciones
encontraremos que los dos vectores de entrada
serán clasificados correctamente. El Algoritmo
converge a una solución. La frontera de decisión
final no es la misma que la encontrada cuando se
describió el ejemplo la primera vez, aunque las
dos clasifican correctamente las
entradas.     Hacerlo.  
38
PRUEBA DE CONVERGENCIA La regla de aprendizaje
del perceptrón es simple pero muy poderosa.
Siempre converge a los pesos que logran la
clasificación, cuando esos pesos existen.
  Prueba de convergencia para un perceptrón de
una neurona   La salida del perceptrón se
obtiene como a harlim(1WT p b) los ejemplos
del comportamiento adecuado son p1,t1,
p2,t2, ....,pQ,tQ. Cada salida tq es un 0 ó
un 1.   Notación
1w
x el vector de pesos aumentado.
b
pq
  zq el vector de entrada
aumentado 1
39
La entrada de red n 1wTp b xTzq La regla de
aprendizaje para el perceptrón de una neurona se
puede escribir como xnuevo xviejo ez   El
error puede ser 1, -1 ó 0 por lo tanto los pesos
pueden cambiar o no en cada iteración. Si se
cuentan solo las iteraciones para los cuales el
vector de pesos cambia, la regla de aprendizaje
será   x(k) x(k-1) z,(k-1) (el peso actual
depende del peso anterior y de la entrada
anterior).   z,(k-1) es el miembro apropiado del
conjunto z1, z2, ..., zQ, -z1, -z2, ... ,
-zQ   Supondremos que existe un vector de pesos
que puede clasificar de manera correcta todos los
vectores de entrada Q. Esa solución la
simbolizaremos como x. Para este vector de pesos
asumiremos que  
40
xTzq gt ? gt 0 si tq 1   y xTzq lt -? lt 0 si tq
0   Buscamos los límites superior e inferior de
la longitud del vector de pesos en cada paso del
algoritmo.   Supongamos que el vector de pesos se
inicializa con cero x(0) 0 Después de k
iteraciones tenemos x(k) z,(0) z,(1) ...
z,(k-1)   Si tomamos el producto interno del
vector de pesos solución con el vector de pesos
en la iteración k se tiene   xTx(k) xTz,(0)
xTz,(1) ... xTz,(k-1)   Suponiendo
xTz,(i) gt ? entonces xTx(k) gt k? (los pesos
en la dirección de las entradas)
41
De la desigualdad Cauchy-Schwartz (xTx(k))2
x 2 x(k)2 Donde x2 xTx
Combinando las dos penúltimas ecuaciones, se
puede poner un límite inferior al cuadrado de la
longitud del vector de pesos en la iteración k
  (xTx(k))2 (k?)2
x 2 x 2
x(k)2 gt
ahora queremos un límite superior para la
longitud del vector de pesos comenzamos por
buscar el cambio en la longitud en la iteración
k x(k)2 xT(k)x(k) x(k-1)
z,(k-1)T x(k-1) z,(k-1)
xT(k-1)x(k-1) 2 xT(k-1) z,(k-1) z,T(k-1)
z,(k-1) como los pesos se modifican cuando el
vector previo de entrada no se clasifica
correctamente, entonces
42
Simplificando la última ecuación x(k)2
x(k-1)2 z,(k-1)2
Repitiendo el proceso para x(k-1)2 ,
x(k-2)2 , ... se obtiene
x(k)2 z,(0)2 z,(1)2 ....
z,(k-1)2   si M max(z,(i)2), este
límite superior se puede simplificar a x(k)2
kM. Tenemos ahora un límite superior y un límite
inferior para la longitud cuadrada del vector de
pesos en la iteración k. Si se combinan las dos
desigualdades se encuentra que
  (k?)2
x 2
kM x(k)2
gt
ó M x 2 ?2
k lt
43
k tiene una cota superior, significa que los
pesos serán cambiados un número finito de veces.
La regla de aprendizaje del perceptrón converge
en un número finito de iteraciones. El número
máximo de iteraciones está relacionado de manera
inversamente proporcional al cuadrado de ?. Este
parámetro es una medida de qué tan cerca está la
frontera de decisión solución a los vectores de
entrada. Esto significa que si las clases de
entrada son difíciles de separar (están cerca de
la frontera de decisión) el algoritmo convergerá
en muchas iteraciones.   Hay tres supuestos
claves requeridos para la prueba 1.- Existe una
solución tal que se satisfaga xTz,(i) gt ?. 2.-
Los pesos solo se modifican cuando el vector de
entrada no es clasificado correctamente. 3.-
Existe un límite superior M, para la longitud de
los vectores de entrada.   NOTA Debido a la
generalidad de la prueba hay muchas variantes de
la regla de aprendizaje del perceptrón.
44
Limitaciones La regla de aprendizaje del
perceptrón converge a una solución en un número
finito de pasos, si la solución existe. Entonces
qué problemas puede resolver un
perceptrón?.   Un perceptrón de una neurona
divide el espacio de entrada en dos regiones. La
frontera entre las regiones está definida por la
ecuación 1wTb 0. La frontera es líneal
(Hiperplano). Los perceptrones se pueden utilizar
para clasificar vectores de entrada que se puedan
separar por una frontera líneal.
Desafortunadamente muchos problemas no son
linealmente separables. Un ejemplo clásico es la
función lógica XOR.   Las entradas/salidas para
la función XOR son
Pi ti
45
Gráficamente tenemos este problema y otros no
separables linealmente
 
 
                               
 
46
Esta fue la falla del perceptrón básico para
resolver problemas simples y que minimizaron el
interés sobre la investigación del campo de las
redes neurales en los años 1970. Rosenblatt
investigó ANN más complejas las cuales superaban
la limitación del perceptrón básico, pero no pudo
aplicar efectivamente la regla del perceptrón a
tales redes.
Aparecen los perceptrones multicapas, las cuales
pueden resolver problemas de clasificación
arbitrarios (aparece el backpropagtion para
entrenar tales redes).
Write a Comment
User Comments (0)
About PowerShow.com