preprocesamiento de datos termográficos por medio de técnicas

142
Preprocesamiento de datos termográficos por medio de técnicas de balanceo de clases y análisis de cúmulos (Clustering) TESIS DE MAESTRÍA Nancy Pérez Castro Laboratorio Nacional de Informática Avanzada Maestría en Computación Aplicada Xalapa, Ver. Noviembre 2013

Upload: vuongtuyen

Post on 04-Feb-2017

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Preprocesamiento de Datos Termográficos por medio de Técnicas

Preprocesamiento de datos termográficospor medio de técnicas de balanceo de clases y

análisis de cúmulos (Clustering)

TESIS DE MAESTRÍA

Nancy Pérez Castro

Laboratorio Nacional de Informática AvanzadaMaestría en Computación Aplicada

Xalapa, Ver. Noviembre 2013

Page 2: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 3: Preprocesamiento de Datos Termográficos por medio de Técnicas

Preprocesamiento de datostermográficos por medio de técnicas de

balanceo de clases y análisis decúmulos (Clustering)

Tesis para obtener el grado de maestríaMaestría en Computación Aplicada

AutorNancy Pérez Castro

Dirigida por los DoctoresNicandro Cruz Ramírez y Efrén Mezura Montes

Laboratorio Nacional de Informática AvanzadaMaestría en Computación Aplicada

Xalapa, Ver. Noviembre 2013

Page 4: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 5: Preprocesamiento de Datos Termográficos por medio de Técnicas

A mi Madre, Sra. Bertha Castro Díaz y ami hermana Gladys Pérez Castro

Mi pequeña gran Familia

Page 6: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 7: Preprocesamiento de Datos Termográficos por medio de Técnicas

Agradecimientos

La ciencia no es más que un refinamiento delpensamiento.

Albert Einstein

A Dios por regalarme la vida y por estar a mi lado.

A mi familia: mi mamá Ade, que me ha enseñado con su ejemplo a salir adelante sinimportar las adversidades y que cuándo parece que todo está en contra siempre hay unaesperanza y una solución. Gracias a mi hermana Gladys que siempre me alegra la vida.

A mi amor Victor Manuel por regalarme siempre un chiste, una sonrisa y un abrazo enaquellos momentos de estrés, gracias por tu paciencia y tu amor.

A mis asesores, el Dr. Nicandro Cruz Ramírez y al Dr. Efrén Mezura Montes, por suapoyo, su tiempo y sus aportaciones en este proyecto.

A mis amigos, por su compresión y buenos deseos.

A CONACYT por el apoyo económico brindado para llevar a cabo mis estudios demaestría.

VII

Page 8: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 9: Preprocesamiento de Datos Termográficos por medio de Técnicas

Índice

Agradecimientos VII

1. Introducción 11.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. Planteamiento del Problema . . . . . . . . . . . . . . . . . . . . . . . . . 41.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3.2. Objetivos específicos . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.4. Hipótesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.5. Justificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.6. Alcances y Limitaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.6.1. Alcances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.6.2. Limitaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.7. Organización del documento de Tesis . . . . . . . . . . . . . . . . . . . . 6

2. Balanceo de clases 92.1. Balanceo de clases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2. Taxonomía de técnicas de balanceo de clases . . . . . . . . . . . . . . . . 102.3. Métodos basados en Sampling para aprendizaje desbalanceado . . . . . . . 10

2.3.1. Random Oversampling . . . . . . . . . . . . . . . . . . . . . . . . 112.3.2. Random Undersampling . . . . . . . . . . . . . . . . . . . . . . . 112.3.3. Informed Undersampling . . . . . . . . . . . . . . . . . . . . . . . 112.3.4. Synthetic Sampling with Data Generation . . . . . . . . . . . . . . 122.3.5. Adaptive Synthetic Sampling . . . . . . . . . . . . . . . . . . . . . 122.3.6. Sampling with Data Cleaning Techniques . . . . . . . . . . . . . . 122.3.7. Cluster-Based Sampling Method . . . . . . . . . . . . . . . . . . . 132.3.8. Integration of Sampling and Boosting . . . . . . . . . . . . . . . . 13

2.4. Métodos Cost-Sensitive para aprendizaje desbalanceado . . . . . . . . . . 142.5. Métodos basados en Kernel y métodos de aprendizaje activo para aprendi-

zaje desbalanceado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.6. Métodos adicionales para aprendizaje desbalanceado . . . . . . . . . . . . 15

3. Análisis de cúmulos 17

IX

Page 10: Preprocesamiento de Datos Termográficos por medio de Técnicas

X ÍNDICE

3.1. ¿Qué es Clustering? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2. Taxonomía de técnicas de Clustering . . . . . . . . . . . . . . . . . . . . . 17

3.2.1. Métodos jerárquicos . . . . . . . . . . . . . . . . . . . . . . . . . 183.2.2. Métodos de particionamiento . . . . . . . . . . . . . . . . . . . . . 193.2.3. Métodos basados en densidad . . . . . . . . . . . . . . . . . . . . 193.2.4. Métodos basados en Grid . . . . . . . . . . . . . . . . . . . . . . . 203.2.5. Clustering escalable . . . . . . . . . . . . . . . . . . . . . . . . . 203.2.6. Métodos basados en co-ocurrencia de datos categóricos . . . . . . . 203.2.7. Clustering de datos de alta dimensionalidad . . . . . . . . . . . . . 213.2.8. Otros métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4. Materiales y Métodos 234.1. Descripción del estudio termográfico . . . . . . . . . . . . . . . . . . . . . 234.2. Descripción del conjunto de datos . . . . . . . . . . . . . . . . . . . . . . 234.3. Algoritmos de balanceo de clases . . . . . . . . . . . . . . . . . . . . . . . 25

4.3.1. Métodos basados en Sampling . . . . . . . . . . . . . . . . . . . . 254.3.2. Métodos Cost-Sensitive . . . . . . . . . . . . . . . . . . . . . . . 274.3.3. Métodos basados en Kernel . . . . . . . . . . . . . . . . . . . . . 304.3.4. Métodos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.4. Algoritmos de Clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.4.1. AutoClass (EM) . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.4.2. SimpleKMeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.5. Algoritmos de clasificación . . . . . . . . . . . . . . . . . . . . . . . . . . 374.5.1. Naive Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.5.2. Hill-Climber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.5.3. J48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.6. Técnicas de evaluación . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.6.1. Validación cruzada . . . . . . . . . . . . . . . . . . . . . . . . . . 394.6.2. Medidas de desempeño . . . . . . . . . . . . . . . . . . . . . . . . 404.6.3. Curva ROC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.7. Herramienta WEKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5. Metodología 495.1. Metodología experimental para algoritmos de balanceo . . . . . . . . . . . 49

5.1.1. Metodología para métodos basados en Cost-sensitive y basados enKernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1.2. Metodología para métodos basados en Sampling: SMOTE . . . . . 555.1.3. Metodología para métodos adicionales: Mega-Trend Diffusion (MTD) 59

5.2. Metodología experimental para algoritmos de Clustering . . . . . . . . . . 60

6. Resultados y Discusión 676.1. Resultados primera etapa . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

6.1.1. Resultados de SMOTE . . . . . . . . . . . . . . . . . . . . . . . . 68

Page 11: Preprocesamiento de Datos Termográficos por medio de Técnicas

ÍNDICE XI

6.1.2. Resultados de CostSensitiveClassifier y MetaCost . . . . . . . . . . 726.1.3. Resultados de LibSVM y SMO . . . . . . . . . . . . . . . . . . . 756.1.4. Resultados MTD . . . . . . . . . . . . . . . . . . . . . . . . . . . 766.1.5. Resultados de AutoClass y SimpleKMeans . . . . . . . . . . . . . 80

6.2. Resultados segunda etapa . . . . . . . . . . . . . . . . . . . . . . . . . . . 836.2.1. Resultados de CostSensitiveClassifier y MetaCost . . . . . . . . . . 846.2.2. Resultados de LibSVM y SMO . . . . . . . . . . . . . . . . . . . 916.2.3. Resultados de AutoClass y SimpleKMeans . . . . . . . . . . . . . 93

7. Conclusiones 103

I Apéndices 107

A. Árboles de decisión y Redes Bayesianas 109A.1. Nombres cortos de atributos . . . . . . . . . . . . . . . . . . . . . . . . . 109A.2. Árbol de decisión SMOTE con 1 vecino . . . . . . . . . . . . . . . . . . . 110A.3. Árbol de decisión SMOTE con 5 vecinos . . . . . . . . . . . . . . . . . . . 111A.4. Árbol de decisión SMOTE con 10 vecinos . . . . . . . . . . . . . . . . . . 112A.5. Red Bayesiana SMOTE con 1 vecino . . . . . . . . . . . . . . . . . . . . . 113A.6. Red Bayesiana SMOTE con 5 vecinos . . . . . . . . . . . . . . . . . . . . 114A.7. Red Bayesiana SMOTE con 10 vecinos . . . . . . . . . . . . . . . . . . . 115

Referencias 117

Page 12: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 13: Preprocesamiento de Datos Termográficos por medio de Técnicas

Índice de figuras

2.1. Taxonomía de técnicas para tratar el desbalanceo de clases . . . . . . . . . 10

3.1. Taxonomía de técnicas de Clustering . . . . . . . . . . . . . . . . . . . . . 18

4.1. (a) Ejemplo de K-vecinos más cercanos de xi, considerando k = 6. (b)Generación de instancias sintéticas basadas en distancia Euclidiana [44]. . . 26

4.2. Matrices de costos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.3. Función MTD [65] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.4. Matriz de confusión de dos clases. . . . . . . . . . . . . . . . . . . . . . . 414.5. Ejemplo de una curva ROC . . . . . . . . . . . . . . . . . . . . . . . . . . 434.6. Ventana principal de Weka . . . . . . . . . . . . . . . . . . . . . . . . . . 444.7. Interfaz Explorer de Weka . . . . . . . . . . . . . . . . . . . . . . . . . . 444.8. Interfaz Experimenter de Weka . . . . . . . . . . . . . . . . . . . . . . . . 454.9. Interfaz KnowledgeFlow de Weka . . . . . . . . . . . . . . . . . . . . . . 464.10. Interfaz Simple CLI de Weka . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.1. Metodología experimental para algoritmos de balanceo Cost-sensitive y ba-sados en Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.2. Cargar conjunto de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . 505.3. Selección de algoritmos para el experimento . . . . . . . . . . . . . . . . . 515.4. Ejecución del experimento . . . . . . . . . . . . . . . . . . . . . . . . . . 545.5. Análisis de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555.6. Metodología para aplicar SMOTE . . . . . . . . . . . . . . . . . . . . . . 555.7. Cargar conjunto de datos para aplicar SMOTE . . . . . . . . . . . . . . . . 565.8. Seleccionar algoritmo SMOTE . . . . . . . . . . . . . . . . . . . . . . . . 565.9. Asignar parámetros a SMOTE . . . . . . . . . . . . . . . . . . . . . . . . 575.10. Aplicar SMOTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585.11. Guardar conjuntos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . 595.12. Metodología para probar MTD . . . . . . . . . . . . . . . . . . . . . . . . 595.13. Metodología para aplicar algoritmos de Clustering . . . . . . . . . . . . . . 605.14. Cargar termografíaSC en Weka opción Explorer . . . . . . . . . . . . . . . 615.15. Selección de algoritmo de Clustering . . . . . . . . . . . . . . . . . . . . . 615.16. Asignación de parámetros al algoritmo de Clustering . . . . . . . . . . . . 62

XIII

Page 14: Preprocesamiento de Datos Termográficos por medio de Técnicas

XIV ÍNDICE DE FIGURAS

5.17. Ejecutar algoritmo de Clustering . . . . . . . . . . . . . . . . . . . . . . . 635.18. Visualizar asignación de clusters . . . . . . . . . . . . . . . . . . . . . . . 645.19. Visualizar asignación de clusters . . . . . . . . . . . . . . . . . . . . . . . 64

6.1. Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termo-grafía -K = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

6.2. Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termo-grafía -K = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

6.3. Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termo-grafía -K = 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

6.4. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc±= 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

6.5. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc±= 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

6.6. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc±= 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

6.7. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc±= 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

6.8. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc±= 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

6.9. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con al-goritmos basados en Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . 76

6.10. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6.11. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

6.12. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

6.13. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base70 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.14. Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.15. Curvas ROC para la clase Enfermo y No_Enfermo de termografía procesa-da con AutoClass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

6.16. Curvas ROC para la clase Enfermo y No_Enfermo de termografía procesa-da con SimpleKMeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

6.17. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc±= 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6.18. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc±= 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6.19. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc±= 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6.20. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc±= 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Page 15: Preprocesamiento de Datos Termográficos por medio de Técnicas

ÍNDICE DE FIGURAS XV

6.21. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc±= 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6.22. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.23. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.24. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.25. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.26. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

6.27. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB . . . . 926.28. Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore . . 926.29. Curvas ROC para la clase Enfermo-0, Enfermo-1, Enfermo-3 de termogra-

fíaB procesada con AutoClass . . . . . . . . . . . . . . . . . . . . . . . . 956.30. Curvas ROC para la clase No_Enfermo-2, No_Enfermo-3 de termografíaB

procesada con AutoClass . . . . . . . . . . . . . . . . . . . . . . . . . . . 966.31. Curvas ROC para la clase Enfermo-0, Enfermo-1 de termografíaB procesa-

da con SimpleKMeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966.32. Curvas ROC para la clase No_Enfermo-0, No_Enfermo-2, No_Enfermo-3

de termografíaB procesada con SimpleKMeans . . . . . . . . . . . . . . . 976.33. Curvas ROC para la clase Enfermo-1, Enfermo-2 de termografíaScore pro-

cesada con AutoClass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986.34. Curvas ROC para la clase No_Enfermo-0, No_Enfermo-2 de termografíaS-

core procesada con AutoClass . . . . . . . . . . . . . . . . . . . . . . . . 986.35. Curvas ROC para la clase Enfermo-0, Enfermo-1, Enfermo-2 de termogra-

fíaScore procesada con SimpleKMeans . . . . . . . . . . . . . . . . . . . 996.36. Curvas ROC para la clase No_Enfermo-0, No_Enfermo-1, No_Enfermo-2

de termografíaScore procesada con SimpleKMeans . . . . . . . . . . . . . 100

A.1. Árbol de decisión, SMOTE con 1 vecino más cercano . . . . . . . . . . . . 110A.2. Árbol de decisión, SMOTE con 5 vecinos más cercanos . . . . . . . . . . . 111A.3. Árbol de decisión, SMOTE con 10 vecinos más cercanos . . . . . . . . . . 112A.4. Red Bayesiana, SMOTE con 1 vecino más cercano . . . . . . . . . . . . . 113A.5. Red Bayesiana, SMOTE con 5 vecinos más cercanos . . . . . . . . . . . . 114A.6. Red Bayesiana, SMOTE con 10 vecinos más cercanos . . . . . . . . . . . . 115

Page 16: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 17: Preprocesamiento de Datos Termográficos por medio de Técnicas

Índice de Tablas

2.1. Trabajos relacionados con el desbalanceo de clases ordenados cronológica-mente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.1. Características del conjunto de datos . . . . . . . . . . . . . . . . . . . . . 244.2. Descripción de los atributos del conjunto de datos . . . . . . . . . . . . . 244.3. Parámetros SMOTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.4. Parámetros CostSensitiveClassifier . . . . . . . . . . . . . . . . . . . . . 294.5. Parámetros MetaCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304.6. Parámetros SMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.7. Parámetros LibSVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.8. Parámetros EM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.9. Parámetros SimpleKMeans . . . . . . . . . . . . . . . . . . . . . . . . . 374.10. Parámetros Naive Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.11. Parámetros Hill-Climber . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.12. Parámetros J48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.1. Valores para parámetros de CostSensitiveClassifier . . . . . . . . . . . . . 515.2. Valores para parámetros de MetaCost . . . . . . . . . . . . . . . . . . . . 525.3. Combinaciones de algoritmos Cost-sensitive . . . . . . . . . . . . . . . . 525.4. Valores para parámetros de J48 . . . . . . . . . . . . . . . . . . . . . . . 525.5. Valores para parámetros de Naive Bayes . . . . . . . . . . . . . . . . . . . 525.6. Valores para parámetros de Hill-Climber . . . . . . . . . . . . . . . . . . 535.7. Valores para parámetros de SMO . . . . . . . . . . . . . . . . . . . . . . 535.8. Valores para parámetros de LibSVM . . . . . . . . . . . . . . . . . . . . . 535.9. Valores de los parámetros de SMOTE . . . . . . . . . . . . . . . . . . . . 575.10. Configuraciones de parámetros para MTD . . . . . . . . . . . . . . . . . . 605.11. Valores de los parámetros de EM . . . . . . . . . . . . . . . . . . . . . . 625.12. Valores de los parámetros de SimpleKMeans . . . . . . . . . . . . . . . . 62

6.1. Resultados de precisión, sensibilidad y especificidad de tres variantes determografía tratada con SMOTE. . . . . . . . . . . . . . . . . . . . . . . 68

6.2. Resultados de precisión, sensibilidad y especificidad de termografía pormedio de algoritmos Cost-Sensitive. . . . . . . . . . . . . . . . . . . . . . 72

XVII

Page 18: Preprocesamiento de Datos Termográficos por medio de Técnicas

XVIII ÍNDICE DE TABLAS

6.3. Resultados de precisión, sensibilidad y especificidad de termografía pormedio de algoritmos basados en Kernel . . . . . . . . . . . . . . . . . . . 75

6.4. Resultados de precisión, sensibilidad y especificidad de termografía tratadacon MTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6.5. Valores de clase con AutoClass . . . . . . . . . . . . . . . . . . . . . . . 806.6. Valores de clase con SimpleKMeans . . . . . . . . . . . . . . . . . . . . . 806.7. Resultados de precisión, sensibilidad y especificidad por cada variante de

termografía procesada por algoritmos de clustering . . . . . . . . . . . . . 816.8. Resultados de precisión, sensibilidad y especificidad de termografíaB por

medio de algoritmos Cost-Sensitive . . . . . . . . . . . . . . . . . . . . . 846.9. Resultados de precisión, sensibilidad y especificidad de termografíaScore

por medio de algoritmos Cost-Sensitive . . . . . . . . . . . . . . . . . . . 856.10. Resultados de precisión, sensibilidad y especificidad de termografíaB por

medio de algoritmos basados en Kernel . . . . . . . . . . . . . . . . . . . 916.11. Resultados de precisión, sensibilidad y especificidad de termografíaScore

por medio de algoritmos basados en Kernel . . . . . . . . . . . . . . . . . 916.12. Valores de clase con AutoClass para termografíaB . . . . . . . . . . . . . 936.13. Valores de clase con SimpleKMeans para termografíaB . . . . . . . . . . . 936.14. Resultados de precisión, sensibilidad y especificidad de las variantes de ter-

mografíaB procesadas con algoritmos de clustering . . . . . . . . . . . . . 946.15. Valores de clase con AutoClass para termografíaScore . . . . . . . . . . . 946.16. Valores de clase con SimpleKMeans para termografíaScore . . . . . . . . 946.17. Resultados de precisión, sensibilidad y especificidad de las variantes de ter-

mografíaScore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

A.1. Nombres cortos de los atributos del conjunto de datos . . . . . . . . . . . . 109

Page 19: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 1

Introducción

1.1. Antecedentes

El cáncer de mama se considera en la actualidad como un grave problema de saludpública a nivel mundial, debido a que se le han atribuido 460 000 defunciones anuales mun-diales al menos en el año 2008 [75]. De acuerdo a Brandan [20], entre los diferentes tiposde cáncer que existen actualmente, el cáncer de mama es el más frecuente y el de mayormortalidad entre las mujeres del mundo.

El cáncer de mama es una enfermedad que presenta el desarrollo de células malignas enlos tejidos de una o ambas mamas [91]. A partir de la aparición de dicha enfermedad se hanrealizado importantes estudios médicos que han mejorado la supervivencia; sin embargo, ladetección oportuna continúa siendo el principal desafío.

Dentro de este problema de salud pública se pueden reconocer algunas herramientaspara la detección del cáncer de mama, entre las que se pueden mencionar son: la mamo-grafía, la mamografía digital, detección asistida por computadora, ultrasonido, imágenes deresonancia magnética (MRI), tomografía por emisión de positrones (PET), imágenes de im-pedancia eléctrica, biopsia FNA (Aspiración con aguja fina) e imagen termográfica digitalinfrarroja (ITDI) o termografía [70, 56].

Este proyecto, centra la atención en la termografía, que es una herramienta de evalua-ción no-invasiva, que consiste en un examen indoloro que no expone al paciente a radiaciónionizante y es principalmente una prueba a la respuesta fisiológica que se basa en un meca-nismo de temperaturas de la piel del ser humano [40]. Se dice que la temperatura de la pielque recubre un tumor maligno es mayor en comparación con la piel que no posee algún tu-mor, debido a que el área que presenta un tumor requiere de mayor alimentación sanguíneaen comparación de una zona sana, provocando el incremento de la temperatura [91].

Desde 1982 la termografía fue aprobada por la FDA (Food and Drug Administration)como una herramienta coadyuvante para el diagnóstico de cáncer de mama [11]. Sin em-bargo, actualmente continúa considerándose como una herramienta complementaria para la

1

Page 20: Preprocesamiento de Datos Termográficos por medio de Técnicas

2 CAPÍTULO 1. Introducción

detección debido a falta de pruebas que aumenten su grado de confiabilidad.

Algunos de los indicadores que generalmente se identifican para validar que tan confia-ble puede ser una prueba diagnóstica son: la sensibilidad [6] y la especificidad [6]. En elcaso de tareas de clasificación es la precisión [103] una de las medidas de desempeño quecon frecuencia se utiliza. La sensibilidad se puede entender como el indicador que repre-senta la fracción de casos positivos que realmente presentan una enfermedad como puedeser el cáncer de mama, es decir, es la capacidad de una prueba para detectar la enfermedaden pacientes enfermos [6]. Por otro lado, la especificidad es el indicador que representa lafracción de pacientes que presentan resultados negativos y se sabe que la enfermedad no es-tá presente, es decir, es la capacidad de la prueba para detectar la ausencia de la enfermedaden pacientes sanos [40, 6]. La precisión por su parte indica el porcentaje de casos que seencuentran correctamente clasificados [103].

Dentro de la literatura especializada se ha reportado evidencia de algunos estudios quehan presentado resultados exitosos en el indicador de sensibilidad con el uso de datos ter-mográficos como es el caso de Arora [11], que presenta un estudio clínico donde se haceuso de la termografía como herramienta de detección de cáncer de mama aplicado a ungrupo de 92 pacientes, reportando un 97 % de sensibilidad y un 44 % de especificidad enla prueba. Haciendo referencia a este hallazgo, se puede observar que con el paso de losaños la termografía ha logrado mejorías en la predicción de los casos positivos de cáncer demama [70], además que resulta ser una herramienta atractiva para ser explorada, y es poreso que en este proyecto se presenta la termografía como herramienta complemento para eldiagnóstico de cáncer de mama con el fin de contribuir en nuevas evidencias que soportenlos resultados de diagnóstico por medio de dicha herramienta.

Cabe aclarar que el desarrollo de la tesis no se basa en el estudio de Arora sino en losresultados del estudio realizado por Ameca et al. [29], donde se tiene un conjunto de datoscon 98 casos, de los cuales 77 corresponden a los casos enfermos y 21 a los casos sanos.El conjunto de datos que usa Ameca fue puesto a experimento por medio de tres diferentesclasificadores bayesianos, en dicho experimento no se lograron resultados representativosen especificidad y precisión de clasificación, sin embargo en sensibilidad se logra un por-centaje ideal.

Actualmente en Xalapa, Veracruz, la colaboración del Departamento de Inteligencia Ar-tificial de la Facultad de Física e Inteligencia Artificial de la Universidad Veracruzana, elCentro Estatal de Cancerología (CECan) y el Laboratorio Nacional de Informática Avan-zada (LANIA), han propiciado el desarrollo de un proyecto que consiste en aprovechartécnicas de balanceo de clases, clustering y de clasificación aplicadas al mismo conjuntode datos termográficos para apoyar y tratar de mejorar los resultados de especificidad enla detección oportuna de cáncer de mama y proporcionar resultados que fortalezcan a latermografía para ser usada como un método complemento para el diagnóstico del cáncer demama.

Se poseen datos de un conjunto de pacientes que en su mayoría ya han padecido alguna

Page 21: Preprocesamiento de Datos Termográficos por medio de Técnicas

1.1. Antecedentes 3

variante del cáncer de mama, por lo tanto, es posible que los pacientes lo vuelvan a desarro-llar y requieran ser diagnosticados oportunamente a través de una herramienta no invasiva,con el fin de evitar los niveles de radiación y dolor en los pacientes. Se han realizado es-tudios a través de la termografía como apoyo para el diagnóstico de cáncer de mama, latermografía como tal, no posee la capacidad suficiente de predecir con exactitud que tipo decáncer de mama posee un paciente, sin embargo, puede proporcionar información relevantesobre el grado de una lesión a través de la puntuación obtenida es el estudio termográficoque puede ser comparado contra el valor de una variable denominada como BIRADS, usadaen estudios de termografía, que puede tomar valores entre 1 y 6, donde valores entre 1 y 2indica que no existe una lesión, 3 indica que hay una lesión pero es poco probable que seamaligna, el 4 indica que existe una lesión y es probable que se maligna y mayor a 5 es muyprobable que la lesión sea maligna. En Ameca [9] se describe la correspondencia entre lapuntuación obtenida en el estudio termográfico con el valor de la variable BIRADS.

La forma en que se genera el estudio termográfico y la formación de la puntuación delmismo se describe en la sección 4.1.

En aprendizaje automático, se sitúa el clustering o análisis de cúmulos, que involucrauna serie de técnicas que se encargan de la formación de grupos a partir de las fuertes se-mejanzas entre las instancias que pertenecen a un conjunto de datos [103]. En este proyectose pretende hacer uso de algunas de las técnicas de clustering para preprocesar los datostermográficos, con el fin de encontrar una mejor distribución de los casos.

