SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
1

Resumen—En este reporte se han entrenado y probado un
conjunto de clasificadores para dar solución al problema del
reconocimiento de dígitos manuscritos. Se han utilizado vectores
verticales y horizontales para la reducción de dimensionalidad y
se han entrenado modelos con las características obtenidas
usando SVM, KNN, Perceptron Multicapa y Random Forest. La
menor tasa de error obtenida fue de 3.6% usando RandonForest
con una configuración de 120 árboles y 68 características
evaluadas.
Index Terms— Reconocimiento de dígitos, MNIST, Perceptron
Multicapa, Bayes, Random Forest.
I. INTRODUCCIÓN
l reconocimiento de dígitos manuscritos es un sub
problema del reconocimiento de caracteres, en donde se
necesita determinar para una imagen de un manuscrito que
numero del 0 al 9 le corresponde como categoría.
Al ser uno de los problemas fundamentales en el diseño de
sistemas de reconocimiento prácticos, el reconocimiento de
dígitos es un campo activo de investigación. Las aplicaciones
inmediatas de las técnicas de reconocimiento de dígitos
incluyen ordenamiento de correo automático, lectura
automática de direcciones, control de transacciones bancarias,
etc.
Existen muchos enfoques de extracción de características
que intentan mejorar la habilidad de predicción [1]. En [2] se
presentan distintos desafíos presentes en el reconocimiento de
dígitos como el hecho de que algunos de estos se pueden
confundir fácilmente debido a la similitud de sus
características primitivas y su estructura. La complejidad
puede venir también del hecho de que las imágenes de los
dígitos tengan algún tipo de ruido, deformación o mala
segmentación del carácter.
En este reporte se han entrenado y probado un conjunto de
clasificadores para dar solución al problema del
reconocimiento de dígitos manuscritos. Se han utilizado
vectores verticales y horizontales para la reducción de
dimensionalidad y se han entrenado modelos con las
características obtenidas usando Perceptron Multicapa,
BayesNet, KNN y Random Forest. Finalmente, se presentan
los resultados comparativos en base a tiempo y precisión.
El proceso realizado se describe en el siguiente gráfico, que
discrimina tres fases para el entrenamiento y para la
clasificación:
Figura 1: Etapas en la elaboración del modelo de aprendizaje.
Preprocesamiento: El preprocesamiento implica etapas de
normalización y limpieza de los datos que serán utilizados
como entrada para la siguiente etapa.
Extracción, selección y medición de características: En el
entrenamiento, la extracción y selección de características
permitirá entrenar el modelo con el conjunto de datos de
entrenamiento. La selección realizada se basa en la
experimentación con varias configuraciones hasta encontrar
el menor error posible.
Aprendizaje y clasificación: Durante el entrenamiento, las
características seleccionadas serán utilizadas para que el
sistema aprenda e infiera un modelo que luego, durante la
prueba, servirá para predecir a que clase (clasificar)
pertenece cada elemento que se esté evaluando.
II. DESCRIPCIÓN Y PREPROCESAMIENTO DE LOS
DATOS
La base de datos MNIST contiene 60,000 dígitos del cero al
nueve para entrenar el sistema de reconocimiento y además
otros 10,000 dígitos para ser usados como datos de prueba.
Reconocimiento de Dígitos Manuscritos usando
la Dase de Datos MNIST
Alvaro Tolentino – Emilio García – Gregory Valderrama – Javier Crisostomo – Miguel Koo
Pontificia Universidad Católica del Perú, Lima - Perú
E
2
Cada digito esta normalizado y centrado en una imagen en
escala de grises de 28 x 28 pixeles. Se muestran algunos
ejemplos a continuación:
Figura 2: Imágenes de ejemplo de la base de datos MNIST.
Dada la normalización de los datos indicada anteriormente,
no se realizaron mayores cambios con respecto al
posicionamiento de las imágenes.
Sin embargo se aplicaron dos técnicas para binarizar y
comprimir las imágenes, debido a que algunos de los pixeles
en los bordes eran grises claros y además la imagen a tamaño
normal representaba aun una cantidad alta de dimensiones:
 Binarización mediante Otsu: El método de Otsu trata de
encontrar un límite óptimo para que el objeto del clúster
segmentado, así como el clúster de background sean lo
más ajustado posible, es decir, trata de minimizar la
varianza combinada dentro de la clase. Por el contrario, el
límite trata de maximizar la varianza entre clases [3].
Supongamos que la imagen está representada por niveles
de gris L, [0, L1]. Cualquier límite T divide los píxeles en
la imagen en dos grupos, digamos C(t) y C(t) que consiste
en los niveles de gris de los intervalos [0,t1] y [t,L1]).[10]
Supongamos que N representa el número total de píxeles
de la imagen y N(t) denota el número total de píxeles en
la agrupación i.
El método de Otsu encuentra el límite T usando la
siguiente ecuación: [3]:
Dónde:
Representan los niveles de grises de
respectivamente y
 Transformación de Weblet Haar:
El wavelet de Haar es una secuencia de funciones
propuesta por Alfred Haar [9]. Haar usó estas funciones
para dar un ejemplo de un sistema ortonormal contable
para el espacio de las funciones de cuadrado integrable en
la recta real. [10,11]
Para poder realizar una transformada 2dimensional de
Haar de una imagen NxN el número de adiciones
requeridas es de sin multiplicaciones
requeridas. La transformada de Haar puede ser generada
usando la función [13] descrita como:
y su función escalar puede ser descrita como:
La matriz de Haar de 2 x 2 que está asociada con el
wavelet de Haar es:
Usando la transformada wavelet discreta, cualquier
secuencia de cualquier longitud
puede ser transformada en una secuencia de dos
componentes vectoriales: . Si
cada vector es multiplicado por la derecha con la matriz
H2, se obtiene el resultado de una
etapa de la transformada rápida de wavelet de Haar.
Usualmente se separan las secuencias s y d, y continúa
transformando la secuencia s.
Si tenemos una secuencia de longitud múltiplo de cuatro,
se pueden construir bloques de 4 elementos y
transformarlos de forma sencilla con la matriz de Haar de
4x4
La cual combina dos etapas de la transformada rápida del
wavelet de Haar.
Luego de aplicar ambos algoritmos, la imagen resultante
tenía una dimensión reducida de 28x28 a 16x16 y los valores
de cada entrada se habían normalizado entre 0 y 1, un ejemplo
se muestra a continuación:
Figura 3: Imagen del numero manuscrito usada como entrada (a la
izquierda) e imagen de salida (a la derecha, en negro), luego de aplicar
binarización mediante Otsu y compresión de Weblet Haar.
3
III. EXTRACCIÓN DE CARACTERISTICAS
Debido a que el número original de dimensiones es bastante
alto (un total de 784) la reducción de dimensionalidad fue
necesaria. Primero se extrajeron los componentes
principales de toda la data.
 Principal Component Analysis: PCA es una técnica
de transformación que tiene como objetivo identificar
los principales factores que explican las diferencias
en los datos. La identificación de estos factores
conduce a una descripción más comprimida de
correlaciones en los datos y, así, para una mejor
comprensión de las características subyacentes. Por
lo tanto, es un enfoque poderoso para extraer
tendencias generales en un conjunto de datos.
Además, dado que la PCA proporciona componentes
principales ordenados por su significado, también
ofrece una excelente base para la reducción de la
dimensión de datos en caso de datos
multidimensionales. Esto se puede lograr por la
omisión de las tendencias menos relevantes en el
conjunto de datos y la concentración en los
principales componentes.
Es un método sencillo que realiza una transformación
lineal de los patrones, en donde los componentes del
vector de características transformado son
estadísticamente independientes; las componentes
principales están ordenadas según su importancia,
desde la componente asociada a la mayor varianza
hasta la asociada a la menor variabilidad de los datos.
De esta forma uno podría eliminar las ultimas k
componentes sin perder demasiada información y
utilizando menos variables. El valor de k se
determina empíricamente según cada aplicación.
Como se muestra en la figura 4, los 50 primeros
componentes principales pueden representar
aproximadamente el 97% del total de la información
(en términos de la varianza total retenida), lo que se
considera suficiente para ser representativo e
informativo. De esta forma, escogimos los primeros
50 componentes principales.
Figura 4: Varianza de los componente principales.
 Vectores de distancia: Al intentar reducir aún más la
