Red Neuronal Perceptron Multicapa

Maestría en Ciencias de la Computación INTELIGENCIA ARTIFICIAL Perceptrón Multicapa Dra. Rosa Maria Valdovinos Rosas Pr

Views 101 Downloads 3 File size 671KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Maestría en Ciencias de la Computación INTELIGENCIA ARTIFICIAL

Perceptrón Multicapa Dra. Rosa Maria Valdovinos Rosas Presenta: J. Jair Vázquez Palma

Perceptrón Simple Limitaciones Resuelve solo problemas linealmente separables Es decir clasificar entre 2 clases (0,1)

Perceptrón Multicapa •El primer algoritmo de entrenamiento para las redes multicapa fue desarrollado por Paul Werbos en 1974. Al principio no fue Aceptada por la comunidad de los desarrolladores del Redes Neuronales.

•Fue asta los 80’s el Backpropagation redescubierto por David Rumelhart (1986), Geoffrey Hinton - Rolal Williams, David Parker y Yann Le Cun.

Perceptrón Multicapa La Perceptrón Multicapa surge de para resolver problemas que no son linealmente separables

Perceptrón Multicapa Pasos Aprendizaje (Propagación hacia delante, hacia atrás): a) Definir la Topología (numero de capas, función de activación o transferencia). b) Inicializar lo pesos aleatoriamente. c) Ingresar los patrones. d) Realizar la propagación. e) Comparar salidas. f) Calcular el error. g) Propagar hacia tras h) Actualizar pesos.

Perceptrón Multicapa Ingreso de los patrones

Perceptrón Multicapa Calculando Función Net

Perceptrón Multicapa Función de Transferencia. Se utiliza para acotar la salida de la neurona y generalmente viene dada por la interpretación que queramos darle a dichas salidas. Las más utilizadas son: Función sigmoidea: para obtener valores en el intervalo [0,1] casi nunca toca a 0 logsig salida positiva: f(n)=1/[1+e^(-n)] Función tangente hiperbólica Para obtener valores en el intervalo [-1,1] pasando por el 0. f(n)=[e^n - e^-n] / [e^n + e^-n]

Perceptrón Multicapa Aplicando Función de Transferencia. Salida positiva: f(n)=1/[1+e^(-n)]

Todo este proceso se realiza con cada una de las neuronas. •Función Net •Función de Activación Los resultados de la primera capa serán la entrada de la siguiente capa.

Perceptrón Multicapa El cambio de la topología de la red (número de capas) dependerá de la satisfacción del porcentaje de error, si el error no es satisfactorio se aumentara una capa capas a la Red Neuronal.

Podemos observar una tendencia. Se elige el numero que sea mas cerca a 1.

Perceptrón Multicapa Se comparan la salida Real con las Salida Esperada, si los resultados no son los adecuados se entrena la Red Neuronal.

Los resultados son diferentes, entonces se necesita aplicar el entrenamiento.

Perceptrón Multicapa Para conocer los valores tenemos:

esperados

ahora

Perceptrón Multicapa Aprendizaje: Tipo de aprendizaje Supervisado. La propagación se da desde la primera a la ultima capa hasta generar una salida Se calcula el error medio cuadrático: compara la salida real(a) con la salida deseada(t)

Las salidas de error se propagan hacia atrás, partiendo de la capa de salida hacia las neuronas que contribuyen directamente a la salida. BackPropagation.

Perceptrón Multicapa En backpropagation, el método general de entrenamiento se resume en los siguientes pasos: Pasos hacia delante: 1. Selecciona un vector de entrada desde el conjunto de entrenamiento. 2. Aplica esta entrada a la red y calcula la salida. Pasos hacia atrás: 3. Calcular el error entre la salida calculada y la salida deseada de la entrada usada. 4. Ajustar los pesos para que el error cometido entre la salida calculada y la salida deseada sea disminuido. 5. Se continua propagando el error hacia atrás y ajustando los pesos hasta que se alcance la capa de entradas. 6. Este proceso se repetirá con los diferentes datos de entrenamiento.

Perceptrón Multicapa Ajustando pesos: Regla Delta

La actualización de los pesos de la ultima capa se realiza mediante:

Nota: se ocupa cuando existe una sola salida.

