41
1 /37 /37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

Embed Size (px)

Citation preview

Page 1: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

11 /37/37

Redes Neuronales de Retropropagación

REDES NEURONALES PARA MODELOS DE CLASIFICACION

Mg. Samuel Oporto Díaz

Page 2: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

22 /37/37

Tabla de Contenido1. Neuronas Artificiales

2. Análisis de las Redes Neuronales

Page 3: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

33 /37/37

PERCEPTRON MULTICAPA

Page 4: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

44 /37/37

Perceptron Multicapa• Representación ordenada

– Werbos (1972)

– Red lineal

– Activaciones dependen:• entradas• activaciones de neuronas

precedentes

– Derivadas ordenadas backpropagation

1

2

3

4

57

6Wij

1 Wij2

u1

u2

y1

y2

Wij3

u1

u2

y1

y21 2 3 4 5 6 7

i

i

j

ni

kkikjijii uwxwfx

1

1 1

0

Page 5: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

55 /37/37

Perceptron Multicapa

w11=1 w12=1w21=1 w22=1

w31=1 w32=-1.5b1=0.5 b2=1.5 b3=0.5

Page 6: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

66 /37/37

RED DE RETROPROPAGACION

Page 7: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

77 /37/37

Retropropagación• Procedimiento para encontrar el vector gradiente de una

función error asociada a la salida de la red con respecto a los parámetros de la misma

• El nombre backpropagation surge pues el cálculo se hace en el sentido inverso de la red, propagándose desde los nodos de salida hacia los nodos de entrada

• Esto permite poder aplicar a posteriori alguno de los muchos métodos de optimización con gradiente para obtener el comportamiento deseado de la red

Page 8: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

88 /37/37

Retropropagación

f()

entradasPesos

k = capa

sumatoria

constanteb

función detransferenciaresultado

net =ok(n)salida

calculadayk(n)

x1(n)wk1 (n)

x2(n)

x3(n)

wk2 (n)

wk3 (n)ek(n) = dk(n) – yk(n)

salidadeseadadk(n)

ek(n)

Page 9: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

99 /37/37

Función de transferencia

Page 10: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

Funciones de transferenciacompet

Competitive transfer function. hardlim

Hard limit transfer function. hardlims

Symmetric hard limit transfer function logsig

Log sigmoid transfer function. poslin

Positive linear transfer function purelin

Linear transfer function. radbas

Radial basis transfer function. satlin

Saturating linear transfer function. satlins

Symmetric saturating linear transfer function softmax

Soft max transfer function. tansig

Hyperbolic tangent sigmoid transfer function. tribas

Triangular basis transfer function.

Page 11: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1111 /37/37

Aprendizajeentrada neta a i

j i

salida de i

error de la salida k

error total

regla de aprendizaje

η: velocidad de aprendizaje

Page 12: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1212 /37/37

Regla de Aprendizaje

Si j es una unidad de salida

Si no

Page 13: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1313 /37/37

ANALISIS DE LAS ANN

Page 14: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1414 /37/37

Propiedades: Mapeo Universal• Pregunta:

– Qué tipo de funciones puedo representar con una ANN?

• La idea se remonta al problema #13 de Hilbert (1900).– Representar función de N variables como combinación lineal de

funciones en una variable (bajar dimensionalidad del problema)

• Respuesta:

– Puedo representar el conjunto de funciones “suaves”.– Hay varias pruebas para diferentes arquitecturas– Kolgomorov (1957)– Cybenko (1960)– Hornik (1989)– Chen (1991)

Page 15: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1515 /37/37

Propiedades: Mapeo Universal• Idea:

– Usando red con 2 capas ocultas es posible crear funciones tipo localizadas que combinadas pueden formar cualquier función “suave”

• Prueba intuitiva:– Fácil de ver en R2 R.– Red: y = ANN (x1,x2)

• Paso 1:– Que mapeo obtengo con una sola

neurona?• y = logsig(.x1)

• y = logsig(.x2)

Page 16: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1616 /37/37

Propiedades: Mapeo Universal• Paso 2:

– Uso Perceptron Multicapa– Puedo lograr “pico” en

cualquier valor de x1 con red de 1 sola capa oculta• el ancho del pico depende

del valor de b.

– Puedo hacer lo mismo con x2.

x1

1

y

b

b

b-b

1

1-1

Page 17: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1717 /37/37

Propiedades: Mapeo Universal• Paso 3:

– Agrupo redes en cada entrada en una sola red para combinar picos en x1 y x2.

– Ajustando parámetros puedo obtener un pico bien definido centrado en cualquier punto de R2.

x1

1y

b

b

b-b

1

1

-2

x2

1

b

b

b-b

1

1

