técnicas de aprendizaje automático aplicadas al ... · los datos, la información y el...

191
Técnicas de Aprendizaje Automático Aplicadas al Procesamiento de Información Demográfica Zoila de Lourdes Ruiz Chávez

Upload: others

Post on 14-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Técnicas de Aprendizaje Automático Aplicadas al Procesamiento de Información Demográfica

Zoila de Lourdes Ruiz Chávez

Instituto Universitario de Investigación enInformática

Escuela Politécnica Superior

Técnicas de AprendizajeAutomático Aplicadas al

Procesamiento de InformaciónDemográfica

Zoila Ruiz Chávez

Tesis presentada para aspirar al grado deDOCTOR POR LA UNIVERSIDAD DE

ALICANTE

DOCTORADO EN INFORMÁTICA

Dirigida por:Dr. José García Rodríguez

Learn from yesterday, live for today, hope for tomorrow.The important thing is not to stop questioning.

Albert Einstein

Agradecimientos

Agradezco en primer lugar a Dios por todas las bendiciones recibidasa lo largo de mi vida, a mis padres quienes son mis cimientos y mi guía,gracias por su inmenso amor y paciencia, a mi esposo por su apoyo incon-dicional y su inmenso amor, a mis hijos Dylan, Deyanira y Dustin que sonel motor de mi vida y por quienes me supero cada día, a mis hermanos porsu cariño y apoyo. De manera especial agradezco a mi hermana Verónicaquien me ha apoyado incondicionalmente en este proceso.

Un agradecimiento y reconocimiento especial a mi Tutor José García,quien ha sido una guía durante estos años. Gracias por compartir de for-ma espontánea todos tus conocimientos y experiencias que facilitaron esteproceso, pero sobre todo gracias por tu amistad.

Hago extensivo un agradecimiento a la Universidad Central del Ecuadorque me ha formado como profesional y a sus autoridades por el apoyootorgado para realizar mis estudios de doctorado.

Quito, 6 de mayo de 2019Zoila Ruiz Chávez

Resumen

En la actualidad, el recurso más valioso en el campo profesional y deinvestigación es sin duda la información. La velocidad de generación de da-tos crece de forma exponencial, por ello debemos utilizar todos los recursostecnológicos disponibles para analizar estos datos con la misma velocidadcon la que aparecen. Este es el verdadero reto para quienes de alguna ma-nera están directamente involucrados con la extracción de conocimiento.

Los grandes volúmenes de datos incluyen de forma implícita proble-mas asociadas a la dimensionalidad, tipos de datos y ausencia de datos,en especial los datos provenientes de censos o encuestas. El procesamientode datos se realiza mediante dos enfoques: los basados en técnicas esta-dísticas y los basados en técnicas de aprendizaje automático. El principalproblema en el procesamiento de datos reside en la selección de técnicasadecuadas para la selección y clasificación de variables. La técnica escogi-da depende del tipo de información analizada, escoger de forma adecuadauna técnica permite obtener información de mayor calidad, reducir el costecomputacional y mejorar tiempos de proceso.

En este trabajo, se presenta una metodología orientada a procesar datosprovenientes de censos o encuestas. La metodología propuesta se basa enlas características de los grandes volúmenes de datos y la relevancia quetiene la información que se obtiene de censos o encuestas.

El método propuesto aborda el problema de imputación de datos per-didos o ausentes que son muy frecuentes en censos o encuestas. Previo alproceso de imputación, la información necesita ser procesada para extraerun subconjunto de información completa necesaria para entrenar modelosde aprendizaje automático con la finalidad de predecir los valores ausentes.

Para conseguir este dataset se utilizaron varias técnicas tradicionales talescomo Pairwise Deletion y Listwise Deletion con la finalidad de eliminarobservaciones que presentan valores perdidos.

Como siguiente paso en la metodología, se plantea la generación degrupos de información a través de técnicas de aprendizaje automático nosupervisado y a través de redes neuronales artificiales. Estos grupos deinformación que comparten características comunes sirven como datos ofuente de entrada en el proceso de imputación de datos perdidos o ausentes.

Los resultados obtenidos en la fase experimental muestran que la ge-neración de grupos (de forma manual o automática) permiten mejorar laclasificación de la variable de prueba, sin embargo también se debe consi-derar la etapa previa a la generación de grupos.

Finalmente, como caso de estudio para validar la propuesta se planteala imputación de datos para calcular la tasa de mortalidad infantil conbrechas educativas para lo cual se seleccionó un dataset de pruebas de unaregión geográfica específica.

Abstract

Nowadays, the most valuable resource in the professional and researchfield is undoubtedly information. The speed of data generation grows expo-nentially, so we have to use all available technological resources to analyzethis data with the same speed with which they appear. This is the real cha-llenge for those who are in some way directly involved with the extractionof knowledge.

Large volumes of data implicitly include problems associated with di-mensionality, data types, and lack of data, especially data that came fromcensuses or surveys. Data processing is done through two approaches: tho-se based on statistical techniques and those based on machine learningtechniques. The main problem in data processing lies in the selection ofappropriate techniques for the selection and classification of variables. Thechosen technique depends on the type of information analyzed, choosing anappropriate technique allows to obtain higher quality information, reducethe computational cost and improve processing times.

This thesis presents a methodology for processing census or surveydata. The proposed methodology is based on the characteristics of thelarge volumes of data and the relevance of the information obtained fromcensuses or surveys.

The proposed method addresses the problem of lost or missing dataimputation that are very frequent in censuses or surveys. Prior to theimputation process, information needs to be processed to extract a subsetof complete information needed to train machine learning models in orderto predict missing values. In order to get the dataset, several traditionaltechniques such as Pairwise Deletion and Listwise Deletion were used to

eliminate observations that present missing values.The next step in the methodology is the generation of information

groups through unsupervised machine learning techniques and throughartificial neural networks. These groups of information that share commoncharacteristics serve as data or input source in the process of imputationof lost or absent data.

The results obtained in the experimental phase show that the genera-tion of groups (manually or automatically) allow to improve the classifi-cation of the test variable, however, the stage prior to the generation ofgroups should also be considered.

Finally, as a case study to validate the proposal, the imputation of datato calculate the infant mortality rate with educational gaps is proposed, forwhich a test dataset from a specific geographic region was selected.

Índice general

Índice de figuras XVII

Índice de tablas XXI

1. Introducción 11.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3. Revisión del Estado del Arte . . . . . . . . . . . . . . . . . 4

1.3.1. Grandes volúmenes de datos . . . . . . . . . . . . . 51.3.1.1. Conjunto de datos (datasets) . . . . . . . . 7

1.3.2. Técnicas de Clasificación . . . . . . . . . . . . . . . . 91.3.3. Algoritmos de Aprendizaje Automático . . . . . . . 10

1.3.3.1. K-Media (K-Means) . . . . . . . . . . . . . 101.3.3.2. K-Medoides . . . . . . . . . . . . . . . . . . 111.3.3.3. Máquinas de Soporte Vectorial (SVM) . . . 121.3.3.4. k-Vecinos más cercanos (KNN) . . . . . . . 151.3.3.5. Esperanza–Maximización(EM) . . . . . . . 161.3.3.6. Mapas Auto Organizados (SOM) . . . . . . 181.3.3.7. DBSCAN . . . . . . . . . . . . . . . . . . . 191.3.3.8. Árboles de Decisión (DT) . . . . . . . . . . 21

1.3.4. Revisión de estrategias híbridas de procesamiento dedatos . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.3.5. Consideraciones en la elección de algoritmos de Apren-dizaje Automático . . . . . . . . . . . . . . . . . . . 251.3.5.1. Tipo de datos a ser procesados . . . . . . . 26

1.3.5.2. Limitaciones y Parámetros de los Algoritmos 261.3.6. Consideraciones generales . . . . . . . . . . . . . . . 27

1.4. Definición del Problema . . . . . . . . . . . . . . . . . . . . 281.5. Propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281.6. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291.7. Estructura de la tesis . . . . . . . . . . . . . . . . . . . . . . 30

2. Aprendizaje automático aplicado a datos censales 312.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.1.1. Modelo de clasificación de datos . . . . . . . . . . . 322.2. Revisión del Estado del Arte . . . . . . . . . . . . . . . . . 34

2.2.1. Datos de Censos y Encuestas . . . . . . . . . . . . . 362.2.1.1. Datos de Censos . . . . . . . . . . . . . . . 372.2.1.2. Datos de Encuestas . . . . . . . . . . . . . 38

2.3. Procesamiento de datos censales . . . . . . . . . . . . . . . 382.3.1. Variable con dos categorías . . . . . . . . . . . . . . 442.3.2. Variable con más de dos categorías . . . . . . . . . . 46

2.4. Propuesta de metodología basada en aprendizaje automáti-co para procesar datos Censales . . . . . . . . . . . . . . . 492.4.1. Selección de variables a utilizar (Feature Selection) . 522.4.2. Imputación de datos (Data Imputation) . . . . . . . 532.4.3. Extracción de información . . . . . . . . . . . . . . . 53

2.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3. Imputación de datos 553.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 553.2. Trabajos relacionado . . . . . . . . . . . . . . . . . . . . . . 573.3. Selección de variables representativas . . . . . . . . . . . . . 59

3.3.1. Prueba ji-cuadrado (χ2) . . . . . . . . . . . . . . . . 603.3.2. Análisis de Componentes Principales (PCA) . . . . . 613.3.3. Bosques Aleatorios (Random Forest, RF) . . . . . . 61

3.4. Imputación de valores perdidos . . . . . . . . . . . . . . . . 623.4.1. Métodos de Eliminación . . . . . . . . . . . . . . . . 633.4.2. Métodos de Imputación . . . . . . . . . . . . . . . . 64

3.4.2.1. Métodos estadísticos . . . . . . . . . . . . . 66

3.4.2.2. Métodos basados en algoritmos de inteli-gencia artificial . . . . . . . . . . . . . . . . 67

3.5. Imputación de datos basada en técnicas de Inteligencia Ar-tificial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683.5.1. Modelo para imputar datos . . . . . . . . . . . . . . 69

3.6. Experimentación . . . . . . . . . . . . . . . . . . . . . . . . 693.6.1. Plataforma de Prueba . . . . . . . . . . . . . . . . . 723.6.2. Selección de atributos . . . . . . . . . . . . . . . . . 73

3.6.2.1. Random Forest . . . . . . . . . . . . . . . . 733.6.3. Imputación con métodos estadísticos . . . . . . . . . 75

3.6.3.1. Imputación dataset completo . . . . . . . . 773.6.3.2. Imputación por clusters . . . . . . . . . . . 78

3.6.4. Imputación con métodos de aprendizaje automático 803.6.4.1. Imputación dataset completo . . . . . . . . 803.6.4.2. Imputación por clusters . . . . . . . . . . 81

3.7. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . 82

4. Procesamiento inteligente de datos socio-demográficos 834.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 834.2. Análisis de datos . . . . . . . . . . . . . . . . . . . . . . . . 84

4.2.1. Pre-procesamiento . . . . . . . . . . . . . . . . . . . 864.2.1.1. Integración . . . . . . . . . . . . . . . . . . 874.2.1.2. Limpieza . . . . . . . . . . . . . . . . . . . 874.2.1.3. Reducción . . . . . . . . . . . . . . . . . . 884.2.1.4. Transformación . . . . . . . . . . . . . . . 89

4.3. Random Forest . . . . . . . . . . . . . . . . . . . . . . . . . 894.3.1. Ranking . . . . . . . . . . . . . . . . . . . . . . . . . 904.3.2. Clasificación . . . . . . . . . . . . . . . . . . . . . . 914.3.3. Random Forest mediante H2O . . . . . . . . . . . . 92

4.4. Generación de clusters mediante SOM-Cluster Jerárquico . 954.4.1. Modelos auto-organizativas (SOM) . . . . . . . . . . 96

4.4.1.1. Proceso de entrenamiento (Training progress) 974.4.1.2. Mapa de calor (Heat map) . . . . . . . . . 98

4.4.2. Mapa de distancias . . . . . . . . . . . . . . . . . . . 98

4.4.2.1. SOM Clustering . . . . . . . . . . . . . . . 994.4.2.2. Clustering en base al mapeo de datos (co-

debook) . . . . . . . . . . . . . . . . . . . . 1014.5. Generación de clusters mediante Gases Neuronales Crecientes103

4.5.1. GNG Clustering . . . . . . . . . . . . . . . . . . . . 1054.5.1.1. Distribución en el cluster . . . . . . . . . . 105

4.5.2. Clustering en base a los nodos . . . . . . . . . . . . 1064.6. Caracterización de los clusters . . . . . . . . . . . . . . . . . 108

4.6.1. Tiene discapacidad permanente por más de un año . 1094.6.2. Cuál es el nivel de instrucción más alto al que asiste

o asistió . . . . . . . . . . . . . . . . . . . . . . . . . 1094.6.3. Cuál es el grado, curso o año más alto que aprobó . 1104.6.4. Cómo se identifica según su cultura y costumbres . . 1114.6.5. Discusión . . . . . . . . . . . . . . . . . . . . . . . . 111

4.7. Imputación por cada cluster . . . . . . . . . . . . . . . . . . 1124.7.1. Técnicas estadísticas . . . . . . . . . . . . . . . . . . 1124.7.2. Técnicas de aprendizaje automático . . . . . . . . . 114

4.8. Representación espacial . . . . . . . . . . . . . . . . . . . . 1164.8.1. Cálculo de Mortalidad Infantil . . . . . . . . . . . . 117

4.9. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . 120

5. Conclusiones 1215.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . 1215.2. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . 1235.3. Publicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 1245.4. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . 126

Anexos 129

A. Detalle clusters creados manualmente 131A.1. Cluster 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132A.2. Cluster 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133A.3. Cluster 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134A.4. Cluster 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135A.5. Cluster 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

A.6. Cluster 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

B. Detalle clusters SOM-Cluster Jerárquico 139B.1. Cluster 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139B.2. Cluster 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141B.3. Cluster 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142B.4. Cluster 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143B.5. Cluster 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144B.6. Cluster 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145B.7. Cluster 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Bibliografía 147

Lista de Acrónimos 163

Índice de figuras

1.1. Características de Grandes Volúmenes de Datos . . . . . . . 71.2. Clasificación de Grandes Volúmenes de Datos . . . . . . . . 81.3. Ejemplo K-medias . . . . . . . . . . . . . . . . . . . . . . . 111.4. Ejemplo K-Medoids . . . . . . . . . . . . . . . . . . . . . . 121.5. SVM, hiperplanos en R2 y en R3 . . . . . . . . . . . . . . . 131.6. Ejemplo KNN . . . . . . . . . . . . . . . . . . . . . . . . . . 161.7. Ejemplo EM . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.8. Ejemplo SOM . . . . . . . . . . . . . . . . . . . . . . . . . . 191.9. Ejemplo DBSCAN . . . . . . . . . . . . . . . . . . . . . . . 191.10. Ejemplo DT . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.1. Modelo básico para procesar información . . . . . . . . . . . 442.2. Resultado de Naïves Bayes con 10 variables (clasificación) . 482.3. Resultado de Naïves Bayes con 19 variables (clasificación) . 492.4. Modelo propuesto para procesar información demográfica . 51

3.1. Ejemplo de selección de variables con RF . . . . . . . . . . 623.2. Aplicación del método pairwise. . . . . . . . . . . . . . . . . 633.3. Aplicación del método listwise. . . . . . . . . . . . . . . . . 643.4. Modelo básico para procesar información . . . . . . . . . . . 683.5. Modelo básico para procesar información por clusters . . . . 703.6. Random Forest - Error vs. número de árboles . . . . . . . . 743.7. Random Forest - Error vs. número de árboles (variables re-

presentativas) . . . . . . . . . . . . . . . . . . . . . . . . . . 763.8. Detalle variable graesc . . . . . . . . . . . . . . . . . . . . . 77

4.1. Procesamiento de datos . . . . . . . . . . . . . . . . . . . . 854.2. Muestra del dataset original . . . . . . . . . . . . . . . . . . 904.3. Ranking de variables . . . . . . . . . . . . . . . . . . . . . . 914.4. Ranking de variables - clasificación . . . . . . . . . . . . . . 924.5. Historial de entrenamiento . . . . . . . . . . . . . . . . . . . 954.6. SOM - Distribución por celda . . . . . . . . . . . . . . . . . 974.7. SOM - Entrenamiento . . . . . . . . . . . . . . . . . . . . . 974.8. SOM - Mapa de conteo . . . . . . . . . . . . . . . . . . . . . 984.9. SOM - Mapa de distancias . . . . . . . . . . . . . . . . . . . 994.10. SOM - Mapa de conteo y distribución por cluster . . . . . . 1004.11. SOM - Mapa de calor variable URP . . . . . . . . . . . . . 1004.12. WCSS - Cluster Jerárquico . . . . . . . . . . . . . . . . . . 1024.13. Cluster Jerárquico - Distribución de los clusters . . . . . . . 1024.14. Distribución por cada cluster . . . . . . . . . . . . . . . . . 1034.15. GNG - Grafo de red con 5 y 50 nodos . . . . . . . . . . . . 1054.16. Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064.17. GNG - WCSS . . . . . . . . . . . . . . . . . . . . . . . . . . 1064.18. GNG - Distribución de los clusters . . . . . . . . . . . . . . 1074.19. Ranking de variables - cluster1 . . . . . . . . . . . . . . . . 1084.20. Tiene discapacidad permanente por más de un año . . . . . 1094.21. Cuál es el nivel de instrucción más alto al que asiste o asistió1104.22. Cuál es el grado, curso o año más alto que aprobó . . . . . 1104.23. Cómo se identifica según su cultura y costumbres . . . . . . 1114.24. Distribución clusters por cantón . . . . . . . . . . . . . . . . 1174.25. Mapa temático cluster 01 . . . . . . . . . . . . . . . . . . . 118

A.1. Cluster 1 - Detalle variable graesc . . . . . . . . . . . . . . 132A.2. Cluster 2 - Detalle variable graesc . . . . . . . . . . . . . . 133A.3. Cluster 3 - Detalle variable graesc . . . . . . . . . . . . . . 134A.4. Cluster 4 - Detalle variable graesc . . . . . . . . . . . . . . 135A.5. Cluster 5 - Detalle variable graesc . . . . . . . . . . . . . . 136A.6. Cluster 6 - Detalle variable graesc . . . . . . . . . . . . . . 137

B.1. SOM Cluster 1 - Detalle variable graesc . . . . . . . . . . . 140B.2. SOM Cluster 2 - Detalle variable graesc . . . . . . . . . . . 141

B.3. SOM Cluster 3 - Detalle variable graesc . . . . . . . . . . . 142B.4. SOM Cluster 4 - Detalle variable graesc . . . . . . . . . . . 143B.5. SOM Cluster 5 - Detalle variable graesc . . . . . . . . . . . 144B.6. SOM Cluster 6 - Detalle variable graesc . . . . . . . . . . . 145B.7. SOM Cluster 7 - Detalle variable graesc . . . . . . . . . . . 146

Índice de tablas

1.1. Características presentes en los conjuntos de datos . . . . . 81.2. Combinación de algoritmos . . . . . . . . . . . . . . . . . . 231.3. Técnicas y estrategias híbridas . . . . . . . . . . . . . . . . 24

2.1. Descripción Matriz de Confusión . . . . . . . . . . . . . . . 332.2. Descripción Censo Ecuador 2010 . . . . . . . . . . . . . . . 392.3. Dataset públicos . . . . . . . . . . . . . . . . . . . . . . . . 402.4. Algoritmos de clasificación aplicados a datasets públicos . . 402.5. Datasets de censos . . . . . . . . . . . . . . . . . . . . . . . 412.6. Algoritmos de clasificación aplicados a datasets provenientes

del censo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422.7. Resultados de clasificación para muestras de variable graEsc

recategorizada (a) . . . . . . . . . . . . . . . . . . . . . . . 432.8. Resultados de clasificación para muestras de variable graEsc

recategorizada (b) . . . . . . . . . . . . . . . . . . . . . . . 432.9. Reducción de dimensionalidad . . . . . . . . . . . . . . . . . 452.10. Variables predictoras . . . . . . . . . . . . . . . . . . . . . . 452.11. Precisión de los algoritmos . . . . . . . . . . . . . . . . . . . 462.12. Reducción de dimensionalidad de Estado Civil . . . . . . . 472.13. Variables predictoras de Estado Civil . . . . . . . . . . . . . 472.14. Precisión de los algoritmos . . . . . . . . . . . . . . . . . . . 482.15. Técnicas utilizadas para imputación de datos . . . . . . . . 53

3.1. Atributos con valores perdidos . . . . . . . . . . . . . . . . 713.2. Dataset de pruebas . . . . . . . . . . . . . . . . . . . . . . . 71

3.3. Porcentaje de valores perdidos por atributo . . . . . . . . . 723.4. Random Forest - Importancia relativa de variables (a) . . . 753.5. Random Forest - Importancia relativa de variables (b) . . . 753.6. Métodos estadísticos - Imputación dataset completo . . . . 773.7. Clusters generados manualmente . . . . . . . . . . . . . . . 783.8. Métodos estadísticos - Imputación por clusters . . . . . . . 793.9. Métodos ML - Imputación dataset completo . . . . . . . . . 803.10. Clusters generados manualmente . . . . . . . . . . . . . . . 813.11. knn–Imputación de cada cluster . . . . . . . . . . . . . . . . 813.12. Métodos ML - Imputación por clusters . . . . . . . . . . . . 82

4.1. Random Forest - Importancia relativa de variables (c) . . . 934.2. Variables a considerar . . . . . . . . . . . . . . . . . . . . . 944.3. SOM - Elementos por cluster . . . . . . . . . . . . . . . . . 964.4. GNG - Tiempo de ejecución para variaciones del número de

nodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044.5. GNG - Tiempo de ejecución para variaciones de max.edge.age1044.6. Elementos por cluster con GNG . . . . . . . . . . . . . . . 1074.7. Elementos por cluster (dataset original) . . . . . . . . . . . 1084.8. Imputación con Mediana . . . . . . . . . . . . . . . . . . . . 1124.9. Imputación con Moda . . . . . . . . . . . . . . . . . . . . . 1134.10. Imputación con hot–deck . . . . . . . . . . . . . . . . . . . 1134.11. Imputación por clusters manual vs clusters SOM-Jerárquico 1144.12. Imputación con KNN . . . . . . . . . . . . . . . . . . . . . . 1144.13. Imputación con DT . . . . . . . . . . . . . . . . . . . . . . . 1154.14. Imputación con Random Forest . . . . . . . . . . . . . . . . 1154.15. Resumen Imputación dataset completo . . . . . . . . . . . . 1164.16. División político administrativa por cantones . . . . . . . . 1164.17. Mortalidad Infantil por rango de edades . . . . . . . . . . . 1184.18. Datos según rango edad y nivel educación . . . . . . . . . . 119

A.1. Detalle clusters generados manualmente . . . . . . . . . . . 131A.2. Cluster 1 - Imputación . . . . . . . . . . . . . . . . . . . . . 132A.3. Cluster 2 - Imputación . . . . . . . . . . . . . . . . . . . . . 133A.4. Cluster 3 - Imputación . . . . . . . . . . . . . . . . . . . . . 134

A.5. Cluster 4 - Imputación . . . . . . . . . . . . . . . . . . . . . 135A.6. Cluster 5 - Imputación . . . . . . . . . . . . . . . . . . . . . 136A.7. Cluster 6 - Imputación . . . . . . . . . . . . . . . . . . . . . 137

B.1. SOM - Detalle distribución por cluster . . . . . . . . . . . . 139B.2. SOM Cluster 1 - Imputación . . . . . . . . . . . . . . . . . 140B.3. SOM Cluster 2 - Imputación . . . . . . . . . . . . . . . . . 141B.4. SOM Cluster 3 - Imputación . . . . . . . . . . . . . . . . . 142B.5. SOM Cluster 4 - Imputación . . . . . . . . . . . . . . . . . 143B.6. SOM Cluster 5 - Imputación . . . . . . . . . . . . . . . . . 144B.7. SOM Cluster 6 - Imputación . . . . . . . . . . . . . . . . . 145B.8. SOM Cluster 7 - Imputación . . . . . . . . . . . . . . . . . 146

Índice de algoritmos

1. Algoritmo k-Media . . . . . . . . . . . . . . . . . . . . . . . . 102. Algoritmo K-Medoids . . . . . . . . . . . . . . . . . . . . . . 123. Algoritmo kNN . . . . . . . . . . . . . . . . . . . . . . . . . 154. Algoritmo Esperanza-Maximización . . . . . . . . . . . . . . 175. Algoritmo SOM . . . . . . . . . . . . . . . . . . . . . . . . . 186. Algoritmo DBSCAN . . . . . . . . . . . . . . . . . . . . . . . 207. Algoritmo DT . . . . . . . . . . . . . . . . . . . . . . . . . . 21

8. Algoritmo propuesto para procesar información demográfica 50

Capítulo 1

Introducción

Este capítulo introductorio realiza un recorrido que sumariza eltrabajo doctoral realizado. El capítulo está organizado en las si-guientes secciones: la sección 1.1 presenta una breve introducciónde la propuesta realizada en este trabajo, la sección 1.2 presenta lamotivación que llevó a la realización de este trabajo, la sección 1.3revisa el estado del arte en temas relacionados con los objetivos deeste trabajo, la sección 1.4 define el principal problema encontradoen el procesamiento de grandes volúmenes de datos, la sección 1.5describe la propuesta para el procesamiento de datos provenientesde censos o encuestas, la sección 1.6 resume los principales objetivosde este trabajo y, finalmente, la sección 1.7 describe la estructurade este documento.

1.1. Introducción

La información es actualmente uno de los recursos más valiosos dentrode cualquier campo. La generación de datos y por tanto de información va-liosa ha crecido de forma exponencial en los últimos años. Este crecimientose debe en gran medida a la democratización en el acceso a Internet y laaparición de redes sociales, estos datos e información son complejos y re-quieren de grandes recursos tecnológicos para ser analizados con el fin deextraer información relevante que responda a determinados problemas.

Los datos, la información y el conocimiento forman parte importanteen el desarrollo de las sociedades, a medida que la tecnología avanza, tam-

1.1. Introducción

bién lo hace la complejidad de la información a ser analizada, es así queactualmente los datos han pasado de representarse de una forma simplecomo números y cadenas de texto, a formas complejas como por ejemplo:imágenes, vídeos o en el campo médico cadenas de ADN.

En la actualidad existen estudios en diferentes campos orientados aextraer información relevante sobre tendencias, desafíos y oportunidadesa partir de los datos, todos estos estudios tienen algo en común, trabajancon grandes volúmenes de datos o Big Data. El uso de grandes volúmenesde datos es cada vez más evidente, pero estos conjuntos de datos, en sumayoría, son complejos y provienen de diversas fuentes siendo estos estruc-turados o no estructurados, algunos autores mencionan la combinación decaracterísticas de estos dos tipos como datos semi-estructurados. Por ello,es necesario buscar mecanismos que permitan clasificarlos y, de cierta ma-nera, organizarlos para facilitar a los usuarios la extracción de informaciónrelevante.

Existen diferentes mecanismos para el procesamiento y análisis de da-tos, entre ellas podemos mencionar las técnicas estadísticas, estocásticasy las basadas en Aprendizaje Automático o Machine Learning (ML porsus siglas en inglés). Estas últimas pertenecen a una rama de la Inteli-gencia Artificial que se basa en técnicas que permiten a las computadorasaprender y modificar su comportamiento en función de su experiencia oconocimiento adquirido de manera autónoma [81].

El Aprendizaje Automático agrupa una amplia gama de técnicas enfo-cadas a resolver diversos problemas, como son: selección de características,clasificación, agrupación o imputación de datos entre otras.

El principal problema encontrado en los diferentes estudios orientadosal procesamiento de los grandes volúmenes de datos reside en la selección detécnicas adecuadas para la selección y clasificación de variables. La técnicaescogida depende del tipo de información analizada, esto permite obtenerinformación de mayor calidad, reducir el coste computacional y mejorartiempos de proceso.

Entre los criterios más empleados se encuentran: la dimensionalidad delos datos, las características relevantes [33] y la veracidad de la informa-ción obtenida. Con estas consideraciones podemos seleccionar las técnicas

2

Capítulo 1. Introducción

más adecuadas de Aprendizaje Automático que nos permitan optimizar losresultados obtenidos.

1.2. Motivación

La principal motivación para la realización de este proyecto aparecepor la inquietud en encontrar nuevas relaciones entre datos provenientes decensos o encuestas y la manera de analizarlos para ayudar en la resolucióny toma de decisiones relativas a diversos problemas sociales y de saludpública.

Como parte del programa de DOCTORADO en Informática que hecursado gracias al convenio que existe entre la Universidad Central delEcuador y la Universidad de Alicante, fue posible realizar la investigaciónen este tema y producto de la misma se obtiene el siguiente documento.

La Universidad Central del Ecuador, mediante el convenio firmado conla Universidad de Alicante, apoya el desarrollo de programas de Doctoradoy las investigaciones que se desarrollan en proyectos en las áreas científica ytecnológica, orientados a crear conocimiento o profundizar el ya existente.

En el Ecuador, dentro de la constitución 1 se establecen una serie depropuestas, requerimientos y lineas de actuación, para el fortalecimiento dela investigación en campos que son prioridad para el estado. El Art. 80 ga-rantiza la investigación científica y tecnológica en Universidades, EscuelasPolitécnicas y centros de investigación científica. A través de los diferentesobjetivos establecidos en el Plan del Buen Vivir (actualmente Toda unaVida) 2, se establecen dichos campos de investigación, que permiten encon-trar financiamiento para realizar diferentes proyectos de investigación quecontribuyan al cumplimiento de cada objetivo o bien aporten informaciónque permita formular políticas públicas. Dentro de los objetivos se planteala financiación de las propuestas de Investigación, Desarrollo e Innovación,I+D+i, que es el marco en que se desarrolla este proyecto.