De acuerdo a Japkowicz [57], la mayoría de los sistemas de aprendizaje supervisadopreviamente diseñados, asumen que su entrenamiento se establece con base en un conjuntode datos balanceados, sin embargo no siempre es así. El problema de desbalanceo de clasesdentro de un conjunto de datos, según Chawla, et. al. [23], es uno de los actuales problemasa los que se enfrenta el aprendizaje automático a través de su madurez. Se dice que cualquierconjunto de datos con una desigualdad entre sus clases puede considerarse como desbalan-ceado. El desbalanceo es el resultado relacionado directamente con la naturaleza complejade los datos produciéndose así un desbalanceo intrínseco con las variables existentes en elconjunto de datos.

Se dice que el grado de desbalanceo es un factor que puede dificultar el aprendizaje yque la clasificación tenga una desventaja significativa de los resultados alcanzables de lamayoría de los algoritmos de clasificación estándar [44].

La mayoría de los esfuerzos de investigación sobre desbalanceo se centran en proble-mas bi-clase, es decir, en el conjunto de datos existen dos clases que representan la mayoríao la minoría de los resultados [82]. En este proyecto de investigación el conjunto de datosque se posee es de tipo bi-clase ya que existe una clase que representa los casos que tienenla enfermedad y otra que representa los casos que no la tienen.

De acuerdo a la distribución de los casos en el conjunto de datos que se tiene se puede

Page 22: Preprocesamiento de Datos Termográficos por medio de Técnicas

4 CAPÍTULO 1. Introducción

observar un grado de desbalanceo, ya que se cuenta con un mayor número de casos enfer-mos que casos sanos. Con el desarrollo de este proyecto se pretende aplicar algoritmos debalanceo y clustering que nos ayuden a mejorar los resultados de especificidad y precisióna partir de los que se lograron en el estudio de Ameca [29].

1.2. Planteamiento del Problema

Actualmente se tiene un conjunto de datos compuesto por 98 casos y cada caso posee 17variables termográficas y una variable clase. De los 98 casos, el oncólogo ha dictaminadocon certeza que 77 casos tienen cáncer y 21 son sanos, a partir de los resultados de biopsiaque posee de los casos. El conjunto de datos fue evaluado por Ameca [29] a través de tresclasificadores bayesianos que son: Naive Bayes, Hill-Climber y Repeated Hill-Climber. ConNaive Bayes se obtuvo una sensibilidad de 79 %, una especificidad de 24 % y una precisiónde 67.22 % con Hill-Climber la sensibilidad fue de 100 %, especificidad de 0 % y precisiónde 78.56 % para Repeat Hill-Climber se obtuvo 100 % de sensibilidad, 0 % de especificidady 78.56 % de precisión.

A partir de los resultados obtenidos en el estudio de Ameca [29], surge la motivaciónpara realizar un segundo tratamiento del conjunto de datos, con el objetivo de encontrar téc-nicas de preprocesamiento que ayuden a localizar una muestra más representativa del con-junto de datos. Específicamente el balanceo de clases y el análisis de cúmulos que puedanser aplicadas al conjunto de datos para mejorar la especificidad, sensibilidad y precisión.

1.3. Objetivos

1.3.1. Objetivo general

Lograr una muestra más representativa para potencialmente mejorar el desempeño enclasificación de un conjunto de datos termográficos para la detección de cáncer de mama apartir de técnicas de balanceo de clases y análisis de cúmulos (Clustering).

1.3.2. Objetivos específicos

Determinar qué técnica de balanceo de clases es susceptible a ser aplicada al conjuntode datos.

Aplicar técnicas de Clustering para preprocesar el conjunto de datos.

Aplicar técnicas de clasificación a los datos preprocesados para verificar si el porcen-taje de clasificación, sensibilidad y especificidad se incrementa.

Page 23: Preprocesamiento de Datos Termográficos por medio de Técnicas

1.4. Hipótesis 5

1.4. Hipótesis

Con una mejor representatividad de las clases es posible disminuir la distancia entrela sensibilidad y la especificidad a partir de la implementación de técnicas de balan-ceo de clases y análisis de cúmulos en el conjunto de datos, provocando un mejordesempeño de los clasificadores que se evalúen.

1.5. Justificación

El presente proyecto de investigación se centra en tres vertientes de justificación queson: 1) la contribución de encontrar una modalidad de detección accesible para todos, 2) eluso de la termografía como herramienta de detección de cáncer de mama y 3) respecto a lacontribución local de dar solución al problema presentado.

1. Desde 2006 [28], el cáncer de mama es la principal causa de muerte de mujeres enMéxico, son varios los factores que inciden en el crecimiento de dicha enfermedad,entre los que se pueden encontrar la falta de una detección temprana. De acuerdo aVásquez-Luna [88] una de las primeras modalidades para la detección temprana fuepor medio de imágenes por infrarrojos o termografía, sin embargo, debido a los re-sultados negativos reportados se disminuyó el interés por dicha modalidad.

Actualmente la mamografía es considerada como la herramienta "de oro"[88] para ladetección oportuna. Sin embargo la Organización Mundial de la Salud considera quela mamografía no es una opción viable para muchos países debido a que es una herra-mienta relativamente cara, que requiere de una gran infraestructura y de profesionalesaltamente capacitados. La termografía, por su parte, resulta ser una atractiva opcióncomplemento para la detección de cáncer de mama, ya que el costo de la infraestruc-tura, la facilidad de uso y la portabilidad, son características que la hacen resaltar,positivamente, de otras herramientas de detección.

2. Se han iniciado esfuerzos de investigación por la búsqueda de una herramienta quepueda ser viable para todos pero que principalmente logre proporcionar la informa-ción suficiente y clara para la oportuna detección del cáncer de mama. De acuerdoa Janghel [56], la mamografía, la biopsia y la aspiración con aguja fina son las trestécnicas más utilizadas para la detección y el diagnóstico de cáncer de mama, sin em-bargo estas herramientas pueden llegar a ser poco accesibles, requieren de personalaltamente capacitados, son incómodas y dolorosas para el paciente.

En el caso de la mamografía a pesar de ser la que tiene una mayor exactitud en losdiagnósticos, presenta algunos inconvenientes que son: exponer a los pacientes a unaelevada radiación ionizante, la incomodidad al obtener las imágenes debido a que lamama tiene que ser comprimida entre las superficies planas para mejorar la calidad dela imagen. Se dice que con la mamografía es difícil obtener buenas imágenes cuandolas mamas son densas (con poca grasa) o en mujeres con implantes mamarios [40].

Page 24: Preprocesamiento de Datos Termográficos por medio de Técnicas

6 CAPÍTULO 1. Introducción

Tomando en cuenta los inconvenientes de la mamografía la termografía se presentacomo una opción viable y atractiva como herramienta complementaria para el diag-nóstico de cáncer de mama en este proyecto.

3. El conjunto de datos que se tiene es prácticamente nuevo y posee características com-plejas, por lo que se busca aplicar técnicas de balanceo de clases y técnicas de clus-tering para mejorar la clasificación de los datos y así poder contribuir en la semi-automatización del estudio termográfico mamario y así poder proporcionar al pacien-te un pre-diagnóstico más cercano a la respuesta del oncólogo.

1.6. Alcances y Limitaciones

1.6.1. Alcances

Para el conjunto de datos que se tiene, se va a probar SMOTE [24], CostSensitive-Classifier [103], MetaCost [30], LibSVM [21], SMO [76] y Mega-Trend Diffusion[65], como métodos representativos de balanceo de clases.

El estudio se ajusta a la disponibilidad de los casos que actualmente se tienen.

Como métodos de análisis de cúmulos se va a usar AutoClass (EM) [59] y Sim-pleKMeans [12], que son dos de los métodos más representativos y que se ajustan anuestras necesidades.

Se ocuparán técnicas de clasificación tradicionales para medir el desempeño del con-junto de datos procesado, algunas de las técnicas de clasificación posibles a aplicarson:

1. Redes Bayesianas [19].2. Árboles de decisión [19].3. Naive-Bayes [51].

Estos algoritmos de clasificación forman parte de Weka [49], una colección desarro-llada en Java por la Universidad de Waikato en Nueva Zelanda enfocada en tareas deminería de datos.

1.6.2. Limitaciones

La mayor y única limitación es tener un conjunto de datos pequeño y no existe unaposibilidad clara de incrementar el número de casos.

1.7. Organización del documento de Tesis

Capítulo 2. Balanceo de clases. Se define el concepto de desbalanceo de clases y sedescriben las diversas técnicas que se han reportado en la literatura especializada paratratar con dicho problema.

Page 25: Preprocesamiento de Datos Termográficos por medio de Técnicas

1.7. Organización del documento de Tesis 7

Capítulo 3. Clustering. Se describe el concepto de clustering y se presenta la taxo-nomía de técnicas existentes reportadas en la literatura especializada.

Capítulo 4. Materiales y métodos. Se describe el conjunto de datos que se usa parael análisis. También se describen los algoritmos de balanceo, clustering y de clasi-ficación que son aplicados a los datos durante el estudio, así como las medidas deevaluación utilizadas.

Capítulo 5. Metodología. Se presenta la metodología utilizada para llevar a cabo losexperimentos.

Capítulo 6. Resultados y Discusión. Se presentan los resultados obtenidos a partirde la aplicación de técnicas de balanceo, técnicas de clustering y de clasificación alos datos termográficos, así como su respectiva discusión.

Capítulo 7. Conclusiones y trabajo futuro. Se plantean las conclusiones a partir dela realización de esta tesis así como también se presenta el trabajo futuro sobre eltema.

Page 26: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 27: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 2

Balanceo de clases

2.1. Balanceo de clases

El Aprendizaje Automático [4] (Machine Learning) es un área que se ocupa del estudiodel reconocimiento de patrones, clasificación, regresión, clustering, etc., partiendo de unconjunto de datos con el objetivo de encontrar nuevo conocimiento. Se dice que el Apren-dizaje Automático ha sufrido una transición, de ser una disciplina académica a una cienciaaplicada. Debido a esta transición se ha enfrentando con diversos obstáculos y problemas aresolver entre los que se encuentra el problema del desbalanceo de clases [103][57].

En Aprendizaje Automático el problema de desbalanceo de clases corresponde a losdominios donde se representa una clase con mayor número de instancias (clase mayorita-ria), mientras que en otra existen muy pocos elementos (clase minoritaria), comúnmente elproblema de desbalanceo ocurre en tareas de clasificación [57, 62].

Se dice que la clasificación de datos que presenta desbalanceo en la distribución desus clases significa una gran desventaja en el rendimiento de los algoritmos estándar declasificación, debido a que la mayoría de los clasificadores tienden a trabajar con la clasemayoritaria e ignorar a las clases minoritarias [44].

Consideremos la siguiente notación, tomada de [44], para expresar el problema de des-balanceo donde existe un conjunto de entrenamiento S con m instancias (|S| = m), se defineS = { ( xi, yi)}, i = 1,. . . ,m, donde xi ∈ X que es una instancia en el espacio n-dimensionalde X, . . . ,fn} y yi ∈ Y = {1,. . . ,C } que es una clase etiquetada asociada con una instanciaxi, generalmente C = 2 dado que representa un problema de clasificación con dos clases, sinembargo se pueden tener conjuntos de datos con más de dos clases. Además, en el conjuntooriginal de datos denominado como S, se presenta Smin y Smay, donde Smin es el subcon-junto de la clase minoritaria y Smay el subconjunto de la clase mayoritaria, dado que, Smin

∩ Smay = ∅ y Smin ∪ Smay = {S}. A partir de los subconjuntos de la clase mayoritaria yminoritaria también se generan subconjuntos de muestreo etiquetados como E con sus sub-conjuntos disjuntos Emin y Emay [44].

9

Page 28: Preprocesamiento de Datos Termográficos por medio de Técnicas

10 CAPÍTULO 2. Balanceo de clases

2.2. Taxonomía de técnicas de balanceo de clases

Con el paso del tiempo y con la madurez que se ha desarrollado dentro del AprendizajeAutomático han surgido diversos métodos para tratar con el problema del desbalanceo declases. En [44] se propone una serie de técnicas que se presentan de forma gráfica en laFigura 2.1 y que son descritas a continuación.

Figura 2.1: Taxonomía de técnicas para tratar el desbalanceo de clases

2.3. Métodos basados en Sampling para aprendizaje desbalan-ceado

Los métodos basados en Sampling para aprendizaje desbalanceado, consisten en la mo-dificación de la distribución de las clases de un conjunto de datos [44], ya sea agregando oeliminando instancias. Dentro de esta categoría se sitúan algunos métodos representativosque se describen a continuación.

Page 29: Preprocesamiento de Datos Termográficos por medio de Técnicas

2.3. Métodos basados en Sampling para aprendizaje desbalanceado 11

2.3.1. Random Oversampling

Random Oversampling es un método muy simple, no-heurístico que busca balancear ladistribución de las clases por medio de la replicación aleatoria de instancias de las clasesminoritarias de un conjunto de datos [15]. En Oversampling el conjunto S se incrementa en|E| que es un subconjunto que surge de la clase minoritaria Smin, por lo tanto, el balanceo dela distribución de las clases de S es ajustado [44]. Con mucha frecuencia se puede presentarel problema de overfitting (sobreajuste) debido a que existen múltiples instancias replicadas[71].

2.3.2. Random Undersampling

Random Undersampling es también considerado un método basado en Sampling, no-heurístico que tiene como objetivo equilibrar la distribución de clases a través de la elimi-nación aleatoria de las instancias de la clase mayoritaria [15].

En Undersampling, se selecciona al azar un subconjunto |E| de la clase mayoritariaSmay, una vez que se tiene el subconjunto E, éste es eliminado de S que es el conjuntooriginal de datos, |S| = |Smin| + |Smay | - |E|. Debido a que se eliminan instancias de la clasemayoritaria, un problema que se presenta en Undersampling es la pérdida de instancias im-portantes del conjunto de datos [44].

2.3.3. Informed Undersampling

Los métodos Informed Undersampling surgen con el objetivo de superar el problema dela pérdida de instancias significativas cuando se utilizan los métodos Random Undersam-pling [44]. Algunos de los algoritmos representativos de Informed undersampling son:

EasyEnsemble, genera diferentes subconjuntos Emay de la clase mayoritaria Smay

de forma no supervisada, que por lo general son del mismo tamaño de la clase mi-noritaria Emay = Smin, por cada subconjunto se entrena un clasificador en conjuntocon las instancias de la clase minoritaria Smin. Todos los clasificadores entrenados secombinan para decidir que subgrupos serán usados en el Undersampling. [68].

BalanceCascade, por su parte, trabaja de forma supervisada para seleccionar siste-máticamente los subconjuntos de la clase mayoritaria que van a ser usados para elUndersampling, a través del uso de un conjunto de clasificadores. [68].

NearMiss-1, NearMiss-2 y Near-Miss-3 proponen el uso de KNN (k Nearet Neigh-bor) para seleccionar instancias de la clase mayoritaria que se usarán en Undersam-pling. [105].

One-sided selection (OSS), es un método de muestreo que elimina instancias ruido-sas de la clase mayoritaria usando CNN (Condensed Nearest Neighbor).[63].

Page 30: Preprocesamiento de Datos Termográficos por medio de Técnicas

12 CAPÍTULO 2. Balanceo de clases

2.3.4. Synthetic Sampling with Data Generation

Los métodos Synthetic Sampling se enfocan en generar muestras de datos artificiales;un fuerte representante de este método es el algoritmo SMOTE (Synthetic Minority Over-sampling Technique). La idea principal del algoritmo SMOTE es formar nuevas instanciasde las clase minoritaria, cada instancia sintética es creada a lo largo de los segmentos de lalínea que une a uno o todos los K-vecinos más cercanos de la clase minoritaria. Se eligenalgunos de los K vecinos de acuerdo al porcentaje de generación de instancias [24][15].

2.3.5. Adaptive Synthetic Sampling

Los métodos Adaptive Synthetic Sampling surgen con el fin de tratar con las deficienciasde los métodos Synthetic Sampling with Data Generation. El algoritmo SMOTE presenta elproblema de la excesiva generalización cuando crea las muestras artificiales, ya que generael mismo número de instancias de datos artificiales por cada instancia minoritaria y lo hacesin considerar a las instancias cercanas, lo que aumenta el problema de solapamiento entreclases [44]. Algunos de los algoritmos representativos de los métodos Adaptive Syntheticson:

Borderline-SMOTE [50].

ADASYN (Adaptive Synthetic Sampling) [54].

2.3.6. Sampling with Data Cleaning Techniques

Dentro de los métodos basados en Sampling se sitúan las técnicas Sampling with DataCleaning; dichas técnicas están enfocadas en llevar a cabo un proceso de limpieza dentrodel conjunto de datos. Los enlaces de Tomek son un claro ejemplo de técnicas de limpiezaque han sido efectivas para eliminar el solapamiento (overlapping) [87].Los enlaces Tomek pueden definirse a través de la distancia que puede existir entre dosinstancias de clases diferentes (xi, xj), donde xi ∈ Smin, xj ∈ Smay, la distancia entre éstasdos instancias se define como d(xi, xj) donde dicha distancia es denominada como enlaceTomek [87][44].Dentro de la literatura especializada existen otros métodos de limpieza como:

CNN+Tomek Links, integra NCL (Neighborhood Cleaning Rule) para remover ins-tancias de la clase mayoritaria que difieran de dos o tres vecinos más cercanos [15].

SMOTE+ENN se combinan, de manera que, ENN tiende a eliminar mayor númerode instancias que los enlaces Tomek, por su parte ENN realiza la limpieza tanto en laclase minoritaria como en la mayoritaria [15].

SMOTE+Tomek, hace uso de SMOTE para aplicar Oversampling al conjunto de da-tos original, posteriormente se identifican enlaces Tomek que serán eliminados pro-duciendo datos balanceados.[15].

Page 31: Preprocesamiento de Datos Termográficos por medio de Técnicas

2.3. Métodos basados en Sampling para aprendizaje desbalanceado 13

2.3.7. Cluster-Based Sampling Method

Los algoritmos Cluster-Based Sampling tienen la capacidad de agregar nuevos elemen-tos a un conjunto de datos y pueden ser adaptados para resolver problemas muy específicos.Un algoritmo representante de los métodos Cluster-Based es el algoritmo CBO que hace usode K-means Clustering. CBO es un algoritmo muy sugerido para resolver el problema dedesbalanceo de clases, debido a que además de tratar el desbalanceo entre clases (between-class) se preocupa también por el desbalanceo que se puede producir entre los subclustersde cada clase (within-class) [60, 44].

2.3.8. Integration of Sampling and Boosting

En esta categoría se encuentran algunas técnicas que representan la unión entre las téc-nicas basadas en Sampling con técnicas de aprendizaje de impulso (Boosting). El términoBoosting fue introducido por Schapire [81], generalmente este término es asignado a losmétodos que potencian el rendimiento de un algoritmo de aprendizaje débil. En comple-mento con las técnicas basadas en Sampling (muestreo) tratan de resolver el desbalanceo declases, algunos de los algoritmos representativos de esta categoría son:

SMOTEBoost, combina el algoritmo SMOTE con un procedimiento Boosting. SMO-TE se usa para mejorar la predicción de las clases minoritarias y Boosting se utilizapara reforzar y obtener un mejor modelo de la clase minoritaria [26].

DataBoost-IM, genera instancias artificiales de acuerdo con la relación de instanciasque son difíciles de aprender entre las clases de un conjunto de datos. [48].

La ventaja de integrar algoritmos Boost con algoritmos Sampling es que dicha uniónse hace más resistente al problema de sobre-ajuste y se produce cierta sensibilidad ante lapresencia de ruido en los datos [44].

Inicialmente los métodos basados en Sampling, enfocaron su funcionamiento en la alea-toriedad para agregar o eliminar instancias de un conjunto de datos, como es el caso de Ran-dom Oversampling y Random Undersampling. Posteriormente se fueron incorporando otrastécnicas como KNN o CNN para ser mas asertivos en la eliminación de instancias, espe-cialmente de la clase minoritaria, como lo hacen las técnicas de Informed Undersampling.Las métodos que generan nuevas instancias artificiales, por ejemplo SMOTE, también seapoyan de técnicas como KNN para mejorar las muestras de datos que generan. Otras mé-todos como los Adaptive Synthetic Sampling se enfocan en hacer mejoras a los métodosSynthetic Sampling with Data Generation, aplicando técnicas que trabajan en las fronterasde las clases.En el caso de los métodos basados en Sampling with Data Cleaning, retoman el funcio-namiento de técnicas como SMOTE pero se complementan con enlaces Tomek, ENN oNCL para llevar a cabo la limpieza de datos considerando tanto la clase minoritaria comola mayoritaria. Finalmente, se destacan también, aquellos métodos que incorporan el usode clusters para resolver el problema de desbalaceo, así como también de procedimientosBoosting para reforzar técnicas y atacar el sobre-ajuste.

Page 32: Preprocesamiento de Datos Termográficos por medio de Técnicas

14 CAPÍTULO 2. Balanceo de clases

2.4. Métodos Cost-Sensitive para aprendizaje desbalanceado

Mientras que los métodos de muestreo se preocupan por mejorar la distribución de ins-tancias por cada clase de un conjunto de datos, los métodos Cost-Sensitive consideran elcosto asociado con los errores de clasificación. Cost-Sensitive basa su funcionamiento en eluso de matrices de costos que describen los valores otorgados para los errores de clasifica-ción de cada instancia [44].

El concepto fundamental de las técnicas Cost-Sensitive es la aplicación de una ma-triz de costo, dicha matriz puede considerarse como una representación numérica de lapenalización de las instancias clasificadas erróneamente de una clase a otra. Para un pro-blema bi-clase se puede definir C(Min,May) que representa el costo de la clase ma-yoritaria mientras que C(May,Min) representa el costo de la clase minoritaria, dondeC(May,Min) > C(Min,May) [44].

Por lo general, en la matriz de costo no se define ningún costo para la clasificacióncorrecta de cualquier clase y en cambio para lo errores de clasificación el valor otorgadoa las instancias minoritarias es mayor que el valor otorgado a las instancias de la clasemayoritaria. Dentro del aprendizaje Cost-Senstive se pueden encontrar Meta-técnicas queintegran algoritmos estándar de aprendizaje junto con los algoritmos Cost-Sensitive; condicha combinación se pretende tener una mejor solución contra el desbalanceo de clases.Algunos de los algoritmos más representativos de aprendizaje Cost-Sensitive son:

AdaC1, AdaC2 y AdaC3, son ejemplos de algoritmos basados en AdaBoost, consi-derado un meta-algoritmo que incorpora la estrategia de actualización de pesos conbase a los costos en los errores de clasificación. [83].

AdaCost es una variante del algoritmo AdaBoost, con la diferencia de que AdaCostincorpora una función de ajuste de costos adicionales en la actualización de pesos conbase a reglas [37].

CSB0, CSB1 y CSB2 son adaptaciones de AdaBoost en las que se hacen cambios ala función que controla la actualización de los costos [86].

MetaCost se considera un meta-algoritmo que genera un único clasificador sensiblea los costos con base al aprendizaje producido [30].

Los métodos Cost-Sensitive basan su funcionamiento en la incorporación de costos yde una función que se encarga de controlar o actualizar los pesos asignados por cada clasecomo lo hace AdaBost. Han surgido variantes como AdaCost, CSB0, CSB1 y CSB2 quetratan de mejorar la función de actualización de los pesos. MetaCost por su parte, tambiéntrabaja en función de costos, sin embargo toma en cuenta la experiencia de lo aprendido.

Page 33: Preprocesamiento de Datos Termográficos por medio de Técnicas

2.5. Métodos basados en Kernel y métodos de aprendizaje activo para aprendizajedesbalanceado 15

2.5. Métodos basados en Kernel y métodos de aprendizaje activopara aprendizaje desbalanceado

De acuerdo a García [44], los métodos basados en Sampling y los métodos Cost-Sensitiveparecen dominar los esfuerzos actuales de investigación en aprendizaje desbalanceado. Sinembargo existen otras técnicas que también tienen gran aporte al estudio del desbalanceo,tal es el caso de los métodos basados en Kernel y los métodos de aprendizaje activo.

Los métodos basados en Kernel se centran en la teoría de aprendizaje estadístico y enla dimensión Vapnik-Chervonekis (VC), las máquinas de soporte vectorial (SVMs) son lasque representan el paradigma del aprendizaje basado en Kernel [42]. Una SVM basa sufuncionamiento en el mapeo de los puntos de entrada a un espacio de características de unadimensión mayor. Las SVMs utilizan kernels que son funciones matemáticas que ayudan alocalizar un buen discriminante entre todas las posibles clases que puede tener un conjuntode datos y minimizar el error total de clasificación [78]. Algunos de los algoritmos basadosen Kernel son:

SDCS (SMOTE with Different Costs), algoritmo que incorpora diferentes costos deerror para las diferentes clases de un conjunto de datos, trabaja en conjunto con SVMpara marcar los límites entre clases [3].

GSVM-RU (Granular Support Vector Machines-Repetitive Undersampling), integrael aprendizaje por medio de SVM y trabaja en conjunto con métodos Undersampling[84].

Los métodos de aprendizaje activo son usados comúnmente para resolver problemasrelacionados con datos de entrenamiento no etiquetados (no cuentan con una clase asig-nada). Aprendizaje activo se entiende como un marco de referencia de Aprendizaje Au-tomático, en el que un algoritmo de aprendizaje selecciona las instancias y etiquetas declase de un conjunto de recursos [89]. Por lo tanto, se espera que el porcentaje de datosde entrenamiento que requiere un algoritmo de aprendizaje supervisado se pueda reducirsignificativamente[89]. Frecuentemente los métodos de aprendizaje activo trabajan en con-junto con los métodos basados en Kernel [44].

Los métodos basados en Kernel tienen la capacidad de trabajar en conjunto con mé-todos basados en Sampling como es el caso del algoritmo GSVM-RU que busca resolverel problema del desbalanceo de clases aplicando Undersampling en los datos. El uso de loskernels representa actualmenta una atractiva solución para encontrar un mejor discriminanteentre las clases de un conjunto de datos,

2.6. Métodos adicionales para aprendizaje desbalanceado

El problema de desbalanceo de clases ha sido atacado por métodos basados en Sam-pling, métodos Cost-Sensitive, métodos basados en Kernel y métodos de aprendizaje acti-vo. Sin embargo, existen otras técnicas que no se clasifican dentro de las categorías antes

Page 34: Preprocesamiento de Datos Termográficos por medio de Técnicas

16 CAPÍTULO 2. Balanceo de clases

Trabajos relacionados Autor y año DescripciónCondensed nearest neighbor-hood(CNN)