cantidad de presentes en el conjunto de datos, los
elementos de distancia y “sombra” del tazo hacia
cada uno de los bordes permitió alcanzar tasas de
error menores a 15% con tan solo 25 características y
un tiempo de entrenamiento y clasificación que no
superaba los 79 segundos.
Figura 5: Vectores de Distancia desde y hacia los bordes usado en
la fase experimental cuyos resultados fueron prometedores al ser
empleados con ciertos clasificadores.
 Área del trazo binarizado: Otra de las
características evaluadas fue el total del área del
trazo, que representaba sólo una característica más a
evaluar y tiene una distribución por clase en la que
pueden apreciarse grupos de manera clara:
Figura 6: Distribución del área del trazo por clase (Weka)
.
IV. DESCRIPCIÓN DE LOS CLASIFICADORES
Los clasificadores utilizados incluyen: SVM, KNN,
Perceptron Multicapa y Randon Forest.
 Support Vector Machines:
Las máquinas de Soporte Vectorial o Support Vector
Machines (SVM) fueron propuestas por Vapnik como un
sistema de aprendizaje automático basado en la teoría del
aprendizaje estadístico [12], Este método ha captado la
atención de los investigadores debido principalmente a
su excelente rendimiento en diferentes áreas como el
reconocimiento de rostros, categorización textual,
predicciones, recuperación de imágenes y
reconocimiento de escritura manuscrita.
Diseñadas originalmente como clasificadores binarios, la
idea base reside en construir un hiperplano de separación
4
entre las clases maximizando la distancia (el margen)
entre las mismas. Las SVM utilizan una función núcleo o
kernel para representar el producto interno entre dos
patrones, en un espacio de características no lineal y
expandido.
Muchos proveedores comerciales usan SVM como IBM
SPSS Statistics, SAS Enterprise Miner, Oracle Data
Mining(ODM) entre otros.
Para resolver problemas de clasificación con más de dos
clases (multiclase), se han planteado estrategias para
combinar las SVM binarias. Entre las más difundidas
podemos mencionar uno-contra-todos y uno-contra-uno.
La estrategia uno-contra-uno ha demostrado funcionar
mejor cuando se utilizan funciones kernel lineales
mientras que para otros tipos de kernel la estrategia uno-
contra-todos funciona eficientemente [13].
A continuación la fórmula de SVM con soporte a una
funcion de kernel y las fórmulas de las funciones
comúnmente soportadas. [14][15]
 KNN (K Nearest Neighbors):
KNN según [16] es un método de clasificación no
paramétrico, esta técnica usa todos los patrones de
entrenamiento como prototipo. Es decir todas las
predicciones se realizan directamente desde los datos.
Para cada punto a clasificar se calcula la distancia (por
ejemplo euclidiana) para cada punto a clasificar. La
predicción se realiza sobre los k elementos más cercanos.
Figura 7: Ejemplo de clasificador KNN para K=3
 Redes Neuronales Artificiales:
De acuerdo a Goyal [17], las redes neuronales artificiales
son redes de nodos, las cuales son modelos matemáticos
de neuronas biológicas como se muestra en la siguiente
figura:
Figura 8: Modelo conceptual de una Red Neuronal Artificial con Xn
neuronas, función base, función de activación y salida.
Generalmente, hay 3 o más capas de las mencionadas
neuronas: capa de entrada, capas medias (u ocultas) y la
capa de salida. El número de nodos en la capa de salida
es igual al número de clases objetivo de la clasificación.
El número de neuronas en la capa de entrada depende del
número de atributos que definen una instancia de un
objeto. El número de neuronas en las capas intermedias
no es fijo. Tampoco lo es el número de capas intermedias
en sí mismo. Estos últimos se definen mediante un
estudio del problema.
Perceptrón Multicapa: El perceptrón multicapa
consiste en un sistema de neuronas simples
interconectadas, o nodos que forman un modelo que
representa una relación no-lineal entre un vector de
entrada un vector de salidas. Los nodos están conectados
por pesos y señales de salida que son funciones que
suman las entradas al nodo modificado por una función
de transferencia no-lineal simple (o función de
activación). La superposición de varias funciones de
transferencia no lineales simples es lo que permite que el
perceptrón multicapa se aproxime a funciones
extremadamente no lineales. Si la función de
transferencia fuera lineal, entonces el perceptrón
multicapa solo sería capaz de modelar funciones lineales.
Una de las funciones de transferencia más empleadas es
la función logística debido a que su derivada es fácil de
calcular, computacionalmente hablando. La salida de un
nodo es escalada por el peso correspondiente y sirve
como entrada para los nodos de la siguiente capa de la
red neuronal. [18]
 Random Forest:
