Uso de una red neuronal multicapa para el reconocimiento...

22
Introducción La arquitectura de la red Implementación Resultados Conclusiones Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos: Skynet Reloaded ...decided our fate in a microsecond... P. García H. Rajchert I. Scena Sistemas de Inteligencia Artificial Instituto Tecnológico de Buenos Aires 4 de junio de 2008 Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Transcript of Uso de una red neuronal multicapa para el reconocimiento...

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Uso de una red neuronal multicapa para elreconocimiento de caracteres griegos:

Skynet Reloaded...decided our fate in a microsecond...

P. García H. Rajchert I. Scena

Sistemas de Inteligencia ArtificialInstituto Tecnológico de Buenos Aires

4 de junio de 2008

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Introducción

Se propone:◮ Diseño e implementación de una red neuronal multicapa

con aprendizaje supervisado.◮ Resolución de un problema particular haciendo uso de la

red neuronal (OCR de alfabeto griego mayúscula).

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

La arquitectura de la red

◮ Alfabeto de 24 letras.◮ Tamaño de las imágenes: 16x16 pixeles, 256 pixeles en

total.◮ Capa de entrada: 256 neuronas, una por pixel.◮ Capa de salida: 24 neuronas, una por letra.◮ Capas ocultas: se utilizan 1 y 2.◮ Todas las neuronas están conectadas con las de la capa

superior.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Funciones de activación

Se utilizan la tangente hiperbólica y la exponencial . Susvalores límite son los siguientes:

◮ Tangente hiperbólica: -1 y 1◮ Exponencial: 0 y 1

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Preprocesamiento

◮ Se pasan las imágenes de PNG a un formato reconocidopor Octave.

◮ Octave las importa como una matriz con 2 valoresposibles por cada pixel.

◮ Se mapean estos valores a -1 y 1, evitando utilizar el valor0.

◮ Para construir los vectores de salida se utilizan los valoreslímite de la función de activación elegida.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Preprocesamiento

◮ Se crean patrones adicionales con ruido para que la redcuente con mayor cantidad y variedad.

◮ Para hacerlo se generan copias alteradas de las matricesde Octave que representan a los caracteres originales.

◮ Se generan también patrones con ruido para probar lacapacidad de generalización .

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Postprocesamiento

Para conocer la respuesta de la red basta con tomar el caractercorrespondiente a la neurona de salida con valor máximo .

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Mejoras a BackpropagationSe implementan dos mejoras al algoritmo clásico deBackpropagation:

◮ Adaptative Learning Rate◮ Momentum

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Mejoras a Backpropagation

Adaptative Learning RateAdapta el parámetro η según la evolución del error en elaprendizaje. Si el error disminuye consistentemente, se lesuma a. Cuando el error aumenta, se le resta bη.

∆η =

+a si ∆E < 0 consistentemente−bη si ∆E > 00 en otro caso

(1)

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Mejoras a Backpropagation

MomentumLa actualización de pesos toma en cuenta el valor del cambioproducido en la época anterior.

◮ Suaviza las correcciones bruscas de pesos (oscilaciones).◮ Puede no acelerar la convergencia, depende del problema.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Inicialización

Los valores de los pesos se inicializan con valores dentro delintervalo (−0,05, 0,05). Esto evita la saturación inmediata, noentorpeciendo el aprendizaje.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Configuración general

◮ Criterio de parada: error cuadrático medio acumulado enuna época, 0.02.

◮ Función de activación: tangente hiperbólica.◮ Learning rate adaptativo con ηini = 0,02.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Exponencial vs Tangente hiperbólica

◮ Única capa intermedia de 24 neuronas.◮ 100 patrones de entrenamiento (24 sin ruido + 76 con

ruido al 3 %).◮ 250 patrones de testeo.

A continuación se comparan ambas funciones de activación.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Exponencial vs Tangente hiperbólica

Func. A. Ruido ( %) Memoriz. ( %) Generaliz. ( %) Épocastgh 15 100 99.2 220tgh 20 100 98.8 227tgh 25 100 95.6 228tgh 30 100 81.6 238tgh 40 100 32.4 225exp 15 100 100 327exp 20 100 99.6 335exp 25 100 97.2 347exp 30 100 82.4 340exp 40 100 29.6 326

Cuadro: Comparación entre las funciones de activación.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Uso de Adaptative Learning Rate (ALR)

◮ Única capa intermedia de 24 neuronas.◮ 100 patrones de entrenamiento (24 sin ruido + 76 con

ruido al 3 %).◮ Sin ALR: η = 0,02.◮ Con ALR: ηini = 0,02 con a = 0,01 y b = 0,1.

Uso de ALR Épocas Tiempo(s) Memorización ( %)No 1000 805.24 100Sí 229 188.40 100

Cuadro: Utilización de ALR.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Uso de Momentum

◮ Convergencia más lenta.◮ No es de ayuda en el problema que se intenta resover.◮ Superficie de error podría ser una meseta.

Momentum Memorización ( %) Generalización ( %) Épocas0 100 98 237

0.05 100 96 2370.06 100 94 2890.07 53 47 10000.1 20 18 1000

Cuadro: Utilización de Momentum.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Diferentes arquitecturas de red

◮ Criterio de parada: error cuadrático medio acumulado enuna época, 0.02.

◮ Función de activación: tangente hiperbólica.◮ Learning rate adaptativo con ηini = 0,02.◮ Patrones de testeo al 20 % de ruido.◮ 24 neuronas en la capa intermedia parecen ser óptimas.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Diferentes arquitecturas de red

Neuronas Memorización( %) Generalización( %)2 100 82.408 100 82.40

12 100 82.4024 100 99.2040 100 98.4080 100 98.40120 100 99.60200 100 98.80400 100 99.20

Cuadro: Variación de la cantidad de unidades de la capa oculta

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Diferentes arquitecturas de redSe prueba con una segunda capa oculta. ¡Kolmorogov teníarazón!

Neu. C.O. 1 Neu. C.O. 2 Memoriz. ( %) Generaliz. ( %)12 30 96 73.6024 30 100 93.224 50 100 94.824 100 100 93.250 100 100 97.6

Cuadro: Agregado de una segunda capa oculta

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Reconocimiento de caracteres con ruido generado por unhumano

◮ Se desea estudiar el comportamiento de la red paracaracteres distorsionados por un humano.

◮ Única capa intermedia de 24 neuronas.◮ 100 patrones de entrenamiento (24 sin ruido + 76 con

ruido al 3 %).◮ 250 patrones de testeo.◮ Todos son reconocidos menos la imagen corrida, ro.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Reconocimiento de caracteres con ruido generado por unhumano

Figura: Izquierda: caracteres originales. Derecha: caracteres conruido añadido por un humano.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA

Introducción La arquitectura de la red Implementación Resultados Conclusiones

Conclusiones

◮ Es de suma importancia la representación del problema.◮ Momentum no siempre acelera la convergencia, depende

de la superficie de error.◮ Exponencial requiere de más entrenamiento.◮ Agregar compulsivamente capas ocultas y unidades a la

red no ayuda a obtener resultados más precisos.◮ La capacidad de generalización es más difícil de adquirir

que la de memorización.

Uso de una red neuronal multicapa para el reconocimiento de caracteres griegos ITBA