Por otro lado, consideremos que en los países se realizan periódica-mente los censos de población y vivienda, para poder generar políticas en

1http://pdba.georgetown.edu/Parties/Ecuador/Leyes/constitucion.pdf2http://www.planificacion.gob.ec/

3

1.3. Revisión del Estado del Arte

base a los indicadores que se obtienen y calcular proyecciones que se vanajustando en el tiempo gracias a las encuestas que se realizan en períodosde tiempo más cortos. Estas proyecciones permiten a los Gobiernos localesy nacionales conocer de forma anticipada las necesidades sociales básicasrelativas a la educación, salud, vivienda, empleo, movilidad y seguridad,permitiendo así encaminar sus decisiones de asignación de recursos e im-plementar políticas para mejorar la calidad de vida de toda una sociedad.

En cada país, existen instituciones encargadas de generar informes quecontiene estimaciones, proyecciones e indicadores derivados de fuentes deinformación como son, los censos y encuestas que se realizan en períodosde tiempo establecidos. Se realiza el cálculo de proyecciones de poblaciónbajo el método de componentes principales [12][67] y la mayoría de losindicadores resultantes se los puede contrastar con información de estadís-ticas vitales. Siendo los recursos técnicos más empleados, aquellos que sebasan en estimaciones estadísticas.

Actualmente se está apostando por nuevas metodologías para el análisisde este tipo de datos, de manera que la obtención de patrones que descri-ban subconjuntos representativos de los datos recopilados se convierte enel principal objetivo y enfoque de nuestro trabajo. De esta manera, obte-ner estas agrupaciones relevantes en base a la información proveniente decensos o encuestas, permite de cierta manera dar un significado al compor-tamiento de cada grupo obtenido y poder extraer información no trivial yconvertirla en información potencialmente útil para describir algún fenó-meno.

1.3. Revisión del Estado del Arte

En los últimos años se ha observado un acelerado crecimiento en elvolumen de información disponible en la red. Así mismo, han aparecidodiversas alternativas para el procesamiento de estos grandes volúmenes dedatos (Big Data) y su almacenamiento [54]. Debido a esto, se han generadomuchos estudios que se orientan al procesamiento de grandes volúmenesde datos y extracción de información relevante que permita generar cono-cimiento [53].

4

Capítulo 1. Introducción

Las diferentes técnicas de Aprendizaje Automático permiten conseguireste propósito, por ello, varios estudios se han inclinado por reemplazarel análisis estadístico por el uso de estas técnicas de ML. Para esto esnecesario conocer las características principales de los datos, como son:heterogeneidad, autonomía, complejidad y evolución [119].

Presentar alternativas en el procesamiento de grandes volúmenes dedatos, es sin duda alguna el objetivo principal de muchos trabajos o pro-yectos en la actualidad [97]. La capacidad de procesar información conahorro en costos computacionales maximizando la relevancia y fiabilidadde la información obtenida es un verdadero reto [3]. Por las razones ex-puestas, las técnicas de Aprendizaje Automático son una buena alternativapara resolver problemas relacionados con grandes volúmenes de datos.

A continuación revisamos algunos algoritmos, combinación de técnicaso propuestas de técnicas híbridas empleadas con éxito en el procesamientode datos provenientes de diferentes fuentes.

1.3.1. Grandes volúmenes de datos

Grandes volúmenes de datos, o su término en inglés Big Data, hace refe-rencia a enormes conjuntos de datos que provienen de diversas fuentes, condiferentes formatos y que poseen características especiales. Su naturalezaes compleja, esto hace que su procesamiento también lo sea [88].

Big Data, como se lo conoce más comúnmente, está presente en to-dos las áreas y sectores a nivel mundial, siendo tal su impacto social yeconómico que se considera una área de investigación [124]. Sin embargo,su complejidad supera la capacidad de procesamiento de las herramientastradicionales. Debido a esto, se requiere de plataformas de computaciónde alto rendimiento que permitan explotar toda su potencialidad [106].Estos requerimientos se han convertido sin duda en un verdadero desafío.Muchos estudios se centran en la búsqueda de metodologías que permi-tan bajar costos computacionales con incremento en la relevancia de lainformación extraída.

La necesidad de extraer conocimiento útil ha exigido a los investiga-dores aplicar diferentes técnicas de Aprendizaje Automático, comparar losresultados obtenidos y analizarlos de acuerdo a las características propias

5

1.3. Revisión del Estado del Arte

de los grandes volúmenes de datos (volumen, velocidad, veracidad y varia-bilidad, conocidas como las 4V’s) [82]. Estas características varían, unosautores añaden más V’s [41], como Visión, Valor, Verificación, entre otras,incluso le añaden la Complejidad e Inmutabilidad [32].

Volumen: Se refiere a grandes colecciones de datos de diversas fuentes,diferentes usos y propósitos.

Velocidad: Se refiere a la velocidad con la que aparecen nuevos datos.

Variedad: Complejidad de múltiples fuentes y formatos de datos.

Veracidad: Analizar los datos y determinar su fiabilidad.

Las empresas actualmente tienen que lidiar con el problema del pro-cesamiento de grandes volúmenes de datos, considerando la diversidad yheterogeneidad de los datos. Se han modificado tanto el almacenamientotradicional como la visualización de los resultados, mediante la utilizacióndel almacenamiento en la nube, mejorando el poder de computación y vi-sualización con indexación eficiente [117]. Para conseguir este propósito, sehan mejorado los métodos orientándolos a trabajar con un Volumen inmen-so de datos, combinando diversas fuentes de datos (Variedad), modificandola forma tradicional de procesar los datos, que permita un procesamientoeficiente en tiempo real (Velocidad), todo enfocado a obtener informacióncon Valor yVeracidad.

En la mayoría de los estudios analizados se pudo notar que los re-sultados obtenidos depende en gran parte de los datos que se utilicen,dependiendo de sus características se debe escoger las técnicas a utilizar.Pese a que existen diversas técnicas que permiten optimizar los algoritmosutilizados, en su mayoría depende más de cómo se han tratado los datosen la etapa de pre-procesamiento.

Actualmente existen millones de datos disponibles en la nube, estamosviviendo la era del Big Data, los datos se generan, recopilan y analizan avelocidades sin precedentes [31]. Las grandes empresas almacenan grandesvolúmenes de datos, que posteriormente son analizados para la toma dedecisiones, más aún si los datos provenientes de diversas fuentes pueden

6

Capítulo 1. Introducción

Figura 1.1: Características de Grandes Volúmenes de Datos

ser fusionados para potenciar el valor de los resultados obtenidos graciasa su procesamiento y análisis.

Estos datos se pueden clasificar en datos estructurados y no estructu-rados. En ambos casos, su complejidad supera la capacidad de procesa-miento de las herramientas tradicionales. Existen técnicas que permitenun rápido acceso a datos, sean estructurados, semi–estructurados o no es-tructurados [14], así como plataformas [25] orientadas a procesar, analizary visualizar estos datos.

Datos estructurados: son datos que tienen bien definido su longitudy formato.

Datos no estructurados: carecen de un formato específico.

1.3.1.1. Conjunto de datos (datasets)

Con el crecimiento del tamaño de los datos, es esencial considerar técni-cas que permitan encontrar relaciones complejas entre muestras y modelosconsiderando siempre la evolución de los datos en el tiempo [116]. De estaforma, podemos construir sistemas cuyo diseño permita que los datos noestructurados puedan ser vinculados a través de relaciones. Esto permitiráobtener patrones válidos mediante los cuales se puedan predecir tendenciaso comprender de mejor manera un fenómeno.

7

1.3. Revisión del Estado del Arte

Figura 1.2: Clasificación de Grandes Volúmenes de Datos

La Tabla 1.1 propone un clasificación con criterios de velocidad, volu-men y variabilidad de algunos tipos de conjuntos de datos populares paravalidar diferentes métodos que suelen utilizarse en el procesamiento congrandes volúmenes de datos.

Tabla 1.1: Características presentes en los conjuntos de datos

CaracterísticasConjunto de datos Velocidad Volumen Variabilidad

Repositorio de base de datos de ML [50] X XInformática social [82] X X X

Conjunto de datos sintéticos [20] X XDatos socio-demográficos [75] X X

Datos reales [28] X X X

Como vemos en la tabla anterior, existen conjuntos de datos que sepueden utilizar para la comprobación, validación, comparación y entrena-miento previo de los algoritmos para procesar los datos. Muchos de estosalgoritmos requieren de entrenamiento para procesar de forma adecuadalos datos. Cada conjunto de datos tiene características [92] que permitenescoger los que se ajusten mejor a los datos reales.

8

Capítulo 1. Introducción

1.3.2. Técnicas de Clasificación

En esta sección introducimos los algoritmos más relevantes para clasifi-cación y su relación con plataformas para grandes volúmenes de datos. Enprimer lugar, se presenta una clasificación de las técnicas de aprendizajeautomático en base al tipo de aprendizaje, para posteriormente describiralgunos algoritmos relevantes de clasificación.

Los algoritmos de clasificación se dividen según el tipo de aprendizajeen:

Supervisados. La principal tarea es determinar a qué clase pertenececada nuevo dato. Esto se consigue en base al entrenamiento al quese somete al sistema con la ayuda de conjuntos de muestra. Estastécnicas solo se pueden utilizar si se conoce a priori el número declases. Ejemplos de estos algoritmos son los Basados en Vecindad,Árboles de Decisión (DT) y Máquinas de Soporte Vectorial (SVM).

No supervisados. Se utilizan cuando no se dispone de conjuntos deentrenamiento. Por lo tanto, utilizan algoritmos de agrupamiento pa-ra poder construir grupos, de manera que los datos pertenecientes algrupo tengan un alto nivel de semejanza entre sí, estas semejanzas nosuelen ser perceptibles a simple vista. Entre los algoritmos más utili-zados podemos encontrar K-Media, SOM, Agrupamiento Secuencial,ISODATA o Método adaptativo.

El principal problema encontrado en los diferentes estudios orientadosal procesamiento de grandes volúmenes de datos, reside en la selección detécnicas adecuadas para la selección y clasificación de variables. La técnicaescogida depende del tipo de información analizada, esto permite obtenerinformación de mayor calidad, reducir el coste computacional y mejorartiempos de proceso. Entre los criterios más empleados se encuentran: ladimensionalidad de los datos, las características relevantes [33] y la ve-racidad de la información obtenida. Con estas consideraciones podemosseleccionar las técnicas más adecuadas de Aprendizaje Automático quenos permitan optimizar los resultados obtenidos.

9

1.3. Revisión del Estado del Arte

1.3.3. Algoritmos de Aprendizaje Automático

A continuación se presentan algunos de los algoritmos de aprendizajeautomático más relevantes:

1.3.3.1. K-Media (K-Means)

Es un método sencillo y eficiente, necesita un solo parámetro inicial (k)y sus resultados dependerán de la selección inicial de los centroides de losclusters [1].

Este algoritmo, propuesto por MacQueen en 1968, se basa en la opti-mización del error cuadrático total, divide un conjunto de datos dado enk-grupos fijados a priori, de tal forma que la similitud intra-cluster es altaen contraposición de la inter-cluster que debe ser baja. Dicha similitud sebasa en la distancia Euclidiana [127].

El algoritmo 1 3 muestra el detalle del método descrito anteriormente.

Datos: datasetResultado: datos clasificados

1 seleccionar k centros aleatorios2 mientras se pueda reasignar centros hacer3 asignar datos al ki más cercano; calcular el centroide de los datos

para cada grupo;4 fin

Algoritmo 1: Algoritmo k-Media

La Figura 1.3 4 muestra un ejemplo de agrupación de documentos detexto utilizando k-means. En esta imagen podemos distinguir claramentelos centroides y cómo se han asignado los puntos a cada grupo.

3https://www.unioviedo.es/compnum/laboratorios_py/kmeans/kmeans.html4https://scikit-learn.org/stable

10

Capítulo 1. Introducción

Figura 1.3: Ejemplo K-medias

1.3.3.2. K-Medoides

Se considera una variación de k-means. Su objetivo es determinar elmejor representante del centro de cada cluster (medoide) [91]. Trabaja conuna métrica arbitraria de distancias entre puntos (observaciones), minimizala suma de diferencias entre los puntos etiquetados para estar en un grupoy el punto designado como el centro.

Es más robusto ante la presencia de ruido que k-means, por la mi-nimización de suma de disimilaridades en lugar de la suma de distanciasEuclidianas cuadradas [125]. El algoritmo 2 5 muestra el detalle del métododescrito anteriormente.

La Figura 1.4 6 muestra un ejemplo de aplicar el algoritmo K-medoidsy los grupos obtenidos al aplicar este método.

5http://bibdigital.epn.edu.ec/bitstream/15000/19398/1/CD-8788.pdf6https://stats.stackexchange.com/questions/156210

11

1.3. Revisión del Estado del Arte

Datos: datasetResultado: datos clasificados

1 Seleccionar k objetos aleatoriamente2 Calcular Cij : coste Oi, Kh

3 Se asocia cada Oi al Kh medoide más cercano4 Se determina coste total (CT): suma de la distancia de los puntos a sus

medoides5 mientras Coste configuración disminuye hacer6 Para cada Kh, para cada Oi:7 Intercambiar Kh y Oi, recalcular costo8 Si costo aumento, deshacer intercambio9 fin

Algoritmo 2: Algoritmo K-Medoids

Figura 1.4: Ejemplo K-Medoids

1.3.3.3. Máquinas de Soporte Vectorial (SVM)

Sus siglas provienen del inglés (Support Vector Machine), es un al-goritmo que dado un conjunto de entrenamiento con etiquetas de clase

12

Capítulo 1. Introducción

(mediante entrenamiento), puede construir un modelo que prediga la clasede una nueva muestra [29].

Es una técnica orientada a resolver problemas de clasificación de gran-des volúmenes de datos, en la que se construye un hiperplano o conjuntosde hiperplanos en un espacio bidimencional muy alto, busca el hiperplanoque tenga la máxima distancia (margen) con los puntos que estén máscerca de él mismo, de tal forma que los puntos etiquetados con una cate-goría estén a un lado del hiperplano y los de otra categoría al otro lado delhiperplano [94].

La Figura 1.5 7 muestra cómo es un hiperplano en conjuntos de dimen-sión 2 y 3.

Figura 1.5: SVM, hiperplanos en R2 y en R3

Aquí podemos encontrar que los datos suelen ser de dos tipos, se sueledecir linealmente separables y los no linealmente separables [40].

En los datos linealmente separables se utiliza el margen (γ) como elhiperplano para separar las clases, y lo definimos a partir del supuestoque para el conjunto de entrenamiento (xi, yi), i = 1, ...,m, con xi ∈ R eyi ∈ {−1, 1}, existe un hiperplano que separa los datos, de la forma:

f(x) = x · w + b (1.1)

El margen sería entonces, las distancias de los puntos más cercanos alhiperplano y el principal objetivo a conseguir es maximizar el margen que

7https://stats.stackexchange.com/questions/378672/image-classification-and-machine-learning-not-deep-learning-algorithms?rq=1

13

1.3. Revisión del Estado del Arte

se define de la siguiente manera:

γ = 12( w

‖w‖2· x+ − w

‖w‖2· x−) (1.2)

Para los datos no linealmente separables , que son la mayoría de los ca-sos en los que trabajamos con datos reales, encontrar un hiperplano óptimoque separa de forma adecuada los datos no es tarea fácil. En este problemase introduce un condicionante que permite tener un modelo menos rígi-do, permitiendo que exista un error aceptable al momento de clasificar losdatos. Este error lo denotamos con ε ≥ 0, siendo ahora el supuesto de laforma:

yi(w · xi + b)− 1 + εi ≥ 0, ∀i (1.3)

Y el problema de optimización de la forma:

mínw,b12‖w‖

2 + Cl∑

i=1εi (1.4)

En espacios de datos no linealmente separables , podemos necesitar hi-perplanos de mayor dimensión que permitan convertir al problema de datosno separables mediante una proyección a datos linealmente separables. Es-to es posible utilizando las funciones de kernel, que permiten proyectar lainformación a un espacio de características de mayor dimensión, podemosmencionar algunas funciones de Kernel ampliamente utilizadas :

Polinomial-homogénea:

K(Xi, Xj) = (Xi ·Xj)n

Perceptron:K(Xi, Xj) = ||Xi −Xj ||

Función de base radial Gaussiana:

K(Xi, Xj) = exp(−(Xi −Xj)2

2 ∗ sigma2

)14

Capítulo 1. Introducción

Sigmoid:K(Xi, Xj) = tanh(Xi ·Xj − θ)

1.3.3.4. k-Vecinos más cercanos (KNN)

El algoritmo KNN por sus siglas en inglés (k-Nearest Neighbour), essencillo y local. Se necesita especificar una métrica adecuada para medirla proximidad. Es sensible al ruido y a la dimensionalidad. Se basa en unentrenamiento mediante ejemplos cercanos al espacio de los elementos, esun tipo de algoritmo Lazy Learning [13], donde la función se aproximasolo localmente y todo el cómputo es diferido a la clasificación, es decir unnuevo caso se va a clasificar en la clase más frecuente a la que pertenecensus vecinos más cercanos.

El algoritmo 3 8 muestra el detalle del método descrito anteriormente.

Datos: dataset test T, dataset DResultado: datos clasificados

1 para todo objeto xi ∈ T hacer2 Calcular di = d(xi, x)3 fin4 Ordenar ascendente di(i = 1, ..., N)

5 Escoger los K casos Dkx ya clasificados más cercanos a x

6 Asignamos x a la clase más frecuente en Dkx

Algoritmo 3: Algoritmo kNN

La Figura 1.6 9 muestra un ejemplo de clasificación utilizando KNN.Esta imagen es el resultado de aplicar el algoritmo con valor del parámetroK = 7, y utiliza el valor del parámetro weights = uniform que significa,que el algoritmo asigna pesos uniformes a cada vecino.

8http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t9knn.pdf9https://scikit-learn.org/stable/modules/neighbors.html

15

1.3. Revisión del Estado del Arte

Figura 1.6: Ejemplo KNN

1.3.3.5. Esperanza–Maximización(EM)

El algoritmo EM por sus siglas en inglés (Expectation-Maximization) [59],proporciona una solución iterativa de máxima verosimilitud. Converge aun máximo local y es sensible a la elección de los valores iniciales.

El algoritmo 4 10 muestra el detalle del método descrito anteriormente,donde:

π es la probabilidad de pertenecer a un cluster.

C cluster.

X puntos del dataset.

µ media de los puntos del cluster.

σ desviación típica de los puntos del cluster.

10https://jarroba.com/expectation-maximization-python-scikit-learn-ejemplos/

16

Capítulo 1. Introducción

Figura 1.7: Ejemplo EM

Datos: datasetResultado: datos clasificados

1 Inicializamos parámetros:

2 π = [ 1k ,∀i ∈ [1, k]]; caso contrario π = 0

3 µ = [random(object),∀i ∈ [1, k]]; caso contrario µ = 0

4 σ = [1,∀i ∈ [1, k]]; caso contrario σ = 0

5 mientras no converja hacer6 para i en el rango(dataset) hacer

7 Ck := argmax πke−1

2 ( x−µkσk

)2

σk

8 fin9 para j en el rango(k) hacer

10 πj := objetosenelclusterTotalobjetos

11 µj := 1N

∑Ni=1 Xi

12 σj :=√

1n−1 ·

∑nn=1(Xi − µj)2

13 fin14 fin

Algoritmo 4: Algoritmo Esperanza-Maximización

La Figura 1.7 11 muestra un ejemplo de los resultados obtenidos al11https://jarroba.com/expectation-maximization-python-scikit-learn-ejemplos/

17

1.3. Revisión del Estado del Arte

aplicar el algoritmo EM a un archivo de datos tipo texto con 999 puntos,el algoritmo devuelve 3 grupos como se muestra en la imagen. Con valoresiniciales: σ = 1, π = 1

3 y escogemos 3 puntos al lazar para µ.

1.3.3.6. Mapas Auto Organizados (SOM)

Este algoritmo neuronal, en inglés Self–Organizing Map (SOM) [66],agrupa datos del conjunto de entrada atendiendo a diferentes criterios apartir de un proceso de entrenamiento. Se puede observar una descripciónintuitiva de la similitud entre los datos a través de un mapa. Usan unafunción de vecindad para preservar las propiedades topológicas del espaciode entrada, mediante aprendizaje competitivo en el que se define una ve-cindad espacial para cada unidad de salida, SOM construye modelos de talforma que mientras más similares sean las unidades o neuronas, se ubicanmás cerca y mientras menos similares sean se ubicarán gradualmente máslejos en el espacio bi-dimensional.

El algoritmo 5 muestra el detalle del método descrito anteriormente.Datos: datasetResultado: datos agrupados

1 Inicializamos los pesos: wij

2 Introducir: Ek = (e1, ....., eN ), ei valores continuos.

3 mientras t ≤ 500 hacer4 para todo objeto ei ∈ Ek hacer5 para j ∈ [1,M ] hacer6 Calcular dj =

∑Ni=1(ei − wji)

7 fin8 Encontramos neurona vencedora j∗

9 Actualizamos pesos de zonaj

10 Calculamos β(t) = 1t

11 Calculamos: wji(t+ 1) = wji(t) + β(t)[e(k)i − wj∗i(t)]

12 fin13 Incrementar t14 fin

Algoritmo 5: Algoritmo SOM

18

Capítulo 1. Introducción

La Figura 1.8 12 muestra un ejemplo de aplicar el algoritmos SOM,y muestra cómo de un espacio multidimensional de entrada se genera unespacio de salida de menor dimensión, las conexiones muestran los pesos,y se conserva la topología, es decir los objetos cercanos en el espacio deentrada se encontrarán cerca en el espacio de salida.

Figura 1.8: Ejemplo SOM

1.3.3.7. DBSCAN

Este algoritmo determina de manera automática el número ideal declusters o agrupaciones en los que se organizan los datos de entrada. Sinembargo, zonas del espacio de entrada con baja densidad se clasifican comoruido y son omitidos, por ello no se produce un clustering completo.

Figura 1.9: Ejemplo DBSCAN

12https://ciberconta.unizar.es/leccion/visual/620.HTM

19

1.3. Revisión del Estado del Arte

El algoritmo DBSCAN (Density Based Spatial Clustering of Aplica-tions with Noise) puede identificar clusters en grandes conjuntos de datosespaciales observando la densidad local de elementos base y utilizando sóloun parámetro de entrada [10].

La Figura 1.9 13 muestra los grupos formados por el algoritmo DBS-CAN, cada grupo está representado con un color y los puntos con pocodensidad que son considerados ruidos los representan de color negro. Tam-bién se puede diferenciar que los puntos centrales son más grandes quelos puntos frontera. El algoritmo 6 muestra el detalle del método descritoanteriormente.

Datos: dataset DResultado: datos agrupados

1 Definimos minPoits, epsilon, C = 0

2 Etiquetamos los puntos como Central, frontera o ruido

3 para cada punto pi ∈ D hacer4 Etiquetamos a pi como visitado

5 Verificamos sí:

6 pi es punto central: ∃minPoints en un radio ≤ epsilon

7 pi es punto frontera: sí la d(pcentral, pi) = epsilon

8 pi es punto ruido: d(pcentral, pi) > epsilon

9 fin

10 para cada punto central pi ∈ D hacer11 para puntos pj ∈ D hacer12 Sí di(pj − pi ≤ epsilon) entonces

13 pj pertenece al clusteri

14 Sino

15 C = nextcluster

16 fin17 fin

Algoritmo 6: Algoritmo DBSCAN

13https://scikit-learn.org/stable/modules/clustering.html

20

Capítulo 1. Introducción

1.3.3.8. Árboles de Decisión (DT)

El algoritmo DT por sus siglas en ingles (Decision Tree), se construyerecursivamente siguiendo una estrategia descendente. Un árbol de decisiónes un clasificador que conduce a la partición recursiva sobre el espacio dela instancia, está compuesto por nodos internos, bordes y nodos hoja queson los nodos terminales del árbol que contiene la etiqueta de la clase [27].

El algoritmo 7 14 muestra el detalle del método descrito anteriormente.

Datos: D conjunto de N patrones etiquetados, X1,..N variablespredictoras, C variable de clase

Resultado: Dataset clasificado en el árbol

1 si todos los patrones D pertenecen a la misma clase c entonces2 nodo hoja etiquetado como c3 fin4 en otro caso5 Seleccionar variable más informativa Xr con valores x1

r, ..., xnrr

6 Particionar D de acorde con los nr valores de Xr en D1, ..., Dnr

7 Construir nr subárboles T1, ..., Tnr con los valores x1r, ..., x

nrr

8 fin

9 Escoger los K casos Dkx ya clasificados más cercanos a x

10 Asignamos x a la clase más frecuente en Dkx

Algoritmo 7: Algoritmo DT

La Figura 1.10 15 muestra el árbol de entrenamiento del algoritmo conel dataset iris. Muestra el nombre de la variable y la clase.

14http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t10arboles.pdf15https://scikit-learn.org/stable/modules/tree.html

21

1.3. Revisión del Estado del Arte

Figura 1.10: Ejemplo DT

1.3.4. Revisión de estrategias híbridas de procesamiento dedatos

Aunque los algoritmos revisados anteriormente han sido ampliamenteusados, tienen ciertas limitaciones en su aplicación práctica por diferentesmotivos. Es por ello, que plantean variaciones y mejoras sobre estos algo-ritmos originales para tratar de paliar las mencionadas limitaciones. Estasvariaciones permiten, de cierta manera, eliminar o minimizar las limitacio-nes presentes en cada uno de ellos. En ocasiones dependen directamentedel conjunto de datos utilizado en la etapa de experimentación o de los pa-rámetros de inicialización propios de cada algoritmo, entre otros. En otroscasos se opta por la opción de proponer una técnica [121] o estrategiahíbrida para el procesamiento de grandes volúmenes de datos.

22

Capítulo 1. Introducción

Tabla 1.2: Combinación de algoritmos

Algoritmos EM Fuzzy PSO1 Bisección GA2 KNNK-Media [26] [118][17] [15] X X X X X XK-Medoides [105] [78] [129] X X X X

SVM [128] [69] [113] X X X X X XKNN [30] [77] [68] X X X XSOM [61] [22][122] X X X X X

DBSCAN [35] [108] [104] X X X XDT [112] [126][19] X X X X X

1 Optimización del enjambre de partículas (Particle Swarm Optimization )2 Algoritmos Genéticos (Genetic Algorithm)

En la Tabla 1.2 se resumen las diferentes combinaciones que se hanencontrado en distintos estudios que proponen la combinación de algorit-mos, métricas o pre-procesamiento de los datos mediante otro algoritmo.Esto contribuye en la mejora del procesamiento de la información (minimi-zando costos computacionales y maximizando la relevancia de informaciónextraída). Se hace referencia de algunos ejemplos de estas propuestas, co-mo el algoritmo K-media en Cai X el al. de 2013 que combina K-mediacon Fuzzy para clasificación de imágenes de alta resolución o en el estudiode Cui X. and Potok T. en 2008 que utiliza k-media con PSO para generargrupos de un conjunto de datos de documentos de texto. Es decir, se ha-ce referencia a distintas combinaciones presentes en estudios orientados alprocesamiento de información y se lee de la siguiente manera: K-medias hasido combinado con EM, K-meadia & EM, con Fuzzy K-media & Fuzzy,K-media & PSO, entre otras combinaciones encontradas en la bibliografíarevisada.

Por otro lado, algunos investigadores optan también por generar nuevosalgoritmos realizando modificaciones internas al algoritmo o a estrategiasde combinación. En la Tabla 1.3 se presentan algunas técnicas o estrategiashíbridas, que utilizan métodos diferentes a los habituales para el cálculode similaridad o similitud entre patrones o combinan diferentes técnicasde Aprendizaje con algún nivel de modificación para crear métodos declasificación más eficientes.

23

1.3. Revisión del Estado del Arte

Tabla 1.3: Técnicas y estrategias híbridas

Técnicas Técnicas Híbridas Estrategias HíbridasBisección Híbrida K-Media [83] X X

HOPACH1 XDHG2 X X

K-Media y KHM3 XK-Media - GA [4] X

HcGA4 X XHFS5 X

MAM - SOM XK-ICA[86] X

GKA6 XNKMC7 XHSRS8 X

HC-HOSVD9 X1 Particionado ordenado jerárquicamente y colapsado híbrido [114]2 Gaussiano jerárquico basado en la densidad [28]3 K-Media armónica [56]4 Algoritmo Genético celular híbrido [9]5 Esquema de selección de características híbridas [123]6 Algoritmo Genético K-Media [98]7 Naïve multi-visión K-media [16]8 Búsquedas Híbridas ordenadas secuencialmente [103]9 Clusterización Híbrida a través de la descomposición de valores singularesde orden superior [73]

En los trabajos revisados se observaron dos grupos de alternativas paraimplementar técnicas o estrategias híbridas. El primer enfoque se basa enintroducir en el propio algoritmo alguna técnica diferente a la utilizadahabitualmente para el cálculo interno de algún parámetro. En el segundoenfoque, se fortalece determinada limitación de una técnica en la etapade pre–procesamiento. Por ejemplo, en el caso de no ser adecuado paraprocesar grandes volúmenes de datos, primero se particiona los datos con

24

Capítulo 1. Introducción

una técnica apropiada y luego a cada partición resultantes se le aplica latécnica seleccionada.

Entre los estudios más destacados podemos mencionar el de Mishray Raghavan[80], comparación de algoritmos de optimización, Al-Sultan yKhan [5], sobre los algoritmos K-Media, SA16, TS17 y GA, Xiaowei y Ester[120], entre otros.