Es un método de aprendizaje en conjunto usado para
clasificación y regresión que funciona mediante la
construcción de una gran cantidad de árboles de decisión
durante la etapa de entrenamiento y la salida de la clase
es el modo de la salida de clases de cada árbol. El
algoritmo para la inducción de Random Forest fue
5
desarrollado por Leo Breiman y Alede Cutler. Al usar
una selección aleatoria de características para dividir
cada nodo el rendimiento alcanza tasas de error
comparables a AdaBoost [19].
El algoritmo de entrenamiento de Random Forest aplica
la técnica general de agregación por bootstrap o bagging,
a los clasificadores de árbol. Dado un conjunto de
entrenamiento X = x1, …, xn con respuestas Y = y1 hasta
yn, el bagging repetidamente selecciona una muestra
bootstrap del conjunto de entrenamiento y ajusta árboles
a esas muestras:
Luego del entrenamiento, la predicción para data nueva x'
se realiza promediando las predicciones de los árboles de
regresión individual en x':
o teniendo en cuenta la mayoría de votos.
En el algoritmo de arriba, B es un parámetro libre.
Típicamente unos cientos de miles de árboles se usan,
dependiendo del tamaño y la naturaleza del conjunto de
entrenamiento. Aumentar el número de árboles tiende a
reducir la varianza del modelo, sin reducir la tendencia.
Como resultado, el error en entrenamiento y prueba
tiende a nivelarse luego de que se ha alcanzado cierto
número de árboles.
Este procedimiento describe el algoritmo original de
bagging para árboles. Random Forest es distinto sólo en
la forma del siguiente esquema: usa un algoritmo de
aprendizaje modificado que selecciona, en cada corte del
proceso de aprendizaje, un subconjunto aleatorio de
características. La razón para hacer esto es la correlación
de árboles en una muestra ordinaria de bootstrap. Si una
o algunas características influyen fuertemente en la
predicción, esas características serán seleccionadas en
muchos árboles, y como consecuencia estarán
relacionadas.
V. EXPERIMENTACIÓN
Recogiendo los resultados y el actual estado del arte sobre
las experimentaciones en reconocimiento de dígitos y dado
que en este campo se vienen desarrollando propuestas décadas
atrás, presentamos a continuación algunos resultados
obtenidos por la comunidad [20] sobre el problema planteado,
para luego realizar una comparativa sobre nuestras
experimentaciones propias.
Error Método
0.21 Regularization of Neural Networks using DropConnect
0.23 Multi-column Deep Neural Networks for Image Classification
0.35 Deep Big Simple Neural Nets Excel on Handwritten Digit
Recognition
0.39 Efficient Learning of Sparse Representations with an Energy-
Based Model
0.40 Best Practices for Convolutional Neural Networks Applied to
Visual Document Analysis
Tabla 1: Resultados obtenidos por en otros experimentos.
De la lista anterior, nuestras experimentaciones tomaron
como base comparativa el clasificador de Redes Neuronales
Convolucionales (Convolutional Neural Networks Applied to
Visual Document Analysis), realizando un entrenamiento con
7 épocas sobre el dataset de training alcanzamos una tasa de
error de 0.026%. Esta es la base de nuestra comparativa sobre
nuestras experimentaciones.
Nuestros experimentos empezaron con la totalidad de la
muestra y la aplicación del clasificador Super Vector Machine
este clasificador presentó un resultado prometedor para
trabajar con una alta dimensionalidad. De nuestros
experimentos hemos podido notar que el tipo de función
kernel así como los parámetros de entrenamiento influyen en
el tiempo de entrenamiento y la acertividad de la operación.
Decidimos también probar el comportamiento de otro
algoritmo estadístico como es KNN para la clasificación,
buscamos el valor de K óptimo que proporcione la menor tasa
de error. Para esto hemos probado con diferentes valores para
K(K=1,2,3,4,5,6,7,8,14). Como se puede observar en el
siguiente gráfico la menor tasa de error se obtiene para k=3.
K 1°
Experimento
2°
Experimento
%
Error
Tiempo
(min.)
1 92.54 92.1 7.68 13.96
2 92.36 92.1 7.77 25.11
3 92.88 93.48 6.82 38.58
4 92.42 92.35 7.62 51.13
5 92.74 92.58 7.34 61.31
6 92.35 92.15 7.75 73.52
7 92.25 92.1 7.83 90.36
8 92.36 92.1 7.77 105.77
14 91.88 91.88 8.12 164.69
Tabla 2: Determinando el valor de K óptimo.
Figura 10: Comportamiento del porcentaje de error para K = 1 hasta
K =14.
6
Usando el valor K=3 obtenido, experimentamos con
diferentes volúmenes de datos hasta abarcar el total del
dataset. Como primera aproximación trabajamos con la data
sin preprocesamiento.
Para mejorar el resultado se intentó binarizar la solución
[21] pero el tiempo de estabilización del clasificador SVM
mostró ser excesivo. Con el fin de mejorar la respuesta se pasó
de un enfoque estadístico a un enfoque basado en Redes
Neuronales Artificiales como es perceptrón multicapa, para
poder trabajar con esta red neural necesitamos reducir la
dimensionalidad, utilizamos el algoritmo de Otsu para mejorar
la calidad de la imagen y la transformación de wavelet HAAR
para reducir la dimensionalidad de 28 a 16 dimensiones lo que
nos da total de 256 características lo cual es un número
todavía excesivo para una red neural, por lo que recurrimos al
algoritmo Principal Component Analysis para reducir la
dimensionalidad a 15 dimensiones obteniendo un resultado
similar a SVM pero con un enfoque de red neuronal artificial.
Con el fin de mejorar la extracción de características elegimos
manualmente los vectores modelo para la extracción de
características técnica utilizada para el reconocimiento de
rostros con lo que pudimos obtener un resultado de mejor
exactitud con una red perceptrón multicapa alcanzando el 92%
de aciertos.
Sobre la base antes desarrollada alcanzamos el mejor
rendimiento utilizando binarización unido a vectores de
distancia y la información obtenida del área de los trazos en
un clasificador Random Forest como técnicas de extracción de
características y clasificador respectivamente. Mostrando el
siguiente desempeño:
Figura 9: Resumen del entrenamiento y evaluación utilizando 68
características y el clasificador Random Forest.
El rendimiento por clase obtenido fue menor al momento de
clasificar las muestras de prueba para 9,3 y 8; alcanzando su
mayor precisión con 1, 5 y 6 tal como se muestra a
continuación:
Figura 10: Rendimiento por clase.
La matriz de confusión para la prueba con 68 características
fue la siguiente:
Figura 11: Matriz de Confusión para la prueba con 68 características y
Random Forest como clasificador.
Finalmente intentamos reducir más la tasa de error, sin
embargo luego de superar las 68 características un incremento
en el número de dimensiones no influía en el rendimiento, por
lo que no se agregaron más características ya que el tiempo de
extracción, entrenamiento y evaluación continuaba
incrementándose.
A continuación se muestra la evolución en tiempos y tasa de
error de las pruebas más significativas realizadas en base a la
combinación anterior, variando el número de características
incluidas:
Características Tiempo (seg.) Error (%)
27 62.47 7.2
56 71.68 4.32
68 90.31 3.6
152 107.94 3.29
Tabla 3: Evolución del Porcentaje de Error con respecto a cantidad de
características usadas para el entrenamiento del modelo.
7
Figura 12: Ejemplo de imagen a la que se agregaron líneas verticales y
horizontales para encontrar la distancia desde el borde del trazo hasta cada
marco (superior, inferior, izquierdo y derecho).
VI. RESULTADOS OBTENIDOS
Presentamos a continuación el resultado de nuestros
experimentos sobre 60,000 imágenes de entrenamiento y
10,000 de prueba:
Extraccion de
Caracteristicas
Num.
Attr.
Clasificador Tiempo
(seg)
Tasa de
Error
(%)
No 784 SVM- Polinomial 1779.00 15.18
No 784 SVM- Gausiana 7300.00 11.14
No 784 SVM-Linear 305.00 14.33
No 784 KNN 12600.00 4.76
Otsu,Haar
PCA
15 Perceptron
Multicapa
(500 ciclos)
755.04 11.35
Otsu, CDF,
PCA
15 Perceptron
Multicapa
(500 ciclos)
232.00 32.00
Otsu,Haar,
PCA Manual
50 Perceptron
Multicapa
(500 ciclos)
1181.00 7.23
Otsu, Wave,
Haar, PCA
15 Naive Bayes 4.80 17.95
Otsu, Wave,
CFD 9/7, PCA
15 Naive Bayes 1.00 35.00
Otsu Haarm
Vectores de
distancia
56 Random Forest 90.31 3.6
Convolucional
(Referencia)
784 Red Neuronal
Backpropagation
2200
s/epoca
0.026%
7ep.
Tabla 4: Comparación de todos los resultados obtenidos.
Figura 13: Tasa de Error por Clasificador
VII. CONCLUSIONES Y RECOMENDACIONES
 En el presente trabajo gracias a la experimentación y
desarrollo de los modelos hemos podido llegar a las
siguientes conclusiones y recomendaciones.
 El desarrollo de un modelo para el reconocimiento de
patrones presenta en la alta dimensionalidad uno de sus
mayores retos.
 Para lidiar con estos factores será necesario identificar
técnicas que nos permitan extraer de manera adecuada
las características más relevantes para un dominio
particular de problema. Es pues así que la viabilidad de
un modelo tendrá que considerar de manera más
relevante el dominio de problema y la forma en la cual
jerarquiza la información obtenida.
 El algoritmo de Otsu para la binarización de las
imágenes en nuestros experimentos a sido útil para este
propósito.
 La utilización de la transformación de wavelet es una
técnica útil para reducir la dimensionalidad hecho
relevante para obtener un resultado en un tiempo
apropiado para los clasificadores basados en redes
neuronales artificiales.
 El algoritmo PCA para la extracción de las características
más relevantes de nuestra muestra es un modelo genérico
que ha probado un buen desempeño para la reducción de
la dimensionalidad.
 El clasificador SVM presenta una complejidad
importante en la definición de los parámetros apropiados
para su aprendizaje, tanto en los parámetros de la función
kernel como en los parámetros propios de la función.
 Después de realizada la extracción de características y
reducción de la dimensionalidad los algoritmos basados
en redes neuronales artificiales presentan resultados
importantes en tiempos de entrenamiento también
apropiados.
 La definición de vectores específicos a un contexto de
problema puede incrementar la acertividad del modelo
PCA transformando las entradas a una representación
más apropiada para el dominio de problema.
 El uso del clasificador KNN proporciona una forma fácil
y rápida de clasificación de los dígitos manuscritos pero
con una alta tasa de error (4.76%).
 El rendimiento del clasificador KNN se ve mejorado al
aumentar la cantidad de datos de entrenamiento.
 En nuestros experimentos las redes neuronales
artificiales mostraron buen comportamiento al integrarse
8
con Wavelet y PCA no siendo así los algoritmos
estadísticos que parecen necesitar un modelamiento
matemático más elaborado al momento de aplicar
técnicas de reducción de la dimensionalidad.
 En nuestros experimentos las técnicas para la extracción