Hart, 1968 [52] Instancias ruidosas eliminadas de la clasemayoritaria por medio de CNN.

Tomek Links Kubat and Matwin, 1997[63]

Técnica de limpieza de datos de la clasemayoritaria.

Undersampling Ling and Li, 1997 [63] Técnica que se centra en eliminar instan-cias de la clase mayoritaria de un conjun-to de datos.

Oversampling Ling and Li, 1998 [67] Técnica que consiste en agregar nuevasinstancias a partir de la clase minoritaria.

Técnicas Cost-Sensitive Domingos, 1999 [30] Surge MetaCost para hacer frente a pro-blemas de balanceo por medio de matri-ces de costos.

Edited Nearest Neighbor (ENN) Laurikkala, 2001 [64] Instancias ruidosas eliminadas de la clasemayoritaria por medio de ENN.

SMOTE Chawla et al., 2002 [24] Generación de instancias artificiales apartir de la clase minoritaria, consideran-do un número de vecinos cercanos y ba-sándose en la distancia Euclidiana.

Combinación de técnicas basa-das en Sampling

Estabrooks, Jo, and Jap-kowicz, 2004 [35]

Combinación de Oversampling y Under-sampling.

SMOTE+Tomek Batista, Monad, and Baz-zan, 2004 [14]

Combinación de la técnica SMOTE conTomek.

SMOTE+ENN Batista, Prati and Monard,2004 [15]

Se realiza un estudio donde se alternanlas técnicas SMOTE y ENN.

Boosting Guo and Viktor, 2004 [48] Se emplea la técnica de Boosting comomedio para aplicar Oversampling en losdatos de la clase minoritaria.

Métodos basados en Kernel Akbani, et al., 2004 [3] Se incorpora el uso de la función kernelpara localizar un mejor disciminador en-tre clases desbalanceadas.

Tabla 2.1: Trabajos relacionados con el desbalanceo de clases ordenados cronológicamente

descritas, tal es el caso de one-class learning , se enfoca en una sola clase que puede serla minoritaria o mayoritaria para aprender por separado [25]; método Autoassociator, con-siste en la reconstrucción de la clase positiva en la capa de salida de una red neuronal paraluego usar la reconstrucción para reconocer nuevos casos [58]; Mega trend Diffusion, des-crito en la sección 4.3.4.1, entre otros [65].

A pesar de que estas técnicas son nuevas dentro de la investigación de aprendizaje des-balanceado han aportado ideas para contrarrestar el problema.

En la Tabla 2.1 se presentan los trabajos relacionados más representativos respecto alas técnicas de balanceo conforme fueron apareciendo en el tiempo.

Page 35: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 3

Análisis de cúmulos

3.1. ¿Qué es Clustering?

El concepto de agrupar un conjunto de objetos físicos o abstractos en clases de objetossimilares se denomina Clustering. Un cluster en una colección de objetos de datos que sonsimilares entre sí dentro del mismo grupo y son diferentes a los objetos de otros grupos [51].

Un cluster de objetos de datos puede ser tratado de forma colectiva como un grupo yes así como se puede considerar una forma de compresión de datos. El proceso de clasifi-cación en la minería de datos resulta ser un medio eficaz para distinguir grupos o clases deobjetos. Sin embargo, a menudo se requiere una colección de datos etiquetados y de un granconjunto de entrenamiento que el clasificador utiliza para modelar cada grupo [51].

La ventaja de llevar a cabo un proceso de Clustering es que es adaptable a los cambiosy ayuda a singularizar características útiles que distinguen a los diferentes grupos [51].

Existen múltiples técnicas de Clustering que tratan de atacar un problema específico, enel siguiente apartado se presenta una taxonomía de técnicas que se han desarrollado y queaparecen en la literatura especializada.

3.2. Taxonomía de técnicas de Clustering

La clasificación de las técnicas de Clustering no resulta un trabajo sencillo, debido a queexisten ciertas técnicas que se pueden ubicar entre una y otra categoría. En Berkhin [16] sepropone una taxonomía de técnicas de Clustering. En la Figura 3.1 se presenta gráficamentedicha taxonomía.

17

Page 36: Preprocesamiento de Datos Termográficos por medio de Técnicas

18 CAPÍTULO 3. Análisis de cúmulos

Figura 3.1: Taxonomía de técnicas de Clustering

3.2.1. Métodos jerárquicos

El Clustering jerárquico construye una jerarquía de clusters o un árbol de clusters, tam-bién conocido como un dendograma, donde todos los nodos cluster poseen clusters hijos.Este enfoque permite explorar los datos de los diferentes niveles de granularidad. Los mé-todos jerárquicos se clasifican en dos categorías, en la primera categoría se encuentran losalgoritmos de aglomerados (bottom-up) y en la segunda categoría los algoritmos de división(top-down) [16].

El Clustering en aglomeración comienza con un cluster (singleton) y recursivamentemezcla dos o más cluster que sean apropiados. Por su parte un Clustering de división co-mienza con un racimo de todos los puntos de datos y se va dividiendo de forma recursivahasta el cluster más apropiado. El proceso continúa hasta que se consigue un criterio de pa-ro. Algunas de las ventajas de los métodos jerárquicos es la flexibilidad en cuanto al nivel degranularidad, la facilidad de manipulación de las formas de similitud y distancia, así comola aplicabilidad a cualquier tipo de atributo. Por otra parte tienden a presentar ambigüedaden los criterios de término [16].

Page 37: Preprocesamiento de Datos Termográficos por medio de Técnicas

3.2. Taxonomía de técnicas de Clustering 19

El algoritmo CURE es un representante de los métodos jerárquicos [47].

3.2.2. Métodos de particionamiento

Dada una base de datos de n objetos o tuplas de datos, un método de particionamiento,construye k particiones de los datos, donde cada partición representa un cluster y k ≤ n. Esdecir, se clasifican los datos en k grupos que en conjunto cumple con los siguientes requi-sitos: (1) cada grupo debe contener al menos un objeto, y (2) cada objeto debe pertenecerexactamente a un grupo [51].

Existe un criterio general para determinar si una partición es buena, si los objetos en elmismo grupo están “cerca” o relacionados el uno al otro y los objetos de diferentes gruposestán “lejos” o son muy diferentes se tiene una buena partición [51].

Para lograr la optimización global en el Clustering basado en particionamiento se re-querirá la enumeración exhaustiva de todas las posibles particiones, la mayoría de las apli-caciones adoptan uno de los métodos que se listan a continuación:

Algoritmos de reubicación

Clustering probabilista

Métodos K-Medoids

Métodos K-Means

Algunos algoritmos que se clasifican como métodos de particionamiento son; EM,SNOB, AutoClass, MCLUST, PAM, CLARA, CLARANS, K-Means [72, 90, 27, 41, 61,74, 53].

3.2.3. Métodos basados en densidad

La mayoría de los métodos de partición agrupan objetos en función de la distancia entrelos objetos. Dichos métodos se caracterizan por agrupar en forma esférica y poseen ciertadificultad para descubrir grupos en formas arbitrarias [51].

Han surgido otros métodos que basan su funcionamiento en el concepto de la densidad.La idea central de los métodos basados en la densidad es seguir haciendo crecer un grupodeterminado, siempre que la densidad (número de objetos o puntos de datos) exceda uncierto umbral, es decir, para cada punto de datos dentro de un grupo determinado, la zonade un radio dado tiene que contener al menos un número mínimo de puntos [51].

Los métodos basados en densidad son útiles para filtrar el ruido (outliers) y descubrirun grupo con formas arbitrarias [51].

Dentro de los métodos basados en densidad se pueden descubrir dos enfoques. El pri-mero, denominado como Clustering de conectividad basados en densidad, tiene algunos

Page 38: Preprocesamiento de Datos Termográficos por medio de Técnicas

20 CAPÍTULO 3. Análisis de cúmulos

algoritmos representativos son: DBSCAN, GDBSCAN, OPTICS y DBCLASD. El segundoenfoque llamado Clustering de funciones de densidad donde se incluye el algoritmo DEN-CLUE, representativo de dicha categoría [36, 80, 10, 104].

3.2.4. Métodos basados en Grid

Los métodos basados en Grid cuantifican el espacio de objetos en un número finito deceldas que forman una estructura Grid. Todas las operaciones de agrupación se llevan a caboen el Grid, la principal ventaja de este enfoque es el rápido procesamiento, que normalmentees independiente del número de objetos de datos y sólo depende de la cantidad de celdas encada dimensión del espacio cuantificado [51]. STING es un ejemplo representativo de losmétodos basados en Grid [93].

3.2.5. Clustering escalable

Los algoritmos de Clustering se enfrentan a problemas de escalabilidad tanto en tér-minos de tiempo de cálculo computacional así como en requerimientos de memoria. Hansurgido muchos intentos interesantes para extender el proceso de Clustering en bases dedatos muy grandes (VLDB) [16], que se puedan dividir en:

Minería incremental [16]

Data squashing (Apretujamiento de instancias) [16]

Muestreo fiable [16]

DIGNET y BIRCH son algunos algoritmos representativos de las técnicas de Clusteringescalables [85, 106].

3.2.6. Métodos basados en co-ocurrencia de datos categóricos

En este tipo de métodos se habla de datos categóricos, que con frecuencia se relacionancon el concepto de una transacción de tamaño variable, que se define como una secuen-cia de operaciones realizadas es un conjunto finito de elementos llamados elementos de ununiverso en común. Cada transacción se puede presentar en un formato punto-por-atributomediante la enumeración de todos los “j-elementos” y mediante la asociación con una ope-ración de los atributos binarios que indican si “j-elementos” pertenecen a una transaccióno no [51].

Los métodos convencionales de Clustering basados en medidas de similitud no tienenun buen funcionamiento en problemas con datos categóricos con alta dimensionalidad, espor eso que surgen los métodos de Clustering fundados en la idea de co-ocurrencia de losdatos categóricos [51].

ROCK, CACTUS y STIRR son ejemplos de algoritmos que centran su funcionamientoen la idea de la co-ocurrencia de datos categóricos [47, 43, 46].

Page 39: Preprocesamiento de Datos Termográficos por medio de Técnicas

3.2. Taxonomía de técnicas de Clustering 21

3.2.7. Clustering de datos de alta dimensionalidad

El Clustering de alta dimensión de datos es una tarea específica del análisis de clusters,ya que muchas de las aplicaciones requieren el análisis de objetos que contienen un grannúmero de características o dimensiones [51].

El Clustering de datos de alta dimensionalidad es un reto, debido a que la mayoría de lasdimensiones pueden ser no relevantes y conforme aumenta el número de dimensiones losdatos se hacen más escasos de modo que la medición de la distancia entre pares de puntoscarece de sentido y la densidad media de puntos en cualquier parte de los datos tiende a serbaja [51].

Ante el reto de agrupar datos con alta dimensionalidad surgen soluciones como CLI-QUE y PROCLUS que son dos métodos representativos del Clustering sub-espacial quecentra la búsqueda de clusters en sub-espacios o subconjuntos de dimensiones en lugar detomar el espacio completo de datos [2, 1].

3.2.8. Otros métodos

Dentro de las técnicas de Clustering se han desarrollado otros métodos. Algunos tratancon las necesidades específicas de cada aplicación, tal es el caso del Clustering basado enrestricciones donde con frecuencia el número de clusters es la restricción más utilizada,otros métodos poseen importancia teórica o se utilizan en su mayoría para aplicaciones deminería de datos, los métodos evolutivos se clasifican en esta categoría [16].

Page 40: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 41: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 4

Materiales y Métodos

4.1. Descripción del estudio termográfico

El estudio termográfico que lleva a cabo el CECan consta de dos etapas [8] la primera,es la realización del estudio termográfico hacia un paciente y la segunda, es la formación deun puntaje (score). El estudio termográfico se realiza a una temperatura ambiente de 22 oC auna distancia aproximada de un metro, dependiendo de la masa muscular de cada paciente.El paciente se descubre en su totalidad de la cintura hacia arriba para poder visualizar lasdos mamas y así generar 6 imágenes por paciente.

Posteriormente el oncólogo conforma el score, por cada mama, del paciente a partir dela información obtenida de las imágenes termográficas obtenidas. El score se conforma ex-clusivamente por la suma de las primeras 8 variables descritas en la Tabla 4.2, además eloncólogo obtiene información extra que es almacenada en otras 9 variables que se tomanen cuenta en el conjunto de datos pero no forman parte del score [7]. En total se tienen 17variables que conforman un conjunto de datos que se describe en el siguiente apartado.

4.2. Descripción del conjunto de datos

El conjunto de datos que se ocupa durante las pruebas con datos termográficos, se in-tegra con un total de 18 atributos, los primeros 17 corresponden al valor de cada variabledel análisis de imágenes térmicas, y el último atributo es equivalente a la variable clase queindica si un paciente está enfermo o sano.

La base de datos posee atributos de tipo nominal, binarios y continuos que han sidodiscretizados. A continuación se pueden ver qué atributos corresponden a cada tipo.

23

Page 42: Preprocesamiento de Datos Termográficos por medio de Técnicas

24 CAPÍTULO 4. Materiales y Métodos

No. Nombre Tamaño Atributos Clases Distribución clases1. termografía 98 8 Nominales, 7 Bi-

narios, 2 Discretos2 77 enfermos/21 sanos

2. termografiaB 154 8 Nominales, 7 Bi-narios, 2 Continuos(discretizados)

2 77 enfermos/77 sanos

Tabla 4.1: Características del conjunto de datos

No.

Nom

bre

dela

trib

uto

Des

crip

ción

Tipo

Info

rmac

ión

dela

trib

uto

1.A

sim

etrí

aG

rado

sde

dife

renc

ia(e

nC

elsi

us)e

ntre

lam

ama

dere

cha

yla

mam

aiz

quie

rda

Nom

inal

v0=

0,v5

=5,

v10

=10

,v15

=15

2.R

edte

rmov

ascu

lar

La

cant

idad

deve

nas

con

tem

pera

tura

más

alta

Nom

inal

v0=

0,v5

=5,

v10

=10

,v15

=15

3.Pa

trón

curv

ilíne

oE

láre

am

ásca

lient

ede

ntro

dela

mam

aN

omin

alv0

=0,

v5=

5,v1

0=

10,v

15=

15,v

20=

20,v

24=

24,v

40=

404.

Porc

enta

jede

tem

pera

tura

Porc

enta

jede

calo

rde

lam

ama

con

may

orte

m-

pera

tura

Con

tinuo

(dis

cret

i-za

do)

(10-

15],

(15.

5-22

],(1

5-20

],(2

0-25

],(2

2-29

.5],

(25-

30],

(29.

5-37

],(3

0-35

],(3

5-40

],(3

7-44

.5],

(40-

45],

(44.

5-52

],(4

5-in

f],

(5-1

0],

(52-

59.5

],(5

9.5-

67],

(67-

74.5

],(7

4.5-

inf]

,(-

inf-

14.5

],(-

inf-

5]5.

Hip

erte

rmia

func

iona

lPu

nto

más

calie

nte

dela

mam

aN

omin

alv0

=0,

v14

=14

,v20

=20

,v25

=25

,v4

0=

406.

2cD

ifer

enci

ade

grad

osen

tre

los

punt

osm

ásca

-lie

ntes

dela

mam

aN

omin

alv0

=0,

v15

=15

,v20

=20

,v25

=25

7.Ú

nica

FC

antid

adde

punt

osm

ásca

lient

esN

omin

alv0

=0,

v10

=10

,v20

=20

,v40

=40

8.1c

Punt

om

ásca

lient

een

una

sola

mam

aN

omin

alv0

=0,

v1=

1,v4

0=

409.

GA

PD

ifer

enci

ade

los

prom

edio

sde

tem

pera

tura

en-

tre

mam

ade

rech

ae

izqu

ierd

aC

ontin

uo(d

iscr

eti-

zado

)

(0.1

-0.4

5],

(0.1

9-0.

38],

(-0.

25-0

.1],

(0.3

8-0.

57],

(0.4

5-0.

8],

(0.5

7-0.

76],

(0.7

6-0.

95],

(0.8

-1.1

5],

(0.9

5-1.

14],

(1.1

5-1.

5],

(1.3

3-1.

52],

(1.5

-1.8

5],

(1.7

1-in

f],

(1.8

5-2.

2],

(2.2

-2.5

5],

(2.5

5-in

f],(

-inf

-0.1

9],(

-inf

-0.5

]10

.Su

rco

Surc

ode

bajo

dela

sm

amas

Bin

ario

0=

nega

tivo,

1=

posi

tivo

11.

Pinp

oint

Ven

asqu

eva

na

los

punt

osm

ásca

lient

esde

las

mam

asB

inar

io0

=ne

gativ

o,1

=po

sitiv

o

12.

Cen

tro

calie

nte

Elc

entr

ode

lazo

nam

ásca

lient

eB

inar

io0

=ne

gativ

o,1

=po

sitiv

o13

.Fo

rma

irre

gula

rG

eom

etrí

ade

lcen

tro

calie

nte

Bin

ario

0=

nega

tivo,

1=

posi

tivo

14.

His

togr

ama

His

togr

ama

enfo

rma

deun

triá

ngul

ois

ósce

les

Bin

ario

0=

nega

tivo,

1=

posi

tivo

15.

Axi

laD

ifer

enci

ade

grad

osen

tre

las

2ax

ilas

Bin

ario

0=

nega

tivo,

1=

posi

tivo

16.

Perfi

lAlte

rado

Vis

ualm

ente

elpe

rfila

ltera

dode

lam

ama

Nom

inal

v0=

ning

uno,

v1=

leve

,v2

=m

oder

a-do

,v3

=se

vero

17.

Scor

eSu

ma

delo

sva

lore

sde

las

vari

able

s1

a8

Bin

ario

Siel

scor

e≥

160

(Enf

erm

o)y

sies

<160

(No_

Enf

erm

o)18

.C

lase

Cán

cer/

No

Cán

cer

Bin

ario

Enf

erm

o,N

o_E

nfer

mo

Tabla 4.2: Descripción de los atributos del conjunto de datos

Atributos nominales: Asimetría, Red termovascular, Patrón curvilíneo, Hipertermiafuncional, 2c, Única F, 1c y Perfil alterado.

Page 43: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.3. Algoritmos de balanceo de clases 25

Atributos binarios: Surco, Pinpoint, Centro caliente, Forma irregular, Histograma,Axila, Score y Clase.

Atributos discretizados: Porcentaje de temperatura y GAP.

En la Tabla 4.2 se presenta cada uno de los atributos, considerando una breve descrip-ción, tipo de atributo y la información de los valores del atributo.

En la Tabla 4.1 se presentan las características generales del conjunto de datos que seutiliza a lo largo de las pruebas. Cabe aclarar que la base de datos No. 1 corresponde a unabase de datos desbalanceada con un total de 98 casos. Posteriormente se incrementó el nú-mero de casos y la base de datos No. 2 es la que representa la base de datos con los nuevoscasos.

El estudio realizado a una paciente se lleva a cabo para ambas mamas, por lo tanto, seobtiene un score termográfico por cada mama. En el estudio de Ameca [29], del total de pa-cientes, se tomaron 98 scores, que representaban casos que denominaron mama de interés,de los cuales 77 scores correspondían a casos donde se encontraba la enfermedad en una delas mamas y los otros 21 scores correspondían a mamas sanas, siendo los casos mutuamenteexclusivos.

En este proyecto se están considerando 77 scores donde no se encuentra presente laenfermedad (clase: No_Enfermo), que en Ameca [29] no fueron considerados. Estos 77scores representan los nuevos casos incorporados al conjunto de datos durante una segundaetapa de evaluación del conjunto de datos y que sustituyeron a los 21 scores de mamas sanasusados en Ameca [29].

4.3. Algoritmos de balanceo de clases

4.3.1. Métodos basados en Sampling

Para este proyecto se hace uso del algoritmo SMOTE como parte de los métodos basa-dos en Sampling para balanceo de clases. Se ha elegigo SMOTE debido a que es uno de losalgoritmos basados en Sampling más utilizados para tratar el problema de desbalanceo declases [24]. El algoritmo SMOTE se describe a continuación.

4.3.1.1. SMOTE

SMOTE es una técnica basada en oversampling propuesto y diseñado en [24], que gene-ra instancias “sintéticas” o artificiales en el espacio de atributos con el objetivo de equilibrarla muestra de datos basado en la regla del vecino más cercano. La generación de nuevas ins-tancias se realiza extrapolando instancias, es decir, se calcula el valor de una variable en unpunto determinado en función de otros valores que tienen las mismas características que elprimero.

Page 44: Preprocesamiento de Datos Termográficos por medio de Técnicas

26 CAPÍTULO 4. Materiales y Métodos

Para cada una de las instancias de la clase minoritaria se buscan k instancias vecinasmás cercanas y se crean N instancias entre la línea que une la instancia original y cada unade las vecinas, basadas en el criterio de comparación de la distancia Euclidiana, expresadaen la Ecuación 4.1, tomada de [51]

d(i, j) =√

(xi1 − xj1)2 + (xi2 − xj2)2 + ...+ (xin − xjn)2, (4.1)

donde i = (xi1, xi2, ..., xin) y j = (xj1, xj2, ..., xjn) son dos puntos de datos n-dimensionales.

En SMOTE el valor de N es manejado como porcentaje y depende del tamaño de over-sampling deseado, mientras que el valor de k es un valor entero aleatorio. Por ejemplo, si elmonto de oversampling deseado es de 200 % con un valor para k = 6, solo dos vecinos, delos seis, van a poder generar una instancia sintética en dirección de la instancia original.

En la Figura 4.1 se representa de forma gráfica el ejemplo. Aquí se muestra una distri-bución desbalanceada, donde las estrellas y los círculos representan instancias de la clasesminoritaria y mayoritaria respectivamente y se muestra un conjunto de k = 6 vecinos máscercanos. La Figura 4.1(b) muestra la creación de dos instancias sintéticas entre la línea xiy xj . Para consultar el pseudocódigo del algoritmo SMOTE y mayor información sobre estatécnica basada en Sampling, se puede consultar [24].

Figura 4.1: (a) Ejemplo de K-vecinos más cercanos de xi, considerando k = 6. (b) Genera-ción de instancias sintéticas basadas en distancia Euclidiana [44].

El algoritmo SMOTE es aplicado en este proyecto a través de la herramienta Weka y dichoalgoritmo maneja los parámetros que se muestran en la Tabla 4.3[97]:

Page 45: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.3. Algoritmos de balanceo de clases 27

Parámetros Descripción-S <num> Semilla utilizada para números aleatorios.-P <percentage> Especifica el porcentaje de nuevas instancias que se

va a generar con SMOTE.-K <nearest-neighbors> Número de vecinos más cercanos a usar.-C <value-index> Valor del índice de la clase, usar 0 para auto-detectar

la clase minoritaria que no esté vacía.

Tabla 4.3: Parámetros SMOTE

4.3.2. Métodos Cost-Sensitive

Los métodos basados en cost-sensitive que se han seleccionado para tratar el problemade desbalanceo son CostSensitiveClassifier y MetaCost. MetaCost por su parte es uno delos más utilizados de acuerdo a la literatura especializada y presenta la ventaja de estardisponible dentro de Weka. CostSensitiveClassifier es una método que también se encuentradisponible en Weka y basa su funcionamiento en la aplicación de matrices de costos asícomo lo hace MetaCost.

4.3.2.1. Matrices de costos

Los métodos cost-sensitive basan su funcionamiento en una matriz de costos de tamañon x n, donde n es el número de clases que puede tener una base de datos. En un problemacon dos clases, la clase positiva (verdaderos positivos y falsos negativos) tiene mayor in-terés y mayores costos de clasificación errónea C+ , mientras que la clase negativa (falsospositivos y verdaderos negativos) posee costos menores de clasificación errónea C− [69].

Un enfoque muy utilizado dentro del aprendizaje basado en cost-sensitive es cambiarla escala (Rescaling) de las clases de tal manera que las influencias de las diferentes clasesen el proceso de aprendizaje sean proporcionales a sus costos [69]. En la Ecuación 4.2 sepresentan una expresión tomada de [69], que es útil para comprender la asignación de losvalores numéricos dentro de una matriz de costos.

En el proceso de Rescaling, la proporción de la escala cost-sensitive de la clase positivaa la clase negativa se expresa como rc±, y se representa en la Ecuación 4.2, donde se divideel valor total asignado a la clase positiva entre el valor total asignado a la clase negativa.

rc± = C+

C−(4.2)

De acuerdo a la Ecuación 4.2, se generan las matrices de costos que se usan en losalgoritmos basados en cost-sensitive. En [31] se proponen cinco matrices de costos que sonutilizadas en las pruebas de este proyecto. Las cinco matrices poseen una proporción decosto rc± = 2, 5, 10, 20, 50 respectivamente. En la Figura 4.2 se presentan las matrices decostos que son usadas junto con los algoritmos cost-sensitive que se describen a continua-ción.

Page 46: Preprocesamiento de Datos Termográficos por medio de Técnicas

28 CAPÍTULO 4. Materiales y Métodos

Figura 4.2: Matrices de costos.

4.3.2.2. CostSensitiveClassifier

CostSensitiveClassifier es un meta-clasificador proporcionado por la herramienta Weka,que hace uso de otro clasificador base como puede ser un árbol de decisión, una red baye-siana o cualquier otro. CostSensitiveClassifier ofrece dos técnicas mediante las cuales losalgoritmos base pueden ser sensibles al contexto. La primera consiste en que los modelosaprendidos asignen pesos a las clases de manera que se minimicen los costos de clasifica-ción errónea. La segunda consiste en modificar los pesos asignados a cada clase de maneraque se otorgue mayor importancia al grupo de instancias que sean susceptibles de cometerlos errores más costosos [98, 103].

De acuerdo a las dos técnicas que facilita CostSensitiveClassifier, en nuestro proyectose hace uso de la segunda técnica, ya que una vez que se proporciona la matriz de costoinicial se busca que el algoritmo proporcione un mayor peso a la clase No_Enfermo que esla que tiene una mayor tasa de error en la clasificación.

Los parámetros para CostSensitiveClassifier [95] que se manejan dentro de Weka se mues-tran en la Tabla: 4.4.

Page 47: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.3. Algoritmos de balanceo de clases 29

Parámetros Descripción-M Establece el criterio de costos que será utilizado. Si