De dichos trabajos se pueden extraer tres conclusiones principales:

Ningún método supera en un margen significativo en el rendimientoal resto.

Soluciones encontradas por TS, GA y SA superan a las de K-Media,pero este es mucho más rápido. GA es el más rápido en encontrar lamejor solución, mientras SA es el más rápido en converger.

El problema con estos algoritmos es que no funcionan adecuadamentepara grandes volúmenes de datos, sólo K-Media y Mapas de Kohonen(SOM) han sido aplicados exitosamente para grandes conjuntos dedatos.

1.3.5. Consideraciones en la elección de algoritmos de Apren-dizaje Automático

En esta sección se analizan los criterios habituales tomados en cuentaen la selección un algoritmo de Aprendizaje Automático para procesar lainformación de manera eficiente. Esto permite maximizar la relevancia delos datos extraídos.

El establecimiento de mejoras y combinaciones en los métodos de clasi-ficación permite abrir nuevas líneas de investigación. Considerar métricasdiferentes para establecer similaridad entre grupos o combinar técnicas pa-ra el ajuste de parámetros, permiten mejorar los resultados obtenidos alaplicar directamente una técnica. Las consideraciones a precisar antes deseleccionar una técnica de clasificación concreta son:

Tipo de Datos a ser procesados.16Simulated Annealing17Tabu search

25

1.3. Revisión del Estado del Arte

Limitaciones y parámetros propios de cada algoritmo.

1.3.5.1. Tipo de datos a ser procesados

Uno de los problemas que se debe tomar en cuenta al trabajar congrandes volúmenes de datos es la alta dimensionalidad. Se considera lareducción de la dimensionalidad de los datos, para lo cual la selecciónde características es muy importante y se suelen aplicar algoritmos deselección y extracción de características.

Otra consideración válida es la estructura y característica de los datos.Como se mencionó en la sección 1.3.1, depende del tipo de datos, estructu-rados o no estructurados, de las V’s que posean los datos, si son numéricoso categóricos. Cada uno de estas características hace que una dataset seamás o menos complejo y por lo tanto los algoritmos escogidos deben sercapaces de soportar dicha complejidad.

1.3.5.2. Limitaciones y Parámetros de los Algoritmos

Algunos algoritmos son más adecuados para procesar grandes volú-menes de datos pero no necesariamente son más rápidos para encontrar lamejor solución con un coste reducido, sin embargo analizando los diferentesalgoritmos se puede obtener consideraciones importantes y proponer me-joras que superen las limitaciones propias de cada algoritmo. Por ejemplo,sustituir la búsqueda secuencial de la unidad ganadora por una búsquedamás rápida y eficiente (MAM-SOM) [74].

Con este análisis previo se pre–seleccionan técnicas que pueden ser lasmás adecuadas para procesar nuestros datos. Sin embargo, dependiendode las características de los datos y los objetivos planteados, en la mayoríade los casos se requiere de combinación de técnicas, pre–procesamiento delos datos, modificación en los cálculos internos de los algoritmos o plantearestrategias híbridas para poder conseguir resultados óptimos.

Para verificar su comportamiento, rendimiento y parámetros favorablespara un óptimo desempeño, se requiere evaluar cada algoritmo y compararlos resultados mediante la experimentación. Lo más aconsejable es utilizardiferentes tipos de conjuntos de datos, considerando que existen algoritmos

26

Capítulo 1. Introducción

que funcionan mejor con datos categóricos y otros con datos cuantitativos,pero muy pocos manejan datos que poseen las dos características simultá-neamente.

Debemos evaluar la validez, estabilidad y escalabilidad en los resultadosobtenidos en cada algoritmos.

Validez: determinar la precisión de un algoritmo para agrupar losdatos.

Estabilidad: la variación de los resultados obtenidos en las distintasejecuciones de un algoritmo deben ser similares.

Escalabilidad: la capacidad de agrupar grandes volúmenes de datosde manera eficiente.

1.3.6. Consideraciones generales

En la parte introductoria, una vez analizadas las características de losdatos y de los algoritmos, podemos concluir que todos los algoritmos deAprendizaje Automático tienen una serie de ventajas e inconvenientes quese ven reflejadas en tiempos de ejecución, requerimientos computacionales,capacidad de convergencia, niveles de complejidad, en su implementacióno en ajuste de parámetros entre otros. Por ello en muchos estudios se haoptado por realizar combinaciones de algoritmos para solucionar problemasal procesar grandes volúmenes de datos, dependiendo de sus característicasy los objetivos planteados.

Es posible aprovechar las características propias de dos o más técni-cas, al mismo tiempo, para lograr brindar herramientas versátiles en elprocesamiento de grandes volúmenes de datos.

Pese a la existencia de un gran número de técnicas de Aprendizaje Au-tomático, en su mayoría presentan diferentes limitaciones. Problemas comoel solapamiento entre grupos, presencia de ruido o estructuras irregularesque suelen ser tratados mediante técnicas o estrategias híbridas.

Poder reemplazar un cálculo interno por otra técnica de ML permitesuperar las limitaciones propias de los algoritmos.

27

1.4. Definición del Problema

En estas propuestas es importante probar la escalabilidad, el costecomputacional y el tiempo de respuesta de las diferentes técnicas.

1.4. Definición del Problema

El principal problema encontrado en el procesamiento de grandes volú-menes de datos es sin duda el coste computacional inherente a la comple-jidad en el procesamiento de los datos y en los algoritmos para que seancapaces de procesar de forma eficaz y óptima datos provenientes, en nues-tro caso de estudio, de censos o encuestas. Problemas que surgen en cadaetapa necesaria para procesar estos datos y convertirlos en información re-levante, tales como: la ausencia de algunos de los atributos que conformanlos registros de información, la compleja estructura o la ausencia de esta,el cálculo de distancias entre elementos que permite encontrar semejanzasen los datos, o el bajo rendimiento temporal de las técnicas usadas hastael momento, entre muchos otros.

1.5. Propuesta

Una vez concluida la revisión de trabajos relacionados con el procesa-miento de grandes volúmenes de datos mediante técnicas de aprendizajeautomático, se han podido describir los problemas relacionados con el ta-maño de los datos, el tipo de datos a ser procesados y los requerimientosde hardware necesarios. Por ello, se ha podido recalcar la necesidad deencontrar una alternativa que permita optimizar la precisión, reducir elcoste computacional en el procesamiento de grandes volúmenes de datosprovenientes de censos o encuestas, mediante técnicas de aprendizaje au-tomático.

En la actualidad, es extremadamente sencillo el acceso a datos aso-ciados a censos o encuestas de diferentes países, sin embargo estos datospresentan un gran número de valores atípicos o valores faltantes (valoresperdidos) lo que limita su uso. La extracción de información relevante dedatos provenientes de censos o encuestas, se ha realizado tradicionalmen-te mediante métodos estadísticos o estocásticos, y se limitan a obtener

28

Capítulo 1. Introducción

indicadores en base a las fichas técnicas.Debido a aspectos de confidencialidad, la información proveniente de

los censos o encuestas está disponible para análisis solo en una versiónagregada. El nivel más bajo de detalle en este tipo de información corres-ponde al nivel de persona (en el caso de información socio–demográfica)esta es agregada en niveles geográficos dependiendo de la división político–administrativa del país (por ejemplo, en Ecuador el nivel geográfico corres-ponde a provincia, cantón, parroquia, zona y sector).

En este trabajo se propone una metodología para la imputación deinformación perdida o faltante. Algunos de los trabajos en el área proponencompletar la información con técnicas estadísticas o técnicas de aprendizajeautomático.

La metodología propuesta describe los pasos para, de manera no su-pervisada, crear clusters (agrupaciones de datos relacionados) como pasoprevio a la clasificación, en cada cluster se aplica un modelo de clasificaciónpara predecir el valor faltante de la variable de prueba (imputación).

1.6. Objetivos

El objetivo principal de esta investigación es proponer una metodologíabasada en algoritmos de aprendizaje automático que permita predecir losvalores omitidos dentro de una encuesta o censo, a estos valores se losdenomina valores perdidos (NA).

La metodología propuesta incorpora técnicas de clasificación supervi-sada y no supervisada para la predicción de los valores faltantes, fuera derango o perdidos.

Como objetivos derivados y previos que permitan conseguir el objetivoprincipal, se propone una metodología que consta de un paso previo depreprocesamiento o limpieza de datos, un paso de selección o ranking deatributos más representativos para clasificar los datos, esto con la finali-dad de reducir el coste computacional relacionado con el almacenamiento(memoria) y la necesidad de obtener una alta velocidad de procesamiento.

La validez y eficiencia de la metodología propuesta será verificada me-diante casos de uso con datos socio–demográficos provenientes del Censo

29

1.7. Estructura de la tesis

de Población y Vivienda de 2010 del Ecuador.

1.7. Estructura de la tesis

La tesis doctoral tiene la siguiente estructura:En el Capítulo 1 se revisan trabajos y conceptos sobre grandes volú-

menes de datos y algoritmos de aprendizaje automático. Se presenta lapropuesta para el procesamiento de grandes volúmenes de datos.

En el Capítulo 2 se realiza una descripción del proceso realizado en laetapa selección de variables (reducción de la dimensionalidad), así comolos experimentos realizados para obtener el mejor subconjunto de datosque represente de manera adecuada los datos que predicen una variableespecífica.

En el Capítulo 3 se presentan varios métodos para imputación de da-tos: métodos estadísticos y de aprendizaje automático. En este capítulo sedescriben algunos métodos para selección de variables y se utiliza el mé-todo Random Forest para generar el dataset de pruebas, adicionalmentese realiza experimentos de imputación de datos utilizando la generaciónmanual de clusters.

El Capítulo 4 describe la metodología propuesta para procesamientode datos socio-demográficos y presenta los resultados al aplicar el modelocon clusters generados mediante SOM-jerárquico.

Finalmente, el Capítulo 5 detalla las conclusiones obtenidas del presen-te trabajo. Además, presenta las contribuciones al tema de estudio y des-cribe brevemente las publicaciones derivadas de este trabajo. Para concluirel capítulo, se detallan posibles áreas de continuación de la investigaciónderivadas del estudio realizado.

30

Capítulo 2

Aprendizaje automáticoaplicado a datos censales

Este capítulo se centra en la revisión de trabajos de investigacióncentrados en el procesamientos de datos obtenidos de censos y en-cuestas y presenta una metodología para aplicar algoritmos de cla-sificación sobre los datos censales de naturaleza categórica. El ca-pítulo está organizado en las siguientes secciones: la sección 2.1presenta una breve introducción al procesamiento de datos cen-sales utilizando técnicas de aprendizaje automático, la sección 2.2resume los trabajos realizados en el área, en la sección 2.3 se aplicanvarios métodos de imputación y clasificación a datasets conocidos,en la sección 2.4 se propone una metodología para procesar datoscensales, y, finalmente, la sección 2.5 presenta algunas conclusiones.

2.1. Introducción

El procesamiento y análisis de grandes volúmenes de datos se realizabásicamente mediante dos tipos de enfoques: los basados en técnicas esta-dísticas (tradicionales) y técnicas de aprendizaje automático. Para proce-sar datos obtenidos de censos o encuestas se emplea habitualmente técnicasestadísticas para obtener los diferentes indicadores a través de las fichastécnicas [57]. Una alternativa para encontrar relaciones no triviales entrelas variables son las técnicas de aprendizaje automático [89], actualmente

2.1. Introducción

muy utilizadas en las distintas áreas de conocimiento. Con estas técnicaspodemos encontrar modelos para resolver uno de los problemas más comu-nes en la información obtenida de datos provenientes de censos, encuestaso fichas médicas, la ausencia de datos o datos fuera de rango.

En este capítulo se utiliza un modelo básico para procesar datos me-diante técnicas de aprendizaje automático que permite predecir o clasificaruna variable específica y probar si los algoritmos son adecuados para pro-cesar este tipo de información.

Para conseguir este objetivo, a continuación se define qué es un modelode clasificación de datos.

2.1.1. Modelo de clasificación de datos

Un modelo de clasificación es aquel que predice una clase para cadaelemento de una variable, sea del tipo numérico o categórico, de un con-junto de datos. En el caso de clasificación supervisada, se conoce a priorila clase real a la que pertenece cada elemento (se tiene un conjunto quepermite entrenar al algoritmo, entrenamiento), es decir asignar una claseYi a una observación Xi:

Yi para i ∈ {1, 2, 3, ..., N} (2.1)

donde N es un valor finito que representa los valores de la clase quepuede tomar una variable.

Por otro lado tenemos la clasificación no supervisada la cual no disponede un conjunto de entrenamiento, por lo que su tarea principal se basa enagrupar datos con características semejantes para clasificarlos. Aquí se uti-lizan criterios para medir la similitud de los datos que permita agruparlos,como la proximidad, un ejemplo muy conocido es el método del vecino máscercano, definido de la siguiente manera: dado el conjunto de datos A yq ∈ A, los elementos cercanos a q pertenecen al siguiente conjunto:

{a ∈ A / ∀b ∈ A, d(q, a) ≤ d(q, b)} (2.2)

Tanto en clasificación supervisada como no supervisada, el entrena-miento de los algoritmos intenta maximizar el rendimiento del clasificador,

32

Capítulo 2. Aprendizaje automático aplicado a datos censales

modificando los parámetros de entrada o utilizando herramientas de opti-mización, con el debido cuidado de no restringirlo a un conjunto de datosdado para que no pierda la capacidad de clasificar datos desconocidos,degradando la capacidad de generalización propia del algoritmo.

En herramientas como RapidMiner1 se pueden definir de forma fácilestos parámetros y también añadir herramientas que nos permitan com-prender e interpretar los resultados obtenidos. Una de estas herramientases la que nos permite obtener la matriz de confusión, mediante la cualpodemos evaluar el rendimiento del algoritmo o modelo planteado comose puede ver en Figura 2.2, de forma complementaria a la exactitud (accu-racy). La Tabla 2.1 muestra una generalización de la matriz de confusión.

Tabla 2.1: Descripción Matriz de Confusión

OC1 OC2 ... OCNPred. C1 C1 C2 ... CN

Pred. C2 C1 C2 ... CN

... ... ... ... ...Pred. CN C1 C2 ... CN

Donde:

(OCi, i ∈ 1, ...N): representa las clases de la variable a ser clasificada.

Pred Ci : son las clases que se obtienen de la predicción.

Ci : valores obtenidos por el algoritmo

En la diagonal de la matriz encontramos los valores que fueron correc-tamente clasificados, en el resto de celdas encontramos los datos que, pesea pertenecer a una clase OCi, fueron clasificados por el modelo como unaclase OCj distinta. El mejor resultado lo tendremos cuanto más concentra-das las observaciones se encuentren en la diagonal y menor sea el númerode observaciones ubicadas fuera de esta. En las filas encontramos todos losdatos que el algoritmo predijo como observaciones de la clase Pred Ci y enla columna, a qué clase pertenece realmente OCi.

1https://rapidminer.com

33

2.2. Revisión del Estado del Arte

Así también, tenemos las métricas que están presentes en la matrizy nos proporcionan información sobre el rendimiento del algoritmo, entreellas se encuentran:

Exactitud (Accuracy): esta métrica nos permite ver el porcentaje deobservaciones que han sido clasificadas de forma correcta y determi-nar qué tan fiable es un algoritmo. De forma general se define por lasiguiente fórmula:

Exactitud = observacionesClasificadasCorrectamente

totalObservaciones(2.3)

Sensibilidad: es la capacidad del algoritmo de clasificar correctamenteuna clase determinada sobre el total de observaciones de la clase.

Sensibilidad = PredCii

OCi(2.4)

Precisión de la clase (class precission): es la capacidad del algoritmode no etiquetar una observación que no pertenece a esa clase.

Precisión de la clase = PredCii

PredCi(2.5)

Estos conceptos los utilizaremos para realizar las pruebas al ejecutarlos diferentes algoritmos y medir así la validez del cada uno de ellos.

2.2. Revisión del Estado del Arte

Esta sección presenta una revisión de las diferentes fuentes de informa-ción socio–demográficas (censos y encuestas).

En la mayoría de estudios que se enfocan en la utilización de algoritmosde aprendizaje automático se proponen modelos que son entrenados, opti-mizados, validados y comparados con otros, como por ejemplo el estudiorealizado por Hassan et al. en 2017 [49] para el modelado de la irradiaciónsolar.

34

Capítulo 2. Aprendizaje automático aplicado a datos censales

De forma más particular, si consideramos los estudios enfocados a lautilización de datos provenientes de censos o encuestas, podemos mencio-nar: el estudio orientado a analizar problemas de salud que busca factoresde riesgo para una determina enfermedad [115] [18], otros que analizan lacobertura de salud [47] o mortalidad [64], así también encontramos traba-jos relacionados con temas sociales que permiten identificar cómo se dis-tribuyen geográficamente poblaciones con ciertos rasgos (etnias, edades,niveles económicos entre otros) [48], o de forma general para visualizar ladistribución económica en áreas geográficas [7].

Todos estos estudios se basan en información proveniente de censos oencuestas para poder explicar un problema específico a través de las varia-bles asociadas al mismo, en su mayoría utilizan técnicas estadísticas comola prueba χ2 (ji–cuadrado) [63], o parámetros estadísticos como la varianzay desviación estándar [79], para su análisis y procesamiento. Sin embar-go, pocos estudios se centran en la utilización de técnicas de aprendizajeautomático para poder descubrir relaciones ocultas entre variables pocoutilizadas en ciertos problemas o indicadores.

Sin embargo, en el área de salud cada vez es más común la utilizaciónde estas técnicas que permitan describir mejor ciertas patologías o enfer-medades, como en estudios de cáncer de mama [58], cuyo dataset contienedatos demográficos y utiliza tanto técnicas estadísticas como de ML parala imputación de datos ausentes.

El enfoque más habitual en el área de salud es realizar encuestas me-diante las cuales se pueda definir el porcentaje de la población que padeceo que es susceptible de padecer alguna enfermedad particular y tomarlas medidas necesarias para mitigarla, como ejemplo podemos mencionarel realizado por Ford [38], que se basa en la Tercera Encuesta Nacionalde Examen de Salud y Nutrición de los Estados Unidos y cuyo objetivoes determinar la presencia del síndrome metabólico mediante parámetros(anomalías) presentes en la encuesta, que constan en la definición de Panelde tratamiento para adultos (Adult Treatment Panel ATP) 2 definiendolas implicaciones en el sector de la salud.

2https://www.elsevier.es/es-revista-endocrinologia-nutricion-12-pdf-S1575092204746148

35

2.2. Revisión del Estado del Arte

Es muy común utilizar sólo una muestra del censo para estudios especí-ficos. Para generar estas muestras se introducen parámetros como: rango deedad, género, ubicación geográfica, entre otros. Los parámetros dependeránexclusivamente del propósito del estudio. Un ejemplo lo encontramos en elestudio realizado en 2011 por Qu,Hui-Qi at al. [95], en el que se obtieneuna muestra de 1854 adultos (parámetro=edad) seleccionados aleatoria-mente y a la cual se le aplican técnicas de ML, como SVM y RegresiónLogística Bayesiana para identificar variables correlacionadas con un pará-metro específico (HOMA-IR) y agrupar mediante K-Mediana quienes sonresistentes a un medicamento (insulina).

En otro estudio, mediante el análisis con herramientas de ML con datosde censos se puede visualizar el impacto de la alfabetización de hombres ymujeres del distrito de Latur en Maharashtra, extrayendo como conclusiónel impacto de la alfabetización en la desigualdad de género [55].

Todos estos estudios concluyen de forma clara la importancia de losdatos provenientes de Censos y Encuestas para distintas áreas y sectores.De aquí partimos para realizar pruebas con técnicas de ML para procesareste tipo de datos y ver de forma clara los problemas encontrados.

2.2.1. Datos de Censos y Encuestas

En esta sección se describe las bases de datos con la que se trabajaráen éste y los siguientes capítulos (Información proveniente del Censo dePoblación y Vivienda del 2010 de Ecuador).

La información proveniente de censos o encuestas es ampliamente uti-lizada por los gobiernos para calcular indicadores socio–económicos, desalud pública o de seguridad y realizar predicciones que permiten generarpolíticas públicas orientadas a mejorar la calidad de vida de sus habitantes.

En América Latina y el Caribe existen, en cada país (OLAC, listaestos centros 3), Institutos de Estadística y Censos que se encargan de laproducción oficial de estadística nacional en las que se basan muchas delas políticas públicas.

La Organización de Naciones Unidas, a través de la Comisión Econó-

3https://observatoriocensal.org/links/institutos-de-estadistica-y-censos-regionales/

36

Capítulo 2. Aprendizaje automático aplicado a datos censales

mica para América Latina y el Caribe (CEPAL)4, tiene como misión enel área de Población y Vivienda fortalecer a los países de la región paraque estos sean capaces de analizar, describir, comprender y atender la di-námica demográfica en correlación con el desarrollo económico y social, através de políticas públicas. Una división de la CEPAL es el Centro La-tionoamericano y Caribeño de Demografía (CELADE) 5, que se encargade dar asesoramiento técnico, directrices para la elaboración de indicado-res, brindar información sobre cifras de población, indicadores derivados,correspondientes a las estimaciones y proyecciones de población tanto na-cionales como regionales.

2.2.1.1. Datos de Censos

Los censos, de forma particular en América Latina, se realizan cada 10años y están enfocados a todo la población.

En este estudio se tomó la información correspondiente al censo depoblación y vivienda del año 2010 de Ecuador 6, ésta información poseeatributos de tipo numéricos y categóricos, tiene una alta dimensionalidadcon millones de registros y se encuentra agrupada de la siguiente manera:

Vivienda: Información asociada a la vivienda (37 atributos)

Hogar: Información asociada al hogar (41 atributos)

Persona: Información asociada a personas (101 atributos)

Además de la información anterior encontramos datos concretos re-lacionados con la división político administrativa del país (informacióngeográfica DPA).

Los atributos que representan información geográfica corresponden a:

i01 Provincia

i02 Cantón4https://www.cepal.org/es5https://www.cepal.org/es/acerca-de-poblacion-y-desarrollo6http://www.ecuadorencifras.gob.ec/base-de-datos-censo-de-poblacion-y-vivienda-

2010/

37

2.3. Procesamiento de datos censales

i03 Parroquia

i04 Zona

i05 Sector

Cada valor corresponde al código local de la región geográfica, por ejem-plo i02 (Cantón) corresponde al número de cantón dentro de la provincia,por lo que pueden existir valores duplicados dentro del dataset pero nodentro de una misma provincia.

Para conseguir un código único es necesario concatenar los códigos, porejemplo, para conseguir un identificador único de parroquia, es necesarioconcatenar Provincia + Cantón + Parroquia, esto es

cod_parroquia = i01 + i02 + i03

La división política–administrativa representa una división espacial delos datos con lo cual se puede centrar el estudio en determinadas zonas delpaís. Este mismo criterio debe ser aplicado para obtener códigos únicospara diferentes niveles geográficos.

2.2.1.2. Datos de Encuestas

Las Naciones Unidas, a través de publicaciones relacionadas con lametodología de encuestas por muestreo, brinda las directrices necesariaspara diseñar o analizar las encuestas [21]. Las encuestas se realizan enperíodos más cortos de tiempo y sólo toman una muestra de la población,además están orientadas a tratar un problema más específico del cual serequiere información o para inferir características de toda la población.

No debemos olvidar que al trabajar con una muestra de la poblaciónlos resultados obtenidos son estimaciones con cierto grado de confiabilidaddebido a los errores muestrales.

2.3. Procesamiento de datos censales

Las características de los datos provenientes de encuestas y censos soncomplejas, encontrando problemas tales como el manejo de datos ausentes

38

Capítulo 2. Aprendizaje automático aplicado a datos censales

o fuera de rango, gran dimensionalidad y volumen de datos.Esto hace del análisis de datos un trabajo complejo y con un elevado re-

querimiento de recursos software y de infraestructura para poder procesarlos datos y obtener información relevante a partir de estos.

La Tabla 2.2 muestra el detalle del dataset utilizado en el análisis des-crito anteriormente. El dataset corresponde a los datos de la población delcenso del año 2010.

Tabla 2.2: Descripción Censo Ecuador 2010

Descripción

Total de atributos 101Total de observaciones 14,483,499

Como paso previo a la utilización de datos provenientes del censo serealizaron pruebas básicas para clasificar dataset públicos y valorar el ren-dimiento y capacidades de cada algoritmo. Estos datasets como se men-cionó en la Tabla 1.1, son tomados del Repositorio de base de datos deML.

A continuación se describen los datasets utilizados.

Iris 7: Es un dataset con características de las tres tipos de Iris,además es uno de los dataset más utilizados en la literatura analizada,especialmente en reconocimiento de patrones.

Glass 8: Es un dataset de tipos de vidrio, los datos provienen delServicio de Ciencias Forenses de los Estados Unidos, que identifica 6diferentes tipos de vidrio definidos por los elementos que lo confor-man.

Abalone 9: Este dataset permite predecir la edad de un abalone 10

a partir de variables relacionadas con mediciones físicas como por7http://archive.ics.uci.edu/ml/datasets/iris8http://archive.ics.uci.edu/ml/datasets/glass+identification9http://archive.ics.uci.edu/ml/datasets/abalone

10Abalone es un gasterópodo marino del género Haliotis, también llamado oreja demar

39

2.3. Procesamiento de datos censales

ejemplo: el tamaño o el diámetro, la variable a predecir es el númerode anillos que está directamente relacionada con la edad.

Wine 11: Este dataset permite determinar el origen de los vinos me-diante las 13 características o componentes descritos como variables.

Yeast 12: Contiene datos de puntos de localización de proteínas enbacterias de levadura.

En la Tabla 2.3 se describe las características como dimensión, tamañoy tipos de datos de los dataset descritos anteriormente.

Tabla 2.3: Dataset públicos

Dataset Tamañomuestra

Númeroatributos

Clases Tipo var. pred. Descripción

Iris 150 5 3 categórica Tipo de plantasGlass 214 10 7 categórica Tipos de vidrio

Abalone 4177 9 29 categórica Tipo de moluscoWine 178 14 3 categórica Tipos de vinosYeast 1484 9 10 no numérica Ubicación proteínas

En la herramienta RapidMiner se realizaron las pruebas con los valorespor defecto de los parámetros de cada algoritmo, al ser estos dataset relati-vamente pequeños, con baja dimensionalidad y no contener datos ausenteso fuera de rango, resulta muy sencillo el procesamiento. Los resultados alaplicar cuatro algoritmos de clasificación se muestran en la Tabla 2.4.

Tabla 2.4: Algoritmos de clasificación aplicados a datasets públicos

Dataset KNN Random Forest Naïve Bayes MultilayerPercetron

Iris 93.33 93.33 93.33 95.56Glass 70.31 81.25 51.16 64.06

Abalone 51.16 54.59 52.35 54.75Wine 84.91 98.11 96.23 98.11Yeast 56.40 60 31.76 59.33

11https://archive.ics.uci.edu/ml/datasets/wine12http://archive.ics.uci.edu/ml/datasets/yeast

40

Capítulo 2. Aprendizaje automático aplicado a datos censales

Con los dataset descritos en la Tabla 2.3 se ejecutaron los algoritmospara probar su eficiencia al clasificar variables de tipo categórico. Poste-riormente ejecutamos los algoritmos con cuatro muestras pequeñas de losdatos socio-demográficos generadas para predecir dos variables categóri-cas distintas: Estado Civil (estCivil) y Grados de Escolaridad (gradEsc).Dos datasets fueron generados para cada variable con distintos númerosde atributos y distinto número de categorías.

En el primer caso, la variable estCivil posee seis categorías y se usarondos conjuntos con distinta dimensionalidad (resultado de aplicar selecciónde variables). En el segundo caso la variable gradEsc posee 25 categorías,para generar las dos muestras se realizó lo siguiente: en el primer conjuntose consideró la variable con las categorías originales y en el segundo con-junto se utilizó una recodificación de la variable, que predice los nivelesde escolaridad en rangos (primaria, secundaria, tercer nivel, etc.) y no elgrado de escolaridad original (1, 2, 3, etc.).

Para las cuatro muestras se aplicaron previamente herramientas de se-lección de variables. Además estas muestras no contienen valores ausentes ofuera de rango. La idea de esta prueba fue verificar si la exactitud de los al-goritmos depende del tamaño de la muestra, de la dimensionalidad o de lascategorías de la variable a predecir. La Tabla 2.5 muestra el detalle de losdatasets y la Tabla 2.6 muestra los resultados obtenidos al ejecutar variosalgoritmos de clasificación, que fueron probados con los dataset públicosantes descritos. Para estos dataset fue necesario modificar los parámetrosde los algoritmos hasta encontrar los mejores resultados.

Tabla 2.5: Datasets de censos

Dataset Tamaño muestra N. atributos CategoríasDS-estCivil1 6,000 19 6DS-estCivil2 6,000 8 6DS-gradEsc1 1,000 13 25DS-gradEsc2 1,000 13 5

Esto permitió comparar el rendimiento de los algoritmos al ser aplica-dos a datos públicos y a datos provenientes de censos. En los dos casosse pudo identificar que los rendimientos más bajos de los algoritmos los

41

2.3. Procesamiento de datos censales

Tabla 2.6: Algoritmos de clasificación aplicados a datasets provenientes del censo

Dataset KNN Random Forest Naïve Bayes MultilayerPercetron

DS-estCivil1 72.33 83.78 72.28 76.61DS-estCivil2 95.11 94.5 93.83 88.89DS-gradEsc1 50.81 89.43 83.74 82.93DS-gradEsc2 72.36 97.15 89.35 93.87