Page 18: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1818 /37/37

Propiedades: Mapeo Universal• Paso 4:

– Agregando una capa adicional• 2 capas ocultas

– Combinando estos picos se puede aproximar cualquier función de R2 R con el grado de error que desee.

x1

1

a

b1c1

-a 1

1

-2

x2

1

a

d1e1

-a 1

1

x1

1

a

bncn

-a 1

1

-2

x2

1

a

dnen

-a 1

1

y

f1

fn

Page 19: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

1919 /37/37

Teorema de Kolmogorov• Dada cualquier función continua f: [0 1] n R m, y = f(x),

f puede ser implementada exactamente por una red neuronal de tres capas sin retroalimentación que tiene una capa de entrada de n elementos que unicamente copian las entradas a la siguiente capa, (2n + 1) elementos de procesamiento en la capa intermedia y me elementos de procesamiento en la capa de salida

Page 20: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2020 /37/37

Mapeo no lineal• Una red de retropropagación intenta encontrar un mapeo no lineal

entre el espacio de entradas de n dimensiones y el espacio de salida de m dimensiones. Este mapeo se induce a través de patrones de entrenamiento que son puntos correspondientes en los espacios de entrada y salida.

y1

y3y2

y4

x1

x3

x2

x4

Page 21: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2121 /37/37

Sobreajuste y subajuste• La red de retropropagación es en cierta medida un

método de ajuste de curvas. La red ya entrenada implementa un mapeo no lineal entre el espacio de entradas y salidas de manera que entradas cercanas entre sí producen salidas cercanas, por lo tanto una ANN es interpolativa.

Page 22: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2222 /37/37

Subajuste

La red produce un mapeo mas sencillo de lo que se requiere para implementar la relación entrada/salidaSintoma. Error alto.Solución. Aumentar los ciclos de entrenamiento, más neuronas capa intermedia, más capas

Page 23: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2323 /37/37

Sobreajuste

La red produce un mapeo más complicado de lo que se requiere para implementar la relación entrada/salida.Sintoma. Error ante patrones de entrenamiento pequeño y error ante patrones de prueba alto.Solución. Menos ciclos de entrenamiento, menos capas, menos neuronas

Page 24: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2424 /37/37

Epoca• Pasar varias veces los patrones de entrada a la red.

Page 25: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2525 /37/37

Offset de f’• Las funciones de transferencia sigmoidal o tangente hiperbólica se

pueden saturar, se saturan cuando los valores absolutos de sus entradas son grandes. Dado que la derivada participa en la regla de aprendizaje, puede suceder que ya no aprendan.

Normalización de datos

Page 26: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2626 /37/37

EFECTIVIDAD DEL CLASIFICADOR

Page 27: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2727 /37/37

Validación Cruzada de k-conjuntos

característicascaracterísticascaracterísticas

. . . . . .

Entrenamiento

eficacia 1

Promedio

eficacia 2

eficacia 3

eficacia K

Experimento 1

Experimento 2

Experimento 3

Experimento K

total de ejemplos

prueba entrenamiento

Page 28: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2828 /37/37

PREGUNTAS

Page 29: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

2929 /37/37

Mg. Samuel Oporto Díaz

[email protected]://www.wiphala.net/courses

Page 30: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3030 /37/37

APRENDIZAJE ARTIFICIAL

PARTE III

Page 31: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3131 /37/37

Aprendizaje SupervisadoPor Corrección de Error

x (n)

Synapticweights

Summingfunction

ActivationfunctionLocal

Field

vk(n)Output

yk(n)