se establece como “false” los pesos se actualizan conlos costos asignados a cada clase, si es “true” se usael criterio de costos mínimos esperados.

-W Clasificador base que se va a utilizar.-C Nombre del archivo que contiene la matriz de costos,

en caso de que se cargue bajo demanda.-N Establece el directorio de donde se cargará la matriz

de costo.-S La semilla de números aleatorios que se utilizará.-cost-matrix Establece la matriz de costos de manera explícita, de

acuerdo al número de clases de cada base de datos.

Tabla 4.4: Parámetros CostSensitiveClassifier

4.3.2.3. MetaCost

MetaCost es propuesto en [30], es considerado como un meta-clasificador basado encost-senstive. MetaCost se centra en las siguientes notaciones básicas: si, dada una instanciax, se sabe la probabilidad por cada clase j P (j|x), junto con una matriz de costo C(i, j), elcaso óptimo para x es la clase i que minimiza la condición de riesgo que se muestra en laEcuación 4.3:

R(i|x) = h =∑j

P (j|x)C(i, j) (4.3)

La condición de riesgo R(i|x) es el costo esperado de que x pertenezca a la clase i. Elcaso óptimo garantiza almacenar el costo total más bajo posible. Por ejemplo, el costo es-perado más bajo de todas las posibles instancias x ponderadas por sus probabilidades P (x).C(i, j) y P (j|x) implican una partición del espacio de instancias X dentro de las regions j,dado que la clase j es la predicción óptima en la región j [30].

El objetivo de la clasificación cost-senstive es encontrar las fronteras entre estas regio-nes, explícita o implícitamente. Sin embargo, esta tarea es complicada debido a que se tienedependencia de una matriz de costo C. En resumen, la clasificación errónea de instanciasde la clase j es más costoso en relación a la clasificación errónea de las demás. La regióndonde j debe predecirse se expandirá a expensas de las regiones de otras clases, incluso silas probabilidades de clase P (j|x) permanecen sin cambios [30].

MetaCost funciona a través de la formación de múltiples réplicas bootstrap (métodode muestreo) del conjunto de entrenamiento y del aprendizaje de un clasificador en cadabootstrap. Estima la probabilidad de cada clase por cada instancia y usa la Ecuación 4.3para volver a etiquetar cada instancia de entrenamiento con la clase óptima estimada y asípoder aplicar el clasificador base para el conjunto de entrenamiento re-etiquetado [30]. Paramayor información sobre el algoritmo MetaCost se puede consultar [30, 32].

Page 48: Preprocesamiento de Datos Termográficos por medio de Técnicas

30 CAPÍTULO 4. Materiales y Métodos

Weka incluye el algoritmo MetaCost como parte del conjunto de meta-clasificadores.Este algoritmo se usa en nuestro proyecto como parte de los algoritmos basados en cost-sensitive. Los parámetros de MetaCost [96] que se manejan en Weka se presentan en laTabla 4.5.

Parámetros Descripción-W Clasificador base que se va a utilizar.-C Nombre del archivo que contiene la matriz de costos,

en caso de que se cargue bajo demanda.-D Estable el directorio de donde se cargará la matriz

de costo.-I Establece el número de iteraciones.-S La semilla de números aleatorios que se utilizará.-P Porcentaje del tamaño del conjunto de entrenamien-

to.-cost-matrix Establece la matriz de costos de manera explícita, de

acuerdo al número de clases de cada base de datos.

Tabla 4.5: Parámetros MetaCost

4.3.3. Métodos basados en Kernel

Dentro de la gran variedad de algoritmos basados en Kernel, en este proyecto se usandos algoritmos que se encuentran implementados en Weka que son: el algoritmo SMO y elalgoritmo LibSVM [102, 100]. Estos algoritmos no son considerados como algoritmos debalanceo como tal, pero se han seleccionado ya que en el caso de LibSVM trabaja bajo elparadigma SVM que de acuerdo a la literatura especializada, se han reportado buenos resul-tados con el uso de métodos SVM frente a datos desbalanceados [3]. En el caso de SMO,se selecciona como posible comparador contra LibSVM y considerando que SMO funcionacon base en un kernel que funciona como una red neuronal que le permite ir evaluando cadainstancias para predecir a que clase pertenece.

4.3.3.1. SMO

SMO (Sequential Minimal Optimization) es un algoritmo simple que resuelve rápida-mente el problema de programación cuadrática de máquinas de soporte vectorial (QP SVM)sin la necesidad de utilizar una matriz extra de almacenamiento y sin recurrir a un procesoiterativo por cada sub-problema. Fue propuesto en 1998 por John Platt en Microsoft Re-search [76].

El algoritmo SMO está basado en redes neuronales que se caracterizan por llevar a caboun aprendizaje a partir de ejemplos que les permite generalizar sin tener que formalizar elconocimiento adquirido. SMO forma parte de los algoritmos de aprendizaje no supervisadoy se distingue por dividir un problema dado en una serie de problemas más pequeños queson resueltos de forma analítica [17].

Page 49: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.3. Algoritmos de balanceo de clases 31

Debido a que SMO basa su funcionamiento en una red neuronal, cada neurona de la redse empeña en llevar a cabo el cálculo de similitud entre un vector de entrada y su propio vec-tor de pesos de acuerdo a un criterio de similitud previamente establecido. Posteriormentese realiza un torneo donde se declara vencedora la neurona cuyo vector de pesos sea lo másparecido posible al vector de entrada [17]. Para mayor información sobre el algoritmo SMOverificar en [76].

El algoritmo SMO [102] se encuentra implementado dentro de la herramienta Weka ycontiene los parámetros que se muestran en la Tabla 4.6.

Parámetros Descripción-C Parámetro de complejidad C.-E Exponente para el Kernel polinómico.-G Valor Gamma para el Kernel RBF.-N <0|1|2> Tipo de filtro para los datos. 0=normali-

ze/1=standardize/2=neither.-L Parámetro de tolerancia.-P Valor de Épsilon.-V Número de pliegues para la validación cruzada para

generar los datos de entrenamiento para los modeloslogísticos.

Tabla 4.6: Parámetros SMO

4.3.3.2. LibSVM

Las máquinas de soporte vectorial (SVMs) son algoritmos ampliamente usados en pro-blemas de aprendizaje supervisado. LibSVM es una implementación de las SVMs que re-sulta ser muy rápida y robusta para tareas de aprendizaje como: (1) clasificación de soportevectorial (SVC), (2) regresión de soporte vectorial (SVR) y (3) estimación de distribución(SVM de una clase). LibSVM soporta diversas formulaciones de SVM para clasificación,regresión y estimación de la distribución entre las que se encuentran [21]:

Problemas de clasificación

1. C-SVC. Algoritmo estándar SVM, maneja un parámetro C que controla el com-promiso entre errores de entrenamiento y márgenes rígidos entre clases.

2. ν-SVC. Parecido a C-SVC, con la diferencia de que ν-SVC agrega un nuevoparámetro del control del número de vectores de soporte y los errores.

Problemas de regresión

1. ε-SVR. Establece un margen de tolerancia ε con el objetivo de minimizar elerror.

2. ν-SVR. Aplicable en regresión, incorpora el parámetro ν para autorregular ε.

Problemas de estimación de distribución

Page 50: Preprocesamiento de Datos Termográficos por medio de Técnicas

32 CAPÍTULO 4. Materiales y Métodos

1. SVM de una clase. Estima la distribución de una sola clase.

Este proyecto centra la atención en la formulación denominada como C-SVC desde elpunto de vista de SVM. Se dice que una tarea de clasificación en general consiste en separarlos datos en conjuntos de entrenamiento y prueba, cada instancia en el conjunto de entre-namiento contiene un valor de acuerdo a la clase que corresponde y diversos atributos. Elobjetivo de SVM es producir un modelo, basado en los datos de entrenamiento, que predigalos valores objetivos de los datos de prueba de acuerdo a los atributos de los datos de prueba[55]. Para una mayor información de libSVM en cualquiera de sus formulaciones puedeconsultar [21, 33].

Weka y LibSVM [100] son dos herramientas de software eficientes para la construcciónde clasificadores SVM. Los parámetros que maneja LibSVM se presentan en la Tabla 4.7.

Parámetros Descripción-S Tipo de SVM que se va a usar. 0 = C-SVC, 1 = nu-

SVC, 2 = one-class SVM, 3 = epsilon-SVR, 4 = nu-SVR.

-K Tipo de kernel. 0 = linear, 1 = polynomial, 2 = radialbasis function, 3 = sigmoid.

-D Grado del kernel.-G Valor de gamma que se usará.-R Coeficiente que se va a usar.-C Parametro de costo C de la formulación C-SVC.-Z Normalizar datos de entrada.-M Tamaño de la memoria caché en MB que se usará.-E Tolerancia del criterio de término.-H Se establece en “true” si se quiere utilizar la heurís-

tica de reducción.-B Se establece en “true” si se desean generar estima-

ciones de probabilidad en lugar de -1,1 sobre los pro-blemas de clasificación.

-seed Valor de la semilla de números aleatorios.

Tabla 4.7: Parámetros LibSVM

4.3.4. Métodos adicionales

De acuerdo a la taxonomía de técnicas de balanceo que se presenta en el Capítulo 2,existen técnicas nuevas que se han propuesto para tratar con el problema de desbalanceo declases, tal es el caso de Mega-Trend Diffusion que se considera en este proyecto como unaopción para generar instancias artificiales para las dos clases que se tienen en el conjuntode datos. Mega-Trend Diffusion llama nuestra atención debido a que sus autores mencionanque es una técnica enfocada en trabajar con conjuntos de datos pequeños.

4.3.4.1. Mega-Trend Diffusion

Mega-Trend Diffusion (MTD) es una función que fue propuesta por Li et al. [65] parahacer frente al problema de conjuntos de datos pequeños en la calendarización de estrate-

Page 51: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.3. Algoritmos de balanceo de clases 33

gias en los sistemas de fabricación flexibles. El principal propósito de la función MTD esgenerar instancias artificiales para resolver el problema de la insuficiencia de datos. Desdeel punto de vista estadístico, la asunción de la distribución Normal es una condición nece-saria en el análisis de datos. Sin embargo, a menudo es difícil mostrar que el conjunto dedatos sigue una distribución Normal cuando el conjunto de instancias es reducido.

Por lo tanto, Li et al. utiliza una función de pertenencia en la teoría de conjuntos difu-sos para el cálculo de los valores de las instancias artificiales en lugar de la probabilidadestadística para evitar la asunción de la distribución Normal. En la Figura 4.3 se muestra elconcepto del teorema difuso aplicado a la función MTD. El triángulo representa la funciónde pertenencia utilizada, la altura de las muestras, m y n son los valores posibles de la fun-ción de pertenencia denotado como M(m) y M(n) [65].

Figura 4.3: Función MTD [65]

Dado un conjunto de instancias X = {x1, x2, ..., xn} los límites a y b son definidos porlas Ecuaciones 4.4 y 4.5, tomadas de [66].

a = uset − SkewL ×

√−2× s2

x

NL × ln(10−20)(4.4)

b = uset + SkewU ×

√−2× s2

x

NU × ln(10−20)(4.5)

Donde:

uset = min+max2 , min es el valor mínimo de la instancia de la muestra y max es el

valor máximo.

s2x =

∑ni=1(xi−x)2

n−1 , es la varianza de x.

NL es la cantidad de instancias con valor menor a uset.

NU es la cantidad de instancias con valor mayor a uset.

SkewL = NL × (NL +NU ).

SkewU = NUNL+NU

.

Page 52: Preprocesamiento de Datos Termográficos por medio de Técnicas

34 CAPÍTULO 4. Materiales y Métodos

Cuando la varianza resulte ser igual a cero, las Ecuaciones 4.4 y 4.5 no podrán seraplicadas, en su lugar, se aplicarán las Ecuaciones 4.6 y 4.7, [66].

a =min

5(4.6)

b = max× 5 (4.7)

Una vez que se tienen los límites a y b, las instancias artificiales son generadas aleato-riamente dentro del rango de dominio de a y b. La función MTD fue implemetada en Javapara poder ser aplicada a nuestro conjunto de datos. En el Algoritmo 1 se detalla la funciónMTD.

4.4. Algoritmos de Clustering

Además de usar algoritmos de balanceo, en este proyecto también se hace uso de dosalgoritmos de clustering para tratar nuestro conjunto de datos. Los algoritmos que se usanson: AutoClass y SimpleKMeans, dichos algoritmos se caracterizan por ser parte de la ca-tegoría de técnicas de particionamiento y debido a que se requiere la formación de nuevosgrupos de nuestro conjunto de datos, AutoClass y SimpleKMeans representan dos opcionesviables para llevar a cabo dicha tarea.

4.4.1. AutoClass (EM)

AutoClass es una técnica de clustering probabilista. Esta técnica se basa en el algorit-mo EM (Expectation Maximization). EM es un algoritmo propuesto por Dempster, Laird,y Rubin en 1977 para encontrar el estimador de máxima verosimilitud de los parámetrosde una distribución de probabilidad, especialmente útil cuando parte de la información estáoculta [59].

EM inicia con un vector de parámetros inicial Θ1 (usualmente aleatorio) y efectúa deforma iterativa dos pasos:

1. Paso E (Esperanza): Calcula la esperanza de la verosimilitud respecto a la informa-ción conocida y unos parámetros propuestos Θ(t). En este paso se aplica la Ecuación4.8, donde X es el conjunto de datos observados, Z es el conjunto de datos no obser-vados, Θ es el conjunto de parámetros del modelo, Pr(Θ) es la probabilidad a prioride los parámetros, Pr(X|Θ) es la probabilidad condicional de los datos observadosde acuerdo a los parámetros.

Q(Θ,Θ(t)) = E[log p(x, y|Θ)|X,Θ(t)] (4.8)

2. Paso M (Maximización): Se maximiza Q respecto a los parámetros, como se muestraen la Ecuación 4.9.

Θ(t+1) = arg maxQ(Θ,Θ(t)) (4.9)

Page 53: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.4. Algoritmos de Clustering 35

Algoritmo 1 MTDRequire: X conjunto de datos,

Y subconjunto de instancias de la clase mayoritaria,Z subconjunto de instancias de la clase minoritaria,smin tamaño de la muestra de instancias minoritarias,smay tamaño de la muestra de instancias mayoritarias.

Ensure: a y b para clase mayoritaria y clase minoritaria.1: Procedimiento SeleccionarCasosMayoritaria(smay)2: for i = 0 to smay do3: seleccionadosMay[] (*Lista de las instancias seleccionadas de la clase mayorita-

ria*)4: end for5: Procedimiento SeleccionarCasosMinoritaria(smin)6: for i = 0 to smnin do7: seleccionadosMin[] (*Lista de las instancias seleccionadas de la clase minorita-

ria*)8: end for9: Procedimiento CalcularRangoMayoritaria(seleccionadosMay)

10: while seleccionadosMay 6= vacio do11: Obtener valor máximo de seleccionadosMay12: Obtener valor mínimo de seleccionadosMay13: Calcular varianza de seleccionadosMay14: if varianza 6= 0 then15: Aplicar las Ecuaciones 4.4 y 4.5.16: else17: Aplicar las Ecuaciones 4.6 y 4.718: end if19: end while20: Procedimiento CalcularRangoMinoritaria()21: while seleccionadosMin 6= vacio do22: Obtener valor máximo de seleccionadosMin23: Obtener valor mínimo de seleccionadosMin24: Calcular varianza de seleccionadosMin25: if varianza 6= 0 then26: Aplicar las Ecuaciones 4.4 y 4.5.27: else28: Aplicar las Ecuaciones 4.6 y 4.729: end if30: end while

Los pasos 1 y 2 se realizan hasta la convergencia a un valor óptimo Θ∗ que aseguramaximizar localmente la función de verosimilitud L(Θ) = logPr(X|Θ). Finalmente, seobtiene un conjunto de clusters que agrupan el conjunto de datos original. Cada uno de estosclusters estará definido por los parámetros de una distribución Normal. En en el Algoritmo2 se generaliza el funcionamiento de EM.

Page 54: Preprocesamiento de Datos Termográficos por medio de Técnicas

36 CAPÍTULO 4. Materiales y Métodos

Algoritmo 2 AutoClassRequire: Conjunto de parámetros Θ

1: while Repetir hasta converger do2: Paso E, aplicar Ecuación 4.8.3: Paso M, aplicar Ecuación 4.9.4: end while

Para este proyecto se hace uso del algoritmo EM [99] que viene incluido en la herra-mienta Weka, de la que se desprenden los parámetros que se muestran en la Tabla 4.8.

Parámetros Descripción-N Número de clusters, el valor de -1 selecciona el nú-

mero de clusters de forma automática mediante lavalidación cruzada.

-I Número máximo de iteraciones.-S Semilla para los números aleatorios.-M Desviación estándar mínima permitida.

Tabla 4.8: Parámetros EM

4.4.2. SimpleKMeans

SimpleKMeans se considera un algoritmo de tipo k-means. Los métodos k-means soncomúnmente utilizados para el proceso de clustering y buscan minimizar el cuadrado de ladistancia media entre los puntos de un mismo grupo. Los algoritmos de tipo k-means noofrecen ninguna garantía de exactitud, sin embargo, dado su simplicidad y velocidad resul-tan ser muy atractivos en la práctica [12].

Generalmente, k-means comienza eligiendo uniformemente al azar k centroides arbitra-rios a partir de las instancias dadas. Cada instancia es asignada al centroide más cercano, ycada centroide se vuelve a calcular como el centro de todos los puntos asignados al mismo.En el Algoritmo 3 se presenta de forma general el funcionamiento de k-means.

Algoritmo 3 SimpleKMeans1: Arbitrariamente elegir un k centroide inicial C = {c1, c2, ..., ck}.2: for Por cada i ∈ {1, ..., k} do3: Establecer el cluster Ci como el conjunto de puntos en χ que estén mas cerca de ci

de los que están a cj para todo j 6= i4: end for5: for Por cada i ∈ {1, ..., k} do6: Ajustar ci para ser el centro de todos los puntos en Ci

7: end for8: Repetir los pasos 2 y 5 hasta que C ya no cambie.

Page 55: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.5. Algoritmos de clasificación 37

El algoritmo SimpleKMeans [101] está implementado dentro de la herramienta Weka ymaneja los parámetros que se presentan en la Tabla 4.9.

Parámetros Descripción-N Número de clusters.-V Si se establece en “true” se muestran en pantallas las

desviaciones estándar de los atributos numéricos.-A La función de distancia que se usará para los casos

de comparación, por defecto se muestra la funciónde Distancia Euclidiana.

-I Número máximo de iteraciones.-S Semilla para los números aleatorios.-O Conserva el orden de las instancias si se establece en

“true”.

Tabla 4.9: Parámetros SimpleKMeans

4.5. Algoritmos de clasificación

Dentro de la múltiple gama de algoritmos de clasificación se ha decidido hacer uso deNaive Bayes, J48 y Hill-Climber. La selección de estos algoritmos se basó en los resultadospositivos de desempeño que se reportan en la literatura especializada.

4.5.1. Naive Bayes

Naive Bayes (NB) es un clasificador probabilista basado en el teorema de Bayes queconstruye modelos que predicen la probabilidad de las posibles salidas del modelo. En laEcuación 4.10 se presenta el teorema de Bayes en función de tareas de clasificación [5].

P (Ci|E) =P (E|Ci)P (Ci)

P (E)(4.10)

Donde:

P (Ci) es la probabilidad a priori de cada clase h.

P (E) es la probabilidad conjunta de los atributos.

P (E|Ci) es la matriz de probabilidad condicional para cada atributo dada la clase.

NB es uno de los algoritmos de clasificación más efectivos y se caracteriza por su sim-plicidad y precisión. Aprende a partir de un conjunto de entrenamiento y de la probabilidadcondicional de cada atributo dada la clase. Cuando se presenta un nuevo caso NB hace usodel teorema de Bayes para realizar el cálculo de la probabilidad condicional de cada nodoseleccionado y selecciona el valor de la clase con la probabilidad mayor [13].

Page 56: Preprocesamiento de Datos Termográficos por medio de Técnicas

38 CAPÍTULO 4. Materiales y Métodos

El algoritmo Naive Bayes se encuentra incluido dentro de la herramienta Weka y consi-dera los parámetros que se muestran en la Tabla 4.10

Parámetros Descripción-K Usar la estimación de Kernel para modelar atribu-

tos numéricos en lugar de una distribución Normalúnica.

-D Usar discretización supervisada para procesar atri-butos numéricos.

Tabla 4.10: Parámetros Naive Bayes

4.5.2. Hill-Climber

Hill-Climber es un algoritmo de clasificación implementado en Weka que empieza porgenerar una red bayesiana de forma aleatoria. Por cada nodo de la red , Hill-Climber agrega,elimina o revierte relaciones de la red en forma aleatoria, calcula la probabilidad de cadanodo a partir de la probabilidad conjunta de la variable clase [5].

La calidad de la red es juzgada por una determinada medida que puede ser Bayes, MDL(Minimum Description Length), AIC (Akaike Information Criterion) o la entropía. Paranuestro proyecto se hace uso de MDL como medida para juzgar la calidad de la red que segenera [103].

Hill-Climber [94] se utiliza en este proyecto y se consideran los parámetros que semuestran en la Tabla 4.11.

Parámetros Descripción-P Máximo número de padres.-R Determina si se utiliza la reversión de arco.-N Si se establece en “true” la red inicial hace uso de la

estructura de Naive Bayes.-mbc Determina si se desea aplicar a la red una cobija de

Markov.-S Se establece el tipo de medida que se usará para juz-

gar la calidad de la red.

Tabla 4.11: Parámetros Hill-Climber

4.5.3. J48

El algoritmo J48, es una versión del algoritmo C4.5 de árboles de decisión propuesto en[77]. Los árboles se identifican como métodos de aprendizaje supervisado, ya que se tieneuna variable dependiente o clase y el árbol de decisión tiene el objetivo de determinar elvalor de dicha clase para nuevos casos [5].

Page 57: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.6. Técnicas de evaluación 39

J48 genera un árbol de decisión que se estructura por un conjunto de nodos que se en-cuentran directamente asociados a los casos de entrenamiento y hace uso de los conceptosde entropía y ganancia de información [5]. La entropía es la medida de la incertidumbre y,en un árbol de decisión se utiliza para determinar el contenido de información y proporcio-na el beneficio de dividir el árbol por un determinado atributo al comparar la información.La ganancia es la diferencia entre la entropía de un nodo y la de uno de sus descendientesy se considera como un criterio de selección del mejor atributo en cada nodo del árbol [103].

La construcción de un árbol de decisión comienza por la creación de un nodo raíz quetiene asociadas todas las instancias de entrenamiento, a partir del conjunto de entrenamien-to se selecciona el atributo por medio del cual se va a dividir el conjunto de datos original,este proceso es recursivo y toma en cuenta los valores de entropía y ganancia que se vancalculando al formar cada nodo del árbol [5].

El algoritmo J48 se caracteriza por admitir atributos nominales y numéricos, aunque lasclases deben ser nominales, también permite tener instancias con valores desconocidos y elcriterio de división está basado completamente en la entropía y la ganancia de información[103].

J48 forma parte de Weka y para este proyecto se hace uso de un conjunto de parámetrosque se muestran en la Tabla 4.12.

Parámetros Descripción-U Determina si se usa el árbol sin podar o no.-C Establece el umbral de confianza para la poda del

árbol.-R Establece si se utiliza la reducción de error.-N number Establece el número de iteraciones para reducir el

error en la poda.-B Uso de división binaria en atributos nominales.-S Establece si se debe considerar la operación de ele-

var el árbol al podar.-L Establece si se debe limpiar después de que el árbol

ha sido construido.-A Establece si se hace uso de Laplace en las hojas del

árbol.-Q Semilla para la reducción de error en la poda.

Tabla 4.12: Parámetros J48

4.6. Técnicas de evaluación

4.6.1. Validación cruzada

De acuerdo a Refaeilzadeh [79], la validación cruzada es un método estadístico de eva-luación y comparación de algoritmos de aprendizaje, ya que separa los datos en dos seg-mentos: el primero, se utiliza para aprender o entrenar un modelo y el segundo es utilizado

Page 58: Preprocesamiento de Datos Termográficos por medio de Técnicas

40 CAPÍTULO 4. Materiales y Métodos

para validar el modelo.

La forma básica de validación cruzada es k-iteraciones (k-fold), en esta forma, un con-junto de datos S es dividido en k segmentos de igual tamaño, o casi igual. Posteriormentek iteraciones de entrenamiento y validación son llevadas a cabo, de tal manera que dentrode cada itaración un subconjunto de datos diferente es usado para la validación, mientrasque el resto k − 1 de subconjuntos son utilizados para el aprendizaje. El número de itera-ciones es un valor adaptable de acuerdo a cada problema, sin embargo, en minería de datosy aprendizaje supervisado k = 10 es el valor más utilizado [79]. Para este proyecto se haceuso precisamente de 10-iteraciones para la validación cruzada.

En k-iteraciones, los datos son frecuentemente estratificados antes de ser divididos en ksubgrupos. La estratificación se puede entender como el proceso de reordenación de los da-tos, para asegurar que cada subconjunto que se va formando es representativo del conjuntode datos general.

Algoritmo 4 Validación cruzada1: Entrada: Conjunto de datos S, constante entera k.2: Procedimiento:3: Dividir S en k subconjuntos S1, ..., Sk.4: for i = 1 hasta i = k do5: Sea T = S

Si, donde T es el conjunto de entrenamiento para el algoritmo de aprendi-

zaje.6: Probar el clasificador resultante en Si.7: Obtener los verdaderos positivos, falsos positivos, verdaderos negativos y falsos ne-

gativos.8: end for9: Salida: Matriz de confusión.

En el Algoritmo 4, tomado de [34], se generaliza el funcionamiento de la validacióncruzada. Para mayor detalle respecto a la validación cruzada, consultar [39].

4.6.2. Medidas de desempeño

En aprendizaje supervisado se presenta la precisión como una medida de desempeñopara la tarea de clasificación [103], mientras que en el contexto clínico están presentes lasmedidas de sensibilidad y especificidad que ayudan a validar qué tan exacta puede llegar aser una prueba diagnóstica [6].

En este proyecto se hace uso de la sensibilidad, especificidad, precisión y curvas ROCpara medir el desempeño de las diferentes técnicas que se usan para analizar el conjunto dedatos termográficos.