encontramos en variables con un alto número de clases.Podemos concluir de las tablas 2.4 y 2.6 que es posible mejorar el

rendimiento de los algoritmos si tomamos consideraciones especiales comopor ejemplo: el tamaño de los datos, el número de categorías o clases delas variables, la dimensionalidad de los datos así como también, modificarlos parámetros propios de los algoritmos.

Luego de estas pruebas básicas escalamos en la dimensión de los datos,el volumen, y complejidad de las muestras que permitan verificar el ren-dimiento de los diferentes algoritmos de aprendizaje automático al estarpresentes los problemas habituales al trabajar con datos reales. La muestrautilizada proviene de los datos correspondientes a la provincia de Imbabura(variable i01 = 10), la cual tiene una población (según el censo 2010) de398,244 habitantes.

Se aplicó un modelo simple para realizar las pruebas de los algoritmoscon datos reales (ver Figura 2.1), la plataforma de ML utilizada corres-ponde a RapidMiner 13. Los pasos implementados son los siguientes:

Introducción de datos: incluimos los datos de la muestra seleccionadaen el repositorio de la plataforma RapidMiner.

Pre-procesamiento de datos: aplicamos filtros, reducción de dimen-sionalidad o reemplazamos valores inválidos.

Validación: realizamos el entrenamiento del algoritmo a utilizar yevaluamos su rendimiento.

13https://rapidminer.com/

42

Capítulo 2. Aprendizaje automático aplicado a datos censales

Ejecución del modelo: se ejecuta el modelo planteado y obtenemoslos resultados.

Los resultados obtenidos se muestran en la Tabla 2.6. El siguiente pasoconsiste en generar muestras aleatorias que contengan valores perdidos odatos fuera de rango. Se escogió el dataset para predecir la variable gradEscaplicando recodificación (explicado anteriormente), se modificó el tamañode la muestra generada aleatoriamente. Se probó el rendimiento de losalgoritmos frente al tamaño de la muestra a procesar. Las tablas 2.7 y 2.8muestran los resultados obtenidos.

Tabla 2.7: Resultados de clasificación para muestras de variable graEsc recate-gorizada (a)

RandomForest Naïve Bayes SVM (PSO)Tamaño muestra T (ms) Exact T (ms) Exact T (ms) Exact

3,388 87 98.92 5 99.21 12,352 95.966,000 152 94.50 9 93.83 46,427 89.0613,940 524 97.06 22 94.55 49,831 89.7236,039 839 95.32 34 93.98 53,128 90.0745,939 1,634 95.68 36 93.87 57,398 90.4887,938 2,686 96.37 69 93.95 61,654 91.16398,244 10,808 95.21 394 93.37 68,345 91.36

Tabla 2.8: Resultados de clasificación para muestras de variable graEsc recate-gorizada (b)

K-NN DT Neural NetTamaño muestra T (ms) Exact T (ms) Exact T (ms) Exact

3,388 113 99.21 15 99.02 5,762 98.826,000 410 95.67 36 95.67 12,305 95.6713,940 3,651 97.14 88 97.14 42,440 97.1236,039 13,677 96.63 166 96.63 78,682 96.3745,939 23,706 96.60 201 96.60 99,637 96.7687,938 89,770 96.42 393 96.42 198,361 96.47398,244 191,1852 96.29 2,528 96.29 1,010,639 96.35

De las tablas 2.4, 2.6, 2.7 y 2.8, podemos concluir que la exactitud de losalgoritmos depende del tipo de datos a procesar y del número de categorías

43

2.3. Procesamiento de datos censales

o clases de la variable a predecir en mayor medida que del tamaño de lamuestra.

De estas pruebas también obtuvimos el modelo básico que se utilizapara clasificar los datos mediante técnicas de ML, como se muestra en laFigura 2.1

Introducción de datos

Pre-procesamientode datos

Validación Entrenamiento

EvaluaciónEjecución delmodelo

Figura 2.1: Modelo básico para procesar información

2.3.1. Variable con dos categorías

Planteado el modelo a seguir en la Figura 2.1 para la experimenta-ción y teniendo en cuenta que la exactitud de los algoritmos depende delnúmero de categorías de la variable a predecir, escogimos la variable Sa-be Leer (P19) que posee dos categorías (SI, NO) y se procedió a realizarun proceso para predecir dicha variable. Se trabajó con todos los datoscorrespondientes a la provincia de Imbabura, explicados en la sección 2.3

Primero se aplicó regresión lineal para determinar las variables másrepresentativas en cada caso, mediante eliminación hacia atrás ( P. Value>0.05), se eliminaron las variables menos significativas dentro del modelo.

El uso de esta técnica permite trabajar con las variables originales, loque no sucede cuando se utiliza Análisis de Componentes Principales. La

44

Capítulo 2. Aprendizaje automático aplicado a datos censales

Tabla 2.9 muestra los resultados de la reducción de dimensión.

Tabla 2.9: Reducción de dimensionalidad

Sabe LeerNo. ejecuciones No. Variables

1 1012 943 234 175 146 7

Una vez reducida la dimensionalidad y seleccionadas las variables másrepresentativas para predecir la variable Sabe Leer (P19), el modelo segeneró en la herramienta RapidMiner y se alojó en el repositorio los datos,creando un subconjunto con las variables a ser utilizadas (dimensión =7).La Tabla 2.10 muestra el subconjunto de variables seleccionadas.

Tabla 2.10: Variables predictoras

Sabe LeerNo. Variables Descripción1 I03C Cantón2 P01 Sexo3 P03 Edad4 P23 Nivel instrucción más alto5 P24 Grado o curso más alto que ha asistido6 GRAESC Grados de escolaridad7 P25 Tiene título

El crear el conjunto de datos en el repositorio minimiza el uso de me-moria necesario para ejecutar los procesos, por lo tanto, se reducen lostiempos de proceso. Se usaron un 70% de los datos para entrenamiento yel 30% para predicción.

En algoritmos como DT y SOM los resultados fueron exactamente igua-les, por ello se consideraron los algoritmos que dieron resultados distintos,y resumimos valores de: Precisión global, Aciertos positivos y precisión

45

2.3. Procesamiento de datos censales

de la clase. La Tabla 2.11 muestra los resultados obtenidos al ejecutar elmodelo en RapidMiner.

Tabla 2.11: Precisión de los algoritmos

Resultados en porcentaje (%)Algoritmo Exactitud Sensibilidad Precisión (clase)K-NN 99.21 99.40 98.84DT 99.02 98.51 97.18

Naïve Bayes 99.21 99.70 99.41Neural Net 98.82 99.70 97.44SVM-PSO 95.96 93.89 89.38

De los algoritmos ejecutados, algunos no pudieron dar soluciones ade-cuadas o no pudieron clasificar de forma adecuada como el caso de SVM,pero el algoritmo SVM-PSO por el contrario funcionó correctamente. Tam-bién, algunos algoritmos presentan resultados exactamente iguales a otroscomo el caso de DT y SOM. Los algoritmos considerados fueron K-NN yNaïve Bayes.

En el ejemplo planteado, la variable categórica tiene dos clases por loque la precisión de los algoritmos es bastante alta, esto permitió validarel modelo con cada uno de los algoritmos. Con estos resultados y unavez entrenado el modelo, se extendieron las pruebas a una variable máscompleja Estado Civil con 6 categorías.

2.3.2. Variable con más de dos categorías

En este caso empleamos de nuevo los datos correspondientes a la pro-vincia de Imbabura. Se realizó una reducción de dimensión mediante Regre-sión Lineal aplicando eliminación hacia atrás, el total de variables inicialesque predicen a la variable Estado Civil es de 10. La Tabla 2.12 muestra losresultados obtenidos al aplicar la reducción de dimensión.

Con estas variables se predice el Estado Civil de una persona mediantelos distintos algoritmos que se han entrenado con el ejemplo anterior. Lasposibles variables predictoras se muestran en la Tabla 2.13. El modelose ejecutó para esta variable, pero fue necesario modificar parámetros y

46

Capítulo 2. Aprendizaje automático aplicado a datos censales

Tabla 2.12: Reducción de dimensionalidad de Estado Civil

Estado CivilNo. corrida No. Variables

1 1242 723 244 205 156 10

añadir herramientas que permitieron formatear los datos para cumplir conlos requerimientos de los distintos algoritmos.

Tabla 2.13: Variables predictoras de Estado Civil

No. Variables Descripción1 i05 Sector2 POO Número de lugar que ocupa en el Hogar3 P01 Sexo4 P02 Parentesco o relación con el jefe del hogar5 P03 Edad6 P05 Tiene cédula de ciudadanía ecuatoriana7 Discapacidad Tiene algún tipo de discapacidad8 P16 Cómo se identifica según su cultura y costumbres9 P37 Total de hijos vivos actualmente10 P38 A qué edad tuvo su primer hijo

Al ejecutar los algoritmos con este dataset se presentan algunos in-convenientes, los resultados obtenidos no fueron satisfactorios, el mejorresultado obtenía una eficiencia global de solo un 67.43%.

Se realizaron pruebas con distintos tamaños de muestras y algoritmos,se modificaron parámetros en cada algoritmo, los mejores resultados seresumen en la Tabla 2.14:

Como se muestra en Figura 2.2, la predicción en cada categoría de lavariable no es la esperada y están muy por debajo de la media, sólo doscategorías presentan resultados aceptables. Por ello se retorna al paso deselección de variables y se modifica el modelo, se aumentan herramientas

47

2.3. Procesamiento de datos censales

Figura 2.2: Resultado de Naïves Bayes con 10 variables (clasificación)

Tabla 2.14: Precisión de los algoritmos

AlgoritmosNaïveBayes

NeuralNet

KNN RandomForest

Tiempo (ms) 31 50008 1156 672Total Exactitud (%) 72,28 74 72.33 68,89315 Clase 1 312 277 271 236278 Clase 2 266 206 277 278293 Clase 3 290 228 167 252316 Clase 4 22 81 128 35284 Clase 5 113 224 190 204314 Clase 6 301 277 269 235

de optimización y se encuentra un nuevo grupo de variables predictoras conuna dimensionalidad igual a 19. Se ejecutan nuevamente los algoritmos declasificación y se obtiene una mayor eficiencia global igual al 74%.

Como podemos ver en la Figura 2.3 (resultados del algoritmo con elmejor resultado en el proceso de clasificación), la eficiencia global mejoró,pero más notable es la mejora al clasificar cada clase de la variable, sólo endos categorías existe un porcentaje bajo de precisión, esto es en los valores3 y 4 de la variable (que pertenecen a divorciado y separado respectiva-mente), en ambos casos el umbral no es tan sencillo de establecer dentrode las variables socio-demográficas, sin profundizar en el comportamientode cada uno de estos dos grupos.

48

Capítulo 2. Aprendizaje automático aplicado a datos censales

Figura 2.3: Resultado de Naïves Bayes con 19 variables (clasificación)

Al aplicar los algoritmos para clasificar los datos de las muestras plan-teadas obtuvimos los siguientes resultados:

El tiempo de procesamiento depende directamente del tamaño de lamuestra, pero la precisión no varia de forma considerable.

La capacidad de procesamiento de los algoritmos depende directa-mente de la dimensionalidad y los datos a ser procesados.

La eficiencia de los algoritmos con datos categóricos varía de acuerdoal número de clases de cada variable.

Por ello nace la idea de crear grupos (clusters) que nos permitan tenersubconjuntos con características y comportamientos similares que benefi-cien el proceso de clasificación.

2.4. Propuesta de metodología basada en apren-dizaje automático para procesar datos Cen-sales

En esta sección se propone la metodología para aplicar algoritmos declasificación (aprendizaje automático) sobre información socio-demográficacon la finalidad de predecir valores ausentes o perdidos en las observaciones.

Una vez que se han probado distintas técnicas de aprendizaje automáti-co para procesar datos provenientes de censos y clasificar variables de tipo

49

2.4. Propuesta de metodología basada en aprendizaje automático para procesardatos Censales

categóricas, se plantea un modelo que mejore la precisión en el proceso declasificación de este tipo de variables.

La Figura 2.4 muestra el modelo propuesto para procesamiento de datosprovenientes de encuestas o censos, como caso particular se aplica el modeloa información demográfica.

El algoritmo 8 muestra los pasos descritos en la Figura 2.4.

Datos: data setResultado: clasificación

1 si data set contiene valores perdidos o atípicos? entonces2 Filtrar: pairwise o listwise;3 fin4 /* Feature selection */5 mientras NO es la mejor selección de atributos? hacer6 Generar sub-datasets;7 Evaluar algoritmo;8 fin9 /* Generar n-clusters */

10 Generar n-clusters;11 /* Clasificar cada cluster generado */12 para i← 1 a n hacer13 Clasificar cluster i;14 fin

Algoritmo 8: Algoritmo propuesto para procesar información demográ-fica

En algunos casos, la unidad básica para estudio corresponde al nivelmás bajo de agregación, en el caso del ejemplo anterior correspondería aParroquia. El proceso tradicional para extraer algún tipo de informacióna partir de los datos (microdatos) incluye (en la mayoría de los casos) lossiguientes pasos:

1. Revisión básica de las observaciones (estadística descriptiva).

2. Selección de variables a utilizar (feature selection).

3. Imputación de valores perdidos (missing values).

4. Normalización de los datos.

50

Capítulo 2. Aprendizaje automático aplicado a datos censales

Figura 2.4: Modelo propuesto para procesar información demográfica

51

2.4. Propuesta de metodología basada en aprendizaje automático para procesardatos Censales

5. Extracción de información: aplicación de alguna técnica estadística/a-prendizaje automático.

6. Interpretación y evaluación de los resultados.

7. En el caso de información espacial: representación de los resultadossobre un mapa.

Para conseguir el objetivo planteado en este trabajo, la propuesta sebasa en aportar una metodología que mejore el procesamiento en los puntos2, 3 y 5 descritos anteriormente.

2.4.1. Selección de variables a utilizar (Feature Selection)

En la mayoría de estudios orientados a la utilización de técnicas deaprendizaje automático se suelen utilizar dataset de pruebas de libre acce-so para la comunidad científica, estos por lo general contienen datos condimensionalidad aceptable y con un tamaño relativamente inferior a los ob-tenidos por censos o encuestas. Estos dataset son de utilidad para probary validar los distintos algoritmos o metodologías propuestas, sin embargoal ser aplicadas a datos reales, se deben realizar modificaciones sea en losparámetros o en la forma de aplicar la técnica para que ésta sea capaz deprocesar la información requerida de un problema específico.

Para el caso particular de datos de encuestas y censos que contienenun alto número de variables (features), es necesario (casi obligatorio) unaselección previa de las variables para disminuir la dimensionalidad de losdatos y así optimizar (en tiempo y recursos) el procesamiento de la infor-mación. Es innegable la necesidad de seleccionar un subconjunto de datoscon el número mínimo de características que permita definir de maneracorrecta el problema planteado, en otras palabras, si hablamos de clasifi-cación, que la presión sea la más alta posible sin que la distribución delconjunto de datos sufra alteraciones considerables.

La disminución en el número de atributos puede contribuir a facilitarel cálculo de algunos indicadores socio–demográficos: Número de viviendascon habitantes de edad avanzada, Distribución de la población por grupos

52

Capítulo 2. Aprendizaje automático aplicado a datos censales

de edad, Distribución de la población por sexo y sector urbano-rural, entreotros.

2.4.2. Imputación de datos (Data Imputation)

La parte previa al análisis de cualquier tipo de encuesta/censo es la“predicción” de la información faltante (missing values). Las técnicas tra-dicionales utilizadas corresponden a las descritas en la Tabla 2.15.

Esto corresponde a la etapa de pre-procesamiento de la información, sepropone la utilización de técnicas de ML para el proceso de imputación,tomando en cuenta que la información es categórica.

De las pruebas realizadas las dos mejores técnicas para tratar este puntocorresponden a KNN y Neural Net.

2.4.3. Extracción de información

Aplicación de técnicas de ML, clustering: Una vez imputados los da-tos, se propone la creación de clusters en base a la información socio-demográfica (o de otro tipo de encuesta, censo). Hay que notar que laestructura de los datos es particular ya que en la mayoría de los casos lainformación es categórica lo que permitiría optimizar su almacenamientoy/o procesamiento.

Como ejemplo, las encuestas de Nacimientos contienen 48 variables,de las cuales 3 son numéricas (acta de inscripción, peso del nacido vivo yedad de la madre) y las 45 restantes son categóricas.

Poder agrupar datos para visualizar qué características influyen en elnivel económico de los hogares, y si depende o no de la ubicación geográfica,

Tabla 2.15: Técnicas utilizadas para imputación de datos

Técnicas estadísticas Técnicas de MLListwise Deletion (LD) Multi-Layer Perceptron (MLP)

Hot-deck SOMMediana KNN

Imputation Multiple (MI)

53

2.5. Conclusiones

son algunas de las interrogantes que podemos responder con este tipo deanálisis.

En el siguiente capítulo vamos a tratar el problema más común exis-tente en los datos provenientes de censos y encuestas, los valores perdidosy datos fuera de rango, mediante la imputación de datos.

2.5. Conclusiones

Los datos provenientes de censos o encuestas tienen características es-peciales distintas a las de los dataset comúnmente utilizados en las pruebasde algoritmos o predicción de modelos propuestos, no sólo relacionadas conel gran volumen de datos que poseen, sino también con el número de cate-gorías de las variables, altos porcentajes de datos ausentes o fuera de rangoy la dificultad de expresar ciertas categoría en función de otras variables.

Por lo descrito en el párrafo anterior, el uso de las técnicas de apren-dizaje automático para procesar este tipo de datos va ganando terreno yes necesario plantear metodologías que permitan mejorar el procesamientopara este tipo particular de dataset.

En los experimentos realizados se visualiza claramente que introdu-cir ciertas modificación en la forma de aplicar los algoritmos beneficia demanera considerable los resultados obtenidos, sobre todo en los casos deumbrales poco definidos al separar una categoría de otra como en el casode la variable estCivil.

54

Capítulo 3

Imputación de datos

En este capítulo se presenta un resumen de las principales técni-cas tradicionales de imputación de datos así como técnicas basadasen aprendizaje automático. El capítulo está organizado en las si-guientes secciones: la sección 3.1 presenta una breve introducciónal proceso de imputación de datos, la sección 3.2 resume los tra-bajos realizados en el área, la sección 3.3 analiza técnicas para laselección de variables, la sección 3.4 describe algunos métodos paraimputación de datos, la sección 3.5 realiza un análisis del modeloinicial para imputar datos mediante generación manual de clusters,la sección 3.6 analiza los métodos utilizados para imputar variablescategóricas y realiza la experimentación con técnicas estadísticas yde aprendizaje automático y, finalmente, en la sección 3.7 se pre-sentan algunas conclusiones.

3.1. Introducción

En este capítulo se analiza el primer paso de la propuesta planteada enla sección 2.4, el tratamiento de los valores perdidos o atípicos. El procesa-miento de grandes volúmenes de datos provenientes de censos debe incluirmecanismos para minimizar el problema de imputación de datos que nospermite disminuir el sesgo producido por una reducción considerable de lamuestra.

Para poder obtener información relevante y evitar sesgos, debemos te-

3.1. Introducción

ner en cuenta algunas características propias de los datos como: el tipo devariable a utilizar, la fuente de datos, la frecuencia de datos, entre otras.En nuestro trabajo utilizamos datos censales, por ello debemos considerarque al utilizar la información censal se trabaja con lo que se denomina"variable", en muchas ocasiones, dependiendo de la variable, es necesariotomar en cuenta la ausencia de valores (missing values) lo que indica quela persona encuestada no responde o que la pregunta relacionada no co-rresponde al encuestado (por ejemplo, debe corresponder a una mujer, yno un varón, responder a la cuestión: número de hijos nacidos vivos).

En investigaciones que utilizan datos provenientes de encuestas es muycomún encontrar datos ausentes (missing values) o datos extremos (outliers),esto representa un problema que puede introducir sesgo en la estimación oreducir de forma considerable el tamaño de la muestra. De forma generalse consideran tres tipos de datos ausentes [11]:

Ausencia completamente aleatoria (MCAR–Missing Completely AtRandom): los datos ausentes no dependen de las variables ni de lasobservaciones, en términos estadísticos la probabilidad de tener datosausentes es la misma para todos los casos.

Ausencia aleatoria (MAR–Missing At Random): los datos ausentesdependen de los datos observados para ciertos grupos, en lenguajeestadístico podemos decir que la probabilidad de que falte un datoes la misma dentro de un grupo de datos observados.

Ausencia no aleatoria (NMAR–Missing Not At Random): los datosausentes dependen de otros datos observados, la probabilidad de au-sencia de datos varía por razones específicas que deben ser analiza-das [34].

En nuestro caso particular debemos considerar que muchas de las va-riables están correlacionadas entre sí, por lo tanto la ausencia de datos esdel tipo no aleatoria, esto implica que si una variable no corresponde alencuestado, un grupo de variables también dejarán de tener sentido paraesta persona en particular (sino contesta una pregunta, lo más probablees que las preguntas correlacionadas a ella tampoco tengan respuesta) lo

56

Capítulo 3. Imputación de datos

que indica la presencia de valores perdidos tipo NMAR. También existe loscasos en que no se contesta una pregunta por afectar intereses personaleslo que nos lleva al tipo MAR. Entonces podemos decir que nuestros datostienden a presentar ausencia de datos del tipo NMAR y del tipo MAR.

Una vez identificado el tipo de ausencia de datos, se puede plantear dequé manera deben ser tratados sin que esto afecte al dataset y de maneradirecta a la información que extraemos de ella.

La siguiente etapa en la experimentación consiste en plantearnos unejemplo más complejo que permita ver la importancia de la imputaciónde datos. En este capítulo vamos a plantear como ejemplo para validarnuestras propuestas de imputación de datos, el problema de calcular la tasade mortalidad infantil según brechas educativas TMI-SBE de acuerdo alsector de vivienda tomando como información base los datos que presentanvalores perdidos.

En concreto, para estimar la Tasa de Mortalidad Infantil (TMI ) [2], se-gún William Brass, se requiere procesar las variables del censo que corres-ponden al “número de hijos nacidos vivos” y a “hijos actualmente vivos”.A esto añadimos las variables correspondientes a la ubicación geográfica delos datos, las variables asociadas a niveles de educación y variables relevan-tes provenientes de un proceso de selección de atributos (feature selection)asociadas al grupo de variables Persona descrito en la sección 2.2.1.1.

3.2. Trabajos relacionado

La ausencia de datos es muy común en el procesamiento de informa-ción, más aún en el análisis de datos de censos, encuestas, fichas médicasentre otros. De los trabajos realizados por Rubin [100] [102] [101], se ha-ce notoria la necesidad de tratar con métodos de imputación de datos enlugar de eliminar todas las observaciones que contengan datos ausentes.La disminución considerable de la muestra al usar esta alternativa puedeproducir resultados sesgados o de mala calidad, en el trabajo de Cheema-Jehanzeb [23] se realiza una revisión de algunos métodos utilizados paraimputar datos como alternativa al método listwise deletion [23].

De igual forma podemos encontrar muchos estudios que se centran en

57

3.2. Trabajos relacionado

buscar las mejores alternativas para imputar datos, como reemplazar elvalor ausente por la media o la moda dependiendo del tipo de variable(numéricos o categóricos). El método Fuzzy K-means Clustering para laimputación de datos propuesto por Li, Dan and Deougun et al [70], ma-pas auto-organizativos (SOM) [66] [65] o variaciones de este método sonutilizados para la imputación de valores perdidos.

La importancia de encontrar métodos que permitan una correcta impu-tación de datos perdidos o fuera de rango permite tener una mejor calidaden la información utilizada para diversos estudios que intentan predecir fe-nómenos, problemas de diversas índoles o para investigaciones relacionadascon la salud donde la precisión en los resultados es crucial.

En el caso de las ciencias de la salud, existen diversos estudios que uti-lizan herramientas de ML para predecir demanda en sectores hospitalarioso de recursos necesarios para una atención adecuada de los pacientes queingresan por emergencias como en estudio realizado por Jiang et al. [60],que propone una metodología híbrida robusta y más precisa para predecirla demanda en el departamento ambulatorio en China.

Por otro lado, también es necesario analizar la selección de variablesnormalmente conocido como FS por las siglas del inglés feature selection,sea éste proceso ejecutado antes o después de la imputación de variables,dependiendo de la muestra a ser analizada. Generalmente, en un modelobásico de procesamiento, se realiza antes de la imputación de variables. Enla revisión de trabajos relacionados con la selección de variables se con-sidera relevante el estudio de Aldehim [6], que hace diferencias entre losenfoques PART y ALL en términos de similitud, estabilidad y precisión yque estudia la utilización de parte del conjunto de datos o el total de obser-vaciones disponible. Los experimentos realizados utilizan dataset sintéticosy del mundo real. Este estudio se centra en encontrar un subconjunto de ca-racterísticas, descartando los dos métodos de representación de FS: vectorde clasificación y vector de puntuación de ponderación. Pero para evaluarla precisión al determinar las características relevantes es necesario aplicaralgoritmos de clasificación y obtener el promedio de la precisión.

En datos con alta dimensionalidad es común utilizar algoritmos de se-lección de variables, estos forman parte de modelos orientados a extracción

58

Capítulo 3. Imputación de datos

de conocimiento. El objetivo principal de utilizar estos algoritmos es ob-tener modelos más simples gracias a la reducción en la dimensión de losdatos, con mejoras considerables en costos computacionales. Por ello sonmuy utilizados en la etapa de pre-procesamiento de datos. El estudio deLi et al [71] realiza un análisis de diferencias y similitudes entre algoritmosde selección de características y sus avances utilizando datos convenciona-les, estructurados, heterogéneos y generados en tiempo real (streaming).A continuación revisamos algunos métodos utilizados para selección devariables.

3.3. Selección de variables representativas

El procesamiento de datos provenientes de censos o encuestas, repre-senta un problema tanto en costos computacionales como en capacidad deprocesamiento de los algoritmos. Pese a que el tamaño de la base de datoses relativamente grande, el verdadero problema radica en el número deatributos que contiene y el tipo de datos de cada atributo.

Los algoritmos son capaces de procesar los datos con una dimensionali-dad adecuada, pero en el caso de alta dimensionalidad y grandes volúmenesde datos es imprescindible la selección de variables relevantes. Como unejemplo de estos tipos de datos tenemos los datos provenientes de censosque son de gran tamaño y dimensionalidad pero no todos los atributostienen importancia dentro del análisis de una variable específica (predeciruna variable) o en el análisis de un indicador.

Por lo mencionado anteriormente la reducción de dimensionalidad esuna tarea importante que permite disminuir uno de los problemas máscomunes encontrados en los estudios revisados, la capacidad de procesa-miento de los distintos algoritmos de aprendizaje automático al utilizaratributos que no aportan de forma significativa a la predicción de varia-bles específicas.

Por otro lado, algunos estudios se plantean si es conveniente trabajarcon todos los datos o con una muestra (enfoque PART o ALL), tomar unadecisión como ésta se debe basar en el tipo de datos utilizados porque sepuede subestimar la muestra o sesgar los resultados. En muchos estudios

59

3.3. Selección de variables representativas

que utilizan datos sintéticos no se presenta este problema debido a quelos datos generados contienen un número preestablecido de atributos concierto nivel de ruido.

En datos que siguen algún tipo de distribución, como es el caso delos datos provenientes de censos o encuestas, es más recomendable unareducción de dimensionalidad a tratar con una muestra de los datos, porel sesgo y por la pérdida de información que podría eliminar o minimizarla tendencia de los datos en relación de una variable o un conjunto devariables, como por ejemplo descartar la ubicación geográfica afectando demanera considerable los resultados obtenidos.

A continuación describimos las técnicas estadísticas y de aprendizajeautomático más utilizadas para este proceso.

3.3.1. Prueba ji-cuadrado (χ2)

Existen distintas alternativas estadísticas para el análisis de datos ydeterminar si existe independencia entre variables, como son la prueba χ2,la prueba exacta de fisher, la prueba de McNemar entre otras. Para nuestrocaso haremos una breve revisión de una de las pruebas más utilizadas enel campo estadístico, la prueba χ2. Esta prueba permite estimar si dosvariables están o no relacionadas, por lo que se utiliza para determinarla dependencia y/o independencia entre dos variables categóricas, con unnivel de confianza fijado inicialmente [36].

En el campo de salud se utiliza esta prueba con un alto nivel de con-fianza para probar si dos variables están o no relacionadas y poder verificarlos factores estrechamente relacionados con la aparición de alguna patolo-gía [90].

Su cálculo se realiza mediante la siguiente fórmula:

χ2 =N∑

i=1

n∑j=1

(Oij − Eij)2

Eij(3.1)

donde, Oij representa las frecuencias observadas y Eij las frecuenciasesperadas.

Se puede observar que la prueba χ2 mide la diferencia entre el valorde las variables si fuesen independientes y el valor observado. Por tanto,

60

Capítulo 3. Imputación de datos

cuando mayor sea el valor del estadístico mayor será la relación existenteentre las dos variables.

3.3.2. Análisis de Componentes Principales (PCA)

Es un método estadístico utilizado para la reducción de dimensiona-lidad de un conjunto de datos, transformando un conjunto reducido devariables en un nuevo conjunto de variables no correlacionadas a las que sedenominan componentes principales [62]. Mediante su varianza podemosdescribir cuanta información incorporada tiene cada componente, a mayorinformación mayor será sú varianza.

Estas componentes se expresan mediante una combinación lineal de lasvariables originales, por ello, si las variables originales están muy correla-cionadas entre sí, podemos reducir considerablemente el número variablesa través de PCA, pero si las variables originales no están correlacionadas,no tendrá sentido aplicar este método, porque el resultado de PCA seríael conjunto de datos original.