de características específicas al dominio del problema
demostraron ser el factor más gravitante al momento de
obtener un mejor resultado.
REFERENCIAS
[1] Cheng-Lin Liu; Nakashima, K.; Sako, H.; Fujisawa, H., "Handwritten
digit recognition using state-of-the-art techniques," Frontiers in
Handwriting Recognition, 2002. Proceedings. Eighth International
Workshop on , vol., no., pp.320,325, 2002.
[2] C. Suen and J.Tan, “Analysis of errors of handwritten digits made by a
multitude of classifiers.” Pattern Recognition Letters, vol 40, pp,
18161824,2007.
[3] Otsu, N. 1979. A threshold selection method from gray level histogram.
IEEE Trans. Systems Man Cybern. 9 (1), 62–66.
[4] Chih-Chung Chang, Chih-Jen Lin. LIBSVM: a library for support vector
machines, 2001. Software available at
http://www.csie.ntu.edu.tw/~cjlin/libsvm.
[5] Wang qinghui; Yang Aiping; Dai Wenzhan, "An improved feature
extraction method for individual offline handwritten digit recognition,"
Intelligent Control and Automation (WCICA), 2010 8th World Congress
on, vol., no., pp.6327,6330, 7-9 July 2010.
[6] Akhtar, M.S.; Qureshi, H.A, "Handwritten digit recognition through
wavelet decomposition and wavelet packet decomposition," Digital
Information Management (ICDIM), 2013 Eighth International
Conference on , vol., no., pp.143,148, 10-12 Sept. 2013.
[7] Kulkarni, V.Y.; Sinha, P.K., "Pruning of Random Forest classifiers: A
survey and future directions," Data Science & Engineering (ICDSE),
2012 International Conference on , vol., no., pp.64,68, 18-20 July 2012.
[8] Serre, T.; Wolf, L.; Poggio, T., "Object recognition with features
inspired by visual cortex," Computer Vision and Pattern Recognition,
2005. CVPR 2005. IEEE Computer Society Conference on , vol.2, no.,
pp.994,1000 vol. 2, 20-25 June 2005.
[9] Haar A. Zur Theorie der orthogonalen Funktionensysteme,
Mathematische Annalen, 69, pp 331–371, 1910.
[10] Minh N. Do, Martin Vetterli, “WaveletBased Texture Retrieval Using
Generalized Gaussian Density and KullbackLeibler Distance”, IEEE
Transactions On Image Processing, Volume 11, Number 2, pp.146158,
February 2002.
[11] Charles K. Chui, “An Introduction to Wavelets”, Academic Press, 1992,
San Diego, ISBN 0585470901
[12] C. Suen, C. Nadal, R. Legault, T. Mai, and L. Lam, “Computer
recognition of unconstrained hand-written numerals” Procs IEEE, vol
80, no 7 , pp. 1162-1180, 1992.
[13] C. Liu and H. Fujisawa, “Classification and learning methods for
character recognition: Advances and remaining problems” in Machine
Learning in Document Analysis and Recognition (H. F. S. Marinai, ed.),
pp 139-161, Springer, 2008.
[14] F. Lauer, C. Suen, and G. Bloch, “A trainable feature extractor for
handwritten digit recognition” . vol 40, pp 1816-1824, 2007.
[15] V. Vapnik, The nature of Statistical Learning Theory. Springer Verlag.
New York, 1995.
[16] Peter Harrington, “Machine Learning in Action”. 2012. Manning
Publications Co. Capitulo 2, pp 18-21
[17] Goyal, R.D., “Knowledge Based Neural Network for Text
Classification.”, 2007, IEEE International Conference on Granular
Computing.
[18] M. W. Gardner and S. R. Dorling. 1998. Artificial Neural Networks
(The Multilayer Perceptron)- A review of applications in the
atmospheric sciences. Atmospheric Enviroment. Vol 32. pp. 2627-2636.
[19] L. Breiman, “Random Forest”, Machine Learning, Kluwer Academic
Publishers, Vol 45, no 1, pp 5-32
[20] Classification datasets results.
http://rodrigob.github.io/are_we_there_yet/build/classification_datasets
_results.html#4d4e495354
[21] L. Maria Seijas, “Reconocimiento de patrones utilizando técnicas
estadísticas y conexionistas aplicadas a la clasificación de dígitos
manuscritos. Universidad de Buenos Aires.

Más contenido relacionado

Similar a Reconocimiento de Dígitos Manuscritos usando la Dase de Datos MNIST

Aplicación de análisis numérico en alabes
Aplicación de análisis numérico en alabesAplicación de análisis numérico en alabes
Aplicación de análisis numérico en alabesMateoLeonidez
 
Diseño de experiencias
Diseño de experienciasDiseño de experiencias
Diseño de experienciasDiego Gomez
 
Contenedoras de dos dimensiones
Contenedoras de dos dimensionesContenedoras de dos dimensiones
Contenedoras de dos dimensionesRobinson Jiménez
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricasEDIER AVILA
 
Guion controlpor variables
Guion controlpor variablesGuion controlpor variables
Guion controlpor variablesleswil
 
Pr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman meraPr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman meraEduardo Mera
 
Trabajo de estadistica 2 prueba de suma de rango.pptx
Trabajo de estadistica 2 prueba de suma de rango.pptxTrabajo de estadistica 2 prueba de suma de rango.pptx
Trabajo de estadistica 2 prueba de suma de rango.pptxleifalopezcastillo21
 
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docxCristianPallares2
 
1.introduccion analisis
1.introduccion analisis1.introduccion analisis
1.introduccion analisisrjvillon
 

Similar a Reconocimiento de Dígitos Manuscritos usando la Dase de Datos MNIST (20)

Aplicación de análisis numérico en alabes
Aplicación de análisis numérico en alabesAplicación de análisis numérico en alabes
Aplicación de análisis numérico en alabes
 
CEC.pdf
CEC.pdfCEC.pdf
CEC.pdf
 
Busqueda
BusquedaBusqueda
Busqueda
 
Diseño de experiencias
Diseño de experienciasDiseño de experiencias
Diseño de experiencias
 
Informatica
InformaticaInformatica
Informatica
 
Optimizacion en IMRT
Optimizacion en IMRTOptimizacion en IMRT
Optimizacion en IMRT
 
Trabajo Final
Trabajo FinalTrabajo Final
Trabajo Final
 
Contenedoras de dos dimensiones
Contenedoras de dos dimensionesContenedoras de dos dimensiones
Contenedoras de dos dimensiones
 
Correciones radiometricas
Correciones radiometricasCorreciones radiometricas
Correciones radiometricas
 
Guion controlpor variables
Guion controlpor variablesGuion controlpor variables
Guion controlpor variables
 
Medidas descriptivas sesion 6
Medidas descriptivas sesion 6Medidas descriptivas sesion 6
Medidas descriptivas sesion 6
 
Plantilla ensayo
Plantilla ensayoPlantilla ensayo
Plantilla ensayo
 
Plantilla ensayo
Plantilla ensayoPlantilla ensayo
Plantilla ensayo
 
Plantilla ensayo
Plantilla ensayoPlantilla ensayo
Plantilla ensayo
 
Pr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman meraPr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman mera
 
Trabajo de estadistica 2 prueba de suma de rango.pptx
Trabajo de estadistica 2 prueba de suma de rango.pptxTrabajo de estadistica 2 prueba de suma de rango.pptx
Trabajo de estadistica 2 prueba de suma de rango.pptx
 
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx
7 HERRAMIENTAS BASICAS DE LA CALIDAD.docx
 
Generación
GeneraciónGeneración
Generación
 
1.introduccion analisis
1.introduccion analisis1.introduccion analisis
1.introduccion analisis
 
CRAFT
CRAFTCRAFT
CRAFT
 

Último

Testimonio-de-segunda-revolucion-industrial.pdf
Testimonio-de-segunda-revolucion-industrial.pdfTestimonio-de-segunda-revolucion-industrial.pdf
Testimonio-de-segunda-revolucion-industrial.pdfd71229811u
 
Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,KiaraIbaezParedes
 
FRACTURAS EXPUESTAS en niños y adolecentes.pdf
FRACTURAS EXPUESTAS en niños y adolecentes.pdfFRACTURAS EXPUESTAS en niños y adolecentes.pdf
FRACTURAS EXPUESTAS en niños y adolecentes.pdfhugohilasaca
 
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfINTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfGuillermoCamino4
 