Page 59: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.6. Técnicas de evaluación 41

Figura 4.4: Matriz de confusión de dos clases.

4.6.2.1. Precisión

Cuando se lleva a cabo la tarea de clasificación es de gran importancia conocer la pre-cisión del clasificador o clasificadores que se han utilizado. La precisión se puede entendercomo el porcentaje de instancias que se encuentran correctamente clasificadas en una pruebade clasificación. En términos de reconocimiento de patrones, la precisión se conoce como latasa de reconocimiento global de un clasificador, es decir, refleja lo bien que el clasificadorreconoce instancias de la distintas clases de un conjunto de datos [51].

La matriz de confusión representa una útil herramienta para analizar el comportamientode un clasificador. La matriz de confusión se compone de verdaderos positivos, verdaderosnegativos, falsos positivos y falsos negativos [51]. En la Figura 4.4 se representa una matrizde confusión de dos clases.

De acuerdo a la estructuración de la matriz de confusión, la fórmula para determinar laprecisión es presentada en la Ecuación 4.11.

Precisión = V P+V NV P+FP+FN+V N (4.11)

Donde:

VP son los verdaderos positivos.

VN son los verdaderos negativos.

FP son los falsos positivos.

FN son los falsos negativos.

VP + VN es la suma de los casos correctamente clasificados.

VP + FP + FN + VN es la suma total de los casos.

4.6.2.2. Sensibilidad

Uno de los aspectos que se requiere evaluar en una prueba diagnóstica de datos clínicosa través de la clasificación, es la capacidad para clasificar correctamente al enfermo como

Page 60: Preprocesamiento de Datos Termográficos por medio de Técnicas

42 CAPÍTULO 4. Materiales y Métodos

enfermo, Para evaluar esta característica se utiliza la sensibilidad [73].

La sensibilidad puede definirse como la capacidad de la prueba para clasificar correcta-mente a un enfermo como verdadero enfermo o también como la probabilidad de tener unresultado positivo si se tiene la enfermedad. La probabilidad complementaria de la sensi-bilidad es la probabilidad de falsos negativos. Se puede decir que se tiene una prueba muysensible cuando se tienen pocos falsos negativos y viceversa, por lo tanto una prueba conbaja sensibilidad tiene poca capacidad para detectar casos enfermos [73][6]. La fórmulapara calcular la sensibilidad es la siguiente:

Sensibilidad = V PV P+FN (4.12)

Donde:

VP son los verdaderos positivos.

FN son los falsos negativos.

La suma de VP + FN es la suma del total de casos positivos o casos realmente enfer-mos.

4.6.2.3. Especificidad

Así como existe la incógnita respecto a si una prueba puede clasificar correctamente alos casos enfermos, también surge la duda si se pueden identificar los casos sanos o casosnegativos. Para determinar los casos sanos se hace uso de la especificidad que se puede en-tender como la capacidad para detectar los casos realmente sanos de una prueba diagnóstica.La tasa de verdaderos negativos o especificidad es, entonces, el porcentaje del total de casossanos que tienen resultados negativos. El complemento de la especificidad se conoce comofalsos positivos, por lo tanto, cuando se tiene una alta especificidad los falsos positivos sonpocos [73][6]. La fórmula para calcular la especificidad es:

Especificidad = V NV N+FP (4.13)

Donde:

VN son los verdaderos negativos.

FP son los falsos positivos.

VN + FP es la suma del total de casos sanos.

4.6.3. Curva ROC

La curva ROC (Receiver Operating Characteristic) es una representación gráfica quesirve para resumir el rendimiento de un clasificador a partir del compromiso entre la Sen-sibilidad frente a 1-Especificidad [22]. Una gráfica ROC se representa en dos dimensiones,

Page 61: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.7. Herramienta WEKA 43

donde la Sensibilidad es graficada sobre el eje Y , mientras que en el eje X se grafica 1-Especificidad [22].

En la Figura 4.5 se muestra un ejemplo de una curva ROC, donde se remarcan algunospuntos importantes. La coordenada (0,0) representa la estrategia de no emitir una clasifi-cación positiva, mientras que la coordenada (1,1) emite incondicionalmente clasificacionespositivas. De la coordenada (0,0) a la (1,1) se puede visualizar una línea que se denominalínea discriminante que nos permitirá evaluar el desempeño de una curva ROC a partir deésta. La coordenada (0,1) representa la clasificación perfecta. Se dice que una curva ROCes mejor que otra, si se localiza más al noroeste respecto a otra y por encima de la línea dis-criminante. Si una curva ROC se localiza por debajo de la línea discriminante se consideracomo una representación de bajo desempeño [38].

Figura 4.5: Ejemplo de una curva ROC

4.7. Herramienta WEKA

Para el análisis de nuestro conjunto de datos se hace uso de algunos de los algoritmosque se encuentran en la herramienta Weka (Waikato Environment for Knowledge Analysis)[49]. Weka es una extensa colección de algoritmos de aprendizaje automático desarrolladospor la Universidad de Waikato (Nueva Zelanda) implementados en el lenguaje Java [45].

Los algoritmos de Weka pueden ser aplicados sobre datos mediante las interfaces queofrece o para embeberlos dentro de cualquier aplicación. Weka tiene las opciones necesa-

Page 62: Preprocesamiento de Datos Termográficos por medio de Técnicas

44 CAPÍTULO 4. Materiales y Métodos

rias para llevar a cabo transformaciones en los datos como: tareas de clasificación, regresión,clustering, asociación y visualización [45].

A continuación se presentan las interfaces que brinda Weka en la versión 3.6.9 y quecorresponden a las funcionalidades más importantes. Cuando se abre el programa Weka sepresenta la ventana principal como la que se muestra en la Figura 4.6.

Figura 4.6: Ventana principal de Weka

A partir de la ventana principal de Weka se pueden observar cuatro opciones que son:Explorer, Experimenter, KnowledgeFlow y Simple CLI. Estas cuatro opciones se describena continuación [18]

Explorer. Es un entorno para la exploración de datos, ver Figura 4.7.

Figura 4.7: Interfaz Explorer de Weka

Page 63: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.7. Herramienta WEKA 45

La interfaz Explorer se compone de las siguientes pestañas:

1. Preprocess. Permite elegir y modificar los datos que se cargan.

2. Classify. Permite entrenar y probar un conjunto de datos a través de diferentes algo-ritmos de clasificación o regresión.

3. Cluster. Se pueden generar clusters a partir de un conjunto de datos.

4. Associate. Permite el aprendizaje por medio de reglas de asociación.

5. Select attributes. Permite la selección de los atributos más representativos del con-junto de datos.

6. Visualize. Permite la visualización en 2D de los datos.

Experimenter. En este entorno se puede crear, ejecutar, modificar y analizar experimentosde una forma más práctica, ya que se puede crear un experimento que incluya diversosalgoritmos de aprendizaje contra una serie de conjuntos de datos y posteriormente analizarlos resultados para determinar si alguno de los algoritmos evaluados es estadísticamentemejor que otros algoritmos. En la Figura 4.8 se puede visualizar la interfaz de Experimenter.

Figura 4.8: Interfaz Experimenter de Weka

La interfaz Experimenter puede ser usada en sus dos moadalidades, Simple o Advanced.Para nuestro proyecto se hace uso de la modalidad Simple.

KnowledgeFlow. Ofrece una alternativa como interfaz gráfica y soporta las mismas fun-ciones que Explorer. KnowledgeFlow es un trabajo en progreso por lo que algunas de las

Page 64: Preprocesamiento de Datos Termográficos por medio de Técnicas

46 CAPÍTULO 4. Materiales y Métodos

funcionalidades de la interfaz Explorer aún no están disponibles en este entorno. En la Fi-gura 4.9 se puede ver la interfaz KnowledgeFlow.

Figura 4.9: Interfaz KnowledgeFlow de Weka

Simple CLI. Proporciona una interfaz de línea de comandos que permite la ejecución directade comando de Weka para los sistemas operativos que no cuentan con su propia interfaz delínea de comandos. En la Figura 4.10 se puede ver la interfaz Simple CLI.

Page 65: Preprocesamiento de Datos Termográficos por medio de Técnicas

4.7. Herramienta WEKA 47

Figura 4.10: Interfaz Simple CLI de Weka

Page 66: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 67: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 5

Metodología

5.1. Metodología experimental para algoritmos de balanceo

5.1.1. Metodología para métodos basados en Cost-sensitive y basados en Ker-nel

El experimento realizado con algoritmos de balanceo basados en Cost-sensitive y basa-dos en Kernel sigue una serie de pasos que se presentan en la Figura 5.1. Dichos pasos seexplican a detalle más adelante.

Figura 5.1: Metodología experimental para algoritmos de balanceo Cost-sensitive y basadosen Kernel

Paso 1. En este paso se abre la herramienta Weka [103], previamente instalada y se selec-ciona la opción Experimenter. Antes de cargar el conjunto de datos se debe realizar lo quese describe en los incisos a) al g) y que se puede ver en la Figura 5.2.

49

Page 68: Preprocesamiento de Datos Termográficos por medio de Técnicas

50 CAPÍTULO 5. Metodología

Figura 5.2: Cargar conjunto de datos

a) Dar clic en el botón New.

b) Elegir el tipo de archivo de salida en el que se mostrarán los resultados, en nuestrocaso se ha elegido el Formato CSV (Comma Separated Values).

c) Seleccionar el nombre del archivo y la ruta en el que será almacenado.

d) Seleccionar la técnica de validación que se desea usar, nosotros seleccionamos Cross-validation.

e) Capturar el número de folds para el experimento. Para todos nuestros experimentosmanejamos 10 folds.

f) Capturar el número de veces que se llevará a cabo el experimento, en nuestro casousamos el valor de 10, ya que en [79], se hace mención que el valor 10 es másutilizado.

g) Dar clic en el botón Add New que nos permitirá cargar el o los conjuntos de datospara el experimento.

Paso 2. Permite hacer la selección de uno o más algoritmos para el experimento, siguiendoel procedimiento que se describe en los incisos a) y b) que se muestran en la Figura 5.3 yque se muestran a continuación.

a) Dar clic en el botón Add New para abrir la ventana de selección.

b) En la ventana que aparece, dar clic en el botón Choose y enseguida se muestra unanueva ventana que nos permitirá realizar la selección de los algoritmos. En la cate-goría functions se localizan los algoritmos basados en Kernel que usamos para este

Page 69: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.1. Metodología experimental para algoritmos de balanceo 51

proyecto y en la categoría meta se localizan los algoritmos basados en Cost-sensitiveutilizados.

Figura 5.3: Selección de algoritmos para el experimento

Paso 3. En esta paso se configuran los valores de los parámetros de cada algoritmo. Para losalgoritmos basados en Cost-sensitive que son: CostSensitiveClassifier y MetaCost se usaronlos valores de parámetros mostrados en las Tablas 5.1 y 5.2. Para los algoritmos basadosen Kernel: SMO y LibSVM se usaron los parámetros mostrados en las Tablas 5.7 y 5.8.

CostSensitiveClassifierParámetros Valor-M False-W J48, Naive Bayes y Hill-

Climber-S 1-cost-matrix Matrices mostradas en la

Figura 4.2

Tabla 5.1: Valores para parámetros de CostSensitiveClassifier

Page 70: Preprocesamiento de Datos Termográficos por medio de Técnicas

52 CAPÍTULO 5. Metodología

MetaCostParámetros Valor-W J48, Naive Bayes Y Hill-

Climber-I 10-S 1-P 100-cost-matrix Matrices mostradas en la

Figura 4.2

Tabla 5.2: Valores para parámetros de MetaCost

En el caso de los algoritmos basados en Cost-sensitive se probaron las combinacionesque se muestran en la Tabla 5.3 por cada matriz de costos que se muestran en la Figura 4.2.

Combinación DescripciónCS-J48 CostSensitiveClassifier

con J48CS-NB CostSensitiveClassifier

con Naive BayesCS-HC CostSensitiveClassifier

con Hill-ClimberMC-J48 MetaCost con J48MC-NB MetaCost con Naive Ba-

yesMC-HC MetaCost con Hill-

Climber

Tabla 5.3: Combinaciones de algoritmos Cost-sensitive

Los parámetros usados para J48, Naive Bayes y Hill-Climber se muestran en las Tablas 5.4,5.5 y 5.6.

J48Parámetros Valor-C 0.25-M 2

Tabla 5.4: Valores para parámetros de J48

Naive BayesParámetros Valor-K False-F False

Tabla 5.5: Valores para parámetros de Naive Bayes

Page 71: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.1. Metodología experimental para algoritmos de balanceo 53

Hill-ClimberParámetros Valor-P 100,000-R True-N False-S MDL-mbc False

Tabla 5.6: Valores para parámetros de Hill-Climber

SMOParámetros Valor-C 1.0-L 0.0010-P 1.0E-12-N 0 = normalize-V -1-E 1.0

Tabla 5.7: Valores para parámetros de SMO

LibSVMParámetros Valor-S 0 = C-SVC (Classifica-

tion)-K 2 = radial basis function:

exp(−gamma ∗ |u− v|2)

-D 3-G 0.0-R 0.0-M 40.0-C 1.0

Tabla 5.8: Valores para parámetros de LibSVM

Paso 4. Una vez que se seleccionaron los algoritmos y se configuraron sus parámetros seprocede a realizar los pasos que se describen a continuación y que se pueden ver en la Figura5.4.

a) Dar clic en la pestaña Run.

b) Dar clic en el botón Start para comenzar con la ejecución del experimento.

Page 72: Preprocesamiento de Datos Termográficos por medio de Técnicas

54 CAPÍTULO 5. Metodología

Figura 5.4: Ejecución del experimento

Paso 5. Una vez ejecutado el experimento se procede a hacer lo que se describe en lossiguientes incisos y se pueden ver en la Figura 5.5.

a) Dar clic en la pestaña Analyse.

b) Dar clic en el botón File..., seleccionar el archivo generado en el paso 1 inciso c.

c) Marcar la casilla Show std. Desviations para poder visualizar en los resultados ladesviación estándar.

d) d) Dar clic en el botón Perform test y visualizar los resultados del experimento. Apartir de estos resultados se toma el valor de precisión, los valores de sensibilidad yespecificidad son calculados con base en la matriz de confusión resultante de cadaiteración del experimento.

Page 73: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.1. Metodología experimental para algoritmos de balanceo 55

Figura 5.5: Análisis de resultados

5.1.2. Metodología para métodos basados en Sampling: SMOTE

Para aplicar el algoritmo SMOTE, en este proyecto, se hace uso de Weka siguiendo lospasos que se muestran en la Figura 5.6 descritos más adelante.

Figura 5.6: Metodología para aplicar SMOTE

Paso 1. Para cargar el conjunto de datos hay que abrir Weka y llevar a cabo los incisos a) yb) que se pueden ver en la Figura 5.7.

a) Seleccionar la opción Explorer y enseguida se abrirá una nueva ventana que tieneactiva la pestaña Preprocess.

b) En la pestaña Preprocess, dar clic en el botón Open File para seleccionar el conjuntode datos.

Page 74: Preprocesamiento de Datos Termográficos por medio de Técnicas

56 CAPÍTULO 5. Metodología

Figura 5.7: Cargar conjunto de datos para aplicar SMOTE

Paso 2. Una vez seleccionado el conjunto de datos, en la pestaña Preprocess, dar clic enel botón Choose. Enseguida se despliega una ventana de la que hay que elegir el algoritmoSMOTE, como se muestra en la Figura 5.8.

Figura 5.8: Seleccionar algoritmo SMOTE

Paso 3. Una vez que se seleccionó el algoritmo SMOTE, se realiza lo que se describe en losincisos a) y b) y que se pueden visualizar en la Figura 5.9.

Page 75: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.1. Metodología experimental para algoritmos de balanceo 57

a) Dar clic sobre la barra donde aparece el nombre del algoritmo seleccionado.

b) Enseguida aparece una nueva ventana donde hay que configurar los parámetros delalgoritmo SMOTE. Los parámetros usados para SMOTE se muestran en la Tabla5.9. En el caso de -S y -C se tomaron los valores por defecto que Weka proporciona,en el caso de -P se determinó que el valor de 270 es el que logra producir el balan-ceo en el número de instancias de nuestro conjunto de datos y en el caso de -K elvalor más utilizado y que Weka lo maneja por defecto es 5 y decidimos probar losextremos, es decir, con 1 vecino y con 10.

Figura 5.9: Asignar parámetros a SMOTE

SMOTEParámetros Valor-S 1-P 270-K 1, 5 y 10-C 0

Tabla 5.9: Valores de los parámetros de SMOTE

Paso 4. Una vez que se configuraron los parámetros deseados, se da clic en el botón Apply,ver Figura 5.10.

Page 76: Preprocesamiento de Datos Termográficos por medio de Técnicas

58 CAPÍTULO 5. Metodología

Figura 5.10: Aplicar SMOTE

Paso 5. Cuando se ha aplicado SMOTE, se debe guardar el conjunto de datos con las nuevasinstancias generadas siguiendo los siguientes puntos:

a) Dar clic en el botón Save, ver Figura 5.11.

b) Se muestra una ventana donde se debe poner un nombre al conjunto de datos conlas nuevas instancias y el tipo de archivo. Con SMOTE se generaron tres conjuntosde datos nuevos tomando como base el conjunto de datos termografía, la variantede los nuevos conjuntos de datos es el valor asignado al parámetro de vecinos máscercanos (-K), ya que usamos el valor de 1, 5 y 10.

Page 77: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.1. Metodología experimental para algoritmos de balanceo 59

Figura 5.11: Guardar conjuntos de datos

Paso 6. Una vez que se crearon los tres conjuntos de datos por medio de SMOTE se procedea aplicar técnicas de clasificación por medio de la opción Experimenter de Weka, con elobjetivo de evaluar cada conjunto de datos. Ver sección 4.7.

5.1.3. Metodología para métodos adicionales: Mega-Trend Diffusion (MTD)

MTD se evaluó como parte de los métodos adicionales para balanceo de clases. Debidoa que este método no se encuentra dentro de la colección de Weka, fue el único algoritmoque se implementó en el lenguaje Java. La metodología para evaluar MTD se presenta en laFigura 5.12.

Figura 5.12: Metodología para probar MTD

Paso 1. Los parámetros utilizados para MTD se presentan en la Tabla 5.10. Se aplicaroncinco diferentes valores para el tamaño del conjunto de entrenamiento que es obtenido apartir del conjunto de datos termografía.

Page 78: Preprocesamiento de Datos Termográficos por medio de Técnicas

60 CAPÍTULO 5. Metodología

Parámetros 1 2 3 4 5Tamaño de la muestra 10 30 50 70 90Número de nuevas instan-cias

200 200 200 200 200

Tabla 5.10: Configuraciones de parámetros para MTD

Paso 2. A partir de los parámetros establecidos en el paso 1, se generan nuevas instanciastomando como base el valor de la muestra.

Paso 3. En el paso 2 se generaron 5 conjuntos de nuevas instancias, cada conjunto contienenun total de 200 instancias, de las cuales 100 son de la clase “Enfermo” y 100 de la clase“No_Enfermo”. Cada conjunto de instancias es tomado para ser evaluado por técnicas declasificación mediante Weka a través de la opción Explorer-Classify mediante la opciónSupplied test set, donde el conjunto de datos termografía se usará como base de datos deprueba. El conjunto de datos termografía se toma como conjunto de prueba para validar elparecido de las nuevas instancias artificiales respecto a las originales.

5.2. Metodología experimental para algoritmos de Clustering

Para la experimentación con algoritmos de Clustering se sigue la metodología que sepresenta en la Figura 5.13 y que se explica a detalle a continuación.

Figura 5.13: Metodología para aplicar algoritmos de Clustering

Paso 1. A partir del conjunto de datos termografía se genera una copia de ésta, omitiendo lavariable clase, ya que el algoritmo de Clustering se encargará de sugerir un cluster por cadainstancia. A la copia del conjunto de datos la llamamos termografiaSC.

Paso 2. Se abre Weka en la opción Explorer y se da clic en el botón Open file para cargar lacopia del conjunto de datos creado en el paso 1. Ver Figura 5.14.

Page 79: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.2. Metodología experimental para algoritmos de Clustering 61

Figura 5.14: Cargar termografíaSC en Weka opción Explorer

Paso 3. El conjunto de datos se cargó en la pestaña Preprocess, ahora se trabajará en lapestaña llamada Cluster y se da clic en el botón Choose para poder seleccionar el algoritmocon el que se trabajará. Nosotros probamos dos algoritmos EM y SimpleKMeans, ver Figura5.15.

Figura 5.15: Selección de algoritmo de Clustering

Paso 4. Una vez que se ha seleccionado un algoritmo se deben establecer los valores de losparámetros para el algoritmo, ver Figura 5.16. En nuestro caso, hacemos uso de los valores

Page 80: Preprocesamiento de Datos Termográficos por medio de Técnicas

62 CAPÍTULO 5. Metodología

que por defecto vienen predeterminados por Weka para EM y en el caso de Simple KMeanssolo variamos el valor del número de clusters, ver Tablas 5.11 y 5.12 respectivamente.

Figura 5.16: Asignación de parámetros al algoritmo de Clustering

EMParámetros Valor-I 100-N -1-M 1.0E-6-S 100

Tabla 5.11: Valores de los parámetros de EM

SimpleKMeansParámetros Valor-N Número de clusters que

EM proponga-V False-A EuclideanDistance-I 500-S 10-O False

Tabla 5.12: Valores de los parámetros de SimpleKMeans

Page 81: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.2. Metodología experimental para algoritmos de Clustering 63

Paso 5. Siguiendo en la pestaña Cluster, ahora se da clic en el botón Start para poderejecutar el algoritmo de Clustering seleccionado, ya sea EM o SimpleKMeans, ver Figura5.17.

Figura 5.17: Ejecutar algoritmo de Clustering

Paso 6. Una vez que se ha ejecutado el algoritmo, procedemos a realizar lo que se describeen los siguientes incisos.

a) Dar clic derecho sobre la lista de resultados, como se muestra en la Figura 5.18 yseleccionar la opción Visualize cluster assignments.

Page 82: Preprocesamiento de Datos Termográficos por medio de Técnicas

64 CAPÍTULO 5. Metodología

Figura 5.18: Visualizar asignación de clusters

b) En seguida se abrirá una ventana como la que se muestra en la Figura 5.19, donde seda clic en el botón Save para generar y almacenar el conjunto de datos que contieneel resultado de los clusters que sugiere el algoritmo para cada instancia, el conjuntode datos que contiene la asignación de clusters de denominará como temporal.

Figura 5.19: Visualizar asignación de clusters

c) Ahora se hará uso del conjunto de datos original (termografía), de termografiaSC

Page 83: Preprocesamiento de Datos Termográficos por medio de Técnicas

5.2. Metodología experimental para algoritmos de Clustering 65

que se generó en el paso 1 y del conjunto de datos temporal. Primero vamos a tra-bajar con los conjuntos de datos termografía y temporal, aparentemente la únicadiferencia entre los dos conjuntos de datos es el valor de la clase, ya que termogra-fía posee como valor de clase “Enfermo” o“No_Enfermo”, mientras que temporalpresenta el valor del cluster que el algoritmo sugiere, por ejemplo “cluster0”, “clus-ter1”, etc. Lo que se hará es combinar los valores de la columna clase de termografíay temporal. Por ejemplo si en la primera instancia de termografía aparece el valorde “Enfermo” para la variable clase y en la misma instancia pero en el conjunto dedatos temporal aparece “cluster0”, se combinarán los valores para producir el valor“Enfermo-0”. Una vez que se hizo la combinación de valores para todas las instan-cias se guarda el nuevo conjunto de datos denominado como termografía´.

Paso 7. Ahora procedemos a aplicar técnicas de clasificación a termografía´ a través deWeka.

Page 84: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 85: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 6

Resultados y Discusión

En este capítulo se presentan los resultados logrados en los diferentes experimentos rea-lizados, así como también se presenta una discusión por cada apartado. Los resultados sedividen en dos etapas, en la primera etapa se muestran los resultados obtenidos a partir dela aplicación de técnicas de balanceo de clases y análisis de cúmulos en un conjunto dedatos desbalanceado, en la segunda etapa se muestran los resultados obtenidos a partir deun conjunto de datos balanceado.

Los resultados se muestran en tablas que contienen el porcentaje de precisión, sensibi-lidad y especificidad por cada algoritmo evaluado. Cuando se muestra un * al lado derechodel resultado numérico significa que dicho resultado es significativamente menor respecto alprimer resultado mostrado en la tabla, si se muestra una v el resultados es significativamen-te mejor respecto al primero. Por cada resultado de precisión, sensibilidad y especificidadse muestra entre paréntesis el valor de la desviación estándar. Los resultados de precisiónmarcados en negritas significan un mejor resultado respecto a los otros.

También se presentan unas curvas ROC que resumen el comportamiento de cada algo-ritmo de acuerdo a las clases que posee el conjunto de datos. Cada gráfica presenta unalinea punteada denominada como línea discriminante. Aquellas curvas de los algoritmosque se dibujen por encima de la línea discriminante representan un buen desempeño, sinembargo, entre más se acerque la curva a la esquina superior izquierda, o coordenada (0,1) representará un resultado perfecto. Si las curvas se sitúan exactamente a nivel de la líneadiscriminante o por debajo de ésta significa un mal desempeño, ver Figura 4.5.

6.1. Resultados primera etapa

En esta primera etapa se probaron los algoritmos SMOTE, CostSensitiveClassifier, Me-taCost, LibSVM, SMO, MTD, EM y SimpleKMeans con el conjunto de datos llamadotermografía, considerando 18 variables, es decir, el total de las variables.

67

Page 86: Preprocesamiento de Datos Termográficos por medio de Técnicas

68 CAPÍTULO 6. Resultados y Discusión

6.1.1. Resultados de SMOTE

SMOTE se aplicó con los parámetros descritos en la Tabla 5.9, donde se fue variandola cantidad de vecinos más cercanos, produciendo así tres variantes del conjunto de datostermografía. Las tres variantes de termografía se balancearon se tal manera que en la clase“Enfermo” y “No_Enfermo” se tuvieran 77 instancias, haciendo un total de 154 instancias.Cada variante de termografía fue expuesta a un proceso de clasificación a través de losalgoritmos Naive Bayes (NB), J48, Hiil-Climber (HC), con los parámetros descritos en lasección 5.1.1, de los que se obtuvieron los resultados en precisión, sensibilidad y especifi-cidad presentados en la Tabla 6.1.