Dado un conjunto de datos con variables (v1, v2, v3, ..., vn), se generaun nuevo conjunto de datos (w1, w2, w3, ..., wp) cuyas variables son combi-nación lineal del conjunto original, con p < n.

Las variables del conjunto w son de la forma:

wj = aj1v1 + aj2v2 + ...+ ajnvn = a′jV (3.2)

donde a′j es un vector de constantes y j = 1, .., p.

3.3.3. Bosques Aleatorios (Random Forest, RF)

Es un algoritmo de aprendizaje supervisado que combina un gran nú-mero de árboles de decisión independientes, es ampliamente utilizado enregresión y clasificación, tanto para variables categóricas como cuantitati-vas, introducido por Breiman en 2001 [44].

Bosques Aleatorios es un conjunto de árboles de clasificación o regre-sión no podados que se crean a partir de muestras aleatorias de los datosde entrenamiento y selección de características en la inducción de árbo-les [109]. En RF sólo un conjunto de características aleatorio es tomado en

61

3.4. Imputación de valores perdidos

consideración por el algoritmo para dividir un nodo, buscando la mejor ca-racterística entre este subconjunto aleatorio. Esto permite que los árbolesgenerados sean más aleatorios para cada característica utilizando umbralesaleatorios para cada una de ellas [45].

Figura 3.1: Ejemplo de selección de variables con RF

La Figura 3.1 muestra un ejemplo de selección de variables aplicandoRF al conjunto de datos utilizados en este estudio.

3.4. Imputación de valores perdidos

En esta sección se describen las técnicas tradicionales de imputación dedatos perdidos así como las técnicas basadas en algoritmos de aprendizajeautomático.

Existen diferentes métodos para el manejo de datos faltantes o ausentesque se clasifican en dos grandes categorías: los métodos que se basan endescartar una parte de la muestra y aquellos que se basan en reemplazarlos datos ausentes con valores imputados.

Aquí tratamos los métodos para tratar datos ausentes, eliminando oreemplazando los valores faltantes con métodos estadísticos o basados en

62

Capítulo 3. Imputación de datos

algoritmos de aprendizaje automático. Las técnicas para tratar datos au-sentes las podemos clasificar en:

Métodos de Eliminación.

Métodos de Imputación.

3.4.1. Métodos de Eliminación

En este caso encontramos dos métodos ampliamente discutidos y utili-zados: Listwise Deletion y Pairwise Deletion [23].

Pairwise Deletion: Este método hace uso de toda la informacióndisponible y consiste en utilizar en el análisis de cada variable todoslos datos disponibles, por esto se lo conoce con el nombre de Métodode datos disponibles. Es posible calcular covarianzas entre cada par devariables utilizando todos los casos disponibles. Si una de las variablescontiene demasiados datos ausentes se elimina la variable.

Para que el subconjuto no se reduzca de manera considerable, utilizadistintos tamaños de muestras (dependiendo de la variable) e ignoralos valores ausentes, previamente realiza un análisis de variables quedescriben esta columna.

Figura 3.2: Aplicación del método pairwise.

63

3.4. Imputación de valores perdidos

La Figura 3.2 muestra una variable con alto número de valores au-sentes, al aplicar el método pairwise la variable p143p será eliminada.

Listwise Deletion: Este método se basa en descartar las filas quecontienen al menos un valor ausente. Este método también es llamadoMétodo de caso completo, pues sólo considera el subconjunto de datoscompleto. Debemos tener en cuenta que si los datos provienen de unamuestra probabilística, esté método no es adecuado.

El mayor inconveniente en este método es sin duda tratar con unagran cantidad de variables, el subconjunto completo que se obtienepuede ser insuficiente o puede obtener resultados sesgados [87].

Figura 3.3: Aplicación del método listwise.

La Figura 3.3 muestra las observaciones que serán eliminadas al apli-car el método listwise (marcadas en rojo).

3.4.2. Métodos de Imputación

En este caso se realiza la imputación de datos, que es un procedimien-to que utiliza información de la muestra para asignar un valor al datoausente. Generalmente la imputación de datos se realiza en la etapa de

64

Capítulo 3. Imputación de datos

pre–procesamiento [11]. Existen varias técnicas para la imputación de da-tos, pero se debe escoger la técnica más adecuada de acuerdo al tipo devariable.

Los datos erróneos o la ausencia de ellos se reemplaza mediante valoresválidos empleando métodos de imputación, que permite tener un conjun-to de datos completo y consistente sobre el cuál se puede trabajar. Deacuerdo al tipo de datos ausentes, podemos considerar distintos métodosque permitan la imputación de datos. Las técnicas empleadas para estatarea son diversas y con diferentes niveles de complejidad [52]. Una delas alternativas más utilizadas para la imputación de valores perdidos esla imputación múltiple (IM), que consiste en generar m–nuevos datasetscompletos a partir de los datos incompletos.

A continuación se describen los tipos de imputación utilizados y cómoagrupan las diferentes técnicas orientadas a imputar datos ausentes:

Imputación Simple (IS): En este método se ignoran las carac-terísticas individuales y en el caso de variables numéricas se sueleutilizar la media para reemplazar los datos ausentes, mientras en lasvariables categóricas se usa la moda o la mediana [93].

Imputación Multiple (IM): En este caso se asigna a cada da-to ausente varios valores (m > 1), generando m conjuntos de datoscompletos. En cada conjunto el valor del dato imputado suele variar.Al final se realiza un análisis estadístico ordinario de los m conjuntoscompletos y se combinan los resultados usando las reglas de combi-nación de Little y Rubin [72].

El método propuesto por Bacallao [46] para datos categóricos es unavariante de este método (IM), utiliza árboles de clasificación y elalgoritmo de aumento de datos (Data Augmentation) [99] .

A continuación analizamos algunos criterios requeridos para escoger latécnica más adecuada de imputación de datos:

Distribución de la variable: el resultado de la imputación debe pro-ducir una distribución de la variable similar a la real.

65

3.4. Imputación de valores perdidos

Correlación entre variables: la imputación debe mantener las relacio-nes entre variables sin alteraciones.

Consistencia: los valores obtenidos en la imputación deben ser con-sistentes con las demás variables.

Existen dos grupos de técnicas para la imputación de los datos: méto-dos estadísticos y basados en técnicas de aprendizaje automático [58]. Acontinuación se describe varios métodos que pertenecen a los grupos antesmencionados.

3.4.2.1. Métodos estadísticos

Entre los métodos estadísticos podemos encontrar:

Imputación con la Media (Mean imputation): Este método consisteen reemplazar los datos faltantes con la media muestral de los da-tos válidos de la variable. Es aplicable sólo a datos numéricos, unproblema de este método es que distorsiona la distribución de losdatos.

Imputación con la Mediana (Median imputation): Este método seorienta a reemplazar los valores ausentes de una determinada variablecon la mediana de la misma. Se utiliza para variables continuas ycategóricas ordinales. Es muy fácil de implementar pero tiende acambiar los valores de las estimaciones.

Máxima Probabilidad (Maximum Likelihood): Es un proceso iterativoque modela los datos ausentes en función de los datos disponibles [84].Se basa en factorizar la función de verosimilitud de los datos.

Cubierta Caliente (Hot-Deck): Este método consiste en reemplazar elvalor faltante en una variable o atributo con el valor correspondientede una unidad de respuesta similar [8]. Es decir, busca en un conjuntode datos completos qué fila tiene mayor coincidencias en las distintasvariables, a ese individuo se lo conoce como donante (donor), con lafila del dato ausente receptor (donee), entonces reemplaza el valorperdido con el valor de la columna correspondiente del donante [84].

66

Capítulo 3. Imputación de datos

Imputación Múltiple (Multiple Imputation): Basada en regresión,consiste en imputar varias veces el valor faltante, por lo que resul-ta un procedimiento con cierto nivel de complejidad. Cada una delas imputaciones se basan en parámetros de regresión a partir de losdatos observados [85].

3.4.2.2. Métodos basados en algoritmos de inteligencia artificial

En este grupo de métodos podemos encontrar:

K-media (k-Means): Se seleccionan aleatoriamente k objetos del da-taset completo como k-centroides, se modifica iterativamente la par-tición del cluster al que pertenece el objeto [51].

K-moda (k-Modas): Es un algoritmo similar al k-media utilizado pa-ra variables numéricas, pero reemplazado por la moda de las varia-bles categóricas en lugar de la media utilizada en variables numéri-cas [110].

k-Vecinos más cercanos (K-Nearest Neighbors (KNN)): El algoritmokNN pertenece a la familia de métodos basado en instancias. Estosmétodos se basan en el principio de que las instancias dentro de unconjunto de datos generalmente existen en lugares cercanos a otrasobservaciones que poseen atributos similares [43].

Árboles de decisión (Decision-tree): Es ampliamente empleado paravariables categóricas. Es un algoritmo recursivo que requiere de va-riables explicativas para poder discriminar a la población y conseguirimputar una variable. El algoritmo usa la ganancia de informaciónpara encontrar el mejor atributo para imputar los datos [96].

Mapas Auto Organizados (Self-Organizing Map (SOM)): Es un mo-delo de red neuronal formado por un conjunto de nodos organizadosen una matriz. SOM utiliza aprendizaje competitivo, el cual defineuna vecindad espacial para cada unidad de salida preservando su to-pología, patrones de entrada cercanos producen unidades de salidacercanas en el mapa [37].

67

3.5. Imputación de datos basada en técnicas de Inteligencia Artificial

Percepciones Multicapa (Multilayer perceptrons): Es una red neuro-nal artificial que es utilizada para tratar problemas que no puedenser linealmente separables, está formada por múltiples capas [107].

3.5. Imputación de datos basada en técnicas deInteligencia Artificial

En esta sección se propone una versión inicial del proceso de imputación(clasificación) realizando una generación manual de clusters (grupos) uti-lizando una de las variables que describe la división geográfica del datasetde pruebas.

La Figura 3.4 describe el proceso seguido para la generación del datasetutilizado para imputar una variable.

Dataset original

Selección deatributos relevantes

Determinar variablea imputar

Eliminar observacionescon NA (no aplica)

Dataset final

Figura 3.4: Modelo básico para procesar información

68

Capítulo 3. Imputación de datos

Los pasos seguidos en el proceso de imputación son:

1. Se parte del dataset original.

2. Se procede a seleccionar los atributos más relevantes.

3. Se determina la variable a imputar.

4. Se elimina las observaciones que presentan valores NA en otras va-riables que no sean la variable a imputar.

5. Finalmente se obtiene un dataset sin valores NA (No Aplica) envariables que no sean la variable a imputar.

Luego de obtener el dataset completo, se procede a aplicar los métodostradicionales de imputación descritos en la sección 3.4.2 y los resultadosobtenidos se presentan en la sección 3.6.

3.5.1. Modelo para imputar datos

Una vez que tenemos las variables más representativas debemos enfo-carnos en el proceso de imputación de datos. La Figura 3.5 describe elproceso seguido para imputar la variable utilizando clusters.

Partiendo del dataset original, se generan n–clusters, y se clasifica(imputa) cada cluster por separado. Al finalizar este proceso, uniendo to-dos los clusters generados en la fase inicial, se obtiene el dataset completocon todos los valores perdidos clasificados (imputados).

3.6. Experimentación

En esta sección se presentan algunos resultados obtenidos al aplicarvarios algoritmos tradicionales de imputación y la metodología propues-ta (generación manual de clusters) sobre el dataset correspondiente a laprovincia de Imbabura introducidos en la sección 2.3

De este universo, se ha seleccionado la información que permite calcularla Mortalidad Infantil definido en [76] por lo que se considera únicamenteinformación del grupo Personas.

69

3.6. Experimentación

Dataset original

Generar n–clusters

Imputar cada cluster

Variable imputada

Figura 3.5: Modelo básico para procesar información por clusters

La pruebas se realizaron utilizando una muestra de la provincia deImbabura, cuyo universo tiene una población de 398,244 habitantes, de loscuales para la muestra se consideró la población correspondiente a mujerescon un total de 204,580 registros. De esta muestra sólo se consideran losregistros que cumplen las siguientes características:

Sexo: mujer

Edad: entre 15 y 50 (incluidos)

Bajo estas consideraciones se obtiene un dataset con 104,501 observa-ciones (registros que cumplen con las dos condiciones antes mencionadas).

Se recodificaron los valores especiales como 9, 98, 99 (valores fuera derango o extremos) a valores NA.

Se eliminaron las variables que presentan muchos valores NA como p06y p25. La variable p01 (sexo) se eliminó ya que el universo corresponde amujeres (p01=2).

Finalmente, se eliminan todas las observaciones que contienen al menosun valor NA, esto da como resultado un dataset con 60,662 observacionesel cual constituye el dataset completo para los experimentos.

Previo al análisis, la información debe ser unificada y en algunos casoscorregida, como por ejemplo variables con valores atípicos como 99 los que

70

Capítulo 3. Imputación de datos

deberían ser considerados como valores perdidos. Este proceso se llevó acabo para todas las variables del dataset.

Las tablas 3.1 y 3.3 muestran el detalle de los atributos mencionadosanteriormente.

Tabla 3.1: Atributos con valores perdidos

Variable Descripción Total NA

p08 Tiene discapacidad permanente por más de un año 5,496p23 Cuál es el nivel de instrucción más alto al que asiste

o asistió1,795

p24 Cuál es el grado, curso o año más alto que aprobó 7,232p36 Cuántos hijos e hijas nacidos vivos ha tenido durante

toda su vida1,292

p36m Cuántas hijas nacidas vivas ha tenido durante todasu vida

1,185

p36h Cuántos hijos nacidos vivos ha tenido durante todasu vida

107

p37 Total de Hijos Vivos Actualmente 34,819p38 A qué edad tuvo su primer hijo o hija 36,333

graesc Grados de escolaridad 7,232

Para la realización de pruebas se generó, de forma aleatoria, un con-junto de valores perdidos (NA) sobre la variable graesc correspondiente al20% del total de observaciones. La Tabla 3.2 detalla las características deldataset de prueba.

Tabla 3.2: Dataset de pruebas

Descripción

Total de atributos 22Total de observaciones 60,662Total valores perdidos (NA) 12,132

71

3.6. Experimentación

Tabla 3.3: Porcentaje de valores perdidos por atributo

Nombre Descripción Porcentaje NA

i01 provincia 0.0i02 cantón 0.0i03 parroquia 0.0i04 zona 0.0i05 sector 0.0urp área urbano/rural 0.0p01 sexo 0.0p03 edad 0.0p04a mes de nacimiento 0.0p04m año de nacimiento 0.0p06 Está inscrito en el Registro Civil 96.8p08 Tiene discapacidad permanente por más de un año 5.3p16 Cómo se identifica según su cultura y costumbres 0.0p19 Sabe leer y escribir 0.0p23 Cuál es el nivel de instrucción más alto al que asiste

o asistió1.7

p24 Cuál es el grado, curso o año más alto que aprobó 6.9p25 Tiene algún título de nivel superior o postgrado 76.6p34 estado conyugal 0.0p36 Cuántos hijos e hijas nacidos vivos ha tenido durante

toda su vida1.2

p36m Cuántas hijas nacidas vivas ha tenido durante todasu vida

1.1

p36h Cuántos hijos nacidos vivos ha tenido durante todasu vida

0.1

p37 Total de Hijos Vivos Actualmente 33.3p38 A qué edad tuvo su primer hijo o hija 34.8

graesc Grados de escolaridad 6.9

3.6.1. Plataforma de Prueba

La plataforma sobre la cual se realizaron las pruebas corresponde a:

Procesador: Intel(R) Core(TM) i5-5200 CPU.

Velocidad del procesador: 2.20GHz.

72

Capítulo 3. Imputación de datos

Memoria RAM: 16.0GB.

Sistema Operativo: Windows 10 Pro 64 bits.

Software: R Project for Statistical Computing1 versión 3.4.4 64 bits.

Librerías: Hmisc2 (imputación con mediana y moda), VIM3 (impu-tación con hot-deck), H2O4.

3.6.2. Selección de atributos

En esta sección se presentan los resultados de aplicar el método bosquesaleatorios (random forest) para seleccionar los atributos más representa-tivos. El proceso de selección de atributos mediante bosques aleatorios serealizó utilizando la librearía H2O sobre R debido a que no es posibleprocesarlo en R por limitaciones de memoria.

3.6.2.1. Random Forest

Mediante el dataset descrito en la sección 3.6.3 se realizó la clasificaciónde la variable graesc utilizando el algoritmo de Random Forest. El métodose ejecutó con una precisión de 89.83 % con un número de árboles igual a200.

La Figura 3.6 muestra el error del clasificador en función del númerode árboles, como se puede observar, a partir de 40 árboles, el error esconstante. Esto muestra que con 40 árboles es suficiente para obtener unaprecisión de 86 % (aproximadamente).

La Tabla 3.4 muestra la importancia relativa de cada una de las varia-bles (ver Tabla 3.3).

Como se puede observar en la Tabla 3.4, las variables más representa-tivas son:

p24: Cuál es el grado, curso o año más alto que aprobó.

p23: Cuál es el nivel de instrucción más alto al que asiste o asistió.1https://www.r-project.org/2https://cran.r-project.org/web/packages/Hmisc/index.html3https://cran.r-project.org/web/packages/VIM/index.html4https://www.h2o.ai/

73

3.6. Experimentación

Figura 3.6: Random Forest - Error vs. número de árboles

Mientras que las variables que menos aportan al modelo son:

urp: Area urbano/rural.

p19: Sabe leer y escribir.

p08: Tiene discapacidad permanente por más de un año.

Ejecutando de nuevo la clasificación con igual número de árboles (200),pero utilizando solamente las 2 variables más importantes (ver Tabla 3.4),se obtiene una precisión del 89.32%.

La Figura 3.7 muestra el error del clasificador en función del númerode árboles, como se puede observar, a partir de 1 o 2 árboles, el error esconstante.

La Tabla 3.5 muestra la importancia relativa de cada una de las varia-bles (ver Tabla 3.3).

74

Capítulo 3. Imputación de datos

Tabla 3.4: Random Forest - Importancia relativa de variables (a)

No. Variable Importanciarelativa

Importancia relativanormalizada

Porcentaje

1 p24 1,147,775.750000 1.000000 0.3704032 p23 1,128,546.375000 0.983246 0.3641973 p38 83,312.062500 0.072586 0.0268864 p04m 80,410.109375 0.070057 0.0259495 p04a 79,847.375000 0.069567 0.0257686 p03 79,680.320312 0.069422 0.0257147 i05 78,811.421875 0.068664 0.0254338 i04 63,298.328125 0.055149 0.0204279 p16 39,915.035156 0.034776 0.01288110 p36 39,641.273438 0.034537 0.01279311 i02 39,151.269531 0.034111 0.01263512 p34 39,061.355469 0.034032 0.01260613 i03 37,435.160156 0.032615 0.01208114 p37 37,075.160156 0.032302 0.01196515 p36h 34,043.679688 0.029661 0.01098616 p36m 33,356.085938 0.029062 0.01076417 urp 27,352.345703 0.023831 0.00882718 p19 23,858.568359 0.020787 0.00769919 p08 6,153.317871 0.005361 0.001986

Tabla 3.5: Random Forest - Importancia relativa de variables (b)

No. Variable Importanciarelativa

Importancia relativanormalizada

Porcentaje

1 p24 73,471.460938 1.000000 0.5069922 p23 71,444.843750 0.972416 0.493008

Esto muestra que la variable graesc puede ser predecida con una pre-cisión aceptable utilizando solamente la variables p24 y p23.

3.6.3. Imputación con métodos estadísticos

En esta sección se presentan los resultados de aplicar varios métodosde imputación al dataset descrito en la sección anterior. A continuación se

75

3.6. Experimentación

Figura 3.7: Random Forest - Error vs. número de árboles (variables representa-tivas)

presenta el detalle de la variable a imputar (graesc):

Valor mínimo: 1

Valor máximo: 25

Mediana: 11

Moda: 8

Total NA: 12,132

La Figura 3.8 presenta la distribución por categoría de la variablegraesc.

Los métodos estadísticos de imputación analizados corresponden a:

Median

Mode

Hot-deck

76

Capítulo 3. Imputación de datos

Figura 3.8: Detalle variable graesc

3.6.3.1. Imputación dataset completo

La primera prueba realizada corresponde a la imputación de la variablemencionada anteriormente utilizando el dataset completo. La Tabla 3.6muestra los resultados de aplicar la imputación utilizando los métodoslistados anteriormente.

Tabla 3.6: Métodos estadísticos - Imputación dataset completo

Método Imputados válidos Imputados con error Precisión (%)

Mediana 889 11,243 7.33Moda 3,429 8,703 28.26Hot-deck 1,554 10,578 12.81

En el caso de la mediana, se procedió a reemplazar todos los valoresperdidos (12,132 en total, ver Tabla 3.2) con el valor de la mediana (11)y a continuación se verificó qué valores fueron imputados correctamentecomparándolos con los datos originales. De este proceso, 889 valores fueronimputados correctamente (coinciden con los valores originales del datasetde pruebas) y 11,243 valores fueron imputados de forma incorrecta (nocoinciden con el valor original), esto da una precisión de 7.33%.

En el caso de la moda, se procedió a reemplazar todos los valores perdi-

77

3.6. Experimentación

dos (12,132 en total) con el valor de la moda (8) y a continuación se verificóqué valores fueron imputados correctamente comparándolos con los datosoriginales. De este proceso, 3,429 valores fueron imputados correctamente(coinciden con los valores originales del dataset de pruebas) y 8,703 valoresfueron imputados de forma incorrecta (no coinciden con el valor original),esto da una precisión de 28.26%.

En el caso de hot-deck, se procedió a reemplazar todos los valores perdi-dos (12,132 en total) y a continuación se verificó qué valores fueron impu-tados correctamente comparándolos con los datos originales. De este proce-so, 1,554 valores fueron imputados correctamente (coinciden con los valoresoriginales del dataset de pruebas) y 10,578 valores fueron imputados de for-ma incorrecta (no coinciden con el valor original), esto da una precisión de12.81%.

3.6.3.2. Imputación por clusters

La siguiente prueba consiste en crear grupos o clusters de observacionesde forma manual utilizando una de las variables del dataset, en este casose consideró la división geográfica de cantón (variable i02 ), con lo cual segeneraron 6 clusters. La Tabla 3.7 muestra el detalle de los clusters creadosde forma manual (12,132 valores NA en total).

Tabla 3.7: Clusters generados manualmente

No. cluster Tot. elementos Mediana Moda Tot. NA

1 30,351 13 8 6,0492 6,882 9 8 1,3553 4,978 8 8 1,0314 14,354 8 8 2,8735 1,967 8 8 4016 2,130 8 8 423

La Tabla 3.8 muestra los resultados de aplicar la imputación utilizandoa cada uno de los clusters utilizando los métodos listados anteriormente.Al final del proceso, los resultados parciales se consolidaron sobre la regióngeográfica completa.

78

Capítulo 3. Imputación de datos

Tabla 3.8: Métodos estadísticos - Imputación por clusters

Método Imputados válidos Imputados con error Precisión (%)

Mediana 1,876 10,526 15.46Moda 3,429 8,704 28.26Hot-deck 1,663 10,469 13.71

En el caso de la mediana, se procedió a reemplazar todos los valoresperdidos de cada uno de los clusters con el valor de la mediana de dichocluster y a continuación se verificó qué valores fueron imputados correcta-mente comparándolos con los datos originales. De este proceso, sumandolos valores imputados correctamente en todos los clusters, 1,876 valoresfueron imputados correctamente (coinciden con los valores originales deldataset de pruebas) y 10,526 valores fueron imputados de forma incorrecta(no coinciden con el valor original), esto da una precisión de 15.46%.

En el caso de la moda, se procedió a reemplazar todos los valores per-didos de cada uno de los clusters con el valor de la moda de dicho clustery a continuación se verificó qué valores fueron imputados correctamentecomparándolos con los datos originales. De este proceso, sumando los va-lores imputados correctamente en todos los clusters, 3,429 valores fueronimputados correctamente (coinciden con los valores originales del datasetde pruebas) y 8,704 valores fueron imputados de forma incorrecta (no coin-ciden con el valor original), esto da una precisión de 28.26%. En este caso,la precisión coincide con la imputación sin realizar ningún cluster.

En el caso de la mediana, se procedió a reemplazar todos los valoresperdidos de cada uno de los clusters y a continuación se verificó qué valoresfueron imputados correctamente comparándolos con los datos originales.De este proceso, sumando los valores imputados correctamente en todoslos clusters, 1,663 valores fueron imputados correctamente (coinciden conlos valores originales del dataset de pruebas) y 10,469 valores fueron impu-tados de forma incorrecta (no coinciden con el valor original), esto da unaprecisión de 13.71%.

El anexo A presenta el detalle de cada uno de los clusters, así como laprecisión de imputación en cada cluster.

79

3.6. Experimentación

3.6.4. Imputación con métodos de aprendizaje automático

En esta sección se presentan los resultados de aplicar varios métodosde aprendizaje automático (métodos supervisados) al dataset descrito enla sección anterior. A continuación se presenta el detalle de la variable aimputar (graesc):

3.6.4.1. Imputación dataset completo

La primera prueba realizada corresponde a la imputación de la variablemencionada anteriormente utilizando el dataset completo. La Tabla 3.9muestra los resultados de aplicar la imputación utilizando los siguientesmétodos de clasificación:

kNN, k=5

Decision Trees

RandomForest, número de árboles=500

Tabla 3.9: Métodos ML - Imputación dataset completo

Método Imputados válidos Imputados con error Precisión (%)

kNN 4,933 7,199 40.66Decision Trees 8,752 3,380 72.21Random Forest 9,683 2,449 79,98

En el caso de knn, se procedió a clasificar la variable graesc utilizan-do las variables restantes y a continuación se verificó qué valores fueronclasificados correctamente comparándolos con los datos originales. De esteproceso, 4,933 valores fueron clasificados correctamente (coinciden con losvalores originales del dataset de pruebas) y 7,199 valores fueron clasifica-dos de forma incorrecta (no coinciden con el valor original), esto da unaprecisión de 40.66%.

Para los otros métodos de clasificación (Decision Trees y Random Fo-rest), el proceso es similar al descrito anteriormente.

80

Capítulo 3. Imputación de datos

3.6.4.2. Imputación por clusters

La siguiente prueba consiste en crear grupos o clusters de observacionesde forma manual utilizando una de las variables del dataset, en este casose consideró la división geográfica de cantón (variable i02 ), con lo cual segeneró 6 clusters.

La Tabla 3.10 muestra el detalle de los clusters creados manualmente.Para cada cluster se indica el total de observaciones y el total de valoresperdidos en el cluster.

Tabla 3.10: Clusters generados manualmente

No. cluster Tot. elementos Tot. NA

1 30,351 6,0492 6,882 1,3553 4,978 1,0314 14,354 2,8735 1,967 4016 2,130 423

La Tabla 3.11 muestra la clasificación de los datos por cada uno de losclusters creados manualmente utilizando el método kNN. La tabla muestrael número de observaciones utilizadas para el entrenamiento (Training),el número de observaciones utilizadas para pruebas (Test), el número deobservaciones de prueba clasificadas correctamente (Válidos) y la precisión(Precisión).

Tabla 3.11: knn–Imputación de cada cluster

No. cluster Training Test Válidos Precisión (%)

1 24,302 6,049 2183 36.092 5,527 1,355 550 40.593 3,947 1,031 443 42.974 11,481 2,873 1133 39.435 1,566 401 188 46.886 1,707 423 194 45.86

81

3.7. Conclusiones

El proceso par aplicar los otros métodos de aprendizaje automático(Decision Tree y Random Forest) es similar al indicado anteriormente parael método kNN.

La Tabla 3.12 muestra los resultados de aplicar la imputación medianteaprendizaje automático utilizando la generación de clusters.

Tabla 3.12: Métodos ML - Imputación por clusters

Método Imputados válidos Imputados con error Precisión (%)

kNN 4,691 7,441 38.67Decision Tree 10,330 1,802 85.14Random Forest 10,004 1,304 88.47

3.7. Conclusiones

La generación de los grupos se los realiza de forma manual utilizandocomo variable que define los grupos, una variable que describe la divisióngeográfica de cantón, esto permite generar 6 grupos que comparten lascaracterísticas espaciales.

Como se puede observar de las tablas 3.8 y 3.12, la generación de clus-ters (grupos) de forma manual mejora ligeramente la clasificación (impu-tación) de los datos.

Con los resultados encontrados hasta el momento podemos concluirque el proceso de clasificación de variables depende directamente del ti-po de datos, del tamaño de la muestra, de los algoritmos utilizados y lametodología que apliquemos en el procesamiento de datos. Por esto, en elsiguiente capítulo aplicaremos el modelo propuesto (completo) para validarlas mejoras alcanzadas.

82

Capítulo 4

Procesamiento inteligente dedatos socio-demográficos

En este capítulo se presentan los resultados de la aplicación delmodelo propuesto para imputar datos socio-demográficos. Se pre-sentan resultados y algunas comparaciones. El capítulo está orga-nizado en las siguientes secciones: la sección 4.1 presenta una breveintroducción a la metodología aplicada, la sección 4.2 analiza deforma rápida el procesamiento de información y los pasos a seguiren la etapa de pre-procesamiento, la sección 4.3 realiza el procesopara selección de variables mediante Random Forest, la sección 4.4describe el método utilizado para la generación de clusters median-te SOM-Jerárquico, la sección 4.5 presenta el método para generarclusters mediante GNG, la sección 4.6 analiza los clusters gene-rados, la sección 4.7 presenta los resultados al imputar datos, lasección 4.8 muestra de forma gráfica la distribución de datos delcluster de forma espacial y el cálculo de la TMI, finalmente, lasección 4.9 presenta algunas conclusiones.

