1/37 redes neuronales de retropropagación redes neuronales para modelos de clasificacion mg. samuel...

Post on 01-Jan-2015

13 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

11 /37/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

33 /37/37

PERCEPTRON MULTICAPA

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

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

66 /37/37

RED DE RETROPROPAGACION

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

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)

99 /37/37

Función de transferencia

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.

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

1212 /37/37

Regla de Aprendizaje

Si j es una unidad de salida

Si no

1313 /37/37

ANALISIS DE LAS ANN

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)

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)

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

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

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

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

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

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.

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

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

2424 /37/37

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

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

2626 /37/37

EFECTIVIDAD DEL CLASIFICADOR

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

2828 /37/37

PREGUNTAS

2929 /37/37

Mg. Samuel Oporto Díaz

soporto@aurigacorp.com.pehttp://www.wiphala.net/courses

3030 /37/37

APRENDIZAJE ARTIFICIAL

PARTE III

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)

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

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

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

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

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)

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

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

3939 /37/37

Algoritmo BackPropagation

∂ J .

∂ V11= Error Retropropagado Entrada Correspondiente*

REGLA DELTA :

= Error * Peso * f ’ X1*

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

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

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

top related