ClasificadoresVariante de termogra-fía por SMOTE

Desempeño NB J48 HC

termografía con -K = 1Precisión 76.62 %(±±±11.76) 74.41 %(±11.36) 63.86 %(±10.14)*Sensibilidad 71 %(±±±17.00) 70 %(±19.00) 50 %(±18.00) *Especificidad 82 %(±±±13.00) 79 %(±14.00) 78 %(±14.00)

termografía con -K = 5Precisión 81.52 %(±±±10.43) 75.14 %(±11.36) 68.60 %(±10.72)*Sensibilidad 77 %(±±±15.00) 75 %(±17.00) 58 %(±16.00) *Especificidad 86 %(±±±14.00) 75 %(±15.00) * 79 %(±15.00)

termografía con -K = 10Precisión 82.23 %(±±±10.42) 80.38 %(±10.43) 80.92 %(±9.49)Sensibilidad 81 %(±±±15.00) 81 %(±15.00) 81 %(±15.00)Especificidad 84 %(±±±14.00) 79 %(±15.00) 80 %(±15.00)

Tabla 6.1: Resultados de precisión, sensibilidad y especificidad de tres variantes de termo-grafía tratada con SMOTE.

En las Figuras 6.1, 6.2 y 6.3 se presentan las curvas ROC por cada clase de cada varian-te del conjunto de datos termografía evaluadas por medio de los algoritmos de clasificaciónNaive Bayes, J48 y Hill-Climber.

Page 87: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 69

Figura 6.1: Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termografía-K = 1

Figura 6.2: Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termografía-K = 5

Page 88: Preprocesamiento de Datos Termográficos por medio de Técnicas

70 CAPÍTULO 6. Resultados y Discusión

Figura 6.3: Curvas ROC para la clase Enfermo y No_Enfermo de la variante de termografía-K = 10

En los Apéndices A.1, A.2, A.3, A.4, A.5 y A.6 se muestran los árboles de deci-sión y las redes bayesianas producidas por J48 y Hill-Climber a partir de las variantes determografía balanceadas con SMOTE con 1, 5 y 10 vecinos más cercanos respectivamente.En el Apéndice A.1 se presentan los nombres cortos de las variables que se usan en lasrepresentaciones gráficas de las redes bayesianas y los árboles de decisión.

6.1.1.1. Discusión

Con el uso de SMOTE se generaron más instancias artificiales en la clase minoritaria,etiquetada como clase “No_Enfermo”, produciendo un balanceo en la distribución de lasinstancias en las dos clases que posee el conjunto de datos. Al aplicar los clasificadoresNaive Bayes, J48 y Hill-Climber sobre el conjunto de datos balanceado, no se observa unamejora significativa en los valores de precisión y sensibilidad. Sin embargo, en el valor dela especificidad se logra un 84 % dado que con datos desbalanceados se reporta un 0 %.

En las tres variantes del conjunto de datos termografía, balanceadas con SMOTE, condiferentes valores para los vecinos más cercanos, se logra ver una disminución en la distan-cia entre los valores de sensibilidad y especificidad. Dicha disminución puede ser ocasiona-da por el balanceo en la distribución de la instancias de ambas clases del conjunto de datos.Sin embargo los valores obtenidos en precisión, sensibilidad y especificidad no se puedenconsiderar como resultados óptimos aceptables para diagnosticar cáncer de mama a travésde datos termográficos.

Debido a que SMOTE trabaja exclusivamente con la clase minoritaria y el número deinstancias originales que se tienen en la clase minoritaria es relativamente pequeño. SMO-TE tiene la desventaja de trabajar con un número limitado de instancias y tiende a duplicardichas instancias, provocando un limitado desempeño de los clasificadores. En los resulta-

Page 89: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 71

dos reportados se hacen visibles los valores altos en la desviación estándar, traducido comouna alta dispersión de los datos.

A partir de este experimento, se generaron tres redes bayesianas y tres árboles de deci-sión por cada variante de termografía a partir del uso de Hill-Climber y J48 respectivamente.

En la red bayesiana, A.4, generada a partir de los datos donde intervino SMOTE con1 vecino más cercano, se puede apreciar que solo tres variables se encuentran conectadasdirectamente con la variable clase, de las cuales sólo una forma parte del conjunto de varia-bles que conforman el score termográfico. En el caso de la red bayeasiana generada a partirde la variante con 5 vecinos más cercanos A.5, seis variables se conectan directamente conla variable clase, pero ninguna de las variables forma parte de las variables usadas para for-mar el score termográfico. Para la red bayesiana de la variante con 10 vecinos más cercanos,A.6, se conectan cinco variables directamente a la variable clase de las cuales se distinguesólo una variable de las que se usa para formar el score termográfico.

En el caso de los árboles de decisión producidos por el clasificador J48, para la variantecon 1 vecino más cercano, el árbol de decisión usó 9 variables de las cuales, cuatro variablesson consideradas para la formación del score. En la variante con 5 vecinos, también haceuso de 9 variables, de las cuales sólo 5 se consideran en la formación del score. En el casode la variante con 10 vecinos más cercanos, el árbol hace uso de 8 variables de las cualessólo tres se condieran para la formación del score termográfico.

Tanto para los árboles de decisión como para las redes bayesianas, si sólo se tomaranlas variables que utilizaron en sus respectivas representaciones gráficas, los resultados deprecisión, sensibilidad y especificidad serían muy cercanos a los obtenidos considerandolas 18 variables del conjunto de datos balanceado con SMOTE.

SMOTE se puede considerar con un método práctico para la generación de nuevas ins-tancias artificiales. Sin embargo si no se tiene una muestra representativa de instancias dela clase minoritaria, a pesar de obtener un balanceo en la distribución de instancias en elconjunto de datos, no se logra un desempeño aceptable por parte de los clasificadores, dadoque las nuevas instancias generadas pueden provenir de una muestra pobre en diversidad,como es el caso de nuestro conjunto de datos.

Page 90: Preprocesamiento de Datos Termográficos por medio de Técnicas

72 CAPÍTULO 6. Resultados y Discusión

6.1.2. Resultados de CostSensitiveClassifier y MetaCost

El conjunto de datos termografía es evaluado a través de CostSenstiveClassifier y Me-taCost combinados con Naive Bayes, J48 y Hill-Climber, ver Tabla 5.3. En el caso de losalgoritmos cost-sensitive no se incrementa el número de instancias, por lo tanto, para estaprueba se usaron los 98 casos del conjunto de datos. En la Tabla 6.2 se presentan los re-sultados obtenidos por cada combinación de algoritmos y por cada matriz de costos que fueusada.

Combinaciones de algoritmos Cost-Sensitiverc± Desempeño CS-J48 CS-NB CS-HC MC-J48 MC-NB MC-HC

2Precisión 78.56 %(±3.00) 74.81 %(±10.75) 78.36 %(±3.52) 78.26 %(±3.62) 74.73 %(±10.90) 78.56 %(±±±3.00)Sensibilidad 100 %(±±±0.00) 88 %(±11.00) * 100 %(±±±0.00) 100 %(±±±0.00) 89 %(±12.00) * 100 %(±±±0.00)Especificidad 0 %(±0.00) 27 %(±±±28.00)v 0 %(±0.00) 0 %(±0.00) 22 %(±±±28.00)v 0 %(±0.00)

5Precisión 78.56 %(±±±3.00) 74.51 %(±8.57) 78.56 %(±±±3.00) 78.56 %(±±±3.00) 75.96 %(±9.43) 78.56 %(±±±3.00)Sensibilidad 100 %(±±±0.00) 91 %(±10.00) * 100 %(±±±0.00) 100 %(±±±0.00) 93 %(±10.00) 100 %(±±±0.00)Especificidad 0 %(±0.00) 12 %(±±±21.00) 0 %(±0.00) 0 %(±0.00) 15 %(±±±24.00) 0 %(±0.00)

10Precisión 78.56 %(±±±3.00) 76.18 %(±7.10) 78.56 %(±±±3.00) 78.56 %(±±±3.00) 75.74 %(±8.39) 78.56 %(±±±3.00)Sensibilidad 100 %(±±±0.00) 95 %(±8.00) 100 %(±±±0.00) 100 %(±±±0.00) 94 %(±9.00) * 100 %(±±±0.00)Especificidad 0 %(±0.00) 8 %(±±±18.00) 0 %(±0.00) 0 %(±0.00) 10 %(±±±19.00) 0 %(±0.00)

20Precisión 78.56 %(±±±3.00) 76.39 %(±6.38) 78.56 %(±±±3.00) 78.56 %(±±±3.00) 75.46 %(±7.09) 78.56 %(±±±3.00)Sensibilidad 100 %(±±±0.00) 96 %(±7.00) 100 %(±±±0.00) 100 %(±±±0.00) 95 %(±8.00) 100 %(±±±0.00)Especificidad 0 %(±0.00) 5 %(±±±15.00) 0 %(±0.00) 0 %(±0.00) 4 %(±±±13.00) 0 %(±0.00)

50Precisión 78.56 %(±±±3.00) 76.38 %(±4.92) 78.56 %(±±±3.00) 78.56 %(±±±3.00) 76.91 %(±5.58) 78.56 %(±±±3.00)Sensibilidad 100 %(±±±0.00) 97 %(±5.00) 100 %(±±±0.00) 100 %(±±±0.00) 98 %(±7.00) 100 %(±±±0.00)Especificidad 0 %(±0.00) 0 %(±0.00) 0 %(±0.00) 0 %(±0.00) 1 %(±±±7.00) 0 %(±0.00)

Tabla 6.2: Resultados de precisión, sensibilidad y especificidad de termografía por mediode algoritmos Cost-Sensitive.

En las Figuras de la 6.4 a la 6.8 se presentan las curvas ROC por cada clase del conjuntode datos, donde se evaluaron las seis combinaciones de algoritmos de tipo cost-sensitiveprobados con una matriz de confusión con rc± = 2, 5, 10, 20 y 50 respectivamente.

6.1.2.1. Discusión

CostSensitiveClassifier y MetaCost, hacen uso de Naive Bayes, J48 y Hill-Climber co-mo clasificadores base, tratan de combatir el desbalanceo de clases del conjunto de datostermografía a través de la aplicación de diferentes matrices de costos. En este experimentono se generan instancias artificiales como en el caso de SMOTE, más bien se busca encon-trar una mejor distribución de las instancias existentes a través de los costos asignados a lasdiferentes matrices de costos utilizadas.

En los resultados reportados en la Tabla 6.2, se puede observar que tanto CostSensiti-veClassifier como MetaCost con J48 y Hill-Climber como clasificadores base se logra unaprecisión de de 78.56 %, una sensibilidad de 100 % y una especificidad nula del 0 % concualquiera de las matrices utilizadas. Sin embargo, cuando se hace uso de Naive Bayes co-mo clasificador base, se logra un incremento, estadísticamente significativo, en el porcentaje

Page 91: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 73

Figura 6.4: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc± = 2

Figura 6.5: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc± = 5

de la especificidad, exclusivamente con una matriz de rc± = 2. A partir del uso de la matrizde costo de rc± = 5 a la de rc± = 50 los resultados en precisión, sensibilidad y especificidadson prácticamente similares ya que no presentan diferencias significativas entre el uso deuna matriz a otra.

Con la matriz de rc± = 2 y Naive Bayes como clasificador base se logran mejores resul-tados en el porcentaje de especificidad, sin embargo se oberva una disminución significativaen la sensibilidad en comparación con el resto de los resultados. Se puede decir que Nai-ve Bayes con MetaCost o CostSensitiveClassifier trabajan mejor con matrices de rc máspequeño para balancear la distribución de datos termográficos. Mientras que J48 y Hill-Climber son poco sensibles a los costos, es decir, tienen el mismo nivel de predicción dada

Page 92: Preprocesamiento de Datos Termográficos por medio de Técnicas

74 CAPÍTULO 6. Resultados y Discusión

Figura 6.6: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc± = 10

Figura 6.7: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc± = 20

una matríz de costos bajos o altos, para el caso de nuestros datos termográficos.

Con el uso de matrices de costos para balancear la distribución de las instancias en elconjunto de datos termografía, no se logran mejorar los resultados de precisión y sensibi-lidad. En el caso de la especificidad, se logra un ligero incremento en comparación con laespecificidad reportada por Ameca [29], para el mismo conjunto de datos. Sin embargo losresultados siguen siendo bajos respecto a lo esperado en una predicción de cáncer de mamacon datos termográficos.

En las gráficas de las curvas ROC, se puede observar que con el clasificador Naive Ba-yes como algoritmo base con MetaCost y CostSensitiveClassifier, las curvas se localizan

Page 93: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 75

Figura 6.8: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con rc± = 50

por encima de la línea discriminante pero lejanas del punto ideal, mientras que con J48 yHill-Climber como clasificadores base, las curvas se encuentran por debajo de la línea dis-crimante mostrando un mal desempeño.

Las técnicas basadas en cost-sensitive pueden resultar una atractiva opción para el ba-lanceo de clases. Sin embargo, la asignación de los valores para la matriz de costos que seutilice depende mucho del conjunto de datos a balancear. En nuestro caso, los valores usa-dos en las diferentes matrices utilizadas no ayudaron a mejorar los resultados de precisión,sensibilidad y especificidad de los datos termográficos existentes.

6.1.3. Resultados de LibSVM y SMO

LibSVM y SMO son los dos algoritmos basados en Kernel que se probaron en esteproyecto con el conjunto de datos termografía. En la Tabla 6.3 se presentan los resultadosobtenidos al evaluar LibSVM y SMO.

Algoritmos basados en KernelDesempeño LibSVM SMOPrecisión 78.56 %(±±±3.00) 76.17 %(±8.70)Sensibilidad 100 %(±±±0.00) 93 %(±10.00) *Especificidad 0 %(±0.00) 14 %(±±±22.00)

Tabla 6.3: Resultados de precisión, sensibilidad y especificidad de termografía por mediode algoritmos basados en Kernel

En la Figura 6.9 se muestran las curvas ROC obtenidas para la clase Enfermo y No_Enfermode termografía al evaluar LibSVM y SMO.

Page 94: Preprocesamiento de Datos Termográficos por medio de Técnicas

76 CAPÍTULO 6. Resultados y Discusión

Figura 6.9: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con algorit-mos basados en Kernel

6.1.3.1. Discusión

LibSVM y SMO no generan instancias artificiales, tratan de encontrar una mejor distri-bución de las instancias entre las clases a partir de la función kernel que manejan. En losresultados presentados en la Tabla 6.3, la precisión entre LibSVM y SMO no es significati-va, ambos algoritmos son capaces de detectar con mayor facilidad los casos que pertenecena la clase “Enfermo” pero incapaces para reconocer aquellos casos donde se sabe que noestá presente la enfermedad. Debido a que la muestra de datos de la clase “No_Enfermo”resulta ser poco numerosa y representativa.

En las gráficas de las curvas ROC que se muestran en la Figura 6.9, se puede observarun mal desempeño para el algoritmo SMO, ya que se encuentra exactamente en la líneadiscriminante, en el caso de LibSVM, la curva ROC se localiza ligeramente por encima dela línea discriminante, pero muy lejana al punto óptimo.

Tanto LibSVM como SMO no lograron obtener una buena distribución entre las instan-cias existentes, nuevamente surge a la vista la complejidad para clasificar correctamente lasinstancias de la clase “No_Enfermo”. Dicha complejidad puede ser por la reducida muestrade datos termográficos de dicha clase y por la estrecha relación entre valores entre una clasey otra.

6.1.4. Resultados MTD

Como parte de los métodos adicionales para balanceo de clases que se han propuestoen la literatura especializada y especialmente para el tratamiento de conjuntos de datospequeños se encuentra MTD. MTD es evaluado es este proyecto con el objeto de generarinstancias artificiales a partir de las 98 instancias que ya se tienen. Se crearon 5 conjuntos

Page 95: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 77

de datos con 200 instancias cada uno, cada conjunto de datos fue tomado como conjunto dedatos de prueba para ser evaluado contra el conjunto de datos termografía en un proceso declasificación. En la Tabla 6.4 se muestran los resultados obtenidos, en esta tabla se presentael dato base que representa el tamaño de la muestra utilizada para generar cada conjunto deinstancias artificiales.

Algoritmos de clasificaciónBase Desempeño J48 NB HC

10Precisión 50 % 47.5 % 50 %Sensibilidad 100 %(±±±0.00) 49 %(±10.00) 100 %(±±±0.00)Especificidad 0 %(±0.00) 46 %(±±±10.00) 0 %(±0.00)

30Precisión 50 % 63.5 % 50 %Sensibilidad 99 %(±2.00) 81 %(±8.00) 100 %(±±±0.00)Especificidad 1 %(±3.00) 46 %(±±±10.00) 0 %(±0.00)

50Precisión 50 % 63 % 50 %Sensibilidad 100 %(±±±0.00) 85 %(±7.00) 100 %(±±±0.00)Especificidad 1 %(±3.00) 41 %(±±±10.00) 0 %(±0.00)

70Precisión 50 % 67.5 % 50 %Sensibilidad 100 %(±±±0.00) 95 %(±4.00) 100 %(±±±0.00)Especificidad 1 %(±3.00) 40 %(±±±10.00) 0 %(±0.00)

90Precisión 50 % 76 % 50 %Sensibilidad 100 %(±0.00) 100 %(±0.00) 100 %(±0.00)Especificidad 0 %(±0.00) 68 %(±8.00) 0 %(±0.00)

Tabla 6.4: Resultados de precisión, sensibilidad y especificidad de termografía tratada conMTD

En la Figuras de la 6.10 a la 6.14 se muestran las curvas ROC obtenidas por cada clasede termografía con diferentes valores para la base de la muestra.

Figura 6.10: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base 10

Page 96: Preprocesamiento de Datos Termográficos por medio de Técnicas

78 CAPÍTULO 6. Resultados y Discusión

Figura 6.11: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base 30

Figura 6.12: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base 50

Page 97: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 79

Figura 6.13: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base 70

Figura 6.14: Curvas ROC para la clase Enfermo y No_Enfermo de termografía con base 90

6.1.4.1. Discusión

Con MTD se generaron nuevas instancias artificiales, a diferencia de SMOTE, MTDse caracteriza por trabajar tanto con la clase mayoritaria como la minoritaria. Se crea-ron muestras de instancias a partir de una submuestra de datos de la clase “Enfermo” y“No_Enfermo” del conjunto de datos termográficos. Para las submuestras se tomaron dife-rentes cantidades base para generar las nuevas instancias artificiales.

Cuando se aplicaron los clasificadores Naive Bayes, J48 y Hill-Climber a las nuevas ins-tancias artificiales generadas con diferentes valores base, se puede observar una precisión

Page 98: Preprocesamiento de Datos Termográficos por medio de Técnicas

80 CAPÍTULO 6. Resultados y Discusión

del 50 % en la mayoría de los experimentos. La instancias de la clase “Enfermo” siguensiendo las de mayor facilidad de predicción, mientras que las de la clase “No_Enfermo”siguen siendo un problema.

Dado que MTD trabaja bajo el cálculo de un límite superior y un límite inferior paraasignar los valores a las nuevas instancias artificiales a partir de los valores de las instanciasexistentes. Al generar nuevas instancias de la clase minoritaria, se trabaja bajo un rango devalores reducido y poco representativo, por lo tanto las nuevas instancias tienden a tener unnivel de predicción bajo.

En las curvas ROC se logra ver que el algoritmo que presenta un mejor desempeño a pe-sar de no reportar una precisión, sensibilidad y especificidad óptimas, es el algoritmo NaiveBayes, especialmente cuando la base de la submuestra para generar instancias artificiales esmás cercana a la totalidad de instancias del conjunto de datos.

6.1.5. Resultados de AutoClass y SimpleKMeans

AutoClass (EM) y SimpleKMeans son los algoritmos de clustering que se probaron eneste proyecto. Dichos algoritmos se usaron para procesar el valor de la variable clase y asíobtener subclases del conjunto de datos. Cuando se usó el algoritmo AutoClass se combinóel valor de la clase Enfermo y No_Enfermo con los clusters sugeridos, obteniendo las com-binaciones que se muestran en la Tabla 6.5. En el caso de SimpleKMeans se obtuvieron losvalores que se muestran en la Tabla 6.6.

Valor de variable clase No. instancias asignadasEnfermo-1 53Enfermo-0 24No_Enfermo-0 10No_Enfermo-1 11

Tabla 6.5: Valores de clase con AutoClass

Valor de variable clase No. instancias asignadasEnfermo-0 54Enfermo-1 23No_Enfermo-0 18No_Enfermo-1 3

Tabla 6.6: Valores de clase con SimpleKMeans

Debido a que el valor de la clase del conjunto de datos presenta cambios, se obtienendos variantes del conjunto de datos termografía, la primera es la que fue procesada porAutoClass y la segunda por SimpleKMeans. Las dos variantes fueron expuestas a un pro-ceso de clasificación mediante J48, NB y HC, los resultados que se obtuvieron de dichaclasificación se presentan en la Tabla 6.7.

Page 99: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.1. Resultados primera etapa 81

Algoritmos de clasificaciónVariante termo-grafía

Desempeño J48 NB HC

AutoClassPrecisión 71.76 %(±±±11.02) 68.58 %(±12.83) 64.62 %(±11.15)Sensibilidad 93 %(±±±11.00) 91 %(±14.00) 91 %(±13.00)Especificidad 77 %(±±±09.00) 59 %(±19.00) * 63 %(±19.00) *

SimpleKMeansPrecisión 65.34 %(±14.99) 70.06 %(±±±11.34) 55.13 %(±4.79) *Sensibilidad 77 %(±20.00) 85 %(±16.00) 100 %(±±±00.00) vEspecificidad 67 %(±23.00) 65 %(±±±18.00) 0 %(±00.00) *

Tabla 6.7: Resultados de precisión, sensibilidad y especificidad por cada variante de termo-grafía procesada por algoritmos de clustering

En la Figura 6.15 se muestran las curvas ROC por cada clase de la variante de termo-grafía procesada con AutoClass.

Figura 6.15: Curvas ROC para la clase Enfermo y No_Enfermo de termografía procesadacon AutoClass

Page 100: Preprocesamiento de Datos Termográficos por medio de Técnicas

82 CAPÍTULO 6. Resultados y Discusión

En la Figura 6.16 se muestran las curvas ROC por cada clase de la variante de termo-grafía procesada con SimpleKMeans.

Figura 6.16: Curvas ROC para la clase Enfermo y No_Enfermo de termografía procesadacon SimpleKMeans

6.1.5.1. Discusión

AutoClass y SimpleKMeans no se usaron para balancear clases, sino para el prepro-cesamiento del valor de las clases del conjunto de datos termográficos, con el objetivo degenerar subclases que ayuden a encontrar una mejor distribución de las instancias. TantoAutoClass como SimpleKMeans sugieren dividir la clase “Enfermo” y “No_Enfermo” endos subgrupos, por lo tanto las dos clases originales se convierten en cuatro.

Al evaluar el conjunto de datos preprocesado con AutoClass, se puede observar que elalgoritmo J48 reporta un mejor desempeño en los porcentajes de precisión y sensibilidad

Page 101: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 83

respecto a Naive Bayes y Hill-Climber. En el caso de la especificidad se logra un incremen-to en el porcentaje respecto al que reporta Ameca [29].

Cuando se preprocesó el conjunto de datos con SimpleKMeans, después del proceso declasificación, el algoritmo que reporta un mejor desempeño es Naive Bayes, a pesar de nomejorar la precisión y sensibilidad reportada por Ameca [29], se observa un incremento enla especificidad, aunque el valor de desviación estándar es relativamente alto.

A través de la incorporación de nuevos valores para la variable clase preprocesada conAutoClass y SimpleKMeans se logra un incremento en los porcentajes de especificidad,pero no es posible considerar dichos porcentajes como valores aceptables. El preprocesa-miento del conjunto de datos a través de técnicas de clustering ayuda a incrementar lige-ramente el porcentaje de especificidad, sin embargo al incrementar el número de clases setorna complicado clasificar un nuevo caso al tener cuatro posibles clases en lugar de dos.

En las curvas ROC se observa que, en el caso de las clases que surgen a partir de laclase “Enfermo”, las curvas ROC tienden a acercarse al punto óptimo, por otra parte lasclases que surgen de la clase “No_Enfermo”, sólo en una de las dos clases es posible ver lacercanía de las curvas al punto óptimo, aunque sigue siendo un desempeño bajo.

Durante esta primera etapa de resultados y ante la variedad de métodos con los quese experimentó para tratar con el problema de desbalanceo de clases, se puede decir queSMOTE fue uno de los métodos que provocó un mejor desempeño de los algoritmos de cla-sificación evaluados. Sin embargo, debido a que la muestra de datos de la clase minoritariaresulta ser poco representativa resulta complejo incrementar el porcentaje de especificidada pesar de tener el mismo número de instancias generadas a través de SMOTE. Mientras lamuestra de datos de la clase minoritaria siga siendo reducida en el número de instancias encomparación con la clase mayoritaria, no será posible mejorar los resultados reportados porAmeca [29].

Con el uso de clustering se logra un ligero incremento en la especificidad, sin embargose tiene la desventaja se que también se incrementa el número de clases, por lo tanto elproblema de clasificación se torna complejo.

6.2. Resultados segunda etapa

En la primera etapa de resultados se hace uso del conjunto de datos termografía quecuenta exclusivamente con 77 instancias de la clase “Enfermo” y 21 de la clase “No_Enfermo”.Sin embargo, en una segunda etapa se incorporan nuevos casos, en la Seccion 4.2 se des-cribe como se obtuvieron los nuevos casos.

Ante la presencia de las nuevos casos se tomó la decisión de formar un nuevo conjuntode datos, dicho conjunto de datos se compone por las 77 instancias de la clase Enfermo determografía y las 77 nuevas instancias de tipo No_Enfermo, produciendo así el conjunto de

Page 102: Preprocesamiento de Datos Termográficos por medio de Técnicas

84 CAPÍTULO 6. Resultados y Discusión

datos denominado como termografíaB.

Debido a que termografíaB posee la característica de ser un conjunto de datos balan-ceado en el número de instancias por cada clase se procedió a probar dicho conjunto dedatos sólo con CostSensitiveClassifier, MetaCost, LibSVM, SMO, AutoClass y SimpleK-Means, ya que son algoritmos que no generan instancias adicionales como SMOTE o MTD.