4.1. Introducción

En este capítulo se emplea la metodología propuesta en la sección 2.4para la clasificación (imputación) de información categórica provenientesde censos o encuestas cuyas características son el gran volumen de datos y

4.2. Análisis de datos

alta dimensionalidad.El procesamiento de conjuntos de datos con un alto número de varia-

bles (dimensionalidad), que son en su mayoría de tipo categóricas, conllevavarios problemas a resolver como: reducción de la dimensionalidad, impu-tación y limpieza de datos, altos costos computacionales entre otros. Comoparte de la metodología se propone una etapa de pre–procesamiento orien-tada a solventar estos problemas.

En el proceso de extracción de conocimiento, es muy común tratar conuna etapa de pre-procesamiento de datos y reducción de dimensionalidad.Parte fundamental de la extracción de información es contar con datos dealta calidad.

En este capítulo se propone la utilización de los métodos Pairwise yListwise como parte del proceso de reducción de dimensionalidad cuandoexiste un alto nivel de datos ausentes presente en una o más variables,en el siguiente paso utilizamos RF para la selección de variables y asícompletar la etapa de reducción de dimensionalidad. Como parte del pre–procesamiento se generan n-clusters mediante el algoritmo SOM.

A continuación se realiza una comparación del rendimiento y precisiónde algoritmos de clasificación con el dataset completo y aplicando los algo-ritmos a cada cluster. Como caso de estudio analizamos qué característicasinfluyen en el nivel de escolaridad de las mujeres en edad fértil analizadaen la sección 3.6.

4.2. Análisis de datos

En el campo del análisis de datos el objetivo principal es la extracciónde conocimiento KDD (Knowledge Discovery in Databases). Este procesocomienza con la obtención de los datos y finalizaría con la aplicación delconocimiento adquirido, sea este para la toma de decisiones o descripciónde un problema o fenómeno. En el pasado se contaba con pocos datosy antes de la aparición de técnicas de análisis de datos, la extracción deconocimiento se realizaba de forma manual, mediante un análisis e inter-pretación por parte de personal especializado en una área específica, siendoeste un método costoso, poco eficaz y altamente subjetivo.

84

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Con el crecimiento de los datos disponibles y tomando en cuenta lasdiversas fuentes que producen datos a velocidades antes impensables (porejemplo redes sociales), se volvió cada vez más necesario encontrar alter-nativas que vayan acorde con las características presentes en los datos (las4V’s, ver Figura 1.1), esto permitió a las técnicas de aprendizaje automáti-co posicionarse en el campo del análisis de datos, como apoyo a las técnicastradicionales.

La mayor parte de las técnicas funcionan de forma adecuada para datosnuméricos, en un menor número encontramos técnicas orientadas a tratarcon datos categóricos, sin embargo muy pocas técnicas pueden manejar losdos tipos de datos de forma simultánea (numéricas y categóricas).

Para la realización de estudios que involucren análisis de datos, seanestos por métodos estadísticos o mediante técnicas de aprendizaje auto-mático, existen pasos fundamentales que se deben dar para la obtenciónde resultados adecuados. Estos pasos o etapas se pueden ejecutar siemprey cuando podamos asumir que los datos son correctos y completos. En lamayoría de los casos, los datos requieren de un proceso previo para consi-derarlos aceptables para el análisis. Por ello, el pre-procesamiento de datosnos permite determinar la validez de los resultados obtenidos de la pre-dicción o si fueron afectados significativamente al no tener un tratamientoadecuado previo al análisis.

La Figura 4.1 muestra las etapas básicas a seguir en el procesamientode los datos.

Figura 4.1: Procesamiento de datos

85

4.2. Análisis de datos

Todo análisis de datos comienza con el proceso de adquisición de datosseguido por la aplicación de filtros necesarios para el buen funcionamientode los algoritmos. En el pre–procesamiento se tratan los datos con unaorientación adecuada dependiendo tanto del tipo de datos como de losalgoritmos que deseamos utilizar para extraer información, el dataset re-sultante de este paso se convierte en la entrada de datos para los algoritmosde aprendizaje automático que serán los encargados de generar informaciónrelevante.

En este estudio se utiliza la información demográfica descrita en lassecciones 2.2.1.1 y 3.6. Una vez definidos los datos con los que vamos atrabajar, pasamos a la etapa de preparación de estos previo a la extracciónde conocimiento como podemos apreciar en la Figura 4.1.

4.2.1. Pre-procesamiento

Los datos a ser analizados provienen del censo de población y viviendade Ecuador del 2010, presentan problemas como ausencia de datos, altadimensionalidad y un gran volumen de datos, por ello es necesario tratarlos datos previo a cualquier análisis. Se pueden definir cuatro fases dentrodel pre-procesamiento de los datos [42]:

Integración

Limpieza

Reducción

Transformación

Cada una de ellas está orientada a tratar los datos de tal manera que,al finalizar el proceso, podamos contar con datos confiables, correctos yconcretos que sean de utilidad para el estudio planteado.

A continuación se describe cada una de las fases de la etapa de procesa-miento a las que fue sometida la información para nuestro caso de estudio.Los bloques de programa que se ilustran en cada sección se correspondencon programas escritos en lenguaje R.

86

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

4.2.1.1. Integración

Para el estudio sobre mortalidad infantil, se integraron los datos pro-venientes de los grupos descritos en la sección 2.2.1.1 del cual se ha se-leccionado el conjunto correspondiente a las observaciones que cumplen lacondición que la variable p01 tenga un valor igual a 2 (sexo = mujer).Sobre este conjunto aplicamos un nuevo filtro a la variable p03 que co-rresponde a edad, en este estudio se deben seleccionar sólo los registros demujeres que están en edad fértil (15-50 años). A continuación mostramosla aplicación de estos filtros.

1 dataset<-poblacion[ , variables]2 dataset<-subset(dataset, p01==2 )3 dataset<-subset(dataset, p03>=15 )4 dataset<-subset(dataset, p03<=50 )

El dataset generado luego de aplicar los dos filtros corresponde a untotal de 104,501 observaciones. Este paso aporta una solución parcial alproblema NMAR eliminando todos los datos ausentes producto de aplicarpreguntas a un sector de personas a las cuales no corresponde contestarcierto grupo de preguntas, como por ejemplo: número de hijos nacidos vi-vos, número hijos varones nacidos vivos a personas de sexo = hombre, eneste caso no se debe imputar valores para estas variables porque seríanincorrectos y produciría información no válida. Con este conjunto proce-demos a ejecutar la siguiente etapa.

4.2.1.2. Limpieza

Para que los datos sean consistentes, se ha detectado si existen valoresperdidos, inconsistentes o ausentes para poderlos corregir, imputar o ensu caso, eliminar. Tomemos el ejemplo de la variable p23 (Cuál es el nivelde instrucción más alto al que asiste o asistió). Esta variable no contienevalores perdidos, sin embargo, al realizar el cálculo de la frecuencia existenvalores igual a 99 (1,776 casos). Estos casos corresponden a personas queno responden, por lo cual se consideran como valores perdidos. De igualmanera se analizan cada una de las variables. Una vez detectados estos

87

4.2. Análisis de datos

casos cuyos valores no son válidos para cada variable, se los reemplaza conNA (no aplica).

1 dataset$p08<-recodeValue2Value(dataset$p08,9,NA)2 dataset$p23<-recodeValue2Value(dataset$p23,99,NA)3 ...

Luego de la asignación de valores perdidos, se eliminaron mediantePairwise deletion las variables para las cuales existe un número alto devalores NA, ver Tabla 3.3 (la proporción de ausencia de datos es tan grandeque la variable no debe ser considerada). En este caso corresponde a lasvariables: p06 (101,126 valores NA) y p25 (80,013 valores NA).

1 colSums(is.na(dataset))2 dataset$p06<-NULL3 dataset$p25<-NULL4 dataset$p01<-NULL

La variable p01 (sexo) fue eliminada porque al realizar el filtro convalor 2 para esta variable, todos los registros del dataset corresponden aMUJER y por lo tanto ya no es representativa para el análisis.

Con estos cambios aplicamos Listwise deletion para eliminar las filasdonde al menos una columna tenga valores NA. En este paso obtenemosun dataset completo que nos permite entrenar el modelo y verificar laexactitud.

1 row.has.na <- apply(dataset, 1, function(x){any(is.na(x))})2 dataset<-dataset[!row.has.na, ]

El resultado del paso anterior corresponde al dataset utilizado paraentrenamiento y pruebas de los diferentes métodos.

4.2.1.3. Reducción

De toda la información disponible en el censo se consideran las "posi-bles" variables que pueden influir en el cálculo de la tasa de mortalidadinfantil según brechas educativas. Mediante el uso de Bosques Aleatorios (en inglés Random Forest - RF) se obtienen las variables más representa-tivas para el cálculo de la variable graesc. Como resultado obtenemos un

88

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

conjunto de datos con un total de 25 variables pero con las consideracionesanteriores el número se reduce a 22.

En la sección 4.3 se trata de forma detallada el proceso de selección devariables con RF.

4.2.1.4. Transformación

Una vez conseguido un dataset completo y concreto, transformamostodas las variables a variables categóricas y, dependiendo del algoritmo aser utilizado, realizamos las transformaciones puntuales requeridas paraser procesados de manera adecuada. Para el uso de métodos de agrupa-ción basados en modelos neuronales como Mapas auto organizativos–SOMy Gases neuronales crecientes (en inglés Growing Neural Gas -GNG) [39]todas las variables son transformadas a binarias. Estos métodos son utili-zados para la generación de clusters.

1 dataset<-dummy.data.frame( dataset, sep=".")

4.3. Random Forest

En esta sección se revisa el proceso a seguir para la generación deranking de variables utilizando Random Forest como proceso para selecciónde variables representativas del modelo descrito en la sección anterior.

En la sección 3.6.2.1 se presentó el proceso de selección de variablespara predecir la variable graesc mediante el algoritmo RF, así como unadescripción de las dos variables que aportan de forma significativa a lapredicción de la variable. Si el objetivo del estudio fuese solo la predicciónde esta variable, no se necesita mucho más que utilizar las dos variablesdescritas y con una precisión del 89.32% imputar los valores ausentes paraesta variable. Sin embargo, analizando los datos originales y tomando encuenta lo descrito en la sección 3.1 sobre los tipos de datos ausentes, de-bemos considerar que al presentar un tipo de ausencia NMAR y MAR, laausencia en esta variable también puede significar ausencia en las variablesrelacionadas, como podemos observar en la Figura 4.2.

89

4.3. Random Forest

Figura 4.2: Muestra del dataset original

Con lo descrito anteriormente y considerando el propósito del estudioque es el cálculo del indicador TMI-SBE, se necesita tomar en cuenta elgrupo de variables que describen la mortalidad infantil y el grupo corres-pondiente a la ubicación geográfica.

Como primer paso se ejecuta el modelo Random Forest en modo nosupervisado y a continuación se utilizan los resultados obtenidos para pre-decir el valor de la variable graesc en función de las variables restantes.

No se consideran las variables geográficas i01, i02, i03, i04, i05 en el pro-ceso de selección de variables. Necesitamos estas variables para el análisisfinal.

4.3.1. Ranking

Para la generación de ranking de variables, se ejecuta un modelo deRandom Forest en modo no supervisado. El proceso de entrenamiento selleva a cabo con 50 árboles y se parametriza para que se entrene de formano supervisada.

1 set.seed(0)2 ratio<-0.13 split = sample.split(dataset$graesc, SplitRatio = ratio)4 training_set = subset(dataset, split == TRUE)5 urf<- randomForest(6 x=training_set,

90

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

7 ntree=50,8 importance = TRUE9 )

Como resultado de la ejecución del modelo anterior podemos obtenerun ranking de importancia de cada una de las variables del dataset. LaFigura 4.3 muestra la importancia de cada una de las variables, comoera de esperar las variables más relevantes son p23, p24, p03 y p38 quecorresponden a: “nivel de instrucción más alto aprobado”, “año o gradomás alto que asistió”, “edad y “a qué edad tuvo su primer hijo”. Todasestas variables influyen de forma directa en temas de educación.

Figura 4.3: Ranking de variables

4.3.2. Clasificación

El mismo modelo se utiliza para realizar una clasificación de la variablegraesc en función de las variables restantes. Al igual que en el modeloanterior, el modelo se parametriza con 50 árboles.

1 urf<- randomForest(2 graesc ~ .,

91

4.3. Random Forest

3 data=training_set,4 ntree=50,5 importance = TRUE,6 proximity = TRUE7 )8 print(urf)

Con esto, el error estimado corresponde al 17.07%.También es posible obtener el ranking de variables de la clasificación.

La Figura 4.4 muestra la importancia de cada una de las variables delmodelo de clasificación.

Figura 4.4: Ranking de variables - clasificación

4.3.3. Random Forest mediante H2O

Debido a la limitación de ejecutar Random Forest con el dataset com-pleto, se optó por ejecutarlo utilizando la librería H2O1 sobre R.

El inconveniente de esta ejecución es que solo soporta la ejecución enmodo supervisado (clasificación) a diferencia de R que soporta la ejecución

1https://www.h2o.ai/

92

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

en modo no supervisado.

Todas las variables son de tipo categórico, con lo que el modelo corres-ponde a un modelo de clasificación.

Del total de observaciones se utiliza el 80% para entrenamiento y 20%para prueba. El número de árboles generados corresponde a 200.

Para la ejecución en modo supervisado se utiliza como variable a pre-decir la variable graesc.

En la Tabla 4.1 se presenta el ranking de variables indicando la impor-tancia relativa de cada una.

Tabla 4.1: Random Forest - Importancia relativa de variables (c)

No. Variable Importanciarelativa

Importanciarelativa

normalizada

Porcentaje

1 p24 1,579,690.500000 1.000000 0.3680542 p38 489,155.031250 0.309652 0.1139693 p04m 425,017.281250 0.269051 0.0990254 p04a 375,904.156250 0.237961 0.0875825 p03 374,609.062500 0.237141 0.0872816 p34 170,167.281250 0.107722 0.0396477 p16 165,369.500000 0.104685 0.0385308 urp 134,247.625000 0.084983 0.0312799 p36 131,770.453125 0.083415 0.03070110 p37 129,388.507812 0.081908 0.03014611 p36m 124,582.335938 0.078865 0.02902712 p36h 124,255.882812 0.078658 0.02895113 p19 23,494.177734 0.014873 0.00547414 p23 23,429.886719 0.014832 0.00545915 p08 20,925.957031 0.013247 0.004876

La Tabla 4.2 contiene el listado de variables seleccionadas por el métododescrito en la sección 4.3 y el número de valores perdidos en cada una deellas. De modo similar, la Tabla 3.3 presenta valores del porcentaje de NAen el que las variables p06 y p25 “al tener un alto porcentaje de NA” fueroneliminadas.

93

4.3. Random Forest

Tabla 4.2: Variables a considerar

Variable Descripción TotalNA

i01 Provincia 0i02 Cantón 0i03 Parroquia 0i04 Zona 0i05 Sector 0urp Area urbana o rural 0p01 Cuál es el Sexo 0p03 Cuántos años cumplidos tiene 0p04a Cuál es el año en que nació 0p04m Cuál es el mes en que nació 0p08 Tiene discapacidad permanente por más de un año 5,496p16 Como se identifica según su cultura y costumbres 0p19 Sabe leer y escribir 0p23 Cuál es el nivel de instrucción más alto al que

asiste o asistió1,795

p24 Cuál es el grado, curso o año más alto que aprobó 7,232p34 Estado conyugal 0p36 Cuántos hijos e hijas nacidos vivos ha tenido

durante toda su vida1,292

p36m Cuántas hijas nacidas vivas ha tenido durantetoda su vida

1,185

p36h Cuántos hijos nacidos vivos ha tenido durantetoda su vida

107

p37 Total de Hijos Vivos Actualmente 34,819p38 A qué edad tuvo su primer hijo o hija 36,333

graesc Grados de escolaridad 7,232

Finalmente, la Figura 4.5 muestra el historial de entrenamiento hastacon 200 árboles. En la Figura 3.6 se usaron hasta 100 árboles para entrenary probar el error vs. el número de árboles.

Finalmente, resultado de la etapa de pre-procesamiento descrita en lassecciones 4.2.1 y 4.3, obtenemos un dataset completo con 60,662 observa-ciones de dimensión 22 (22 atributos).

94

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Figura 4.5: Historial de entrenamiento

4.4. Generación de clusters mediante SOM-ClusterJerárquico

En esta sección se describe el método para generar agrupaciones de for-ma automática (clusters) utilizando modelos auto-organizados. El resulta-do de este proceso consiste en la generación de una serie de subconjuntos ogrupos del dataset original para posteriormente imputar la variable desea-da en cada uno de estos grupos.

Una vez que se obtuvo un dataset completo, podemos empezar a entre-nar el modelo para imputar las variables que contienen valores ausentes.El objetivo del trabajo es predecir la TMI mediante brechas educativas deacuerdo al sector de residencia. Para tener un resultado adecuado en lapredicción se requiere evitar sesgos producidos por la reducción considera-ble de la muestra. El primer paso es imputar los datos de la variable graesc,que es fundamental por ser un estudio que se basa en brechas educativas(TMI-SBE). Sin embargo, al tratar con datos de nivel de educación se debeconsiderar cómo afecta la ubicación geográfica a este indicador.

El método de imputación propuesto genera una cantidad definida declusters (agrupaciones) de forma automática (las pruebas con generaciónmanual de clusters se realizaron en las secciones 3.6.3.2 y 3.6.4.2).

95

4.4. Generación de clusters mediante SOM-Cluster Jerárquico

4.4.1. Modelos auto-organizativas (SOM)

La siguiente etapa en el modelo propuesto es la generación de clus-ters. A continuación presentamos el proceso utilizando para la generaciónde clusters mediante redes auto-organizativas (SOM). Este modelo operaúnicamente con variables numéricas, por ello se crea variables dummy porcada variable categórica.

La ejecución de SOM se parametrizó con los siguientes valores:

Topología: rectangular

Tamaño de la malla: 5x5

Número de iteraciones: 100

Learning rate: 0.05 - 0.01

El tiempo aproximado en la ejecución del modelo es de 89 segundos.La Tabla 4.3 muestra el total de elementos asignados a cada celda de lamalla (en total se dispone de 25 celdas).

Tabla 4.3: SOM - Elementos por cluster

Celda Totalobservaciones

Celda Totalobservaciones

1 4,992 14 2,1372 1,360 15 1,8353 2,146 16 2,8834 2,406 17 1,2255 4,803 18 1,3216 3,039 19 2,1717 1,230 20 2258 1,855 21 4,9689 1,778 22 2,73210 2,081 23 2,46011 3,483 24 2,11112 838 25 3,70113 851

96

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

A continuación se presentan algunos resultados obtenidos de la ejecu-ción del modelo. La Figura 4.6 muestra de forma gráfica la distribución decada celda.

Figura 4.6: SOM - Distribución por celda

4.4.1.1. Proceso de entrenamiento (Training progress)

El gráfico de entrenamiento muestra la disminución de la media de ladistancia de cada celda a sus vecinos respecto del número de iteración. LaFigura 4.7 muestra el proceso de entrenamiento.

Figura 4.7: SOM - Entrenamiento

97

4.4. Generación de clusters mediante SOM-Cluster Jerárquico

4.4.1.2. Mapa de calor (Heat map)

Este gráfico permite asociar observaciones con celdas de la malla (grid).Cada observación (fila del dataset) se asigna a la celda cuyo vector repre-sentativo es el más cercano.

La Figura 4.8 muestra el número total de observaciones asociado acada celda. El color rojo representa una alta asignación de observaciones,mientras que el color blanco representa una baja asignación.

Figura 4.8: SOM - Mapa de conteo

El orden de recorrido de las celdas de la malla empieza por la esquinainferior izquierda identificada como la celda (1,1) y avanza hacia la de-recha y arriba. Así por ejemplo, la celda de la esquina superior izquierdacorresponde a la coordenada (1,5), mientras que la celda de la esquinasuperior derecha corresponde a la coordenada (5,5).

Los datos representados en la Figura 4.8 corresponde a la representa-ción gráfica de los datos de la Tabla 4.3.

4.4.2. Mapa de distancias

Cuando se utiliza este gráfico, el color de la celda representa la distanciatotal a las celdas vecinas. La Figura 4.9 muestra el mapa de distancias.

98

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Figura 4.9: SOM - Mapa de distancias

4.4.2.1. SOM Clustering

Este caso consiste en utilizar la asignación de cada observación al vectorrepresentativo como un cluster. Cada celda corresponde a un cluster, y cadaobservación se asigna al vector más cercano dentro de la malla..

Con esto, el número de clusters corresponde al tamaño del grid (25 ennuestro caso).

Para un mejor análisis de la distribución de las variables de acuerdo alos clusters generados, obtenemos el gráfico de la distribución y la relaciónque existe con el mapa de conteo para cada celda.

La Figura 4.10 muestra la relación entre el mapa de conteo y la dis-tribución por celda. Como podemos observar, existe una estrecha relaciónentre el mapa de conteo y el gráfico de la distribución de los clusters. Elcolor en el mapa de conteo refleja el número de elemento asignados a cadacluster.

99

4.4. Generación de clusters mediante SOM-Cluster Jerárquico

Figura 4.10: SOM - Mapa de conteo y distribución por cluster

La caracterización de cada cluster se puede realizar utilizando el mapade calor de cada una de las variables dentro de la malla. Por ejemplo,consideremos la variable URP (zona urbano/rural). La Figura 4.11 muestrael mapa de calor de la variable indicada para las categorías 1 y 2 (1=urbano,2=rural).

Figura 4.11: SOM - Mapa de calor variable URP

Como se observa en la Figura 4.11, el cluster 1 tiene una alta concentra-ción de observaciones cuyo valor para la variable URP es 1. En general lasobservaciones con valor URP igual a 2 es casi nula. Si observamos la escala,el valor rojo representa una alta concentración y el color blanco una bajaconcentración de observaciones. Esto concuerda con los datos generados encada cluster. Tomamos el cluster 1 (4,992 observaciones según Tabla 4.3)

100

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

y sobre este conjunto de datos aplicamos el cálculo de una frecuencia sim-ple de la variable URP, se obtiene que 4,992 observaciones correspondena un área URBANA, mientras que 0 observaciones corresponden al áreaRURAL.

El proceso anterior se puede generalizar para cualquier variable y asírealizar una descripción detallada de las características que representan acada cluster.

4.4.2.2. Clustering en base al mapeo de datos (codebook)

La ejecución del algoritmo SOM genera 25 clusters. Esto dificulta elanálisis debido al alto número de grupos generados. Para la generacióndel mapeo de los datos originales a un conjunto más pequeño de valorescercanos a los valores originales (codebook) se utilizó la salida del mode-lo SOM. Para ello se generaron 5 clusters sobre el conjunto de vectoresrepresentativos, que en el caso del ejemplo corresponde a 25.

Para la reasignación de clusters a un número menor se utilizó el métodode cluster jerárquico sobre los vectores representativos obtenidos al aplicarel algoritmo SOM. Luego de generar n-cluster con el dataset de nodos seextiende la asignación de clusters al dataset original.

El primer paso consiste en determinar la media de la variabilidad delas observaciones dentro de cada cluster (WCSS within Cluster Sum ofSquares). La Figura 4.12 muestra la distribución del error según el númerode clusters.

Observando la Figura 4.12, es fácil notar que con un número de clustersigual a 7 se tiene un punto de estabilidad en la distribución del error. Apartir de este punto la variabilidad de los clusters es más homogénea.

Luego de aplicar el algoritmo de cluster jerárquico se obtienen 7–clusters.

La Figura 4.13 muestra de forma gráfica la distribución de los 7 clustersgenerados a partir de la malla de tamaño 5 x 5.

101

4.4. Generación de clusters mediante SOM-Cluster Jerárquico

Figura 4.12: WCSS - Cluster Jerárquico

Figura 4.13: Cluster Jerárquico - Distribución de los clusters

La Figura 4.14 muestra de forma gráfica la distribución de cada clustery cómo se asignaron las 25 celdas (SOM) a cada grupo dentro de la malladado que se trata de información que está representada en dos dimensiones.

102

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Figura 4.14: Distribución por cada cluster

En la Figura 4.14 se pueden distinguir los siete clusters representadospor distintos colores, la mayoría se encuentran en celdas contiguas, sólo enel cluster 2 encontramos elementos distantes. Después se debe caracterizarcada cluster en base al valor de cada uno de los atributos del dataset. Elpaso final en esta etapa consiste en generar 7-datasets los cuales serán utili-zados para imputar la variable graesc por cada dataset para posteriormenteagrupar los resultados en un solo bloque.

4.5. Generación de clusters mediante Gases Neu-ronales Crecientes

En esta sección se describe el método para generar agrupaciones deforma automática (clusters) utilizando un algoritmo neuronal no supervi-sado denominado gases neuronales crecientes (en inglés Growing NeuralGas - GNG). El resultado de este proceso consiste en la generación de ungrupo de sub-datasets del dataset original para posteriormente imputar lavariable deseada en cada dataset.

En la siguiente sección se presenta el proceso a seguir para la generaciónde clusters utilizando GNG.

El dataset de pruebas corresponde al descrito en la sección 4.2.1. Losparámetros empleados en la ejecución de las pruebas son los siguientes:

103

4.5. Generación de clusters mediante Gases Neuronales Crecientes

Número de nodos: 5, 50, 100, 500 y 1,000.

max.edge.age: Influye en la eliminación de conexiones entre las neu-ronas que conforman el mapa/grafo resultado, valores utilizados 100,50, 10.

La Tabla 4.4 muestra el tiempo empleado en cada ejecución para va-riaciones del parámetro nodos para max.edge.age=200 así como el gradomedio del grafo.

Tabla 4.4: GNG - Tiempo de ejecución para variaciones del número de nodos

Nodos Tiempo (segundos) Grado medio5 4.18 2.450 15.83 9.56100 24 11.84500 81.03 8.7161,000 120.94 7.17

La Tabla 4.5 muestra el tiempo empleado en cada ejecución para va-riaciones del parámetro max.edge.age y un número de nodos igual a 5.

Tabla 4.5: GNG - Tiempo de ejecución para variaciones de max.edge.age

max.edge.age Tiempo (segundos) Grado medio200 3.72 2.4150 3.68 2.8120 3.53 1.6110 3.53 1,6105 3.65 2

Para el caso donde el número de nodos es igual a 5 y 50, la Figura 4.15muestra el grafo correspondiente.

104

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

(a) 5 nodos (b) 50 nodos

Figura 4.15: GNG - Grafo de red con 5 y 50 nodos

En el ejemplo de 5 nodos, el grado de cada uno de los vértices (de abajohacia arriba) es [2 2 4 2 2] y está calculado de la siguiente manera:

Nodo 1 : 2 nodos conectados

Nodo 2 : 2 nodos conectados

Nodo 3 : 4 nodos conectados

Nodo 4 : 2 nodos conectados

Nodo 5 : 2 nodos conectados

Por lo tanto la media es (2 + 2 + 4 + 2 + 2)/5 = 2.4

4.5.1. GNG Clustering

En esta sección se emplea la asignación de cada observación al nodo.Cada celda corresponde a un cluster, y cada observación se asigna al nodomás cercano dentro de la red.

Con esto, el número de clusters corresponde al número de nodos (5, 50,100, 500 y 1000). Como ejemplo se muestra la asignación de cluster paraun número de nodos igual a 5.

4.5.1.1. Distribución en el cluster

La Figura 4.16 muestra la distribución del número de observaciones porcada cluster de forma gráfica.

105

4.5. Generación de clusters mediante Gases Neuronales Crecientes

Figura 4.16: Clusters

4.5.2. Clustering en base a los nodos

Para la generación de clusters se utiliza la salida del modelo GNG.Para esto se considera el dataset formado por los nodos de la red. Parael ejemplo se utiliza la red conformada por 1000 nodos. Luego de generarn-cluster con el dataset de nodos se extiende la asignación de clusters aldataset original.

El primer paso consiste en determinar el WCSS (Within Cluster Sum ofSquares). La Figura 4.17 muestra la distribución del error según el númerode clusters.

Figura 4.17: GNG - WCSS

106

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Para comparar con la generación de clusters con SOM vamos a tomarun tamaño de cluster igual a 7. La Tabla 4.6 muestra la distribución deobservaciones por cada cluster.

Tabla 4.6: Elementos por cluster con GNG

Cluster Total elementos1 9152 293 74 65 326 27 9

Podemos concluir de las observaciones en cada cluster que no son ho-mogeneas y se concentran en mayor porcentaje en el cluster 1. Lo cuales más claro si lo visualizamos mediante la Figura 4.18 que muestra ladistribución de cada cluster:

Figura 4.18: GNG - Distribución de los clusters

Finalmente, es necesario re-agrupar los cluster en el dataset original,para esto utilizamos el cluster generado anteriormente. Esto permite gene-rar los grupos en el dataset original. La tabla Tabla 4.7 muestra el númerode elementos del dataset original por cada uno de los cluster.

107

4.6. Caracterización de los clusters

Tabla 4.7: Elementos por cluster (dataset original)

Cluster Total elementos1 60,5942 113 34 115 316 97 3

Como se mencionó en la generación de clusters mediante SOM, el pasosiguiente consiste en caracterizar cada cluster en base al valor de cada unode los atributos del dataset.

4.6. Caracterización de los clusters

En esta sección se analizan los clusters generados en las secciones 4.4.2.2y 4.5.2. La idea central es caracterizar cada cluster en base al ranking devariables descrito en la sección 4.3.1. A manera de ejemplo se utilizaráel primer cluster generado en la sección 4.4.2.2. En la primera etapa segenera un ranking de variables utilizando Random Forest sobre el 10% delas observaciones. La Figura 4.19 muestra la importancia de cada una delas variables.