Sujeción e inmobilización de perros y gatos (1).pdf
Sujeción e inmobilización de perros y gatos (1).pdfSujeción e inmobilización de perros y gatos (1).pdf
Sujeción e inmobilización de perros y gatos (1).pdfXIMENAESTEFANIAGARCI1
 
La independencia de México único resistencia y consumación
La independencia de México único resistencia y consumaciónLa independencia de México único resistencia y consumación
La independencia de México único resistencia y consumaciónMoralesSantizBrendaL
 
CLASE 5 HOJA 2022.ppt botanica general 1
CLASE 5 HOJA 2022.ppt botanica general 1CLASE 5 HOJA 2022.ppt botanica general 1
CLASE 5 HOJA 2022.ppt botanica general 1jesusjja0210
 
PLAN DE TUTORÍA DEL AULA PARA SEGUNDO GRADO
PLAN DE TUTORÍA DEL AULA PARA  SEGUNDO GRADOPLAN DE TUTORÍA DEL AULA PARA  SEGUNDO GRADO
PLAN DE TUTORÍA DEL AULA PARA SEGUNDO GRADOunsaalfredo
 
Coherencia textual II Práctica dirigida h
Coherencia textual II Práctica dirigida hCoherencia textual II Práctica dirigida h
Coherencia textual II Práctica dirigida hSalomDB1
 
Novena a la Medalla Milagrosa, es una devoción
Novena a la Medalla Milagrosa,  es una devociónNovena a la Medalla Milagrosa,  es una devoción
Novena a la Medalla Milagrosa, es una devociónandres2973
 
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...frank0071
 
el lugar santo y santisimo final.pptx y sus partes
el lugar santo y santisimo final.pptx y sus partesel lugar santo y santisimo final.pptx y sus partes
el lugar santo y santisimo final.pptx y sus partesAsihleyyanguez
 
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...Juan Carlos Fonseca Mata
 
Músculos de la pared abdominal.pdf que ayuda al cuerpo humano
Músculos de la pared abdominal.pdf que ayuda al cuerpo humanoMúsculos de la pared abdominal.pdf que ayuda al cuerpo humano
Músculos de la pared abdominal.pdf que ayuda al cuerpo humanoYEFERSONALBERTOGONZA
 
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfTEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfrobertocarlosbaltaza
 
fisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibriofisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibrioyanezevelyn0
 
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdf
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdfFritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdf
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdffrank0071
 
Mapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfMapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfHeidyYamileth
 
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptx
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptxTEJIDOS HISTOLÓGICOS osteona, canal de haves.pptx
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptxmorajoe2109
 
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxCEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxfranciscofernandez106395
 

Último (20)

Testimonio-de-segunda-revolucion-industrial.pdf
Testimonio-de-segunda-revolucion-industrial.pdfTestimonio-de-segunda-revolucion-industrial.pdf
Testimonio-de-segunda-revolucion-industrial.pdf
 
Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,
 
FRACTURAS EXPUESTAS en niños y adolecentes.pdf
FRACTURAS EXPUESTAS en niños y adolecentes.pdfFRACTURAS EXPUESTAS en niños y adolecentes.pdf
FRACTURAS EXPUESTAS en niños y adolecentes.pdf
 
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfINTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
 
Sujeción e inmobilización de perros y gatos (1).pdf
Sujeción e inmobilización de perros y gatos (1).pdfSujeción e inmobilización de perros y gatos (1).pdf
Sujeción e inmobilización de perros y gatos (1).pdf
 
La independencia de México único resistencia y consumación
La independencia de México único resistencia y consumaciónLa independencia de México único resistencia y consumación
La independencia de México único resistencia y consumación
 
CLASE 5 HOJA 2022.ppt botanica general 1
CLASE 5 HOJA 2022.ppt botanica general 1CLASE 5 HOJA 2022.ppt botanica general 1
CLASE 5 HOJA 2022.ppt botanica general 1
 
PLAN DE TUTORÍA DEL AULA PARA SEGUNDO GRADO
PLAN DE TUTORÍA DEL AULA PARA  SEGUNDO GRADOPLAN DE TUTORÍA DEL AULA PARA  SEGUNDO GRADO
PLAN DE TUTORÍA DEL AULA PARA SEGUNDO GRADO
 
Coherencia textual II Práctica dirigida h
Coherencia textual II Práctica dirigida hCoherencia textual II Práctica dirigida h
Coherencia textual II Práctica dirigida h
 
Novena a la Medalla Milagrosa, es una devoción
Novena a la Medalla Milagrosa,  es una devociónNovena a la Medalla Milagrosa,  es una devoción
Novena a la Medalla Milagrosa, es una devoción
 
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...
Van Young, Eric. - La otra rebelión. La lucha por la independencia de México,...
 
el lugar santo y santisimo final.pptx y sus partes
el lugar santo y santisimo final.pptx y sus partesel lugar santo y santisimo final.pptx y sus partes
el lugar santo y santisimo final.pptx y sus partes
 
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...
Documento Técnico Base del Inventario de Especies Vegetales Nativas del Estad...
 
Músculos de la pared abdominal.pdf que ayuda al cuerpo humano
Músculos de la pared abdominal.pdf que ayuda al cuerpo humanoMúsculos de la pared abdominal.pdf que ayuda al cuerpo humano
Músculos de la pared abdominal.pdf que ayuda al cuerpo humano
 
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfTEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
 
fisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibriofisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibrio
 
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdf
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdfFritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdf
Fritzsche, Peter. - Vida y muerte en el Tercer Reich [ocr] [2009].pdf
 
Mapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfMapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdf
 
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptx
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptxTEJIDOS HISTOLÓGICOS osteona, canal de haves.pptx
TEJIDOS HISTOLÓGICOS osteona, canal de haves.pptx
 
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxCEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
 