x1(n)wk1 (n)

)(

x2(n)

x3(n)

wk2 (n)

wk3 (n) ek(n) = dk(n) – yk(n)

Page 32: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3232 /37/37Error(n) = y(n) - Y(n)Error(n) = y(n) - Y(n)

x1

x2

v11

m1 = x1 . v11 + x2 . v21

v12

v13

w11

w21

w31

m1

m2

m3

n1

n2

n3

v21

v22

v23

Y

Y = f(n1w11 + n2w21 + n3w31)

n1 = f ( m1)

Pesos o Coeficientes Vij , Wij

A.S. Por Corrección de Error ∂ J = (Y1- y1 ) ∂Y1 / ∂V11 + (Y2 - y2 ) ∂Y2 / ∂V11 + …. ∂ V11

∂ Y = W11 ∂n1 / ∂V11+ W21 ∂n2 / ∂V11+ W31 ∂n3 / ∂V11 ∂ V11

∂ n1 = ∂ n1 ∂ m1 = ∂ n1 x1∂ V11 ∂ m1 ∂ V11 ∂ m11

Si n es SIGMOIDEA : n = ( 1+ e –m) –1

∂ n = - ( 1+ e –m ) -2 e -m (-1) = n (1 – n ) ∂ m

∂ Y = W11 n ( 1 – n ) X1 ∂ V11

∂ J = (Y1-y1 ) W11 n11 (1- n11) X11 + (Y2 - y2 ) W11 n12 (1- n12) X12 + …. ∂ V11

Page 33: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3333 /37/37

Dados Iniciales = Experiencia de la RN

A.S. Por Corrección de Error

w11 w21 w31k x1 x2 y Y m1 n1 m2 n2 m3 n3 y - Y 1 x11 x21 y1 Y1 m11 n11 m21 n21 m31 n312 x12 x22 y2 Y2 m12 n12 m22 n22 m32 n323 x13 x23 y3 Y3 m13 n13 m23 n23 m33 n33...N

Page 34: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3434 /37/37

: Umbral de aprendizaje que regula la velocidad

de precisión (0 < <= 1)

Yi : Salida del i-esimo Nodo

Yj : Salida del j-esimo Nodo

dj : Valor de salida deseado de la j-esima unidad de procesamiento

) (  YjdjYiwij

A.S. Por Corrección de Error

Page 35: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3535 /37/37

El aprendizaje consiste en mejorar los coeficientes de la red hasta minimizar la FUNCION DE ERROR dada por

J = Σ 1 / 2 (Yk - y k ) 2

A.S. Por Corrección de Error

Wij = Wij - η ∂ J

∂Wij Ratio de Aprendizaje

Page 36: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3636 /37/37

Algoritmo BackPropagation

Camada de Saída

Camada de Entrada

Camada Escondida

+1

+1

Patrones

Patrones

ej(n) = dj(n) - yj(n)ej(n) = dj(n) - yj(n)

Page 37: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3737 /37/37

Algoritmo BackPropagation (W)

En Particular : W11 = W11 - η ∂ J

∂W11

∂ J = (Y1-y1 ) ∂Y1 / ∂W11 + (Y2 - y2 ) ∂Y2 / ∂W11 + ….

∂ W11

= (Y1 - y1 ) n11 + (Y2 - y2 ) n12 + …. En General : ∂ J = Σ(Yk - yk ) njk

∂ Wj1

Page 38: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3838 /37/37

Algoritmo BackPropagation (V)

En Particular : V11 = V11 - η ∂ J ∂V11

∂ J = (Y1- y1 ) ∂Y1 / ∂V11 + (Y2 - y2 ) ∂Y2 / ∂V11 + …. ∂ V11

∂ Y = W11 ∂n1 / ∂V11+ W21 ∂n2 / ∂V11+ W31 ∂n3 / ∂V11 ∂ V11

∂ n1 = ∂ n1 ∂ m1 = ∂ n1 x1∂ V11 ∂ m1 ∂ V11 ∂ m11 Si n es SIGMOIDEA : n = ( 1+ e –m) –1

∂ n = - ( 1+ e –m ) -2 e -m (-1) = n (1 – n ) ∂ m

∂ Y = W11 n ( 1 – n ) X1 ∂ V11

∂ J = (Y1-y1 ) W11 n11 (1- n11) X11 + (Y2 - y2 ) W11 n12 (1- n12) X12 + …. ∂ V11

Page 39: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

3939 /37/37

Algoritmo BackPropagation

∂ J .

∂ V11= Error Retropropagado Entrada Correspondiente*

REGLA DELTA :

= Error * Peso * f ’ X1*

= (Y1 – y1) * W11 * n1 (1 –n1) X1*

Page 40: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

4040 /37/37

x1

x2

w11m1

m2

n1

n2

Ejemplo

w12

w21

w22

u11

u12

u21

u22

y1

y2

W11 = W11 + η (y1 - ÿ1) n1 W12 = W12 + η (y2 - ÿ2) n2

U11 = U11 + η [ (y1 - ÿ1) W11 + (y2 - ÿ2) W12 ] * n1(1-n1) * x1

Page 41: 1/37 Redes Neuronales de Retropropagación REDES NEURONALES PARA MODELOS DE CLASIFICACION Mg. Samuel Oporto Díaz

4141 /37/37

x1

x2

v11

v12

w11m1

m2

n1

n2

v21

v22

Ejercicios

w12

w21

w22

u11

u12

u21

u22

p1

p2

q1

q2

y1

y2

U12 = U12 + η [ error * peso * f’ ] * x1

U12 = U12 + η [ ( (y1-ÿ1) W11 + (y2-ÿ2) W12 )* q1(1-q1) * V21 +

( (y1-ÿ1) W21 + (y2-ÿ2) W22 )* q2(1-q2) * V22 ] n2 (1-n2) * x1