Perceptrón Multicapa Ajustando pesos: Regla Delta

La actualización de los pesos entre las capas ocultas sería calculando el δ(delta) propagando hacia atrás desde la capa de salida. Zpj = resultado de la neurona

Nota: se ocupa cuando existen mas de una salida.

Perceptrón Multicapa Ejercicio

Asuma una función sigmoide para la función Z Asuma η =1y todos los pesos inicialmente a 1.0. Patron 1: 0, 0 o esperada 1

salida deseada

Patron 2: 0, 1 o esperada 0

salida deseada

El primer patrón de entrada 0, 0 salida 1

Perceptrón Multicapa Calculando el error:

Los nuevos pesos después de la primer par de entrenamiento se realiza mediante:

MAESTRIA EN CIENCIAS DE LA COMPUTACION INTELIGENCIA ARTIFICIAL EJERCICIO BACKPROPAGATION

UN EJEMPLO USANDO BACKPROPAGATION Sea la red

Asuma una función sigmoide para la función Z Asuma η =1y todos los pesos inicialmente a 1.0. Conjunto entrenamiento o patrones: Patron 1: 0, 0 salida deseada o esperada Patron 2: 0, 1 salida deseada o esperada

1 0

El caso del es ejemplo solo tiene una neurona en la salida y por tanto solo puede representar 2 clases, clase 0 y clase1. Aprendizaje Para el primer patrón de entrada 0, 0

1

MAESTRIA EN CIENCIAS DE LA COMPUTACION INTELIGENCIA ARTIFICIAL EJERCICIO BACKPROPAGATION

Pasos hacia delante: n2 = w25 x1 + w26 x2 + w27 (+1) = 1*0 + 1*0 + 1*1 = 1 n3 = w35 x1 + w36 x2 + w37 (+1) = 1*0 + 1*0 + 1*1 = 1 z2 = 1 / (1 + e-n2) = 1 / (1 + e-1) = 1 / (1 + 0.368) = 0.731 z3 = 1 / (1 + e-n3) = 1 / (1 + e-1) = 1 / (1 + 0.368) = 0.731 n1 = w12 z2 + w13 z3 + w14 (+1) = 1*.731 + 1*.731 + 1*1 = 2.462 z1 = 1 / (1 + e-n1) = 1 / (1 + e-2.462) = 0.921

Pasos hacia atrás: T = salida deseada. Z = salida real. Como la neurona 1 es de salida, entonces δ1 =Z1 (1−Z1) (T1 −Z`1) δ1 =0.921 (1 – 0.921) (1 – 0.921) = 0.00575 ΔpWji =ηδ pjZpi ΔW12 =ηδ1Z2= 1*0.00575*0.731 = 0.0042 ΔW13 =ηδ1Z3= 1*0.0575*0.731 = 0.0042 ΔW14 =ηδ1Z4= 1*0.00575*1 = 0.00575

Las neuronas 2 y 3 son unidades ocultas, entonces

donde el rango de k es 1 por existir solamente una neurona de salida. Luego, δ 2 =Z2(1−Z2) (δ1w12) = 0.731*(1-0.731)*0.00575*1= 0.00113 δ 3 =Z3(1−Z3) (δ1w13) = 0.731*(1-0.731)*0.00575*1= 0.00113

MAESTRIA EN CIENCIAS DE LA COMPUTACION INTELIGENCIA ARTIFICIAL EJERCICIO BACKPROPAGATION

Δpwji =ηδ pjZpi Δw25 =ηδ 2Z5 = 1*0.00113*0 = 0 Δw35 =ηδ 3Z5= 1*0.00113*0 = 0 Δw26 =ηδ 2Z6= 1*0.00113*0 = 0 Δw36 =ηδ 3Z6= 1*0.00113*0 = 0 Δw27 =ηδ 2Z7= 1*0.00113*1 = 0.00113 Δw37 =ηδ 3Z7= 1*0.00113*1 = 0.00113 De aquí los nuevos pesos después del primer par de entrenamiento son: W12 = 1.0042, W13 = 1.0042, W14 = 1.00575 W25 = 1, W26 = 1, W27 = 1.00113 W35 = 1, W36 = 1, W37 = 1.00113