Figura 4.19: Ranking de variables - cluster1

108

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Tal como se observa en la Figura 4.19, las cuatro variables más impor-tantes corresponden a:

p08 Tiene discapacidad permanente por más de un año

p23 Cuál es el nivel de instrucción más alto al que asiste o asistió

p24 Cuál es el grado, curso o año más alto que aprobó

p16 Cómo se identifica según su cultura y costumbres

A continuación se procede a analizar los valores de cada una de lasvariables descritas anteriormente.

4.6.1. Tiene discapacidad permanente por más de un año

La Figura 4.20 muestra la distribución de la variable p08.

Figura 4.20: Tiene discapacidad permanente por más de un año

Tal como se observa, el cluster corresponde a personas que, en su ma-yoría, no presentan discapacidad.

4.6.2. Cuál es el nivel de instrucción más alto al que asisteo asistió

La Figura 4.21 muestra la distribución de la variable p23. Tal como seobserva, el cluster corresponde a personas que, en su mayoría, tienen un

109

4.6. Caracterización de los clusters

nivel de estudios igual a 4 o 5 lo que representa Nivel de Instrucción Prima-ria. El mayor número de observaciones están concentradas en el rango[4-6].

Figura 4.21: Cuál es el nivel de instrucción más alto al que asiste o asistió

4.6.3. Cuál es el grado, curso o año más alto que aprobó

La Figura 4.22 muestra la distribución de la variable p24. Tal como seobserva, el cluster corresponde a personas que, en su mayoría, aprobaronhasta el sexto año (instrucción primaria) en concordancia con lo indicadoen la sección 4.6.2.

Figura 4.22: Cuál es el grado, curso o año más alto que aprobó

110

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

4.6.4. Cómo se identifica según su cultura y costumbres

La Figura 4.23 muestra la distribución de la variable p16. Tal comose observa, el cluster corresponde a personas que, en su mayoría, indicanpertenecer al grupo 6, el cual corresponde a Mestizo.

Figura 4.23: Cómo se identifica según su cultura y costumbres

4.6.5. Discusión

Como resumen del análisis anterior, podemos concluir que el clusteranalizado corresponde a personas con las siguientes características:

1. Personas que no presentan discapacidad física de ningún tipo.

2. Personas con un nivel de instrucción primaria (6 años de estudio).

3. Personas que se auto-identifican como Mestizos.

El mismo análisis indicado anteriormente se extendió a cada uno de losclusters generados en las secciones 4.4.2.2 y 4.5.2. Se puede concluir de for-ma general que cada cluster generado posee características muy similares,esto nos permite posteriormente imputar la variable graesc con una mejorprecisión.

111

4.7. Imputación por cada cluster

4.7. Imputación por cada cluster

En esta sección se emplean los métodos de imputación (estadísticosy de aprendizaje automático) sobre los grupos (clusters) generados poralgoritmos de aprendizaje automático descritos en la sección 4.4. Para laspruebas se seleccionó los clusters generados por SOM-Cluster Jerárquico(mediante el mapeo de datos) debido a que tienen una mejor distribuciónsobre cada cluster (en comparación con los generados por GNG).

4.7.1. Técnicas estadísticas

En la sección 3.6.3.2 se aplicaron los algoritmos estadísticos para impu-tación de datos sobre los clusters generados manualmente. En esta secciónse muestran los resultados de aplicar las mismas técnicas sobre los clustersgenerados mediante SOM-Cluster Jerárquico.

La Tabla 4.8 muestra los resultados obtenidos al ejecutar el algorit-mo de imputación mediante la mediana sobre cada cluster. Como se pue-de observar, la precisión global de la imputación corresponde a 39.61%,mostrando una mejora con respecto a ejecutar el algoritmo sobre gruposgenerados de forma manual (ver Tabla 3.8).

Tabla 4.8: Imputación con Mediana

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 754 27.592 13,090 2,576 1,756 68.173 8,185 1,567 368 22,214 18,719 1,772 370 20.285 851 172 38 22.226 11,808 2,295 602 26.237 4,427 928 917 98,81

Tot. 60,662 12,132 4,805 39.61

La Tabla 4.9 muestra los resultados obtenidos al ejecutar el algoritmode imputación mediante la moda sobre cada cluster. Como se puede obser-var, la precisión global de la imputación corresponde a 39.43%, mostrando

112

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

una mejora respecto a ejecutar el algoritmo sobre grupos generados deforma manual (ver Tabla 3.8).

Tabla 4.9: Imputación con Moda

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 754 27.592 13,090 2,576 1,756 68.173 8,185 1,567 323 19.494 18,719 1,772 370 20.285 851 172 62 36.266 11,808 2,295 602 26.237 4,427 928 917 98,81

Tot. 60,662 12,132 4,784 39.43

La Tabla 4.10 muestra los resultados obtenidos al ejecutar el algoritmode imputación hot–deck sobre cada cluster. Como se puede observar, laprecisión global de la imputación corresponde a 26.34%, con una mejoraen la precisión respecto a ejecutar el algoritmo sobre grupos generados deforma manual (ver Tabla 3.8).

Tabla 4.10: Imputación con hot–deck

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 329 12.042 13,090 2,576 1,243 48.253 8,185 1,567 199 12.014 18,719 1,772 197 11.125 851 172 59 34.506 11,808 2,295 265 11.107 4,427 928 904 97,41

Tot. 60,662 12,132 3,196 26.34

El resumen de los resultados al aplicar las técnicas estadísticas en losclusters generados manualmente y generados con SOM-Cluster Jerárquicose muestra en la Tabla 4.11. Se puede ver que los resultados mejoran enrelación a clusters generados manualmente.

113

4.7. Imputación por cada cluster

Tabla 4.11: Imputación por clusters manual vs clusters SOM-Jerárquico

Método VálidosSOM-J

VálidosCManual

PrecisiónCSOM-J (%)

PrecisiónCManual (%)

Mediana 4,805 1,876 39.61 15.46Moda 4,784 3,389 39.43 28.26Hot-deck 3,132 1,663 26.34 13.71

El anexo B presenta el detalle de cada uno de los clusters.

4.7.2. Técnicas de aprendizaje automático

En la sección 3.6.4.1 se ejecutaron los algoritmos KNN, DT y RF sobreel dataset completo y se definieron los parámetros a usar en cada algorit-mo. Utilizamos los mismo algoritmos y parámetros para cada uno de losclusters generados por SOM-Cluster Jerárquico y los resultados obtenidosse resumen a continuación.

La Tabla 4.12 muestra los resultados obtenidos al ejecutar el algorit-mo KNN sobre cada cluster obteniendo una precisión global del 56,18%,mostrando una mejora considerable respecto a ejecutar el algoritmo sobregrupos generados de forma manual (ver sección 3.6.4.2).

Tabla 4.12: Imputación con KNN

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 1,318 48.232 13,090 2,576 1,925 74.733 8,185 1,657 738 44.544 18,719 1,772 814 45.945 851 171 66 38.66 11,808 2,295 1,035 45.17 4,427 928 917 98.81

Tot. 60,662 12,132 6,813 56.18

La Tabla 4.13 muestra los resultados obtenidos al ejecutar el algoritmoDT (árboles de decisión) con una precisión global de 85.25%.

114

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Tabla 4.13: Imputación con DT

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 2,247 82.222 13,090 2,576 2,428 94.253 8,185 1,657 1,254 75.684 18,719 1,772 1,409 79.525 851 171 136 79.526 11,808 2,295 1,952 85.057 4,427 928 917 98.81

Tot. 60,662 12,132 10,343 85.25

La Tabla 4.14 muestra los resultados obtenidos al ejecutar el algoritmoRandom Forest a cada uno de los clusters obteniendo una precisión globaldel 87.03%.

Tabla 4.14: Imputación con Random Forest

No. cluster Tot. obs. NA Válidos Precisión

1 13,582 2,733 2,317 84.782 13,090 2,576 2,442 94.83 8,185 1,657 1,306 78.824 18,719 1,772 1,391 78.55 851 171 136 79.546 11,808 2,295 2,049 89.287 4,427 928 917 98.81

Tot. 60.662 12.132 10.558 87.03

La Tabla 4.15 muestra el resumen de resultados al ejecutar los algorit-mos de aprendizaje automático a los clusters generados con SOM-ClusterJerárquico. La última columna muestra la precisión de los clusters genera-dos manualmente (CM).

115

4.8. Representación espacial

Tabla 4.15: Resumen Imputación dataset completo

Método Imputadosválidos

Imputadoscon error

Precisión(%)

PrecisiónCM (%)

kNN 6,813 5,319 56.18 40.66Decision Trees 10,343 1,789 85.25 72.21Random Forest 10,558 1,574 87,03 79,98

Como podemos ver la generación de clusters mediante SOM-ClusterJerárquico obtiene una mejor precisión que si generamos los clusters deforma manual.

4.8. Representación espacial

Es posible distribuir espacialmente los totales generados en cada clus-ter por unidad geográfica. Tomando como ejemplo el cluster analizado enla sección anterior, es posible distribuir las 60,594 observaciones (ver Ta-bla 4.7) sobre la división político-administrativa de la provincia analizada.

Como ejemplo se toma la división política por cantones. La Tabla 4.16muestra la división político administrativa (DPA) por cantones.

Tabla 4.16: División político administrativa por cantones

Código DPA Nombre Total1001 Ibarra 72,4161002 Antonio Ante 16,1981003 Cotacachi 12,1231004 Otavalo 32,6571005 Pimampiro 4,3381006 San Miguel de Urcuquí 5,331

El primer paso consiste en asignar cada observación del dataset originalal cluster correspondiente y sobre el dataset resultante totalizar el númerode observaciones del cluster 1 por cada nivel geográfico. La Figura 4.24muestra la distribución del cluster 01 por cada cantón (Código DPA xTotal).

116

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

Figura 4.24: Distribución clusters por cantón

Para conseguir el resultado anterior, es necesario que el dataset originalcontenga los códigos DPA para luego asociarlos a un mapa.

1 provincias_total_clusters<-table(2 cluster_details$canton,3 cluster_details$cluster4 )5 write.csv2( provincias_total_clusters, "cluster.csv")

La Figura 4.25 muestra el mapa temático generado por la distribucióndel cluster 1 sobre cada cantón.

4.8.1. Cálculo de Mortalidad Infantil

Una vez imputados los datos ausentes de la variable graesc realizamoslos cálculos para la mortalidad infantil.

La Tabla 4.17 muestra la tasa de mortalidad infantil por rango deedades, con el método indirecto para el cálculo de la mortalidad infantil 2

propuesto por Brass cuya ecuación de estimación es:

q(x) = k(i) ∗D(i) (4.1)2https://www.inei.gob.pe/media/MenuRecursivo/boletines/mortalidad.pdf

117

4.8. Representación espacial

Figura 4.25: Mapa temático cluster 01

Tabla 4.17: Mortalidad Infantil por rango de edades

Rango edad Tot. mujeres THNV THVA D(i) P(i) q(x)15-19 2,355 2,755 2,711 0.016 1.1699 0.006520-24 8,268 12,398 12,083 0.025 1.4995 0.016325-29 10,955 22,478 12,123 0.029 2.0518 0.026830-34 10,835 27,628 32,657 0.027 2.5498 0.028135-39 10,179 31,059 4,338 0.032 3.0512 0.035040-44 8,964 30,458 5,331 0.037 3.3978 0.040345-50 9,106 34,329 4,338 0.045 3.7699 0.0489

donde,

q(x) es la probabilidad de morir entre el nacimiento y la edad exactax.

k(i) es valor que refleja cuanto influyen factores independientes de lamortalidad sobre D(i).

K(i) = a(i) + b(i) ∗ P1P2 + c(i)P2

P3 (4.2)

Con P1, P2 y P3 la tasa de maternidad media del rango de mujeresmás fértil: 15-19, 20-24, 25-29. En los trabajos [111] y [24] realizados

118

Capítulo 4. Procesamiento inteligente de datos socio-demográficos

por Trusell y Coele se estiman los multiplicadores a(i), b(i) y c(i),para el modelo de Brass.

D(i) es la proporción de hijos fallecidos y todos los nacidos vivos encada rango de edad.

D(i) = 1− Total_hijos_vivos_actualmente(THV A)Total_hijos_nacidos_vivos(THNV ) (4.3)

P (i) tasa de maternidad media que se calcula:

P (i) = Total_hijos_nacidos_vivosTotal_mujeres_rango_edadi

(4.4)

Si a esto añadimos los datos de grado escolar podemos analizar la mor-talidad infantil con brechas educativas.

Tabla 4.18: Datos según rango edad y nivel educación

Rango de edadNivel

Educación15-19 20-24 25-29 30-34 35-39 40-44 45-49

Total 2,355 8,268 10,955 10,835 10,179 89,64 9,106q(x) 0.0065 0.0163 0.0268 0.0281 0.0350 0.0403 0.0489

Ninguno 17 42 73 109 125 116 197Primaria 947 3,319 4,603 4,562 4,428 3,947 4,450Secundaria 1,389 3,459 3,883 3,612 3,252 2,755 2,556Superior 2 1,408 2,222 2,345 2,148 1,887 1,693Posgrado 0 40 174 207 226 259 210

La Tabla 4.18 muestra los datos de mortalidad con rango de edades yel nivel de educación. Si analizamos el primer grupo mujeres en el rangode edad de 15 a 19 años, presenta una tasa baja de mortalidad y el nivelde educación en mayor porcentaje corresponde a mujeres con educaciónsecundaria (58.98%), mientras que el mayor valor para la tasa de mortali-dad está presente en el rango 45 a 50 y el nivel de educación en términosde mayor porcentaje corresponde a mujeres con educación básica (48%).

119

4.9. Conclusiones

4.9. Conclusiones

Se han comparado métodos auto-organizativos no supervisados comoSOM y GNG para organizar los datos en clusters, encontrando que SOM-jerárquico obtiene mejores resultados.

La generación de clusters mediante SOM-Cluster Jerárquico beneficiael proceso de imputación de datos, la precisión de los algoritmos utilizadosaumenta en relación a los clusters generados de forma manual medianteel cantón de residencia como se puede ver en la Tabla 4.15, en dondelas dos últimas columnas muestran la precisión global en los dos casosmencionados.

La precisión de los algoritmos de aprendizaje automático y de las téc-nicas estadísticas mejoran en relación a si se aplican las técnicas al datasetcompleto o sobre los clusters generados de forma manual.

Obtener mejores resultados en la imputación genera menor error alrealizar el análisis de la tasa de mortalidad con brechas educativas.

120

Capítulo 5

Conclusiones

En este capítulo se presentan las principales conclusiones extraídasdel trabajo realizado. Este capítulo está organizado de la siguienteforma: la sección 5.1 presenta las conclusiones finales obtenidas delpresente trabajo, la sección 5.2 lista las principales contribucionesrealizadas en el tema de investigación, la sección 5.3 lista las pu-blicaciones realizadas durante el presente trabajo y, finalmente, lasección 5.4 presenta posibles opciones de trabajos futuros.

5.1. Conclusiones

En este trabajo se presenta una metodología orientada al procesamien-to de datos provenientes de censos o encuestas a través de algoritmos deaprendizaje automático. La propuesta se basa en el análisis previo de lascaracterísticas de los grandes volúmenes de datos, técnicas estadísticas yalgoritmos de aprendizaje automático, ausencia de datos, alta dimensiona-lidad y tipos de datos.

En las pruebas preliminares fue necesario introducir cambios en losmodelos habituales de procesamiento de datos debido a que la variable aclasificar es de naturaleza categórica y el umbral que separa cada categoríano es sencillo de determinar a partir del resto de variables.

En el primer paso de la metodología se obtiene un conjunto de datoscompleto que permite probar la eficiencia de los algoritmos, para cumplircon este propósito se utiliza Pairwise Deletion y Listwise Deletion con la

5.1. Conclusiones

finalidad de eliminar todas las observaciones que presentan al menos unvalor ausente o fuera de rango.

Como siguiente paso en la metodología, se realizaron pruebas con dis-tintos algoritmos. Mediante técnicas de aprendizaje automático no super-visado y redes neuronales artificiales se planteó la creación de grupos (clus-ters) que comparten características similares. A cada grupo se le aplicaronlas distintas técnicas de clasificación: estadísticas y de aprendizaje auto-mático.

La generación de grupos (clusters) de forma manual utilizando varia-bles que delimitan las áreas de estudios (DPA) mejora el rendimiento delas técnicas de imputación tradicional (técnicas estadísticas, ver sección3.4.2.1) en comparación con la imputación del conjunto de datos completo(ver tablas 3.6 y 3.8).

Debido a que una agrupación manual de datos permite mejorar la pre-cisión de la clasificación de datos en el problema planteado se propuso lageneración de grupos de información de forma automática y aplicar losmétodos de imputación sobre cada uno de estos grupos.

Con la generación de grupos de forma automática se verificó un au-mento en la precisión utilizando técnicas estadísticas y un aumento en laprecisión de algunos métodos de aprendizaje automático supervisado (verTabla 4.11).

La metodología propuesta para la imputación de datos incorpora unaetapa previa:

Generación del dataset de entrenamiento de los métodos de clasifi-cación.

Generación de grupos de información para procesarlos de forma in-dependiente.

El procesamiento de grandes volúmenes de datos suele tener altos cos-tes computacionales y tiempos elevados de procesamiento, el generar clus-ters y realizar la imputación sobre cada cluster de forma independientecontribuye también a reducir el tiempo de procesamiento y bajar el costecomputacional.

122

Capítulo 5. Conclusiones

Finalmente, se presentaron los resultados individuales de aplicar la me-todología sobre el dataset obtenido en la etapa de procesamiento utilizandola generación de grupos de forma jerárquico (cluster jerárquico) sobre losvectores representativos (codebooks) obtenidos luego de aplicar el méto-do SOM sobre el conjunto de datos. Estos resultados se muestran en elanexo B.

5.2. Contribuciones

Las principales contribuciones realizadas durante el desarrollo del es-te trabajo están relacionadas con la imputación de datos provenientes decensos y encuestas:

1. Revisión exhaustiva del estado de arte de las características de losgrandes volúmenes de datos y técnicas de aprendizaje automáticoorientadas al procesamiento de datos.

2. Desarrollo de una metodología para el pre–procesamiento de infor-mación demográfica a través de técnicas para el manejo de datosperdidos.

Definición de pasos básicos en la etapa de pre-procesamientoque permitan obtener un dataset de calidad para ser procesa-do y garantice resultados aceptables al ejecutar algoritmos declasificación, selección de variables o clusterización.

Implementación de combinaciones de técnicas para mejorar elproceso de selección de variables y generación de clusters.

3. Desarrollo de una metodología basada en aprendizaje automáticopara la imputación de valores perdidos o ausentes.

Aplicación de técnicas de aprendizaje automático no supervisa-do (agrupamiento de datos o clustering) sobre información de-mográfica para agrupar información relacionada previo al pasode imputación de datos.

123

5.3. Publicaciones

Aplicación de técnicas de redes neuronales artificiales (ANN)para la generación de grupos sobre información demográfica.

Aplicación de técnicas de aprendizaje automático supervisado(clasificación de datos) basada en la generación previa de clus-ters para la imputación de datos perdidos.

5.3. Publicaciones

Como resultado de la investigación realizada, se publicaron los siguien-tes artículos:

Artículos publicados en revistas científicas:

• Jaime Salvador-Meneses, Zoila Ruiz-Chavez, and Jose Garcia-Rodriguez. Compressed kNN: K-Nearest Neighbors withData Compression. Entropy, 2019. Impact Factor (JCR 2017):2.305, 5-Year Impact Factor (JCR 5-Year 2017): 2.303.

• Jaime Salvador, Zoila Ruiz, and Jose Garcia-Rodriguez. A re-view of infrastructures to process big multimedia data.International Journal of Computer Vision and Image Processing(IJCVIP), 7(3):54–64, 2017.

Artículos publicados en conferencias internacionales:

• Zoila Ruiz-Chavez, Jaime Salvador-Meneses, Cristina Mejía-Astudillo and Soledad Díaz-Quilachamín. Analysis of dogs’sabandonment problem using georeferenced multi-agentsystems. MACHINE LEARNING METHODS APPLIED TOBIG DATAANALYSIS, PROCESSING ANDVISUALIZATION(MLBDAPV). IWINAC 2019. Lecture Notes in Computer Scien-ce, vol 11487. Springer.

• Jaime Salvador-Meneses, Zoila Ruiz-Chavez, and Jose Garcia-Rodriguez. Categorical big data processing. In Hujun Yin,

124

Capítulo 5. Conclusiones

David Camacho, Paulo Novais, and Antonio J. Tallón-Ballesteros,editors, Intelligent Data Engineering and Automated Learning– IDEAL 2018, pages 245–252, Cham, November 2018. SpringerInternational Publishing.

• Zoila Ruiz-Chavez, Jaime Salvador-Meneses, Jose Garcia-Rodriguez,and Antonio J. Tallón- Ballesteros. Data pre-processing toapply multiple imputation techniques: A case study onreal-world census data. In Hujun Yin, David Camacho, Pau-lo Novais, and Antonio J. Tallón-Ballesteros, editors, IntelligentData Engineering and Automated Learning – IDEAL 2018, pa-ges 288–295, Cham, 2018. Springer International Publishing.

• Zoila Ruiz-Chavez, Jaime Salvador-Meneses, and Jose Garcia-Rodriguez. Machine learning methods based preproces-sing to improve categorical data classification. In Hu-jun Yin, David Camacho, Paulo Novais, and Antonio J. Tallón-Ballesteros, editors, Intelligent Data Engineering and Automa-ted Learning – IDEAL 2018, pages 297–304, Cham, 2018. Sprin-ger International Publishing.

• Z. Ruiz-Chavez, J. Salvador-Meneses, S. Díaz-Quilachamín andC. Mejía-Astudillo. Solid Waste Management using Geo-referenced Multi-agent Systems, pages 1-6. IEEE LatinAmerican Conference on Computational Intelligence (LA-CCI),Gudalajara, Mexico, 2018.

• Z. Ruiz-Chavez, J. Salvador-Meneses, S. Díaz-Quilachamín andC. Mejía-Astudillo. Solid Waste Management using Geo-referenced Multi-agent Systems*, pages 1-6. IEEE ThirdEcuador Technical Chapters Meeting (ETCM), Cuenca, 2018.

• Jaime Salvador-Meneses, Zoila Ruiz-Chavez, and Jose Garcia-

125

5.4. Trabajo futuro

Rodriguez. Low level big data compression. In Proceedingsof the 10th International Joint Conference on Knowledge Dis-covery, Knowledge Engineering and Knowledge Management -Volume 1: KDIR„ pages 353–358. INSTICC, SciTePress, 2018.

• Jaime Salvador-Meneses, Zoila Ruiz-Chavez, and Jose Garcia-Rodriguez. Low level big data processing. In Proceedingsof the 10th International Joint Conference on Knowledge Dis-covery, Knowledge Engineering and Knowledge Management -Volume 1: KDIR„ pages 347–352. INSTICC, SciTePress, 2018.

• Zoila Ruiz, Jaime Salvador, and Jose Garcia-Rodriguez.A Sur-vey of Machine Learning Methods for Big Data, pages259–267. In: Ferrández Vicente J., Álvarez-Sánchez J., de la PazLópez F., Toledo Moreo J., Adeli H. (eds) Biomedical Appli-cations Based on Natural and Artificial Computing. IWINAC2017. Lecture Notes in Computer Science, vol 10338. Springer,Cham.

• Jaime Salvador, Zoila Ruiz, and Jose Garcia-Rodriguez. BigData Infrastructure: A Survey, pages 249–258. In: Ferrán-dez Vicente J., Álvarez-Sánchez J., de la Paz López F., ToledoMoreo J., Adeli H. (eds) Biomedical Applications Based on Na-tural and Artificial Computing. IWINAC 2017. Lecture Notesin Computer Science, vol 10338. Springer, Cham.

5.4. Trabajo futuro

En relación a la implementación de la metodología propuesta, comotrabajo futuros se propone:

1. Extender las pruebas a otros tipos de encuestas tales como Violenciade Género con el fin de encontrar relaciones con posibles causas quedesencadenen en violencia y generen alertas.

126

Capítulo 5. Conclusiones

2. Generalizar la generación de cluster utilizando SOM y variando lastopologías y tamaños de malla con la finalidad de obtener gruposmás homogéneos.

3. Extender el análisis de mortalidad infantil al conjunto de datos com-pleto (encuesta completa del país).

4. Implementar la clasificación y generación de grupos mediante mé-tricas de distancia más apropiadas para la información considerada(información categórica).

5. Implementar el procesamiento de clusters utilizando programaciónparalela multicore o con aceleración GPU con la finalidad de procesarel dataset completo.

6. Incrementar combinaciones de algoritmos en cada etapa, incluidaslas variaciones con técnicas estadísticas.

7. Fusionar los datos de encuestas con datos provenientes de redes so-ciales.

127

5.4. Trabajo futuro

128

Anexos

Anexo A

Detalle clusters creadosmanualmente

En este anexo se presenta el detalle de los clusters presentados en lasección 3.6.3.

La Tabla A.1 corresponde a la tabla presentada en la sección 3.6.3.2.

Tabla A.1: Detalle clusters generados manualmente

No. cluster Tot. elementos Mediana Moda To. NA

1 30,351 13 8 6,0492 6,882 9 8 1,3553 4,978 8 8 1,0314 14,354 8 8 2,8735 1,967 8 8 4016 2,130 8 8 423

1 ds$median1<-with(ds, impute(ds$graescna, median1) )2 ds$moda1<-with(ds, impute(ds$graescna, moda1) )3

4 dataset2<-hotdeck(ds, variable="graescna")5 ds$hotdeck1<-dataset2$graescna6 dataset2<-NULL

Listado A.1: Clase Java que implementa compresión/descompresión

A.1. Cluster 1

A.1. Cluster 1

La Figura A.1 presenta la distribución por categoría de la variablegraesc para el primer cluster.

Figura A.1: Cluster 1 - Detalle variable graesc

La Tabla A.2 muestra los resultados de aplicar la imputación al primercluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.2: Cluster 1 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 214 5,835 3.54Moda 1,353 4,696 22.37Hot-deck 670 5,379 11.08

132

Anexo A. Detalle clusters creados manualmente

A.2. Cluster 2

La Figura A.2 presenta la distribución por categoría de la variablegraesc para el segundo cluster.

Figura A.2: Cluster 2 - Detalle variable graesc

La Tabla A.3 muestra los resultados de aplicar la imputación al segundocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.3: Cluster 2 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 11 1,344 0.81Moda 425 930 31.37Hot-deck 229 1,126 16.90

133

A.3. Cluster 3

A.3. Cluster 3

La Figura A.3 presenta la distribución por categoría de la variablegraesc para el tercer cluster.

Figura A.3: Cluster 3 - Detalle variable graesc

La Tabla A.4 muestra los resultados de aplicar la imputación al tercercluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.4: Cluster 3 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 388 643 37.63Moda 388 643 37.63Hot-deck 195 836 18.91

134

Anexo A. Detalle clusters creados manualmente

A.4. Cluster 4

La Figura A.4 presenta la distribución por categoría de la variablegraesc para el cuarto cluster.

Figura A.4: Cluster 4 - Detalle variable graesc

La Tabla A.5 muestra los resultados de aplicar la imputación al cuartocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.5: Cluster 4 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 897 1,976 31.22Moda 897 1,976 31.22Hot-deck 400 2,473 13.92

135

A.5. Cluster 5

A.5. Cluster 5

La Figura A.5 presenta la distribución por categoría de la variablegraesc para el quinto cluster.

Figura A.5: Cluster 5 - Detalle variable graesc

La Tabla A.6 muestra los resultados de aplicar la imputación al quintocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.6: Cluster 5 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 170 231 42.39Moda 170 231 42.39Hot-deck 77 324 19.20

136

Anexo A. Detalle clusters creados manualmente

A.6. Cluster 6

La Figura A.6 presenta la distribución por categoría de la variablegraesc para el sexto cluster.

Figura A.6: Cluster 6 - Detalle variable graesc

La Tabla A.7 muestra los resultados de aplicar la imputación al sextocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla A.7: Cluster 6 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 196 227 46.33Moda 196 227 46.39Hot-deck 92 331 21.65

137

A.6. Cluster 6

138

Anexo B

Detalle clustersSOM-Cluster Jerárquico

En este anexo se presenta el detalle de los clusters presentados en lasección 4.4.

La Tabla B.1 corresponde a la información presentada en la ??.

Tabla B.1: SOM - Detalle distribución por cluster

No. Cluster Tot. elementos Mediana Moda To. NA1 13,582 13 13 2,7332 13,090 7 7 2,5763 8,185 13 7 1,5674 8,719 13 13 1,7725 851 2 0 1726 11,808 13 13 2,2957 4,427 7 7 928

B.1. Cluster 1

La Figura B.1 presenta la distribución por categoría de la variablegraesc para el primer cluster.

B.1. Cluster 1

Figura B.1: SOM Cluster 1 - Detalle variable graesc

La Tabla B.2 muestra los resultados de aplicar la imputación al primercluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.2: SOM Cluster 1 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 754 1,979 27.59Moda 754 1,979 27.59Hot-deck 329 2,404 12.04

140

Anexo B. Detalle clusters SOM-Cluster Jerárquico

B.2. Cluster 2

La Figura B.2 presenta la distribución por categoría de la variablegraesc para el segundo cluster.

Figura B.2: SOM Cluster 2 - Detalle variable graesc

La Tabla B.3 muestra los resultados de aplicar la imputación al segundocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.3: SOM Cluster 2 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 1,756 820 68.17Moda 1,756 820 68.17Hot-deck 1,243 1,333 48.25