La evaluación de termografíaB se hace con el uso de la totalidad de las variables y tam-bién se genera una variante del conjunto de datos que contiene las 8 variables del scoretermográfico (variables 1 a 8, Tabla cap4:tab:datos), variable score que contiene la sumade las 8 variables del score y la variable clase, a la que llamaremos termografíaScore. Lavariante termografíaScore se evalúa con el fin de verificar la calidad de predicción conside-rando las variables que intervienen en la formación del score termográfico.

6.2.1. Resultados de CostSensitiveClassifier y MetaCost

En la Tabla 6.8 se presentan los resultados obtenidos por cada combinación de Cos-tSensitiveClassifier y MetaCost aplicadas a termografíaB.

Combinaciones de algoritmos Cost-Sensitiverc± Desempeño CS-J48 CS-NB CS-HC MC-J48 MC-NB MC-HC

2Precisión 91.09 %(±6.23) 97.42 %(±3.88)v 98.39 %(±±±3.32)v 93.20 %(±6.39) 97.43 %(±3.86)v 98.13 %(±3.43)vSensibilidad 93 %(±9.00) 97 %(±6.00) 98 %(±±±5.00) 92 %(±10.00) 97 %(±6.00) 98 %(±4.00)Especificidad 89 %(±12.00) 98 %(±4.00) v 99 %(±±±4.00)v 94 %(±10.00) 98 %(±5.00) v 98 %(±5.00) v

5Precisión 87.37 %(±7.99) 97.29 %(±4.01)v 98.52 %(±±±3.00)v 91.16 %(±7.73) 97.43 %(±3.86)v 98.20 %(±3.52)vSensibilidad 94 %(±9.00) 96 %(±7.00) 98 %(±±±5.00) 92 %(±10.00) 97 %(±6.00) 98 %(±4.00)Especificidad 81 %(±15.00) 98 %(±4.00) v 99 %(±±±3.00) v 90 %(±12.00) 98 %(±5.00) v 98 %(±5.00) v

10Precisión 84.71 %(±7.30) 97.42 %(±3.89)v 98.65 %(±±±2.91)v 89.98 %(±7.39) v 97.55 %(±3.73)v 98.14 %(±3.54)vSensibilidad 98 %(±8.00) 96 %(±7.00) 98 %(±±±5.00) 94 %(±9.00) 97 %(±6.00) 98 %(±4.00)Especificidad 72 %(±14.00) 99 %(±4.00) v 99 %(±±±3.00) v 86 %(±14.00) v 98 %(±5.00) v 98 %(±5.00) v

20Precisión 84.71 %(±7.25) 97.42 %(±3.89)v 98.78 %(±±±2.69)v 89.90 %(±7.38) v 97.42 %(±3.76)v 98.00 %(±3.72)vSensibilidad 99 %(±6.00) 96 %(±7.00) 98 %(±±±5.00) 94 %(±9.00) 97 %(±6.00) 98 %(±4.00)Especificidad 71 %(±14.00) 99 %(±4.00) v 100 %(±±±2.00) v 86 %(±13.00) v 98 %(±5.00) v 98 %(±5.00) v

50Precisión 51.18 %(±7.02) 97.48 %(±3.88)v 98.77 %(±±±2.54)v 73.57 %(±19.66)v 97.49 %(±3.75)v 97.94 %(±3.74)vSensibilidad 99 %(±4.00) 96 %(±7.00) 98 %(±±±5.00) 97 %(±7.00) 97 %(±5.00) 98 %(±4.00)Especificidad 3 %(±16.00) 99 %(±4.00) v 100 %(±±±1.00)v 50 %(±42.00) v 98 %(±5.00) v 98 %(±6.00) v

Tabla 6.8: Resultados de precisión, sensibilidad y especificidad de termografíaB por mediode algoritmos Cost-Sensitive

En la Tabla 6.9 se presentan los resultados obtenidos por cada combinación de algorit-mos cost-sensitive aplicadas a termografíaScore que contiene exclusivamente las variablesdel score termográfico.

Page 103: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 85

Combinaciones de algoritmos Cost-Sensitiverc± Desempeño CS-J48 CS-NB CS-HC MC-J48 MC-NB MC-HC

2Precisión 86.92 %(±8.20) 97.16 %(±±±4.15)v 96.51 %(±4.44)v 89.27 %(±7.05) 96.18 %(±4.61)v 96.11 %(±4.72)vSensibilidad 91 %(±9.00) 97 %(±±±7.00) 96 %(±7.00) 86 %(±12.00) 95 %(±7.00) 95 %(±7.00)Especificidad 83 %(±17.00) 98 %(±±±5.00)v 97 %(±6.00) v 93 %(±11.00) 97 %(±6.00) v 97 %(±6.00) v

5Precisión 85.10 %(±7.05) 97.15 %(±±±4.05)v 96.52 %(±4.33)v 84.95 %(±7.20) 96.37 %(±4.65)v 95.73 %(±5.03)vSensibilidad 100 %(±±±0.00) 97 %(±6.00) 96 %(±7.00) 92 %(±11.00) * 96 %(±7.00) 95 %(±7.00)Especificidad 70 %(±14.00) 98 %(±±±5.00) v 97 %(±6.00) v 78 %(±17.00) 97 %(±6.00) v 96 %(±7.00) v

10Precisión 85.10 %(±7.05) 96.96 %(±±±4.06)v 96.39 %(±4.41)v 83.60 %(±6.95) 96.70 %(±4.56)v 95.86 %(±4.89)vSensibilidad 100 %(±±±0.00) 97 %(±6.00) 96 %(±6.00) 96 %(±9.00) 97 %(±6.00) 96 %(±7.00)Especificidad 70 %(±14.00) 97 %(±±±6.00) v 97 %(±6.00) v 71 %(±15.00) 96 %(±6.00) v 96 %(±8.00) v

20Precisión 85.10 %(±7.05) 96.26 %(±4.70)v 96.59 %(±4.42)v 75.24 %(±13.71) 96.77 %(±±±4.56)v 95.67 %(±5.26)vSensibilidad 100 %(±±±0.00) 96 %(±7.00) 96 %(±6.00) 99 %(±3.00) 97 %(±6.00) 97 %(±7.00)Especificidad 70 %(±14.00) 97 %(±±±6.00) v 97 %(±6.00) v 51 %(±28.00) 96 %(±6.00) v 95 %(±8.00) v

50Precisión 50.40 %(±5.04) 95.72 %(±4.74)v 96.27 %(±±±4.59)v 55.05 %(±11.80) 96.18 %(±4.87)v 94.70 %(±6.38)vSensibilidad 100 %(±±±0.00) 97 %(±6.00) 97 %(±6.00) 100 %(±1.00) 97 %(±6.00) 98 %(±5.00)Especificidad 1 %(±9.00) 95 %(±7.00) v 96 %(±±±7.00) v 10 %(±23.00) 95 %(±7.00) v 92 %(±12.00) v

Tabla 6.9: Resultados de precisión, sensibilidad y especificidad de termografíaScore pormedio de algoritmos Cost-Sensitive

En las Figuras de la 6.17 a la 6.21 se presentan las curvas ROC por cada clase delconjunto de datos termografíaB con todas sus variables, donde se evaluaron las seis com-binaciones de algoritmos de tipo cost-sensitive probados con una matriz de confusión conrc± = 2, 5, 10, 20 y 50 respectivamente.

Figura 6.17: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc± =2

Page 104: Preprocesamiento de Datos Termográficos por medio de Técnicas

86 CAPÍTULO 6. Resultados y Discusión

Figura 6.18: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc± =5

Figura 6.19: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc± =10

Page 105: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 87

Figura 6.20: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc± =20

Figura 6.21: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB con rc± =50

En las Figuras de la 6.22 a la 6.26 se presentan las curvas ROC por cada clase determografíaScore que considera exclusivamente las variables del score termográfico, dondese evaluaron las seis combinaciones de algoritmos de tipo cost-sensitive probados con unamatriz de confusión con rc± = 2, 5, 10, 20 y 50 respectivamente.

Page 106: Preprocesamiento de Datos Termográficos por medio de Técnicas

88 CAPÍTULO 6. Resultados y Discusión

Figura 6.22: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 2

Figura 6.23: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 5

Page 107: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 89

Figura 6.24: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 10

Figura 6.25: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 20

Page 108: Preprocesamiento de Datos Termográficos por medio de Técnicas

90 CAPÍTULO 6. Resultados y Discusión

Figura 6.26: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore conrc± = 50

6.2.1.1. Discusión

En esta segunda etapa se incorporan nuevos casos, especialmente a la clase “No_Enfermo”,produciendo un balance natural en la distribución del número de instancias entre cada clase.Aprovechando el balance natural de las clases, se evalúa el conjunto de datos, ahora con lasnuevas instancias.

Resulta interesante observar que al aplicar los métodos basados en cost-sensitive con susdiferentes matrices de costo, los resultados de precisión, sensibilidad y especificidad mejo-ran considerablemente. Cuando se hace uso de los algoritmos Naive Bayes y Hill-Climbercomo clasificadores base tanto con MetaCost como con CostSensitiveClassifier se logranresultados con valores muy cercanos al óptimo.

En el caso del conjunto de datos termografía que se evaluó en la primera etapa, se pue-de observar un sesgo hacia la clase “Enfermo” ya que inicialmente los casos de interés quemás se tomaron en cuenta fueron aquellos donde se sabía que la enfermedad estaba presen-te. Ante la incorporación de más casos de la clase “No_Enfermo” el sesgo hacia una solaclase es elimina y es posible incrementar los resultados de predicción en forma positiva paraambas clases.

A partir de termografíaB se genera termografíaScore que se diferencia por tener unmenor número de variables para predecir si un paciente tiene o no la enfermedad. Con unmenor número de variables también podemos observar resultados aceptables en precisión,sensibilidad y especificidad a través de Naive Bayes y Hill-Climber como algoritmos basecon MetaCost y CostSensitiveClassifier.

Cuando se usa J48 como clasificador base tanto con MetaCost como con CostSensitive-

Page 109: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 91

Classifier, es preferible que el rc± de la matriz de costo sea lo menor posible para lograr unbuen desempeño.

6.2.2. Resultados de LibSVM y SMO

Para el caso de los algoritmos LibSVM y SMO se hace uso de termografíaB que contie-ne todas las variables, así como también de termografíaScore. En la Tabla 6.10 se presentanlos resultados obtenidos para termografíaB y en la Tabla 6.11 se presentan los resultadosobtenidos para termografíaScore.

Algoritmos basados en KernelDesempeño LibSVM SMOPrecisión 100.00 %(±±±0.00) 97.54 %(±3.88)Sensibilidad 100 %(±±±0.00) 98 %(±6.00)Especificidad 100 %(±±±0.00) 97 %(±6.00)

Tabla 6.10: Resultados de precisión, sensibilidad y especificidad de termografíaB por mediode algoritmos basados en Kernel

Algoritmos basados en KernelDesempeño LibSVM SMOPrecisión 99.36 %(±±±1.94) 95.97 %(±5.06)Sensibilidad 99 %(±±±4.00) 95 %(±9.00)Especificidad 100 %(±±±0.00) 97 %(±7.00)

Tabla 6.11: Resultados de precisión, sensibilidad y especificidad de termografíaScore pormedio de algoritmos basados en Kernel

En la Figura 6.27 se presentan las curvas ROC obtenidas de los algoritmos LibSVM ySMO para el conjunto de datos termografíaB.

Page 110: Preprocesamiento de Datos Termográficos por medio de Técnicas

92 CAPÍTULO 6. Resultados y Discusión

Figura 6.27: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaB

En la Figura 6.28 se presentan las curvas ROC obtenidas de los algoritmos LibSVM ySMO para termografíaScore.

Figura 6.28: Curvas ROC para la clase Enfermo y No_Enfermo de termografíaScore

6.2.2.1. Discusión

LibSVM y SMO también presentan un buen desempeño de precisión, sensibilidad y es-pecificidad, siendo LibSVM el que logra resultados perfectos con una desviación estándarde cero cuando se evalúa con termografíaB que posee las 18 variables.

Cuando se utiliza termografíaScore, entre LibSVM y SMO no existen diferencias sig-nificativas en los resultados de precisión, sensibilidad y especificidad. Sin embargo, es

Page 111: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 93

LibSVM quien presenta menores valores en la desviación estándar.

LibSVM por su parte logra encontrar el margen máximo óptimo entre las clases determografíaB, así como de termografíaScore, distinguiendo fácilmente que instancias co-rresponden a una categoría u otra.

Por otro lado, el algoritmo SMO a través de su kernel basado en una red neuronal lograpredecir la mayor parte de los casos de la clase “Enfermo” y “No_Enfermo”.

Con un menor número de variables es posible predecir si un paciente posee o no la en-fermedad, considerando exclusivamente las variables que conforman el score termográfico.

6.2.3. Resultados de AutoClass y SimpleKMeans

AutoClass y SimpleKMeans también hacen uso de termografíaB con todas su variablesy de la variante que sólo contiene las variables del score termográfico, termografíaScore.Cuando se hace uso de termografíaB con AutoClass se obtienen las combinaciones delvalor de la clase que se muestran en la Tabla 6.12. Con termografíaB y SimpleKMeans seobtienen las combinaciones del valor de la clase que se muestran en la Tabla 6.13.

Valor de variable clase No. instancias asignadasEnfermo-0 60Enfermo-3 4Enfermo-1 13No_Enfermo-3 21No_Enfermo-2 56

Tabla 6.12: Valores de clase con AutoClass para termografíaB

Valor de variable clase No. instancias asignadasEnfermo-1 66Enfermo-0 11No_Enfermo-0 21No_Enfermo-2 34No_Enfermo-3 22

Tabla 6.13: Valores de clase con SimpleKMeans para termografíaB

Debido a que el valor de la clase es combinado se obtienen dos variantes de termogra-fíaB, la primera variante fue procesada con AutoClass y la segunda con SimpleKMeans,a ambas variantes se les aplicaron técnicas de clasificación de las que se obtuvieron losresultados mostrados en la Tabla 6.14.

Page 112: Preprocesamiento de Datos Termográficos por medio de Técnicas

94 CAPÍTULO 6. Resultados y Discusión

Algoritmos de clasificaciónVariante de termo-grafíaB

Desempeño J48 NB HC

AutoClassPrecisión 91.96 %(±6.68) 97.67 %(±±±3.64)v 90.84 %(±7.71)Sensibilidad 95 %(±9.00) 100 %(±±±0.00) 90 %(±13.00)Especificidad 97 %(±5.00) 99 %(±±±3.00) 95 %(±7.00)

SimpleKMeansPrecisión 85.64 %(±9.33) 94.55 %(±±±5.28)v 87.69 %(±8.02)Sensibilidad 93 %(±9.00) 97 %(±±±7.00) 95 %(±8.00)Especificidad 94 %(±6.00) 99 %(±±±4.00) 95 %(±6.00)

Tabla 6.14: Resultados de precisión, sensibilidad y especificidad de las variantes de termo-grafíaB procesadas con algoritmos de clustering

Para el caso de termografíaScore, cuando se procesa con AutoClass, se obtienen lascombinaciones del valor de la clase que se muestran en la Tabla 6.15, y cuándo se procesacon SimpleKMeans se obtienen las combinaciones del valor de la clase que se muestran enla Tabla 6.16.

Valor de variable clase No. instancias asignadasEnfermo-1 62Enfermo-2 15No_Enfermo-2 22No_Enfermo-0 55

Tabla 6.15: Valores de clase con AutoClass para termografíaScore

Valor de variable clase No. instancias asignadasEnfermo-1 65Enfermo-0 9Enfermo-2 3No_Enfermo-2 34No_Enfermo-0 42No_Enfermo-1 1

Tabla 6.16: Valores de clase con SimpleKMeans para termografíaScore

A partir de las dos variantes generadas de termografíaScore, la primera por medio deAutoClass y la segunda por medio de SimpleKMeans, se obtienen los resultados se clasifi-cación presentados en la Tabla 6.17.

Page 113: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 95

Algoritmos de clasificaciónAlgoritmos Clus-tering

Desempeño J48 NB HC

AutoClassPrecisión 94.22 %(±5.13) 99.22 %(±±±2.13)v 97.68 %(±4.10)Sensibilidad 95 %(±8.00) 99 %(±±±4.00) 98 %(±5.00)Especificidad 97 %(±5.00) 100 %(±±±0.00) 98 %(±4.00)

SimpleKMeansPrecisión 91.22 %(±±±7.09) 90.62 %(±6.90) 69.54 %(±3.79) *Sensibilidad 93 %(±10.00) 95 %(±9.00) 100 %(±±±0.00)vEspecificidad 95 %(±7.00) 100 %(±±±0.00)v 86 %(±7.00) *

Tabla 6.17: Resultados de precisión, sensibilidad y especificidad de las variantes de termo-grafíaScore

En la Figuras 6.29 y 6.30 se presentan las curvas ROC de termografíaB cuando esprocesada con AutoClass.

Figura 6.29: Curvas ROC para la clase Enfermo-0, Enfermo-1, Enfermo-3 de termografíaBprocesada con AutoClass

Page 114: Preprocesamiento de Datos Termográficos por medio de Técnicas

96 CAPÍTULO 6. Resultados y Discusión

Figura 6.30: Curvas ROC para la clase No_Enfermo-2, No_Enfermo-3 de termografíaBprocesada con AutoClass

En la Figuras 6.31 y 6.32 se presentan las curvas ROC de termografíaB cuando esprocesada con SimpleKMeans.

Figura 6.31: Curvas ROC para la clase Enfermo-0, Enfermo-1 de termografíaB procesadacon SimpleKMeans

Page 115: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 97

Figura 6.32: Curvas ROC para la clase No_Enfermo-0, No_Enfermo-2, No_Enfermo-3 determografíaB procesada con SimpleKMeans

En la Figuras 6.33 y 6.34 se presentan las curvas ROC de termografíaScore cuando esprocesada con AutoClass.

Page 116: Preprocesamiento de Datos Termográficos por medio de Técnicas

98 CAPÍTULO 6. Resultados y Discusión

Figura 6.33: Curvas ROC para la clase Enfermo-1, Enfermo-2 de termografíaScore proce-sada con AutoClass

Figura 6.34: Curvas ROC para la clase No_Enfermo-0, No_Enfermo-2 de termografíaScoreprocesada con AutoClass

En la Figuras 6.35 y 6.36 se presentan las curvas ROC de termografíaScore cuando esprocesada con SimpleKMeans.

Page 117: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 99

Figura 6.35: Curvas ROC para la clase Enfermo-0, Enfermo-1, Enfermo-2 de termografíaS-core procesada con SimpleKMeans

Page 118: Preprocesamiento de Datos Termográficos por medio de Técnicas

100 CAPÍTULO 6. Resultados y Discusión

Figura 6.36: Curvas ROC para la clase No_Enfermo-0, No_Enfermo-1, No_Enfermo-2 determografíaScore procesada con SimpleKMeans

6.2.3.1. Discusión

El preprocesamiento de la variable clase de termografíaB y termografíaScore por mediode AutoClass provocan el incremento en el número de clases de cada conjunto de datos. Apesar de que se tienen más clases, al aplicar las técnicas de clasificación sobre los conjuntosde datos preprocesados, se puede ver que los porcentajes de precisión, sensibilidad y es-pecificidad presentan valores muy cercanos al óptimo, siendo el algoritmo Naive Bayes elde mejor desempeño, tanto en el conjunto de datos preprocesado con AutoClass como conSimpleKMeans.

Ante la presencia de más clases se podría pensar que los errores de clasificación pu-dieran ser mayores. Sin embargo si comparamos los resultados obtenidos a partir del ex-perimento con el preprocesamiento de métodos de clustering contra los resultados de los

Page 119: Preprocesamiento de Datos Termográficos por medio de Técnicas

6.2. Resultados segunda etapa 101

métodos basados en kernel que trabajan con los conjuntos de datos con dos clases exclu-sivamente. Se puede ver que la diferencia entre resultados en mínima sin considerar unaprueba estadística.

Nuevamente se puede observar que con el uso de una menor cantidad de variables, esposible predecir la presencia o ausencia de la enfermedad a través de datos termográficos.

El hecho de tener más clases no facilitaría al oncólogo la clasificación de los casoscuando solo se quiere saber si se tiene o no la enfermedad. Sin embargo si se consideratener algún tipo de categorías respecto a la enfermedad, el uso de más clases podría seruna ayuda para distinguir entre los valores de un score a otro y determinar variedades de laenfermedad.

Page 120: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 121: Preprocesamiento de Datos Termográficos por medio de Técnicas

Capítulo 7

Conclusiones

El conjunto de datos termográficos con el que se inició este trabajo presentaba el pro-blema de desbalanceo, donde existía una clase mayoritaria representada por la clase “En-fermo” que contaba con 77 instancias y una clase minoritaria representada por la clase“No_Enfermo” con 21 instancias. Ante el problema de desbalanceo no era posible mejorarel desempeño en clasificación y en especificidad dado que la muestra de datos de la claseminoritaria era muy reducida y existía un sesgo de predicción hacia la clase “Enfermo”.

Ante la presencia del problema de desbalanceo en el conjunto de datos termográficos,se optó por evaluar diversos métodos que se han reportado en la literatura especializadapara combatir dicho problema. Se utilizó SMOTE como parte de los métodos basados enSampling, con el que se generaron nuevas instancias artificiales en la clase minoritaria delconjunto de datos para balancear la distribución de instancias entre ambas clases. Al evaluarel conjunto de datos con las nuevas instancias, el algoritmo de clasificación que reporta unmejor desempeño de clasificación, sensibilidad y especificidad fue Naive Bayes. Sin embar-go los resultados obtenidos siguen siendo poco aceptables.

Se evaluó MetaCost y CostSensitiveClassifier que son métodos basados en cost-sensitive,dichos métodos usaron J48, Naive Bayes y Hill-Climber como clasificadores base con di-ferentes matrices de costos con el objetivo de mejorar los porcentajes de desempeño declasificación, sensibilidad y especificidad considerando las instancias existentes, ya que adiferencia de SMOTE, los métodos basados en cost-sensitive no generan instancias artifi-ciales. En este experimento se logra un ligero incremento en la especificidad cuando se usael algoritmo Naive Bayes como clasificador base con la matriz de costos con un rc± maspequeño, aunque la precisión de clasificación sigue siendo baja y la predicción sigue sesga-da hacia la clase “Enfermo”.

También se evaluaron dos métodos basados en kernel, LibSVM y SMO, que tampocogeneran instancias artificiales, sino que se basan en la función kernel para lograr una mejordistribución entre las clases, durante este experimento tampoco fue posible mejorar el por-centaje de precisión de clasificación y especificidad, la sensibilidad por su parte mantieneun porcentaje alto.

103

Page 122: Preprocesamiento de Datos Termográficos por medio de Técnicas

104 CAPÍTULO 7. Conclusiones

Como método adicional, se usó Mega-Trend Diffusion con el que se generaron ins-tancias artificiales, a diferencia de SMOTE, Mega-Trend Diffusion se enfoca en la claseminoritaria y mayoritaria. Cuando se evaluaron las nuevas instancias artificiales tampoco selograron mejorar los porcentajes de precisión ni de especificidad.

De los diferentes experimentos que se realizaron con los métodos para balancear elconjunto de datos termográficos, SMOTE fue el que ayudó a disminuir la distancia entresensibilidad y especificidad y mejorar ligeramente el porcentaje de precisión en clasifica-ción. Sin embargo los valores obtenidos no se pueden considerar como resultados óptimosque ayuden a predecir con certeza la enfermedad de cáncer de mama.

Posteriormente se realizaron experimentos donde intervinieron AutoClass y SimpleK-Means que son métodos de clustering, dichos métodos se usaron para preprocesar el valor declase, produciendo un incremento de clases del conjunto de datos desbalanceado. Cuando seaplicaron los clasificadores al conjunto de datos preprocesado, los resultados no mejoraron,ya que el porcentaje de especificidad sigue siendo bajo, la sensibilidad permanece estableen un porcentaje aceptable y la precisión de clasificación no rebasa ni un 80 %.

En una segunda etapa de experimentos se agregan 77 instancias que sustituyen a lamuestra de 21 instancias que se tenían en la clase “No_Enfermo”, por lo tanto se produceun balanceo natural entre las clases del conjunto de datos. Ante la presencia de un conjuntode datos balanceados se prosigue a experimentar con los métodos que no generan instanciasartificiales que se habían utilizado para evaluar el conjunto de datos cuando presentaba elproblema de desbalanceo. Se evalúa también, una variante del conjunto de datos balancea-dos que considera las 8 variables del score termográfico, la variable que contiene el valordel score y la variable clase, haciendo un total de 10 variables.

Se volvió a experimentar con MetaCost, CostSensitiveClassifier, LibSVM, SMO, Au-toClass y SimpleKMeans tanto en el conjunto con 18 variables como en la variante con 10variables. A diferencia de los primeros experimentos, los resultados de precisión, sensibi-lidad y especificidad logran mejorar positivamente tanto en el conjunto de datos con todaslas variables, así como en el que posee sólo 10 variables.

En el caso de LibSVM se logra una clasificación del 100 %, por lo tanto la sensibilidady la especificidad logradas también presentan un 100 %, cuando se manejan las 18 varia-bles del conjunto de datos, mientras que con el conjunto de atos con 10 variables se lograuna precisión de 99.36 %, una sensibilidad del 99 % y una especificidad del 100 %. SiendoLibSVM el método que reportó los mejores resultados.

A partir de los resultados obtenidos es posible concluir que con un menor número devariables y con una muestra representativa de la clase “Enfermo” y la clase “No_Enfermo”es posible obtener resultados óptimos para la predicción de cáncer de mama. Por lo tantose incrementa el valor de creencia en el score termográfico que el oncólogo propone para la

Page 123: Preprocesamiento de Datos Termográficos por medio de Técnicas

105

predicción de la enfermedad.

Retomando la hipótesis de este trabajo, se confirma que con una mejor representatividadde las clases se logra disminuir la distancia entre los valores de sensibilidad y especificidad,provocando un mejor desempeño por parte de los algoritmos de clasificación, especialmentecon el conjunto de datos balanceado. Durante la primera etapa de experimentos, la hipótesisno se logra aceptar, ya que a pesar de que en algunos experimentos se logró una ligera dis-minución entre sensibilidad y especificidad, los resultados en el desempeño de clasificaciónseguían siendo malos y la muestra de datos en la clase minoritaria era poco representativa.

