Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Introduccin
El ROC (Reconocimiento ptico de Caracteres) consiste en identificar un
smbolo, que suele ser un nmero o una letra, a partir de la digitalizacin de una
imagen [1], [2]. Actualmente existen mltiples procesos en los que se aplica el
reconocimiento de caracteres.
Algunos ejemplos de ROC pueden ser: automatizar la redireccin de cartas en el
correo postal, el reconocimiento de las matrculas de los coches en los radares o la
digitalizacin de los apuntes tomados en una clase mediante la escritura con lpiz
ptico en una tablet.
Nuestra investigacin consiste en efectuar la identificacin de dgitos a partir de
un conjunto de pixeles que representan nmeros escritos a mano [3]. La aportacin
que realizamos es una metodologa compuesta de 5 fases para la identificacin de
dichos nmeros. Para ello, aplicamos la reduccin de dimensionalidad, la extraccin
de caractersticas de la imagen original, la seleccin de variables y la evaluacin de
varios modelos supervisados de aprendizaje automatizado.
pp. 8394
83
84
Como las imgenes son un insumo de los modelos y estos tienen un nmero de
entradas fijo, debemos homogeneizar las imgenes para que presenten el mismo
tamao. En algunos casos deberemos disminuir el tamao de la imagen con lo que
perderemos informacin y en otros casos agrandaremos la imagen con lo que
deberemos de interpolar los pxeles.
A partir de la imagen tratada, se pueden extraer algunas caractersticas que pueden
resultar de gran utilidad para aumentar el grado de acierto en las predicciones del
modelo. Podemos medir algunas caractersticas como: la media de los pxeles, el
nmero de pxeles mayores a un umbral o el nmero de pxeles que forman una
regin. Tambin podemos aplicar algoritmos para detectar el tipo de textura o el
nmero de agujeros que tiene cierto smbolo.
En nuestro conjunto de datos, cada imagen est representada por un arreglo
bidimensional de pxeles en escala de grises de 28 x 28.
Por lo tanto cada imagen est representada por 785 atributos:
Digito en la imagen, su valor es entero desde 0 hasta 9.
784 valores en los pxeles (resultado de los 28x28 pxeles), toman valores enteros
de 0 hasta 255, siendo el valor 255 la intensidad ms oscura (negro) y el 0 la
intensidad ms clara (blanco).
Trabajar con un conjunto de datos del tamao 42,000 (nmero de imgenes) por
197 (nmero de atributos) es complicado porque cuanto ms grande es la dimensin
de los datos la creacin de los modelos de aprendizaje es ms compleja y ms lenta.
Por ello, es conveniente reducir la dimensin de los datos.
El primer paso para reducir la dimensin de los datos es reducir el tamao de las
imgenes. Esto es, en lugar de que cada imagen sea de 28 x 28 pxeles, trabajaremos
con una imagen de 14 x 14 pxeles. Para lograr esto, los valores de cuatro pxeles
continuos en la imagen original se promedian para obtener un pxel en la imagen de
menor escala (Figura 2).
125
136
252
253
109
95
126
52
125
236
123
145
59
87
38
74
116
171
127
95
Despus de realizar este proceso, cada imagen est representada por 197
atributos:
Digito en la imagen, su valor es entero desde 0 hasta 9.
196 valores en los pxeles (resultado de los 14x14 pxeles), valores enteros de 0
hasta 255.
85
86
sucesivamente para todas las variables. La salida del algoritmo es una grfica con
todas las agrupaciones pero sealando la mejor combinacin.
A partir de los resultados obtenidos en la evaluacin de modelos se van
descartando aquellas variables que son menos importantes o que generan ruido. El
objetivo es doble: quedarnos con un nmero de variables ms reducido y elegir la
combinacin que nos d mejores resultado. Esto nos permitir construir modelos ms
sencillos y ms precisos. La aplicacin de RFE redujo el nmero de variables de 196
a 148.
88
89
Valores Reales
0
1
2
3
4
5
6
7
8
9
0
1425
0
1
2
2
7
4
0
6
1
1
0
1677
7
0
2
0
3
6
1
2
2
6
3
1421
9
3
0
2
15
11
4
Valores predichos
3
4
5
6
2
2
4
7
2
3
2
0
17
14
3
0
1503
2
29
0
1
1413
6
3
18
2
1279
7
2
9
12
1454
9
7
1
0
29
2
10
3
5
28
3
0
7
1
6
11
7
8
0
0
1507
3
19
8
5
6
5
11
9
10
6
3
1385
10
9
5
1
2
8
25
5
0
18
14
1398
Fase 2: Tratamiento
de imagen
Fase 3: Seleccin de
variables
Fase 4: Construccin
de modelos
Fase 5: Resultados
No hacer nada
Ancho de pxeles,
Altura pxeles
No extraer caractersticas
KNN
0,9425
Imagen 14x14
PCA
Random forest
0,9315
Imagen 28x28
Binarizar
RFE
Neuronal Network
0,9625
90
=1
Imagen 28x28
Tratamiento
imagen
Seleccin de
Variables
Modelo Predictivo
Parmetros
modelo
Resultado
Aplicacin de
mltiples mtodos como densidad, anchura,
tamao,
RFE
Random Forest
0.7373
rboles: 5
0.171
Promedio de
pxeles
No hacer seleccin
rboles: 20
0.1615
rboles: 50
0.3011
Random Forest
Tratamiento
imagen
Seleccin
Variables
Modelo Predictivo
Parmetros modelo
Resultado
PCA
Random Forest
0.9284
0.9650
0.9541
0.9653
0.9516
SVM con
ncleo polinmico
degree = 3, scale =
0.1 and C = 0.25.
0.9722
0.7518
Random Forest
0.9330
TanhWithDropout
0.4363
Tanh
RectifierWithDropout
0.9998
Random Forest
Sin tratamiento
RFE
Imagen 14x14
Reduccin de
bordes
Todas
Deep Learning
91
9. Conclusiones
Despus de haber trabajado con R Studio y la librera Caret lo calificamos como
un entorno muy adecuado para resolver problemas relacionados con la construccin y
evaluacin de modelos predictivos.
Las principales ventajas de esta herramienta son que permite crear modelos con
distintas configuraciones, la seleccin automtica de la mejor combinacin y la muestra de resultados en distintas mtricas. Adems, contempla la opcin de crossvalidation, que crea diferentes particiones para crear varios modelos y as hacer clculos ms robustos.
El hecho de que sea software gratuito representa una gran ventaja porque permite
a estudiantes y a personas de la comunidad cientfica disfrutar de una herramienta con
una amplia gama de funciones. Un inconveniente de R es que no tienen ningn elemento que indique la estimacin del tiempo restante. Esto dificulta hacer una planificacin eficiente para probar los modelos. Tampoco da garantas en caso de que algn
error ocurra como indica claramente al inicializar el intrprete de comandos.
La documentacin de R no recoge todos los detalles de las funciones por lo que en
algunos casos resulta laborioso encontrar la configuracin de algunos parmetros.
Esto nos ha sucedido en el caso de las funciones RFE. Por ltimo, vemos que es posible implementar esta herramienta con otros lenguajes como Java.
Consideramos que el redimensionamiento de la matriz para trabajar con imgenes
ms reducidas ha permitido ahorro de tiempo y complejidad en la creacin de los
modelos.
Podemos comprobar en la tabla 4, que nuestro mtodo propuesto basado en la reduccin de dimensionalidad y la seleccin de caractersticas permitieron obtener un
acierto del 100% en el reconocimiento de los dgitos escritos a mano. Aplicando Random Forest en el conjunto original sin reduccin de la imagen se obtiene una exactitud de 0.7373 mientras que aplicando los elementos descritos en las fases del mtodo
se logra mejorar a una precisin de 0.9653, mientras que los algoritmos de Deep
Learning lograron alcanzar un 0.9998 y un 1 de exactitud. Por lo que concluimos que
esto mtodo tiene un gran futuro en los modelos predictivos.
92
Bibliografa
1. Mori, S., Nishida, H., Yamada, H.: Optical character recognition. John Wiley & Sons, Inc
(1999)
2. Vithlani, P., Kumbharana, C. K.: A Study of Optical Character Patterns identified by the
different OCR Algorithms. Department of computer science, Saurashtra University,
Rajkot, India (2012)
3. Mohiuddin, K., Mao, J.: A comparative study of different classifiers for handprinted
character recognition. Pattern Recognition in Practice, Vol. IV, pp. 437448 (2014)
4. Bro, R., Smilde, A. K.: Principal component analysis. Analytical Methods, Vol. 6, no. 9,
pp. 28122831 (2014)
5. Zhang, X., Lu, X., Shi, Q., Xu, X. Q., Hon-chiu, E. L., Harris, L. N., Wong, W. H.:
Recursive SVM feature selection and sample classification for mass-spectrometry and
microarray data. BMC bioinformatics, Vol. 7, no. 1, p. 197 (2006)
6. Le Cun, Y., Cortes, C.: MNIST handwritten digit database. AT&T Labs. En lnea:
http://yann. lecun. com/exdb/mnist [ltimo acceso: 15 Enero 2015]
7. Kuhn, M., Wing, J., Weston, S., Williams, A., Keefer, C., Engelhardt, A.: Caret:
classification and regression training. R package, Vol. v515 (2012)
93
8. Kuhn, M.: Building predictive models in R using the caret package. Journal of Statistical
Software, Vol. 28, no. 5, pp. 126 (2008)
9. Schmidhuber, J.: Deep learning in neural networks: An overview. Neural Networks, Vol.
61, pp. 85117 (2015)
10. Weigel, V. B.: Deep Learning for a Digital Age: Technology's Untapped Potential to
Enrich Higher Education. Jossey-Bass (2002)
11. Breiman, L.: Random Forests. In: Machine Learning. Kluwer Academic Publishers, no.
45, pp. 532 (2001)
12. Yu, X., Pu, K. Q., Koudas, N.: Monitoring k-Nearest Neighbor Queries Over Moving
Objects. In: Proceedings of the 21st International Conference on Data Engineering (2005)
13. Duda, R. O., Hart, P. E., Stork, D. G.: Pattern Classification, USA: John Wiley & Sons
(2012)
94