141

B.3. Cluster 3

B.3. Cluster 3

La Figura B.3 presenta la distribución por categoría de la variablegraesc para el tercer cluster.

Figura B.3: SOM Cluster 3 - Detalle variable graesc

La Tabla B.4 muestra los resultados de aplicar la imputación al tercercluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.4: SOM Cluster 3 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 368 1,289 22.21Moda 323 1,334 19.49Hot-deck 199 1,458 12.01

142

Anexo B. Detalle clusters SOM-Cluster Jerárquico

B.4. Cluster 4

La Figura B.4 presenta la distribución por categoría de la variablegraesc para el cuarto cluster.

Figura B.4: SOM Cluster 4 - Detalle variable graesc

La Tabla B.5 muestra los resultados de aplicar la imputación al cuartocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.5: SOM Cluster 4 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 370 1,402 20.88Moda 370 1,402 20.88Hot-deck 197 1,575 11.12

143

B.5. Cluster 5

B.5. Cluster 5

La Figura B.5 presenta la distribución por categoría de la variablegraesc para el quinto cluster.

Figura B.5: SOM Cluster 5 - Detalle variable graesc

La Tabla B.6 muestra los resultados de aplicar la imputación al quintocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.6: SOM Cluster 5 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 38 133 22.22Moda 62 109 36.26Hot-deck 59 112 34.50

144

Anexo B. Detalle clusters SOM-Cluster Jerárquico

B.6. Cluster 6

La Figura B.6 presenta la distribución por categoría de la variablegraesc para el sexto cluster.

Figura B.6: SOM Cluster 6 - Detalle variable graesc

La Tabla B.7 muestra los resultados de aplicar la imputación al sextocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.7: SOM Cluster 6 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 602 1,693 26.23Moda 602 1,693 26.23Hot-deck 265 2,030 11.55

145

B.7. Cluster 7

B.7. Cluster 7

La Figura B.7 presenta la distribución por categoría de la variablegraesc para el séptimo cluster.

Figura B.7: SOM Cluster 7 - Detalle variable graesc

La Tabla B.8 muestra los resultados de aplicar la imputación al sextocluster utilizando los métodos descritos en la sección 3.4.2.1.

Tabla B.8: SOM Cluster 7 - Imputación

Método Imputados válidos Imputados con error Precisión (%)

Mediana 917 11 98.81Moda 917 11 98.81Hot-deck 904 24 97.41

146

Bibliografía

[1] Agrawal, A. (2013). Global K-Means ( GKM ) Clustering Algorithm :A Survey. International Journal of Computer Applications, 79(2):20–24.10

[2] Aguirre, A. and Vela-Peón, F. (2012). La mortalidad infantil en méxico,2010. Papeles de población, 18(73):29–44. 57

[3] Al-Jarrah, O. Y., Yoo, P. D., Muhaidat, S., Karagiannidis, G. K., andTaha, K. (2015). Efficient machine learning for big data: A review. BigData Research, 2(3):87–93. 5

[4] Al Malki, A., Rizk, M. M., El-Shorbagy, M. A., Mousa, A. A., Malki,A. A., Rizk, M. M., and Mousa, A. A. (2016). Hybrid Genetic Algorithmwith K-Means for Clustering Problems. Open Journal of Optimization,5(02):71. 24

[5] Al-Sultana, K. S. and Khan, M. M. (1996). Computational experienceon four algorithms for the hard clustering problem. Pattern RecognitionLetters, 17(3):295–308. 25

[6] Aldehim, G. and Wang, W. (2017). Determining appropriate approa-ches for using data in feature selection. International Journal of MachineLearning and Cybernetics, 8(3):915–928. 58

[7] Altimir, O. (1975). Estimaciones de la distribución del ingreso en amé-rica latina por medio de encuestas de hogares y censos de población: unaevaluación de confiabilidad. 35

Bibliografía

[8] Andridge, R. R. and Little, R. J. (2010). A review of hot deck impu-tation for survey non-response. International statistical review, 78(1):40–64. 66

[9] Arellano-Verdejo, J., Alba, E., and Godoy-Calderon, S. (2016). Ef-ficiently finding the optimum number of clusters in a dataset with anew hybrid differential evolution algorithm: DELA. Soft Computing,20(3):895–905. 24

[10] Backlund, H., Hedblom, A., and Neijman, N. (2011). DBSCAN ADensity-Based Spatial Clustering of Application with. Linkoping Uni-versity–ITN, pages 1–8. 20

[11] Bar, H. (2017). Missing data—mechanisms and possible solutions.Cultura y Educación, 29(3):492–525. 56, 65

[12] Batabyal, A. K. and Gupta, S. (2017). Fluoride-contaminated ground-water of birbhum district, west bengal, india: Interpretation of drinkingand irrigation suitability and major geochemical processes using prin-cipal component analysis. Environmental monitoring and assessment,189(8):369. 4

[13] Bobadilla, J., Ortega, F., Hernando, A., and de Rivera, G. G. (2013).A similarity metric designed to speed up, using hardware, the recommen-der systems k-nearest neighbors algorithm. Knowledge-Based Systems,51:27–34. 15

[14] Bonetta, D. and Brantner, M. (2018). Evaluation techniques for fastaccess to structured, semi-structured and unstructured data using a vir-tual machine that provides support for dynamic code generation. USPatent App. 15/864,863. 7

[15] Burrough, P. A., van Gaans, P. F., and MacMillan, R. (2000). High-resolution landform classification using fuzzy k-means. Fuzzy sets andsystems, 113(1):37–52. 23

[16] Cai, X., Nie, F., and Huang, H. (2013). Multi-view K-means clus-tering on big data. IJCAI International Joint Conference on ArtificialIntelligence, pages 2598–2604. 24

148

Bibliografía

[17] Cambronero, C. G. and Moreno, I. G. (2006). Algoritmos de aprendi-zaje: knn & kmeans. Intelgencia en Redes de Comunicación, UniversidadCarlos III de Madrid. 23

[18] Campos, B., Cerrate, A., Montjoy, E., Dulanto Gomero, V., Gonzales,C., Tecse, A., Pariamachi, A., Lansingh, V. C., Dulanto Reinoso, V.,Minaya Barba, J., et al. (2014). Prevalencia y causas de ceguera en perú:encuesta nacional. Revista Panamericana de Salud Pública, 36:283–289.35

[19] Carvalho, D. R. and Freitas, A. A. (2004). New results for a hybriddecision tree/genetic algorithm for data mining. In Applications andScience in Soft Computing, pages 149–154. Springer. 23

[20] Carvalho, F. (2006). Fuzzy c -means clustering methods for symbolicinterval data. Pattern Recognition Letters. 8

[21] CEPAL, N. (2008). Directrices para la elaboración de módulos sobreenvejecimiento en las encuestas de hogares. 38

[22] Chang, P.-C., Wang, Y.-W., and Liu, C.-H. (2006). Combining somand ga-cbr for flow time prediction in semiconductor manufacturing fac-tory. In International Conference on Rough Sets and Current Trends inComputing, pages 767–775. Springer. 23

[23] Cheema, J. R. (2014). A review of missing data handling methods ineducation research. Review of Educational Research, 84(4):487–508. 57,63

[24] Coale, A. J. and Trussell, T. J. (1974). Model fertility schedules:variations in the age structure of childbearing in human populations.Population index, pages 185–258. 118

[25] Cohen, R., Grubshtein, A. J., Elliot, P. R., and Crowley, A. J. (2018).Analysis and visualization tool with combined processing of structuredand unstructured service event data. US Patent App. 14/670,810. 7

149

Bibliografía

[26] Cui, X. and Potok, T. E. (2008). Document Clustering Analysis Basedon Hybrid PSO + K-means Algorithm. Journal of Computer Sciences(special issue), pages 27–33. 23

[27] Dai, W. and Ji, W. (2014). A MapReduce Implementation of C4. 5Decision Tree Algorithm. International Journal of Database Theory &Application, 7(1):49–60. 21

[28] Damaris, P., Filiberto, P., and Salvador, S. J. (2010). A density-based hierarchical clustering algorithm for highly overlapped distribu-tions with noisy points. Frontiers in Artificial Intelligence and Appli-cations, 220(Artificial Intelligence Research and Development):183–192.8, 24

[29] Das, S. P. and Padhy, S. (2018). A novel hybrid model using teaching–learning-based optimization and a support vector machine for commo-dity futures index forecasting. International Journal of Machine Lear-ning and Cybernetics, 9(1):97–111. 13

[30] Derrac, J., Chiclana, F., García, S., and Herrera, F. (2016). Evolu-tionary fuzzy k-nearest neighbors algorithm using interval-valued fuzzysets. Information Sciences, 329:144–163. 23

[31] Dong, X. L. and Srivastava, D. (2013). Big data integration. InData Engineering (ICDE), 2013 IEEE 29th International Conferenceon, pages 1245–1248. IEEE. 6

[32] Emani, C. K., Cullot, N., and Nicolle, C. (2015). Understandable bigdata: a survey. Computer science review, 17:70–81. 6

[33] Fan, W. and Bifet, A. (2013). Mining Big Data : Current Status ,and Forecast to the Future. ACM SIGKDD Explorations Newsletter,14(2):1–5. 2, 9

[34] Farhangfar, A., Kurgan, L., and Dy, J. (2008). Impact of imputationof missing values on classification error for discrete data. Pattern Re-cognition, 41(12):3692–3705. 56

150

Bibliografía

[35] Feng, X., Wang, Z., Yin, G., and Wang, Y. (2012). PSO-based DBS-CAN with obstacle constraints. Journal of Theoretical and Applied In-formation Technology, 46(1):377–383. 23

[36] Fernández, S. P. and Díaz, S. P. (2004). Asociación de variables cua-litativas: test de chi-cuadrado. Metodología de la Investigación, 1:5. 60

[37] Fessant, F. and Midenet, S. (2002). Self-organising map for data impu-tation and correction in surveys. Neural Computing & Applications,10(4):300–310. 67

[38] Ford, E. S., Giles, W. H., and Dietz, W. H. (2002). Prevalence of themetabolic syndrome among us adults: findings from the third nationalhealth and nutrition examination survey. Jama, 287(3):356–359. 35

[39] Fritzke, B. (1995). A growing neural gas network learns topologies. InAdvances in neural information processing systems, pages 625–632. 89

[40] Gala García, Y. (2013). Algoritmos svm para problemas sobre bigdata. Master’s thesis. 13

[41] Gandomi, A. and Haider, M. (2015). Beyond the hype: Big dataconcepts, methods, and analytics. International Journal of InformationManagement, 35(2):137–144. 6

[42] García, S., Ramírez, S., Luengo, J., and Herrera, F.-c. (2016). Bigdata: Preprocesamiento y calidad de datos. University of Granada, pages18–20. 86

[43] García-Laencina, P. J., Sancho-Gómez, J.-L., Figueiras-Vidal, A. R.,and Verleysen, M. (2009). K nearest neighbours with mutual informationfor simultaneous classification and missing data imputation. Neurocom-puting, 72(7-9):1483–1493. 67

[44] Genuer, R., Poggi, J.-M., and Tuleau-Malot, C. (2010). Variable se-lection using random forests. Pattern Recognition Letters, 31(14):2225–2236. 61

151

Bibliografía

[45] Gislason, P. O., Benediktsson, J. A., and Sveinsson, J. R. (2006).Random forests for land cover classification. Pattern Recognition Letters,27(4):294–300. 62

[46] Guerra, J. B. and Gallestey, J. B. (2010). Imputacion multiple en va-riables categoricas usando data augmentation y arboles de clasificacion.Investigación Operacional, 31(2):133–139. 65

[47] Gutiérrez, J. P. and Hernández-Ávila, M. (2013). Cobertura de pro-tección en salud y perfil de la población sin protección en méxico, 2000-2012. salud pública de méxico, 55:S83–S90. 35

[48] Guzmán, M. L. (2003). Etnicidad y exclusión en ecuador: una miradaa partir del censo de población de 2001. Íconos: Revista de CienciasSociales, (17):116–132. 35

[49] Hassan, M. A., Khalil, A., Kaseb, S., and Kassem, M. (2017). Potentialof four different machine-learning algorithms in modeling daily globalsolar radiation. Renewable energy, 111:52–62. 34

[50] Hatamlou, A. (2013). Black hole: a new heuristic optimization ap-proach for data clustering. Information Sciences, 222:175–184. 8

[51] Hernández García, C. L. and Rodríguez Rodríguez, J. E. (2016). Al-goritmo híbrido basado en aprendizaje computacional para el manejode datos faltantes en aplicaciones olap. Ingeniare. Revista chilena deingeniería, 24(4):628–642. 67

[52] Hirabayashi, S. and Kroll, C. N. (2017). Single imputation methodof missing air quality data for i-tree eco analyses in the conterminousunited states. 65

[53] Ho, R. (2012). Big Data Machine Learning: Patterns for PredictiveAnalytics. DZone Refcardz, (158). 4

[54] Jadhav, M. (2013). Big Data: The New Challenges in Data Mining.Int J Innov Res ComputSci & Technol, (2). 4

152

Bibliografía

[55] Jagtap, S. B. et al. (2013). Census data mining and data analysisusing weka. arXiv preprint arXiv:1310.4647. 36

[56] Jain, R. (2012). A hybrid clustering algorithm for data mining. arXivpreprint arXiv:1205.5353, pages 387–393. 24

[57] Jaramillo-Mejía, M. C., Chernichovsky, D., and Jiménez-Moleón, J. J.(2018). Determinantes de la mortalidad infantil en colombia. path aná-lisis. Revista de Salud Pública, 20:3–9. 31

[58] Jerez, J. M., Molina, I., García-Laencina, P. J., Alba, E., Ribelles,N., Martín, M., and Franco, L. (2010). Missing data imputation usingstatistical and machine learning methods in a real breast cancer problem.Artificial intelligence in medicine, 50(2):105–115. 35, 66

[59] Jiang, M., Ding, Y., Goertzel, B., Huang, Z., Zhou, C., and Chao,F. (2014). Improving machine vision via incorporating expectation-maximization into Deep Spatio-Temporal learning. Proceedings of theInternational Joint Conference on Neural Networks, pages 1804–1811.16

[60] Jiang, S., Chin, K.-S., Wang, L., Qu, G., and Tsui, K. L. (2017). Modi-fied genetic algorithm-based feature selection combined with pre-traineddeep neural network for demand forecasting in outpatient department.Expert Systems with Applications, 82:216–230. 58

[61] Jin, H., Shum, W.-H., Leung, K.-S., and Wong, M.-L. (2004). Ex-panding self-organizing map for data visualization and cluster analysis.Information Sciences, 163(1-3):157–173. 23

[62] Jolliffe, I. T. and Cadima, J. (2016). Principal component analy-sis: a review and recent developments. Philosophical Transactions ofthe Royal Society A: Mathematical, Physical and Engineering Sciences,374(2065):20150202. 61

[63] Jones, K. and Kirby, A. (1980). The use of chi-square maps in theanalysis of census data. Geoforum, 11(4):409–417. 35

153

Bibliografía

[64] Kaempffer, A. and Medina, E. (2006). Mortalidad infantil reciente enchile: Éxitos y desafíos. Revista chilena de pediatría, 77(5):492–500. 35

[65] Kohonen, T. (1990). The self-organizing map. Proceedings of theIEEE, 78(9):1464–1480. 58

[66] Kohonen, T. (2013). Essentials of the self-organizing map. Neuralnetworks, 37:52–65. 18, 58

[67] Kolenikov, S. and Angeles, G. (2009). Socioeconomic status measu-rement with discrete proxy variables: Is principal component analysis areliable answer? Review of Income and Wealth, 55(1):128–165. 4

[68] Kurumalla, S. and Rao, P. S. (2016). K-nearest neighbor based dbscanclustering algorithm for image segmentation. Journal of Theoretical andApplied Information Technology, 92(2):395. 23

[69] Lendasse, A., Ji, Y., Reyhani, N., and Verleysen, M. (2005). Ls-svmhyperparameter selection with a nonparametric noise estimator. In In-ternational Conference on Artificial Neural Networks, pages 625–630.Springer. 23

[70] Li, D., Deogun, J., Spaulding, W., and Shuart, B. (2004). Towardsmissing data imputation: a study of fuzzy k-means clustering method.In International Conference on Rough Sets and Current Trends in Com-puting, pages 573–579. Springer. 58

[71] Li, J., Cheng, K., Wang, S., Morstatter, F., Trevino, R. P., Tang,J., and Liu, H. (2018). Feature selection: A data perspective. ACMComputing Surveys (CSUR), 50(6):94. 59

[72] Little Roderick, J. and Rubin Donald, B. (1987). Statistical analysiswith missing data. Hoboken, NJ: Wiley. 65

[73] Liu, X., De Lathauwer, L., Janssens, F., and De Moor, B. (2010).Hybrid clustering of multiple information sources via HOSVD. Interna-tional Symposium on Neural Networks, 6064 LNCS(PART 2):337–345.24

154

Bibliografía

[74] Lizárraga, B. (2008). Agrupamiento de Datos utilizando técnicasMAM-SOM. PhD thesis, Tesis profe. 26

[75] Luo, W., Nguyen, T., Nichols, M., Tran, T., Rana, S., Gupta, S.,Phung, D., Venkatesh, S., and Allender, S. (2015). Is demography des-tiny? application of machine learning techniques to accurately predictpopulation health outcomes from a minimal demographic dataset. PloSone, 10(5):e0125602. 8

[76] Mario Acuña (2013). Redatam Informa. Redatam Informa, 19(19).69

[77] Mazinani, S. M. and Fathi, K. (2015). Combining knn and decisiontree algorithms to improve intrusion detection system performance. In-ternational Journal of Machine Learning and Computing, 5(6):476. 23

[78] Mei, J.-P. and Chen, L. (2010). Fuzzy clustering with weighted me-doids for relational data. Pattern Recognition, 43(5):1964–1974. 23

[79] Minot, N. and Baulch, B. (2005). Poverty mapping with aggrega-te census data: What is the loss in precision? Review of DevelopmentEconomics, 9(1):5–24. 35

[80] Mishra, S. K. and Raghavan, V. V. (1994). An empirical study of theperformance of heuristic methods for clustering. In Pattern Recognitionin Practice IV - Multiple Paradigms, Comparative Studies and HybridSystems, pages 425–436. Elsevier BV. 25

[81] Mitchell, T. (1997). Machine learning, mcgraw-hill higher education.New York. 2

[82] Mujeeb, S. and Naidu, L. K. (2015). A Relative Study on Big DataApplications and Techniques. International Journal of Engineering andInnovative Technology (IJEIT), 4(10):133–138. 6, 8

[83] Murugesan, K. and Jun, Z. (2011). Hybrid bisect K-means clusteringalgorithm. Business Computing and Global Informatization (BCGIN),2011 International Conferenceon. IEEE, pages 216–219. 24

155

Bibliografía

[84] Myers, T. A. (2011). Goodbye, listwise deletion: Presenting hot deckimputation as an easy and effective tool for handling missing data. Com-munication Methods and Measures, 5(4):297–310. 66

[85] Newman, D. A. (2003). Longitudinal modeling with randomly and sys-tematically missing data: A simulation of ad hoc, maximum likelihood,and multiple imputation techniques. Organizational Research Methods,6(3):328–362. 67

[86] Niknam, T., Fard, E. T., Pourjafarian, N., and Rousta, A. (2011).An efficient hybrid algorithm based on modified imperialist competitivealgorithm and k-means for data clustering. Engineering Applications ofArtificial Intelligence, 24(2):306–317. 24

[87] Nishanth, K. J. and Ravi, V. (2016). Probabilistic neural networkbased categorical data imputation. Neurocomputing, 218:17–25. 64

[88] Oussous, A., Benjelloun, F.-Z., Lahcen, A. A., and Belfkih, S. (2018).Big data technologies: A survey. Journal of King Saud University-Computer and Information Sciences, 30(4):431–448. 5

[89] Pais, C. M. and González, S. A. (2017). A new method to detectapneas in neonates. In Workshop on Engineering Applications, pages667–678. Springer. 31

[90] Pantoja-Rojas, L. M. and Roa-Vargas, E. M. (2012). Factores rela-cionados con el diagnóstico de la tuberculosis mediante la prueba chi-cuadrado para bogotá (colombia). Ingeniería Industrial, 33(2):112–125.60

[91] Park, H.-S. and Jun, C.-H. (2009). A simple and fast algorithm for k-medoids clustering. Expert Systems with Applications, 36(2):3336–3341.11

[92] Parsons, L., Haque, E., and Liu, H. (2004). Subspace clustering forhigh dimensional data. Acm Sigkdd Explorations Newsletter, 6(1):90–105. 8

156

Bibliografía

[93] Pedersen, A. B., Mikkelsen, E. M., Cronin-Fenton, D., Kristensen,N. R., Pham, T. M., Pedersen, L., and Petersen, I. (2017). Missing dataand multiple imputation in clinical epidemiological research. ClinicalEpidemiology, 9:157. 65

[94] Qi, Z., Tian, Y., and Shi, Y. (2013). Robust twin support vectormachine for pattern classification. Pattern Recognition, 46(1):305–316.13

[95] Qu, H.-Q., Li, Q., Rentfro, A. R., Fisher-Hoch, S. P., and McCormick,J. B. (2011). The definition of insulin resistance using homa-ir for ameri-cans of mexican descent using machine learning. PloS one, 6(6):e21041.36

[96] Rahman, M. G. and Islam, M. Z. (2010). A decision tree-based mis-sing value imputation technique for data pre-processing. Conferences inResearch and Practice in Information Technology Series, 121:41–50. 67

[97] Rebentrost, P., Mohseni, M., and Lloyd, S. (2014). Quantum sup-port vector machine for big data classification. Physical Review Letters,113(3):1–5. 5

[98] Roy, D. K. and Sharma, L. K. (2010). Genetic k-Means clusteringalgorithm for mixed numeric and categorical data sets. InternationalJournal of Artificial Intelligence & Applications, (1):23–28. 24

[99] Royston, P. et al. (2004). Multiple imputation of missing values. Statajournal, 4(3):227–41. 65

[100] Rubin, D. B. (1976). Inference and missing data. Biometrika,63(3):581–592. 57

[101] Rubin, D. B. (1996). Multiple imputation after 18+ years. Journalof the American statistical Association, 91(434):473–489. 57

[102] Rubin, D. B. (2004). Multiple imputation for nonresponse in surveys,volume 81. John Wiley & Sons. 57

157

Bibliografía

[103] Ruiz, R., Riquelme, J. C., Aguilar-Ruiz, J. S., and García-Torres,M. (2012). Fast feature selection aimed at high-dimensional data viahybrid-sequential-ranked searches. Expert Systems with Applications,39(12):11094–11102. 24

[104] Sharma, A., Chaturvedi, S., and Gour, B. (2014). A semi-supervisedtechnique for weather condition prediction using dbscan and knn. In-ternational Journal of Computer Applications, 95(10). 23

[105] Sheng, W. and Liu, X. (2006). A genetic k-medoids clustering algo-rithm. Journal of Heuristics, 12(6):447–466. 23

[106] Shim, K. (2013). MapReduce algorithms for big data analysis. Lectu-re Notes in Computer Science (including subseries Lecture Notes in Arti-ficial Intelligence and Lecture Notes in Bioinformatics), 7813 LNCS:44–48. 5

[107] Silva-Ramírez, E.-L., Pino-Mejías, R., López-Coello, M., andCubiles-de-la Vega, M.-D. (2011). Missing value imputation on mis-sing completely at random data using multilayer perceptrons. NeuralNetworks, 24(1):121–129. 68

[108] Smiti, A. and Eloudi, Z. (2013). Soft dbscan: Improving dbscanclustering method using fuzzy set theory. In 2013 6th InternationalConference on Human System Interactions (HSI), pages 380–385. IEEE.23

[109] Svetnik, V., Liaw, A., Tong, C., Culberson, J. C., Sheridan, R. P.,and Feuston, B. P. (2003). Random forest: a classification and regressiontool for compound classification and qsar modeling. Journal of chemicalinformation and computer sciences, 43(6):1947–1958. 61

[110] Technique, A. C. and Categorical, W. (2016). Una técnica de clasi-ficación con variables categóricas. 7(1):15–20. 67

[111] Trussell, T. J. (1975). A re-estimation of the multiplying factorsfor the brass technique for determining childhood survivorship rates.Population Studies, 29(1):97–107. 118

158

Bibliografía

[112] Tsai, M.-c., Chen, K.-h., Su, C.-t., and Lin, H.-c. (2012). An Ap-plication of PSO Algorithm and Decision Tree for Medical Problem.2nd Internatonal Conference on Intelligent Computational System, pa-ges 124–126. 23

[113] Tu, C.-J., Chuang, L.-Y., Chang, J.-Y., Yang, C.-H., et al. (2007).Feature selection using pso-svm. International Journal of ComputerScience. 23

[114] van der Laan, M. J. and Pollard, K. S. (2003). A new algorithmfor hybrid hierarchical clustering with visualization and the booatstrap.Journal of Statistical Planning and Inference, 117:275–303. 24

[115] Velázquez Monroy, Ó., Rosas Peralta, M., Lara Esqueda, A., Paste-lín Hernández, G., Attie, F., and Tapia Conyer, R. (2002). Hipertensiónarterial en méxico: resultados de la encuesta nacional de salud (ensa)2000. Archivos de cardiología de México, 72(1):71–84. 35

[116] Venkatesh, H., Perur, S. D., and Jalihal, N. (2015). A Study on Useof Big Data in Cloud Computing Environment. International Journal ofComputer Science and Information Technologies (IJCSIT), 6(3):2076–2078. 7

[117] Wang, L., Wang, G., and Alexander, C. A. (2015). Big data and vi-sualization: methods, challenges and technology progress. Digital Tech-nologies, 1(1):33–38. 6

[118] Wu, F.-X., Zhang, W.-J., and Kusalik, A. J. (2003). A genetic k-means clustering algorithm applied to gene expression data. In Confe-rence of the Canadian Society for Computational Studies of Intelligence,pages 520–526. Springer. 23

[119] Wu, X., Zhu, X., Wu, G.-Q., and Ding, W. (2014). Data Miningwith Big Data. Knowledge and Data Engineering, IEEE Transactionson, 26(1):97–107. 5

[120] Xu, X., Ester, M., Kriegel, H.-p., and Sander, J. (1998). ADistribution-Based Clustering Algorithm for Mining in Large Spatial

159

Bibliografía

Databases. 14th International Conference on Data Engineering ( ICDE’ 98 ). 25

[121] Yang, F., Sun, T., and Zhang, C. (2009). An efficient hybrid da-ta clustering method based on k-harmonic means and particle swarmoptimization. Expert Systems with Applications, 36(6):9847–9852. 22

[122] Yang, S.-T., Lee, J.-D., Chang, T.-C., Huang, C.-H., Wang, J.-J.,Hsu, W.-C., Chan, H.-L., Wai, Y.-Y., and Li, K.-Y. (2013). Discrimina-tion between alzheimer’s disease and mild cognitive impairment usingsom and pso-svm. Computational and mathematical methods in medici-ne, 2013. 23

[123] Yang, Y., Liao, Y., Meng, G., and Lee, J. (2011). A hybrid featureselection scheme for unsupervised learning and its application in bearingfault diagnosis. Expert Systems with Applications, 38(9):11311–11320. 24

[124] Ylijoki, O. and Porras, J. (2016). Perspectives to definition of big da-ta: a mapping study and discussion. Journal of Innovation Management,4(1):69–91. 5

[125] Yu, D., Liu, G., Guo, M., and Liu, X. (2018a). An improved k-medoids algorithm based on step increasing and optimizing medoids.Expert Systems with Applications, 92:464–473. 11

[126] Yu, H., Caldwell, C., Mah, K., and Mozeg, D. (2009). Coregisteredfdg pet/ct-based textural characterization of head and neck cancer forradiation treatment planning. IEEE transactions on medical imaging,28(3):374–383. 23

[127] Yu, S.-S., Chu, S.-W., Wang, C.-M., Chan, Y.-K., and Chang, T.-C.(2018b). Two improved k-means algorithms. Applied Soft Computing,68:747–755. 10

[128] Zhang, H., Berg, A. C., Maire, M., and Malik, J. (2006). SVM-KNN: Discriminative nearest neighbor classification for visual categoryrecognition. Proceedings of the IEEE Computer Society Conference onComputer Vision and Pattern Recognition, 2:2126–2136. 23

160

Bibliografía

[129] Zhang, X., Wang, W., Norvag, K., and Sebag, M. (2010). K-ap: gene-rating specified k clusters by efficient affinity propagation. In 2010 IEEEInternational Conference on Data Mining, pages 1187–1192. IEEE. 23

161

Bibliografía

162

Lista de Acrónimos

ANN Artificial Neural Network

DBSCAN Density Based Spatial Clustering of Aplications with Noise

DPA División Político Administrativa

DT Decision Tree

EM Expectation-Maximization

FS Feature Selection

GA Genetic Algorithm

GNG Growing Neural Gas

IM Imputación Múltiple

IS Imputación Simple

KDD Knowledge Discovery in Databases

KNN K-Nearest Neighbors

LD Listwise Deletion

MAM Métodos de Acceso Métrico

MAR Missing At Random

MCAR Missing Completely At Random

ML Machine Learning

MLP Multi-Layer Perceptron

NMAR Missing Not At Random

NA Not Applicable

NN Nearest Neighbors

PCA Principal Component Analisys

PSO Particle Swarm Optimization

RF Random Forest

SA Simulated Annealing

SBE Según Brechas Educativas

SOM Self Organizing Map

SVM Support Vector Machine

TS Tabu Search

TMI Tasa de Mortalidad Infantil

164