Se puede concluir que con un conjunto de datos balanceado, el desempeño de clasifica-ción se logra mejorar en comparación con un conjunto de datos que presenta el problemade desbalanceo. También se puede concluir que con un menor número de variables, espe-cialmente las variables que conforman el score termográfico, se pueden obtener resultadosóptimos de precisión de clasificación, sensibilidad y especificidad.

Como trabajo futuro, dado que se tiene un conjunto de datos balanceado con la totalidadde variables, sería interesante aplicar técnicas de selección de atributos para detectar la me-nor cantidad de variables con las que se puedan obtener resultados de predicción óptimos.Otra línea de investigación sería evaluar el conjunto de variables que conforman el scoretermográfico con otros métodos de clasificación para ver el comportamiento de dichas va-riables en otros entornos de clasificación. Como estudio empírico sería interesante aplicarlos métodos basados en cost-sensitive sobre el conjunto de datos desbalanceado pero haceruso de un algoritmo evolutivo que permita encontrar los valores óptimos para la matriz decostos que logre maximizar los resultados de predicción de la enfermedad.

Page 124: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 125: Preprocesamiento de Datos Termográficos por medio de Técnicas

Parte I

Apéndices

Page 126: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 127: Preprocesamiento de Datos Termográficos por medio de Técnicas

Apéndice A

Árboles de decisión y RedesBayesianas

A.1. Nombres cortos de atributos

En la Tabla A.1 se presentan los nombres cortos de los atributos del conjunto de datos.

Número Atributo Nombre corto Descripción1. Asm Asimetría2. RT Red Termovascular3. PCL Patrón Curvilíneo4. TEMP Porcentaje de temperatura5. HTF Hipertermia Funcional6. 2c Diferencia de cima Térmica7. UnicaF Cantidad de puntos más calien-

tes8. Unilateral1C Punto más caliente9. GAP Diferencia de los promedios de

temperatura entre mama derechae izquierda

10. Surco Surco debajo de las mamas11. PP Venas que van a los puntos más

calientes de las mamas12. CC Centro de la zona más caliente13. FD Geometría del centro caliente14. H Histograma15. AX Diferencia en grados entre las

dos axilas16. PF Perfil alterado de la mama17. score Score termográfico18. Clase Variable clase

Tabla A.1: Nombres cortos de los atributos del conjunto de datos

109

Page 128: Preprocesamiento de Datos Termográficos por medio de Técnicas

110 APÉNDICE A. Árboles de decisión y Redes Bayesianas

A.2. Árbol de decisión SMOTE con 1 vecino

Figura A.1: Árbol de decisión, SMOTE con 1 vecino más cercano

Page 129: Preprocesamiento de Datos Termográficos por medio de Técnicas

A.3. Árbol de decisión SMOTE con 5 vecinos 111

A.3. Árbol de decisión SMOTE con 5 vecinos

Figura A.2: Árbol de decisión, SMOTE con 5 vecinos más cercanos

Page 130: Preprocesamiento de Datos Termográficos por medio de Técnicas

112 APÉNDICE A. Árboles de decisión y Redes Bayesianas

A.4. Árbol de decisión SMOTE con 10 vecinos

Figura A.3: Árbol de decisión, SMOTE con 10 vecinos más cercanos

Page 131: Preprocesamiento de Datos Termográficos por medio de Técnicas

A.5. Red Bayesiana SMOTE con 1 vecino 113

A.5. Red Bayesiana SMOTE con 1 vecino

Figura A.4: Red Bayesiana, SMOTE con 1 vecino más cercano

Page 132: Preprocesamiento de Datos Termográficos por medio de Técnicas

114 APÉNDICE A. Árboles de decisión y Redes Bayesianas

A.6. Red Bayesiana SMOTE con 5 vecinos

Figura A.5: Red Bayesiana, SMOTE con 5 vecinos más cercanos

Page 133: Preprocesamiento de Datos Termográficos por medio de Técnicas

A.7. Red Bayesiana SMOTE con 10 vecinos 115

A.7. Red Bayesiana SMOTE con 10 vecinos

Figura A.6: Red Bayesiana, SMOTE con 10 vecinos más cercanos

Page 134: Preprocesamiento de Datos Termográficos por medio de Técnicas
Page 135: Preprocesamiento de Datos Termográficos por medio de Técnicas

Referencias

[1] C. Aggarwal, J. Wolf, P. Yu, C. Procopiuc, and J. Park. Fast algorithms for projectedclustering. In Proceedings of the 1999 ACM SIGMOD international conference onManagement of data, SIGMOD ’99, pages 61–72, New York, NY, USA, 1999. ACM.

[2] R. Agrawal, J. Gehrke, D. Gunopulos, and P. Raghavan. Automatic subspace clus-tering of high dimensional data for data mining applications. In Proceedings of the1998 ACM SIGMOD international conference on Management of data, SIGMOD’98, pages 94–105, New York, NY, USA, 1998. ACM.

[3] R. Akbani, S. Kwek, and N. Japkowicz. Applying support vector machines to im-balanced datasets. In J.-F. Boulicaut, F. Esposito, F. Giannotti, and D. Pedreschi,editors, Machine Learning: ECML 2004, volume 3201 of Lecture Notes in ComputerScience, pages 39–50. Springer Berlin Heidelberg, 2004.

[4] E. Alpaydin. Introduction to machine learning. Adaptive computation and machinelearning. MIT Press, 2010.

[5] P. A. Alvarado-Ruiz. Algoritmos de clasificación: Comparación del algo-ritmo naive bayes con otras metodologías para la clasificación de correoelectrónico no deseado. http://www.slideshare.net/paalvarador/estado-del-arte-4380689. Último acceso: Junio, 2013.

[6] R. Alvarez. Estadística aplicada a las ciencias de la salud. Editorial Díaz de Santos,S.A., 2007.

[7] M. Y. Ameca-Alducin. Descripción del estudio y formación del score de la termo-grafía mamaria. Lania, 2011. Reporte técnico.

[8] M. Y. Ameca-Alducin, N. Cruz-Ramírez, E. Mezura-Montes, E. Martín-Del-Campo-Mena, N. Pérez-Castro, and H. G. Acosta-Mesa. Assessment of bayesian networkclassifiers as tools for discriminating breast cancer pre-diagnosis based on three diag-nostic methods. In I. Batyrshin and M. González Mendoza, editors, Advances inArtificial Intelligence, volume 7629 of Lecture Notes in Computer Science, pages419–431. Springer Berlin Heidelberg, 2013.

117

Page 136: Preprocesamiento de Datos Termográficos por medio de Técnicas

118 REFERENCIAS

[9] M. Y. Ameca-Alducín. Validación cuantitativa de información termográfica parael pre-diagnóstico de cáncer de mama. Master’s thesis, Laboratorio Nacional deInformática Avanzada, 2012.

[10] M. Ankerst, M. Breunig, H. Kriegel, and J. Sander. Optics: ordering points to identifythe clustering structure. In Proceedings of the 1999 ACM SIGMOD internationalconference on Management of data, SIGMOD ’99, pages 49–60, New York, NY,USA, 1999. ACM.

[11] N. Arora and et.al. Effectiveness of a noninvasive digital infrared thermal imagingsystem in the detection of breast cancer. The American Journal of Surgery, pages523–526, 2008.

[12] D. Arthur and S. Vassilvitskii. k-means++: the advantages of carefull seeding. InProceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms,pages 1027–1035, 2007.

[13] R. E. Barrientos-Martínez, N. Cruz-Ramírez, H. G. Acosta-Mesa, I. Rabatte-Suárez,P. Pavón-León, M. C. Gogeascoechea-Trejo, and M. S. L. Blázquez-Morales. Evalua-ción del potencial de redes bayesianas en la clasificación en datos médicos. RevistaMédica Universitaria, 8(1):33–37, 2088.

[14] G. E. A. P. A. Batista, M. C. Monard, and A. L. C. Bazzan. Improving rule inductionprecision for automated annotation by balancing skewed data sets. In KELSI, pages20–32, 2004.

[15] G. E. A. P. A. Batista, R. C. Prati, and M. C. Monard. A study of the behaviorof several methods for balancing machine learning training data. SIGKDD Explor.Newsl., 6(1):20–29, 2004.

[16] P. Berkhin. Survey of clustering data mining techniques. Technical report, AccrueSoftware, Inc., 2002.

[17] A. Boris-Valiente and Z. Cebrián-Jiménez. Práctica Weka, diagnóstico Cardio-logía. http://www.it.uc3m.es/jvillena/irc/practicas/05-06/12mem.pdf. Último acceso: Junio, 2013.

[18] R. R. Bouckaert, E. Frank, M. Hall, R. Kirkby, P. Reutemann, A. See-wald, and D. Scuse. WEKA Manual for Version 3-6-9. http://sourceforge.net/projects/weka/files/documentation/3.6.x/WekaManual-3-6-9.pdf/download?use_mirror=superb-dca2&download=, 2013. Último acceso: Junio, 2013.

[19] M. Bramer. Principles of Data Mining. Springer, 2007.

[20] M. Brandan and Y. Villaseñor. Detección del cáncer de mama: estado de la mamo-grafía en méxico. Cancerología 1, pages 147–162, 2006.

[21] C. C. Chang and C. J. Lin. Libsvm: A library for support vector machines. ACMTrans. Intell. Syst. Technol., 2(3):27:1–27:27, May 2011.

Page 137: Preprocesamiento de Datos Termográficos por medio de Técnicas

REFERENCIAS 119

[22] N. Chawla. Data mining for imbalanced datasets: An overview. In O. Maimon andL. Rokach, editors, Data Mining and Knowledge Discovery Handbook, pages 853–867. Springer US, 2005.

[23] N. Chawla, N. Japkowicz, and A. Kotcz. Editorial: special issue on learning fromimbalanced data sets. ACM SIGKDD Explorations Newsletter, 6(1):1–6, 2004.

[24] N. V. Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer. Smote: Synthe-tic minority over-sampling technique. Journal of Artificial Intelligence Research,16:321–357, 2002.

[25] N. V. Chawla and N. Japkowicz. Special issue on learning from imbalanced datasets.SIGKDD Explor. Newsl., 6(1), 2004.

[26] N. V. Chawla, A. Lazarevic, L. O. Hall, and K. W. Bowyer. Smoteboost: improvingprediction of the minority class in boosting. In In Proceedings of the Principles ofKnowledge Discovery in Databases, PKDD-2003, pages 107–119, 2003.

[27] P. Cheeseman and J. Stutz. Advances in knowledge discovery and data mining. chap-ter Bayesian classification (AutoClass): theory and results, pages 153–180. AmericanAssociation for Artificial Intelligence, Menlo Park, CA, USA, 1996.

[28] A. Cruz. Cáncer de mama, primera causa de muerte tumoral en mujeres. La Jorna-da. Web. http://www.jornada.unam.mx/2011/10/19/sociedad/042n1soc. 10 Octubre,2011.

[29] N. Cruz-Ramírez, E. Mezura-Montes, M.-Y. Ameca-Alducin, and et al. Evaluationof the diagnostic power of thermography in breast cancer using bayesian networkclassifiers. volume 2013. Computational and Mathematical Methods in Medicine,2013.

[30] P. Domingos. Metacost: A general method for making classifiers cost-sensitive. InIn Proceedings of the Fifth International Conference on Knowledge Discovery andData Mining, pages 155–164. ACM Press, 1999.

[31] J. Du, Z. Cai, and C. Ling. Cost-sensitive decision trees with pre-pruning. In Z. Kobtiand D. Wu, editors, Advances in Artificial Intelligence, volume 4509 of Lecture Notesin Computer Science, pages 171–179. Springer Berlin Heidelberg, 2007.

[32] R. O. Duda, P. E. Hart, and D. G. Stork. Pattern Classification. Wiley, 2012.

[33] Y. EL-Manzalawy. Weka LibSVM (WLSVM): Integrating LibSVM into Weka En-vironment . http://www.cs.iastate.edu/~yasser/wlsvm/, 2005. Úl-timo acceso: Junio, 2013.

[34] C. Elkan. Evaluating classifiers. http://cseweb.ucsd.edu/users/elkan/250Bwinter2012/classifiereval.pdf, 2012. Último acceso: Ju-nio, 2013.

Page 138: Preprocesamiento de Datos Termográficos por medio de Técnicas

120 REFERENCIAS

[35] A. Estabrooks, T. Jo, and N. Japkowicz. A multiple resampling method for learningfrom imbalanced data sets. Computational Intelligence, 20(1):18–36, 2004.

[36] M. Ester, H. Kriegel, J. Sander, and X. Xu. A density-based algorithm for discoveringclusters in large spatial databases with noise. In Second International Conference onKnowledge Discovery and Data Mining, pages 226–231, Portland, Oregon, 1996.AAAI Press.

[37] W. Fan, S. J. Stolfo, J. Zhang, and P. K. Chan. Adacost: Misclassification cost-sensitive boosting. In ICML, 1999.

[38] T. Fawcett. ROC graphs: Notes and practical considerations for researchers. Re-CALL, 31(HPL-2003-4):1–38, 2004.

[39] G. Forman and M. Scholz. Apples-to-apples in cross-validation studies: pitfalls inclassifier performance measurement. SIGKDD Explor. Newsl., 12(1):49–57, Nov.2010.

[40] K. Foster. Thermographic detection of breast cancer. IEEE Eng. Med. Biol. Mag.,17(6):10–14, 1998.

[41] C. Fraley and A. Raftery. Mclust: Software for model based cluster and discriminantanalysis, 1998.

[42] G. Fumera and F. Roli. Support vector machines with embedded reject option. InProceedings of the First International Workshop on Pattern Recognition with SupportVector Machines, SVM ’02, pages 68–82, London, UK, UK, 2002. Springer-Verlag.

[43] V. Ganti, J. Gehrke, and R. Ramakrishnan. Cactus: clustering categorical data usingsummaries. In Proceedings of the fifth ACM SIGKDD international conference onKnowledge discovery and data mining, KDD ’99, pages 73–83, New York, NY, USA,1999. ACM.

[44] E. García. Learning from imbalanced data. IEEE Transactions on Knowledge andData Engineering In Knowledge and Data Engineering, 21(9):1263–1284, 2009.

[45] D. García-Morate. Manual de Weka. http://www.cs.waikato.ac.nz/ml/weka/documentation.html, 2006. Último acceso: Junio, 2013.

[46] D. Gibson, J. Kleinberg, and P. Raghavan. Clustering categorical data: an approachbased on dynamical systems. The VLDB Journal, 8(3-4):222–236, Feb. 2000.

[47] S. Guha, R. Rastogi, and K. Shim. Cure: an efficient clustering algorithm for largedatabases. SIGMOD Rec., 27(2):73–84, June 1998.

[48] H. Guo and V. L. Herna. Learning from imbalanced data sets with boosting and datageneration: the databoost-im approach. SIGKDD Explor. Newsl., 6(1):30–39, 2004.

[49] M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten. Theweka data mining software: an update. SIGKDD Explor. Newsl., 11(1):10–18, Nov.2009.

Page 139: Preprocesamiento de Datos Termográficos por medio de Técnicas

REFERENCIAS 121

[50] H. Han, W. Y. Wang, and B. H. Mao. Borderline-smote: A new over-sampling methodin imbalanced data sets learning. pages 878–887. 2005.

[51] J. Han and M. Kamber. Data Mining Concepts and Techniques. Elsevier, 2nd edition,2006.

[52] P. E. Hart. The condensed nearest neighbor rule. IEEE Transactions on InformationTheory, 14:515–516.

[53] J. A. Hartigan and M. A. Wong. Algorithm AS 136: A k-means clustering algorithm.Applied Statistics, 28(1):100–108, 1979.

[54] H. He, Y. Bai, E. A. Garcia, and S. Li. Adasyn: Adaptive synthetic sampling approachfor imbalanced learning. In IJCNN’08, pages 1322–1328, 2008.

[55] C. W. Hsu, C. C. Chang, and C. J. Lin. A practical guide to support vector classifi-cation, 2010.

[56] R. Janghel, A. Shukla, R. Tiwari, and R. Kala. Intelligent decision support systemfor breast cancer. In Proceedings of the First international conference on Advancesin Swarm Intelligence - Volume Part II, ICSI’10, pages 351–358, Berlin, Heidelberg,2010. Springer-Verlag.

[57] N. Japkowicz. Learning from imbalanced data sets: A comparison of various strate-gies. pages 10–15. AAAI Press, 2000.

[58] N. Japkowicz, C. Myers, and M. Gluck. A novelty detection approach to classifica-tion. In Proc. 14th Int?l Joint Conf. Artificial Intelligence, pages 518–523, 1995.

[59] E. Jeffrey, A. Martin, and M. Anirban. Traffic classification using clustering algo-rithms. In Proceedings of the ACM SIGCOMM Workshop on Mining Network Data(MineNet, 2006.

[60] T. Jo and N. Japkowicz. Class imbalances versus small disjuncts. SIGKDD Explor.Newsl., 6(1):40–49, 2004.

[61] L. Kaufman and P. Rousseeuw. Finding Groups in Data: An Introduction to ClusterAnalysis. Wiley-Interscience, 9th edition, Mar. 1990.

[62] M. Kubat, R. C. Holte, and S. Matwin. Machine learning for the detection of oilspills in satellite radar images. Mach. Learn., 30(2-3):195–215, Feb. 1998.

[63] M. Kubat and S. Matwin. Addressing the curse of imbalanced training sets: One-sided selection. In ICML’97, 1997.

[64] J. Laurikkala. Improving identification of difficult small classes by balancing classdistribution. In Proceedings of the 8th Conference on AI in Medicine in Europe:Artificial Intelligence Medicine, AIME ’01, pages 63–66, London, UK, UK, 2001.Springer-Verlag.

Page 140: Preprocesamiento de Datos Termográficos por medio de Técnicas

122 REFERENCIAS

[65] D. C. Li, H. C. Hsu, T. I. Tsai, T. J. Lu, and S. C. Hu. A new method to help diagnosecancers for small sample size. Expert Syst. Appl., 33(2):420–424, Aug. 2007.

[66] D. C. Li, C. S. Wu, T. I. Tsai, and Y. S. Lina. Using mega-trend-diffusion and artificialsamples in small data set learning for early flexible manufacturing system schedulingknowledge. Computers & Operations Research, 34(4):966 – 982, 2007.

[67] C. Ling, C. X. Ling, and C. Li. Data mining for direct marketing: Problems andsolutions. In In Proceedings of the Fourth International Conference on KnowledgeDiscovery and Data Mining KDD-98, pages 73–79. AAAI Press, 1998.

[68] X. Y. Liu, J. Wu, and Z. H. Zhou. Exploratory under-sampling for class-imbalancelearning. In Proceedings of the Sixth International Conference on Data Mining,ICDM ’06, pages 965–969, Washington, DC, USA, 2006. IEEE Computer Society.

[69] X. Y. Liu and Z. H. Zhou. The influence of class imbalance on cost-sensitive learning:An empirical study. In Data Mining, 2006. ICDM 06. Sixth International Conferenceon, pages 970–974, 2006.

[70] E. Martín del Campo. Biopsia de mama asistida por termografía digital infrarroja(BMAT). Reporte de un caso ¿una nueva alternativa diagnóstica? Revista Médica dela Universidad Veracruzana, 10(1):38–42, 2010.

[71] D. Mease, A. J. Wyner, and A. Buja. Boosted classification trees and class probabi-lity/quantile estimation. J. Mach. Learn. Res., 8:409–439, 2007.

[72] T. Moon. The expectation-maximization algorithm. Signal Processing Magazine,IEEE, 13(6):47–60, 1996.

[73] A. R. Morales and L. E. M. Zárate. Epidemiología clínica: investigación clínicaaplicada. Editorial Medica Panamericana Sa de, 2004.

[74] R. Ng and J. Han. Efficient and effective clustering methods for spatial data mi-ning. In Proceedings of the 20th International Conference on Very Large Data Ba-ses, VLDB ’94, pages 144–155, San Francisco, CA, USA, 1994. Morgan KaufmannPublishers Inc.

[75] OMS. Cáncer. Web. http://www.who.int/mediacentre/factsheets/fs297/es/index.html.2 Noviembre, 2011.

[76] J. C. Platt. Advances in kernel methods. chapter Fast training of support vectormachines using sequential minimal optimization, pages 185–208. MIT Press, Cam-bridge, MA, USA, 1999.

[77] J. R. Quinlan. C4.5: programs for machine learning. Morgan Kaufmann PublishersInc., San Francisco, CA, USA, 1993.

[78] B. Raskutti and A. Kowalczyk. Extreme re-balancing for SVMs: a case study. SigkddExplorations, 6:60–69, 2004.

Page 141: Preprocesamiento de Datos Termográficos por medio de Técnicas

REFERENCIAS 123

[79] P. Refaeilzadeh, L. Tang, and H. Liu. Cross Validation. Springer, 2009.

[80] J. Sander, M. Ester, H. Kriegel, and X. Xu. Density-based clustering in spatial da-tabases: The algorithm gdbscan and its applications. Data Mining and KnowledgeDiscovery, 2:169–194, 1998.

[81] R. E. Schapire. The strength of weak learnability. Mach. Learn., 5(2):197–227, July1990.

[82] Y. Sun, M. Kamel, and Y. Wang. Boosting for learning multiple classes with imbalan-ced class distribution. In Proceedings of the Sixth International Conference on DataMining, ICDM ’06, pages 592–602, Washington, DC, USA, 2006. IEEE ComputerSociety.

[83] Y. Sun, M. S. Kamel, A. K. C. Wong, and Y. Wang. Cost-sensitive boosting forclassification of imbalanced data. Pattern Recognition, 40(12):3358–3378, 2007.

[84] Y. Tang and Y. Q. Zhang. Granular svm with repetitive undersampling for highlyimbalanced protein homology prediction. In Granular Computing, 2006 IEEE Inter-national Conference on, pages 457–460, may 2006.

[85] S. Thomopoulos, D. Bougoulias, and W. Chin-Der. Dignet: an unsupervised-learningclustering algorithm for clustering and data fusion. Aerospace and Electronic Sys-tems, IEEE Transactions on, 31(1):21–38, 1995.

[86] K. M. Ting. A comparative study of cost-sensitive boosting algorithms. In Procee-dings of the Seventeenth International Conference on Machine Learning, ICML ’00,pages 983–990, San Francisco, CA, USA, 2000. Morgan Kaufmann Publishers Inc.

[87] I. Tomek. Two modifications of cnn. IEEE Trans. System, Man, Cybernetics,6(11):769–772, 1976.

[88] G. Vazquez-Luna and F. Gutierrez-Delgado. Feasibility of new-generation infraredimaging screening for breast cancer in rural communities. US Obstetrics and Gyne-cology, 6(1):60–64, 2010.

[89] A. Vlachos. Active learning with support vector machines. Master’s thesis, Schoolof Informatics, University of Edinburgh, 2004.

[90] C. Wallace and D. Dowe. Intrinsic classification by mml the snob program. In Proc.Seventh Australian Joint Conf. Artificial Intelligence, pages 37–44. World Scientific,1994.

[91] J. Wang, K. Chang, C. Chen, Y. Tsai, Y. Wu, Y. Teng, and T. Shih. Evaluation ofthe diagnostic performance of infrared imaging of the breast : A preliminary study.Biomedical Engineering Online, 2010.

[92] J. Wang, T. Shih, R. Yen, Y. Lu, T. L. C. Chen, C.Y. Mao, W. Kuo, Y. Tsai, K. Chang,and K. Chien. The association of infrared imaging findings of the breast with hor-mone receptor and human epidermal growth factor receptor 2 status of breast cancer.Academic Radiology, 18(2):212–219, 2011.

Page 142: Preprocesamiento de Datos Termográficos por medio de Técnicas

124 REFERENCIAS

[93] W. Wang, J. Yang, and R. Muntz. Sting: A statistical information grid approach tospatial data mining. In Proceedings of the 23rd International Conference on VeryLarge Data Bases, VLDB 97, pages 186–195, San Francisco, CA, USA, 1997. Mor-gan Kaufmann Publishers Inc.

[94] Weka. Class Class HillClimber. http://weka.sourceforge.net/doc.dev/weka/classifiers/bayes/net/search/local/HillClimber.html. Último acceso: Mayo, 2013.

[95] Weka. Class CostSensitiveClassifier. http://weka.sourceforge.net/doc/weka/classifiers/meta/CostSensitiveClassifier.html.Último acceso: Mayo, 2013.

[96] Weka. Class MetaCost. http://weka.sourceforge.net/doc.stable/weka/classifiers/meta/MetaCost.html. Último acceso: Mayo, 2013.

[97] Weka. Class SMOTE. http://weka.sourceforge.net/doc.packages/SMOTE/weka/filters/supervised/instance/SMOTE.html. Últimoacceso: Mayo, 2013.

[98] Weka. CostSensitiveClassifier. http://weka.wikispaces.com/CostSensitiveClassifier. Último acceso: Mayo, 2013.

[99] Weka. EM. http://weka.sourceforge.net/doc/weka/clusterers/EM.html. Último acceso: Mayo, 2013.

[100] Weka. LibSVM. http://weka.sourceforge.net/doc.stable/weka/classifiers/functions/LibSVM.html. Último acceso: Mayo, 2013.

[101] Weka. SimpleKMeans. http://weka.sourceforge.net/doc/weka/clusterers/SimpleKMeans.html. Último acceso: Mayo, 2013.

[102] Weka. SMO. http://weka.sourceforge.net/doc/weka/classifiers/functions/SMO.html. Último acceso: Mayo, 2013.

[103] I. H. Witten, E. Frank, and M. A. Hall. Data Mining: Practical Machine LearningTools and Techniques. Morgan Kaufmann, 3 edition, 2011.

[104] X. Xu, M. Ester, H. Kriegel, and L. Sander. A distribution-based clustering algorithmfor mining in large spatial databases. pages 324–331, 1998.

[105] J. Zhang and I. Mani. Knn approach to unbalanced data distributions: A case studyinvolving information extraction. In Proceedings of the ICML’2003 Workshop onLearning from Imbalanced Datasets, 2003.

[106] T. Zhang, R. Ramakrishnan, and M. Livny. Birch: A new data clustering algorithmand its applications. Data Mining and Knowledge Discovery, 1:141–182, 1997.