Reconocimiento de Dígitos Manuscritos usando la Dase de Datos MNIST

  • 1. 1  Resumen—En este reporte se han entrenado y probado un conjunto de clasificadores para dar solución al problema del reconocimiento de dígitos manuscritos. Se han utilizado vectores verticales y horizontales para la reducción de dimensionalidad y se han entrenado modelos con las características obtenidas usando SVM, KNN, Perceptron Multicapa y Random Forest. La menor tasa de error obtenida fue de 3.6% usando RandonForest con una configuración de 120 árboles y 68 características evaluadas. Index Terms— Reconocimiento de dígitos, MNIST, Perceptron Multicapa, Bayes, Random Forest. I. INTRODUCCIÓN l reconocimiento de dígitos manuscritos es un sub problema del reconocimiento de caracteres, en donde se necesita determinar para una imagen de un manuscrito que numero del 0 al 9 le corresponde como categoría. Al ser uno de los problemas fundamentales en el diseño de sistemas de reconocimiento prácticos, el reconocimiento de dígitos es un campo activo de investigación. Las aplicaciones inmediatas de las técnicas de reconocimiento de dígitos incluyen ordenamiento de correo automático, lectura automática de direcciones, control de transacciones bancarias, etc. Existen muchos enfoques de extracción de características que intentan mejorar la habilidad de predicción [1]. En [2] se presentan distintos desafíos presentes en el reconocimiento de dígitos como el hecho de que algunos de estos se pueden confundir fácilmente debido a la similitud de sus características primitivas y su estructura. La complejidad puede venir también del hecho de que las imágenes de los dígitos tengan algún tipo de ruido, deformación o mala segmentación del carácter. En este reporte se han entrenado y probado un conjunto de clasificadores para dar solución al problema del reconocimiento de dígitos manuscritos. Se han utilizado vectores verticales y horizontales para la reducción de dimensionalidad y se han entrenado modelos con las características obtenidas usando Perceptron Multicapa, BayesNet, KNN y Random Forest. Finalmente, se presentan los resultados comparativos en base a tiempo y precisión. El proceso realizado se describe en el siguiente gráfico, que discrimina tres fases para el entrenamiento y para la clasificación: Figura 1: Etapas en la elaboración del modelo de aprendizaje. Preprocesamiento: El preprocesamiento implica etapas de normalización y limpieza de los datos que serán utilizados como entrada para la siguiente etapa. Extracción, selección y medición de características: En el entrenamiento, la extracción y selección de características permitirá entrenar el modelo con el conjunto de datos de entrenamiento. La selección realizada se basa en la experimentación con varias configuraciones hasta encontrar el menor error posible. Aprendizaje y clasificación: Durante el entrenamiento, las características seleccionadas serán utilizadas para que el sistema aprenda e infiera un modelo que luego, durante la prueba, servirá para predecir a que clase (clasificar) pertenece cada elemento que se esté evaluando. II. DESCRIPCIÓN Y PREPROCESAMIENTO DE LOS DATOS La base de datos MNIST contiene 60,000 dígitos del cero al nueve para entrenar el sistema de reconocimiento y además otros 10,000 dígitos para ser usados como datos de prueba. Reconocimiento de Dígitos Manuscritos usando la Dase de Datos MNIST Alvaro Tolentino – Emilio García – Gregory Valderrama – Javier Crisostomo – Miguel Koo Pontificia Universidad Católica del Perú, Lima - Perú E
  • 2. 2 Cada digito esta normalizado y centrado en una imagen en escala de grises de 28 x 28 pixeles. Se muestran algunos ejemplos a continuación: Figura 2: Imágenes de ejemplo de la base de datos MNIST. Dada la normalización de los datos indicada anteriormente, no se realizaron mayores cambios con respecto al posicionamiento de las imágenes. Sin embargo se aplicaron dos técnicas para binarizar y comprimir las imágenes, debido a que algunos de los pixeles en los bordes eran grises claros y además la imagen a tamaño normal representaba aun una cantidad alta de dimensiones:  Binarización mediante Otsu: El método de Otsu trata de encontrar un límite óptimo para que el objeto del clúster segmentado, así como el clúster de background sean lo más ajustado posible, es decir, trata de minimizar la varianza combinada dentro de la clase. Por el contrario, el límite trata de maximizar la varianza entre clases [3]. Supongamos que la imagen está representada por niveles de gris L, [0, L1]. Cualquier límite T divide los píxeles en la imagen en dos grupos, digamos C(t) y C(t) que consiste en los niveles de gris de los intervalos [0,t1] y [t,L1]).[10] Supongamos que N representa el número total de píxeles de la imagen y N(t) denota el número total de píxeles en la agrupación i. El método de Otsu encuentra el límite T usando la siguiente ecuación: [3]: Dónde: Representan los niveles de grises de respectivamente y  Transformación de Weblet Haar: El wavelet de Haar es una secuencia de funciones propuesta por Alfred Haar [9]. Haar usó estas funciones para dar un ejemplo de un sistema ortonormal contable para el espacio de las funciones de cuadrado integrable en la recta real. [10,11] Para poder realizar una transformada 2dimensional de Haar de una imagen NxN el número de adiciones requeridas es de sin multiplicaciones requeridas. La transformada de Haar puede ser generada usando la función [13] descrita como: y su función escalar puede ser descrita como: La matriz de Haar de 2 x 2 que está asociada con el wavelet de Haar es: Usando la transformada wavelet discreta, cualquier secuencia de cualquier longitud puede ser transformada en una secuencia de dos componentes vectoriales: . Si cada vector es multiplicado por la derecha con la matriz H2, se obtiene el resultado de una etapa de la transformada rápida de wavelet de Haar. Usualmente se separan las secuencias s y d, y continúa transformando la secuencia s. Si tenemos una secuencia de longitud múltiplo de cuatro, se pueden construir bloques de 4 elementos y transformarlos de forma sencilla con la matriz de Haar de 4x4 La cual combina dos etapas de la transformada rápida del wavelet de Haar. Luego de aplicar ambos algoritmos, la imagen resultante tenía una dimensión reducida de 28x28 a 16x16 y los valores de cada entrada se habían normalizado entre 0 y 1, un ejemplo se muestra a continuación: Figura 3: Imagen del numero manuscrito usada como entrada (a la izquierda) e imagen de salida (a la derecha, en negro), luego de aplicar binarización mediante Otsu y compresión de Weblet Haar.
  • 3. 3 III. EXTRACCIÓN DE CARACTERISTICAS Debido a que el número original de dimensiones es bastante alto (un total de 784) la reducción de dimensionalidad fue necesaria. Primero se extrajeron los componentes principales de toda la data.  Principal Component Analysis: PCA es una técnica de transformación que tiene como objetivo identificar los principales factores que explican las diferencias en los datos. La identificación de estos factores conduce a una descripción más comprimida de correlaciones en los datos y, así, para una mejor comprensión de las características subyacentes. Por lo tanto, es un enfoque poderoso para extraer tendencias generales en un conjunto de datos. Además, dado que la PCA proporciona componentes principales ordenados por su significado, también ofrece una excelente base para la reducción de la dimensión de datos en caso de datos multidimensionales. Esto se puede lograr por la omisión de las tendencias menos relevantes en el conjunto de datos y la concentración en los principales componentes. Es un método sencillo que realiza una transformación lineal de los patrones, en donde los componentes del vector de características transformado son estadísticamente independientes; las componentes principales están ordenadas según su importancia, desde la componente asociada a la mayor varianza hasta la asociada a la menor variabilidad de los datos. De esta forma uno podría eliminar las ultimas k componentes sin perder demasiada información y utilizando menos variables. El valor de k se determina empíricamente según cada aplicación. Como se muestra en la figura 4, los 50 primeros componentes principales pueden representar aproximadamente el 97% del total de la información (en términos de la varianza total retenida), lo que se considera suficiente para ser representativo e informativo. De esta forma, escogimos los primeros 50 componentes principales. Figura 4: Varianza de los componente principales.  Vectores de distancia: Al intentar reducir aún más la cantidad de presentes en el conjunto de datos, los elementos de distancia y “sombra” del tazo hacia cada uno de los bordes permitió alcanzar tasas de error menores a 15% con tan solo 25 características y un tiempo de entrenamiento y clasificación que no superaba los 79 segundos. Figura 5: Vectores de Distancia desde y hacia los bordes usado en la fase experimental cuyos resultados fueron prometedores al ser empleados con ciertos clasificadores.  Área del trazo binarizado: Otra de las características evaluadas fue el total del área del trazo, que representaba sólo una característica más a evaluar y tiene una distribución por clase en la que pueden apreciarse grupos de manera clara: Figura 6: Distribución del área del trazo por clase (Weka) . IV. DESCRIPCIÓN DE LOS CLASIFICADORES Los clasificadores utilizados incluyen: SVM, KNN, Perceptron Multicapa y Randon Forest.  Support Vector Machines: Las máquinas de Soporte Vectorial o Support Vector Machines (SVM) fueron propuestas por Vapnik como un sistema de aprendizaje automático basado en la teoría del aprendizaje estadístico [12], Este método ha captado la atención de los investigadores debido principalmente a su excelente rendimiento en diferentes áreas como el reconocimiento de rostros, categorización textual, predicciones, recuperación de imágenes y reconocimiento de escritura manuscrita. Diseñadas originalmente como clasificadores binarios, la idea base reside en construir un hiperplano de separación
  • 4. 4 entre las clases maximizando la distancia (el margen) entre las mismas. Las SVM utilizan una función núcleo o kernel para representar el producto interno entre dos patrones, en un espacio de características no lineal y expandido. Muchos proveedores comerciales usan SVM como IBM SPSS Statistics, SAS Enterprise Miner, Oracle Data Mining(ODM) entre otros. Para resolver problemas de clasificación con más de dos clases (multiclase), se han planteado estrategias para combinar las SVM binarias. Entre las más difundidas podemos mencionar uno-contra-todos y uno-contra-uno. La estrategia uno-contra-uno ha demostrado funcionar mejor cuando se utilizan funciones kernel lineales mientras que para otros tipos de kernel la estrategia uno- contra-todos funciona eficientemente [13]. A continuación la fórmula de SVM con soporte a una funcion de kernel y las fórmulas de las funciones comúnmente soportadas. [14][15]  KNN (K Nearest Neighbors): KNN según [16] es un método de clasificación no paramétrico, esta técnica usa todos los patrones de entrenamiento como prototipo. Es decir todas las predicciones se realizan directamente desde los datos. Para cada punto a clasificar se calcula la distancia (por ejemplo euclidiana) para cada punto a clasificar. La predicción se realiza sobre los k elementos más cercanos. Figura 7: Ejemplo de clasificador KNN para K=3  Redes Neuronales Artificiales: De acuerdo a Goyal [17], las redes neuronales artificiales son redes de nodos, las cuales son modelos matemáticos de neuronas biológicas como se muestra en la siguiente figura: Figura 8: Modelo conceptual de una Red Neuronal Artificial con Xn neuronas, función base, función de activación y salida. Generalmente, hay 3 o más capas de las mencionadas neuronas: capa de entrada, capas medias (u ocultas) y la capa de salida. El número de nodos en la capa de salida es igual al número de clases objetivo de la clasificación. El número de neuronas en la capa de entrada depende del número de atributos que definen una instancia de un objeto. El número de neuronas en las capas intermedias no es fijo. Tampoco lo es el número de capas intermedias en sí mismo. Estos últimos se definen mediante un estudio del problema. Perceptrón Multicapa: El perceptrón multicapa consiste en un sistema de neuronas simples interconectadas, o nodos que forman un modelo que representa una relación no-lineal entre un vector de entrada un vector de salidas. Los nodos están conectados por pesos y señales de salida que son funciones que suman las entradas al nodo modificado por una función de transferencia no-lineal simple (o función de activación). La superposición de varias funciones de transferencia no lineales simples es lo que permite que el perceptrón multicapa se aproxime a funciones extremadamente no lineales. Si la función de transferencia fuera lineal, entonces el perceptrón multicapa solo sería capaz de modelar funciones lineales. Una de las funciones de transferencia más empleadas es la función logística debido a que su derivada es fácil de calcular, computacionalmente hablando. La salida de un nodo es escalada por el peso correspondiente y sirve como entrada para los nodos de la siguiente capa de la red neuronal. [18]  Random Forest: Es un método de aprendizaje en conjunto usado para clasificación y regresión que funciona mediante la construcción de una gran cantidad de árboles de decisión durante la etapa de entrenamiento y la salida de la clase es el modo de la salida de clases de cada árbol. El algoritmo para la inducción de Random Forest fue
  • 5. 5 desarrollado por Leo Breiman y Alede Cutler. Al usar una selección aleatoria de características para dividir cada nodo el rendimiento alcanza tasas de error comparables a AdaBoost [19]. El algoritmo de entrenamiento de Random Forest aplica la técnica general de agregación por bootstrap o bagging, a los clasificadores de árbol. Dado un conjunto de entrenamiento X = x1, …, xn con respuestas Y = y1 hasta yn, el bagging repetidamente selecciona una muestra bootstrap del conjunto de entrenamiento y ajusta árboles a esas muestras: Luego del entrenamiento, la predicción para data nueva x' se realiza promediando las predicciones de los árboles de regresión individual en x': o teniendo en cuenta la mayoría de votos. En el algoritmo de arriba, B es un parámetro libre. Típicamente unos cientos de miles de árboles se usan, dependiendo del tamaño y la naturaleza del conjunto de entrenamiento. Aumentar el número de árboles tiende a reducir la varianza del modelo, sin reducir la tendencia. Como resultado, el error en entrenamiento y prueba tiende a nivelarse luego de que se ha alcanzado cierto número de árboles. Este procedimiento describe el algoritmo original de bagging para árboles. Random Forest es distinto sólo en la forma del siguiente esquema: usa un algoritmo de aprendizaje modificado que selecciona, en cada corte del proceso de aprendizaje, un subconjunto aleatorio de características. La razón para hacer esto es la correlación de árboles en una muestra ordinaria de bootstrap. Si una o algunas características influyen fuertemente en la predicción, esas características serán seleccionadas en muchos árboles, y como consecuencia estarán relacionadas. V. EXPERIMENTACIÓN Recogiendo los resultados y el actual estado del arte sobre las experimentaciones en reconocimiento de dígitos y dado que en este campo se vienen desarrollando propuestas décadas atrás, presentamos a continuación algunos resultados obtenidos por la comunidad [20] sobre el problema planteado, para luego realizar una comparativa sobre nuestras experimentaciones propias. Error Método 0.21 Regularization of Neural Networks using DropConnect 0.23 Multi-column Deep Neural Networks for Image Classification 0.35 Deep Big Simple Neural Nets Excel on Handwritten Digit Recognition 0.39 Efficient Learning of Sparse Representations with an Energy- Based Model 0.40 Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis Tabla 1: Resultados obtenidos por en otros experimentos. De la lista anterior, nuestras experimentaciones tomaron como base comparativa el clasificador de Redes Neuronales Convolucionales (Convolutional Neural Networks Applied to Visual Document Analysis), realizando un entrenamiento con 7 épocas sobre el dataset de training alcanzamos una tasa de error de 0.026%. Esta es la base de nuestra comparativa sobre nuestras experimentaciones. Nuestros experimentos empezaron con la totalidad de la muestra y la aplicación del clasificador Super Vector Machine este clasificador presentó un resultado prometedor para trabajar con una alta dimensionalidad. De nuestros experimentos hemos podido notar que el tipo de función kernel así como los parámetros de entrenamiento influyen en el tiempo de entrenamiento y la acertividad de la operación. Decidimos también probar el comportamiento de otro algoritmo estadístico como es KNN para la clasificación, buscamos el valor de K óptimo que proporcione la menor tasa de error. Para esto hemos probado con diferentes valores para K(K=1,2,3,4,5,6,7,8,14). Como se puede observar en el siguiente gráfico la menor tasa de error se obtiene para k=3. K 1° Experimento 2° Experimento % Error Tiempo (min.) 1 92.54 92.1 7.68 13.96 2 92.36 92.1 7.77 25.11 3 92.88 93.48 6.82 38.58 4 92.42 92.35 7.62 51.13 5 92.74 92.58 7.34 61.31 6 92.35 92.15 7.75 73.52 7 92.25 92.1 7.83 90.36 8 92.36 92.1 7.77 105.77 14 91.88 91.88 8.12 164.69 Tabla 2: Determinando el valor de K óptimo. Figura 10: Comportamiento del porcentaje de error para K = 1 hasta K =14.
  • 6. 6 Usando el valor K=3 obtenido, experimentamos con diferentes volúmenes de datos hasta abarcar el total del dataset. Como primera aproximación trabajamos con la data sin preprocesamiento. Para mejorar el resultado se intentó binarizar la solución [21] pero el tiempo de estabilización del clasificador SVM mostró ser excesivo. Con el fin de mejorar la respuesta se pasó de un enfoque estadístico a un enfoque basado en Redes Neuronales Artificiales como es perceptrón multicapa, para poder trabajar con esta red neural necesitamos reducir la dimensionalidad, utilizamos el algoritmo de Otsu para mejorar la calidad de la imagen y la transformación de wavelet HAAR para reducir la dimensionalidad de 28 a 16 dimensiones lo que nos da total de 256 características lo cual es un número todavía excesivo para una red neural, por lo que recurrimos al algoritmo Principal Component Analysis para reducir la dimensionalidad a 15 dimensiones obteniendo un resultado similar a SVM pero con un enfoque de red neuronal artificial. Con el fin de mejorar la extracción de características elegimos manualmente los vectores modelo para la extracción de características técnica utilizada para el reconocimiento de rostros con lo que pudimos obtener un resultado de mejor exactitud con una red perceptrón multicapa alcanzando el 92% de aciertos. Sobre la base antes desarrollada alcanzamos el mejor rendimiento utilizando binarización unido a vectores de distancia y la información obtenida del área de los trazos en un clasificador Random Forest como técnicas de extracción de características y clasificador respectivamente. Mostrando el siguiente desempeño: Figura 9: Resumen del entrenamiento y evaluación utilizando 68 características y el clasificador Random Forest. El rendimiento por clase obtenido fue menor al momento de clasificar las muestras de prueba para 9,3 y 8; alcanzando su mayor precisión con 1, 5 y 6 tal como se muestra a continuación: Figura 10: Rendimiento por clase. La matriz de confusión para la prueba con 68 características fue la siguiente: Figura 11: Matriz de Confusión para la prueba con 68 características y Random Forest como clasificador. Finalmente intentamos reducir más la tasa de error, sin embargo luego de superar las 68 características un incremento en el número de dimensiones no influía en el rendimiento, por lo que no se agregaron más características ya que el tiempo de extracción, entrenamiento y evaluación continuaba incrementándose. A continuación se muestra la evolución en tiempos y tasa de error de las pruebas más significativas realizadas en base a la combinación anterior, variando el número de características incluidas: Características Tiempo (seg.) Error (%) 27 62.47 7.2 56 71.68 4.32 68 90.31 3.6 152 107.94 3.29 Tabla 3: Evolución del Porcentaje de Error con respecto a cantidad de características usadas para el entrenamiento del modelo.
  • 7. 7 Figura 12: Ejemplo de imagen a la que se agregaron líneas verticales y horizontales para encontrar la distancia desde el borde del trazo hasta cada marco (superior, inferior, izquierdo y derecho). VI. RESULTADOS OBTENIDOS Presentamos a continuación el resultado de nuestros experimentos sobre 60,000 imágenes de entrenamiento y 10,000 de prueba: Extraccion de Caracteristicas Num. Attr. Clasificador Tiempo (seg) Tasa de Error (%) No 784 SVM- Polinomial 1779.00 15.18 No 784 SVM- Gausiana 7300.00 11.14 No 784 SVM-Linear 305.00 14.33 No 784 KNN 12600.00 4.76 Otsu,Haar PCA 15 Perceptron Multicapa (500 ciclos) 755.04 11.35 Otsu, CDF, PCA 15 Perceptron Multicapa (500 ciclos) 232.00 32.00 Otsu,Haar, PCA Manual 50 Perceptron Multicapa (500 ciclos) 1181.00 7.23 Otsu, Wave, Haar, PCA 15 Naive Bayes 4.80 17.95 Otsu, Wave, CFD 9/7, PCA 15 Naive Bayes 1.00 35.00 Otsu Haarm Vectores de distancia 56 Random Forest 90.31 3.6 Convolucional (Referencia) 784 Red Neuronal Backpropagation 2200 s/epoca 0.026% 7ep. Tabla 4: Comparación de todos los resultados obtenidos. Figura 13: Tasa de Error por Clasificador VII. CONCLUSIONES Y RECOMENDACIONES  En el presente trabajo gracias a la experimentación y desarrollo de los modelos hemos podido llegar a las siguientes conclusiones y recomendaciones.  El desarrollo de un modelo para el reconocimiento de patrones presenta en la alta dimensionalidad uno de sus mayores retos.  Para lidiar con estos factores será necesario identificar técnicas que nos permitan extraer de manera adecuada las características más relevantes para un dominio particular de problema. Es pues así que la viabilidad de un modelo tendrá que considerar de manera más relevante el dominio de problema y la forma en la cual jerarquiza la información obtenida.  El algoritmo de Otsu para la binarización de las imágenes en nuestros experimentos a sido útil para este propósito.  La utilización de la transformación de wavelet es una técnica útil para reducir la dimensionalidad hecho relevante para obtener un resultado en un tiempo apropiado para los clasificadores basados en redes neuronales artificiales.  El algoritmo PCA para la extracción de las características más relevantes de nuestra muestra es un modelo genérico que ha probado un buen desempeño para la reducción de la dimensionalidad.  El clasificador SVM presenta una complejidad importante en la definición de los parámetros apropiados para su aprendizaje, tanto en los parámetros de la función kernel como en los parámetros propios de la función.  Después de realizada la extracción de características y reducción de la dimensionalidad los algoritmos basados en redes neuronales artificiales presentan resultados importantes en tiempos de entrenamiento también apropiados.  La definición de vectores específicos a un contexto de problema puede incrementar la acertividad del modelo PCA transformando las entradas a una representación más apropiada para el dominio de problema.  El uso del clasificador KNN proporciona una forma fácil y rápida de clasificación de los dígitos manuscritos pero con una alta tasa de error (4.76%).  El rendimiento del clasificador KNN se ve mejorado al aumentar la cantidad de datos de entrenamiento.  En nuestros experimentos las redes neuronales artificiales mostraron buen comportamiento al integrarse
  • 8. 8 con Wavelet y PCA no siendo así los algoritmos estadísticos que parecen necesitar un modelamiento matemático más elaborado al momento de aplicar técnicas de reducción de la dimensionalidad.  En nuestros experimentos las técnicas para la extracción de características específicas al dominio del problema demostraron ser el factor más gravitante al momento de obtener un mejor resultado. REFERENCIAS [1] Cheng-Lin Liu; Nakashima, K.; Sako, H.; Fujisawa, H., "Handwritten digit recognition using state-of-the-art techniques," Frontiers in Handwriting Recognition, 2002. Proceedings. Eighth International Workshop on , vol., no., pp.320,325, 2002. [2] C. Suen and J.Tan, “Analysis of errors of handwritten digits made by a multitude of classifiers.” Pattern Recognition Letters, vol 40, pp, 18161824,2007. [3] Otsu, N. 1979. A threshold selection method from gray level histogram. IEEE Trans. Systems Man Cybern. 9 (1), 62–66. [4] Chih-Chung Chang, Chih-Jen Lin. LIBSVM: a library for support vector machines, 2001. Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm. [5] Wang qinghui; Yang Aiping; Dai Wenzhan, "An improved feature extraction method for individual offline handwritten digit recognition," Intelligent Control and Automation (WCICA), 2010 8th World Congress on, vol., no., pp.6327,6330, 7-9 July 2010. [6] Akhtar, M.S.; Qureshi, H.A, "Handwritten digit recognition through wavelet decomposition and wavelet packet decomposition," Digital Information Management (ICDIM), 2013 Eighth International Conference on , vol., no., pp.143,148, 10-12 Sept. 2013. [7] Kulkarni, V.Y.; Sinha, P.K., "Pruning of Random Forest classifiers: A survey and future directions," Data Science & Engineering (ICDSE), 2012 International Conference on , vol., no., pp.64,68, 18-20 July 2012. [8] Serre, T.; Wolf, L.; Poggio, T., "Object recognition with features inspired by visual cortex," Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on , vol.2, no., pp.994,1000 vol. 2, 20-25 June 2005. [9] Haar A. Zur Theorie der orthogonalen Funktionensysteme, Mathematische Annalen, 69, pp 331–371, 1910. [10] Minh N. Do, Martin Vetterli, “WaveletBased Texture Retrieval Using Generalized Gaussian Density and KullbackLeibler Distance”, IEEE Transactions On Image Processing, Volume 11, Number 2, pp.146158, February 2002. [11] Charles K. Chui, “An Introduction to Wavelets”, Academic Press, 1992, San Diego, ISBN 0585470901 [12] C. Suen, C. Nadal, R. Legault, T. Mai, and L. Lam, “Computer recognition of unconstrained hand-written numerals” Procs IEEE, vol 80, no 7 , pp. 1162-1180, 1992. [13] C. Liu and H. Fujisawa, “Classification and learning methods for character recognition: Advances and remaining problems” in Machine Learning in Document Analysis and Recognition (H. F. S. Marinai, ed.), pp 139-161, Springer, 2008. [14] F. Lauer, C. Suen, and G. Bloch, “A trainable feature extractor for handwritten digit recognition” . vol 40, pp 1816-1824, 2007. [15] V. Vapnik, The nature of Statistical Learning Theory. Springer Verlag. New York, 1995. [16] Peter Harrington, “Machine Learning in Action”. 2012. Manning Publications Co. Capitulo 2, pp 18-21 [17] Goyal, R.D., “Knowledge Based Neural Network for Text Classification.”, 2007, IEEE International Conference on Granular Computing. [18] M. W. Gardner and S. R. Dorling. 1998. Artificial Neural Networks (The Multilayer Perceptron)- A review of applications in the atmospheric sciences. Atmospheric Enviroment. Vol 32. pp. 2627-2636. [19] L. Breiman, “Random Forest”, Machine Learning, Kluwer Academic Publishers, Vol 45, no 1, pp 5-32 [20] Classification datasets results. http://rodrigob.github.io/are_we_there_yet/build/classification_datasets _results.html#4d4e495354 [21] L. Maria Seijas, “Reconocimiento de patrones utilizando técnicas estadísticas y conexionistas aplicadas a la clasificación de dígitos manuscritos. Universidad de Buenos Aires.