TESIS de Maestría en. Ingeniería en Sistemas de la Información

Tamaño: px
Comenzar la demostración a partir de la página:

Download "TESIS de Maestría en. Ingeniería en Sistemas de la Información"

Transcripción

1 TESIS de Maestría en Ingeniería en Sistemas de la Información "DESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACIÓN DE ALGORITMOS DE EXPLOTACIÓN DE LA INFORMACIÓN" Tesista: Lic. E.I.S.I. Marcelo Ubaldo López Nocera Director: Dr. Ramón García Martínez (UNLa) Codirectora: Dra. Zulma Cataldi Ciudad Autónoma de Buenos Aires, 2012

2 DEDICATORIA A mis padres Norma y Ubaldo. A mis hijas Venezia y Aldana. A mi esposa Alejandra. A mis amigos y familiares en general. A la memoria de Edgardo, mi primer mentor en la Maestría. A quienes lean este trabajo con interés. A quienes encuentren aquí alguna fuente de inspiración que los lleve a continuar alguna de las líneas de investigación propuestas.

3 AGRADECIMIENTOS A Ramón, por su paciencia, consideración y consejos, por su búsqueda continua de la mejora y por los gratos momentos compartidos durante la labor. A Zulma, por su apoyo y aliento constante. A Oscar, quien me orientó para encontrar el camino. A mi familia, por la bondadosa paciencia conque sobrellevaron todas las horas que les robé para poder llevar adelante esta tesis. A la Facultad Regional Buenos Aires y a la Escuela de Posgrado de la Universidad Tecnológica Nacional, por la gran formación que me brindaron. A Ariel, por su apoyo y desinteresada colaboración. A todos, en general, los que me ayudaron para seguir adelante y llegar a buen puerto. A quienquiera que sea que, desde algún lugar del éter, haya inspirado alguna idea original que pudiera aparecer en el presente trabajo.

4 RESUMEN En Minería de Datos se parte, supuestamente, de dominios equivalentes o directamente indistinguibles entre sí a los efectos experimentales. En el presente trabajo se postulará que esto no es así, y que la caracterización de los dominios en uso durante la fase experimental tiene amplia injerencia en los resultados observados y finalmente obtenidos. Se partirá de un experimento previo, diseñado para un cierto algoritmo de agrupamiento en combinación con otro determinado algoritmo de inducción y se extenderá el estudio a otras combinaciones de algoritmos. El mencionado trabajo experimental preexistente se ha replicado y extendido para caracterizar los distintos dominios que se podrían definir, incluyendo un procedimiento para generarlos. Por otra parte, se define un protocolo para encontrar las características del dominio que mejor es explicado por los algoritmos de descubrimiento de conocimiento seleccionados con base en procesos de explotación de información. Se da luego una prueba de concepto del protocolo propuesto y se ofrecen finalmente algunas conclusiones del trabajo de investigación realizado. Palabras Clave: Minería de Datos, caracterización de dominios, algoritmos, agrupamiento, inducción, procedimiento para generación de dominios, protocolo, prueba de concepto.

5 ABSTRACT Data Mining is supposed to work with equivalent or directly indistinguishable domains towards experimental purposes. This thesis pretends to state this is not so, and the characterization of the domains in use during the test phase has extensive interference in the observed and finally obtained results. The thesis is based on a previous experiment, designed for a certain clustering algorithm given in combination with another given induction algorithm, and the study will then be extended to other combinations of algorithms. The mentioned previously existent experimental work has been replicated and extended in order to characterize the different domains that could be defined, including a procedure to generate them. On the other hand, this thesis defines a protocol for finding the domain characteristics that is best explained by the knowledge discovery algorithms selected on the basis of information exploitation processes. A concept proof of the proposed protocol is also given and finally some conclusions of the research work are offered. Keywords: Data Mining, domains characterization, algorithms, clustering, induction, domains generation procedure, protocol, concept proof.

6 INDICE 1. INTRODUCCIÓN Contexto de la Tesis Objetivos de la Tesis Objetivos Generales Objetivos Específicos Metodología de Desarrollo Etapa Etapa Etapa Etapa Consideraciones Adicionales Visión General de la Tesis Producción Científica Derivada de Resultados Parciales de la Tesis ESTADO DE LA CUESTIÓN Algoritmos de Clasificación Una Introducción Teórica General a los Algoritmos de Clasificación Algoritmos Probabilísticos Algoritmo naive Bayes Algoritmo de Rocchio Algoritmo NNC o KNN Redes Neuronales Una Introducción a las Redes Neuronales Algoritmo SOM Algoritmos Jerárquicos Algoritmos Particionales Una Introducción Teórica General a los Algoritmos Particionales Algoritmo K-means Algoritmo Bisecting K-means y Bisecting K-means con Refinamiento Algoritmos Genéticos Algoritmos de Inducción Introducción a los Algoritmos de Inducción La familia TDIDT de Algoritmos de Inducción Una Introducción Teórica a los Algoritmos de la Familia TDIDT Algoritmo ID Algoritmo C Algoritmo C Otros Algoritmos de Inducción Algoritmos de Inducción no Pertenecientes a la Familia TDIDT Algoritmo AQ Algoritmo CN Algoritmo M

7 3. DELIMITACION DEL PROBLEMA Modelo Tradicional de Caracterización de Dominios Calidad del Proceso de Descubrimiento de Conocimiento Integración de los Algoritmos de Agrupamiento e Inducción Rendimientos de las Distintas Combinaciones de Algoritmos Resumen de las Preguntas de Investigación SOLUCION PROPUESTA Una Propuesta de Solución Aplicada en Forma Experimental al Problema Delimitado Preparación de las Experiencias a Realizar Presentación de las Variables a Utilizar Panorama General de la Ejecución de las Experiencias Introducción a la Ejecución de las Experiencias Descripción de las Bases de Datos a Utilizar en la Ejecución de las Experiencias Descripción del Banco de Pruebas a Utilizar en la Ejecución de las Experiencias Determinación de las Variables a Utilizar en la Ejecución de las Experiencias Detalle de las Corridas a Llevar a Cabo en la Ejecución de las Experiencias Una Propuesta de Clasificación Taxonómica Aplicada a los Dominios a Utilizar Análisis de la Eficiencia de la Aplicación del Proceso de Experimentación a los Tipos de Dominios Dados Descripción de los Diagramas de Kiviat como Herramientas de Utilidad para la Visualización de los Datos Obtenidos como Resultados Experimentales Descripción del Protocolo de Caracterización de Dominios Propuesto en el Presente Trabajo Detalle del Procedimiento Utilizado para la Generación de Dominios en Forma Previa a la Ejecución de las Experiencias Descripción del Protocolo para la Identificación de Dominios Descripción de la Prueba de Concepto a Utilizar en la Implementación de la Solución RESULTADOS EXPERIMENTALES OBTENIDOS Presentación del Esquema Completo de Laboratorio Descripción del Contenido de las Tablas que Constituyen cada una de las Bases de Datos Utilizadas en el Esquema Experimental Contenido de la Tabla de Experiencias Contenido de la Tabla de Iteraciones Contenido de la Tabla de Escenarios Contenido de la Tabla de Gráficos Contenido de la Tabla de Graficaciones Contenido de la Tabla de Reglas Correctamente Cubiertas Presentación del Banco de Pruebas de Laboratorio Descripción de los Gráficos Obtenidos como Resultado del Proceso Experimental Efectuado

8 5.5. Descripción de los Diagramas de Kiviat Obtenidos como Resultado del Proceso Experimental Efectuado Análisis Completo De La Performance de las Corridas que Posibilitaron la Obtención de los Resultados Experimentales INTERPRETACIÓN DE LOS RESULTADOS EXPERIMENTALES OBTENIDOS Introducción al Esquema Experimental Desarrollado en relación a la Interpretación de los Resultados Obtenidos como Consecuencia de la Experimentación Llevada a cabo en el Presente Trabajo Análisis Cualitativo y Cuantitativo de los Resultados Obtenidos Experimentalmente Comparación entre los Resultados Experimentales Obtenidos en el Presente Trabajo y los Resultados Experimentales Previamente Existentes Descripción del Conjunto de Proposiciones Experimentales Aplicables a los Resultados Obtenidos Experimentalmente Descripción del Conjunto de Conclusiones Experimentales Enunciables como Corolario de los Resultados Obtenidos Experimentalmente Detalle de las Futuras Líneas de Investigación Experimentales a Seguir como Consecuencia de los Resultados de Laboratorio Obtenidos Experimentalmente CONCLUSIONES, APORTES Y FUTURAS LÍNEAS DE INVESTIGACIÓN Conclusiones Generales Aportes Futuras Líneas de Investigación Resumen Final ANEXOS Contenido Ampliado de la Tabla de Experiencias Ubicación en el Apéndice Electrónico de la Tabla de Experiencias Contenido Ampliado de la Tabla de Iteraciones Ubicación en el Apéndice Electrónico de la Tabla de Iteraciones Contenido Ampliado de la Tabla de Escenarios Ubicación en el Apéndice Electrónico de la Tabla de Escenarios Contenido Ampliado de la Tabla de Gráficos Ubicación en el Apéndice Electrónico de la Tabla de Gráficos

9 8.9. Contenido Ampliado de la Tabla de Graficaciones Ubicación en el Apéndice Electrónico de la Tabla de Graficaciones Contenido Ampliado de la Tabla de Reglas Correctamente Cubiertas Ubicación en el Apéndice Electrónico de la Tabla de Reglas Correctamente Cubiertas Ubicación en el Apéndice Electrónico de los Gráficos Ubicación en el Apéndice Electrónico de los Datos Fuente para los Diagramas de Kiviat Ubicación en el Apéndice Electrónico de los Diagramas de Kiviat Listado de las Características a Tener en Cuenta al Analizar la Performance de las Experiencias de Laboratorio Realizadas Ejemplo de las Características Tenidas en Cuenta al Analizar la Performance de las Experiencias de Laboratorio Realizadas Ubicación en el Apéndice Electrónico de los Resultados de los Análisis de Rendimiento para las Distintas Combinaciones de Algoritmos Ubicación en el Apéndice Electrónico de los Porcentajes de Reglas Correctamente Cubiertas para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción para los Escenarios Correspondientes a Dominios Catalogados Como Medianos Ubicación en el Apéndice Electrónico de los Porcentajes de Reglas Correctamente Cubiertas para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción para los Escenarios Correspondientes a Dominios Catalogados Como Hipercomplejos Ubicación en el Apéndice Electrónico de los Porcentajes de Reglas Correctamente Cubiertas para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción para los Escenarios Correspondientes a Dominios Catalogados Como Complejos Ubicación en el Apéndice Electrónico de los Porcentajes de Reglas Correctamente Cubiertas para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción para los Escenarios Correspondientes a Dominios Catalogados Como Oscilantes Ubicación en el Apéndice Electrónico de los Diagramas de Kiviat Representados para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción Ubicación en el Apéndice Electrónico de las Tablas de Valores Obtenidos para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción Ubicación en el Apéndice Electrónico de los Porcentajes Promedio de Reglas Correctamente Cubiertas para cada una de las Combinaciones Posibles de Pares de Algoritmos de Clustering e Inducción, Consolidados por Zona de los Respectivos Diagramas de Kiviat

10 8.26 Ubicación en el Apéndice Electrónico de las Características Cualitativas más Salientes Encontradas para el Comportamiento de todos los Algoritmos Utilizados en la Experimentación, Consolidadas por Sector Ubicación en el Apéndice Electrónico de los Datos de Comparación entre los Resultados Experimentales Obtenidos en el Presente Trabajo y los Resultados Experimentales Previamente Existentes Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental 1, de la Conclusión Experimental 2 y de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental 4, de la Conclusión Experimental 5, de la Conclusión Experimental 6, de la Conclusión Experimental 7, de la Conclusión Experimental 8, de la Conclusión Experimental 9, de la Conclusión Experimental 10 y de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental 12, de la Conclusión Experimental 13, de la Conclusión Experimental 14, de la Conclusión Experimental 15, de la Conclusión Experimental 16, de la Conclusión Experimental 17 y de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental 19, de la Conclusión Experimental 20, de la Conclusión Experimental 21, de la Conclusión Experimental 22, de la Conclusión Experimental 23, de la Conclusión Experimental 24 y de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental 26, de la Conclusión Experimental 27, de la Conclusión Experimental 29, de la Conclusión Experimental 30, de la Conclusión Experimental 31, de la Conclusión Experimental 32 y de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental Ubicación en el Apéndice Electrónico de los Datos de Soporte de la Conclusión Experimental Estructura del Árbol de Directorios del Apéndice Electrónico que Acompaña al Presente Trabajo en Formato Digital Operación del Banco de Pruebas del Apéndice Electrónico REFERENCIAS

11 INDICE DE FIGURAS Figura Descripción Sección Página 2.1 Método utilizado por el algoritmo ID3 para la construcción de árboles de decisión 2.2 Método utilizado por el algoritmo C4.5 para la construcción de árboles de decisión 4.1 Ejemplo de registro de la tabla Experience Ejemplo de registro de la tabla Experience_iteration a Ejemplo de registro de la tabla Scenario b Ejemplo de registro de la tabla Scenario c Ejemplo de registro de la tabla Scenario d Ejemplo de registro de la tabla Scenario e Ejemplo de registro de la tabla Scenario Ejemplo de registro de la tabla Graph Ejemplo de registro de la tabla Graph_experience Ejemplo de registro de la tabla Tablita Gráfica que representa el estudio de dominios variando la cantidad de clases que los rigen, para distinta cantidad de atributos que tienen los ejemplos [Kogan, 2007] 4.8 Conformación del grupo A de la clasificación taxonómica de dominios en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] 4.9 Conformación del grupo A de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007]

12 Figura Descripción Sección Página 4.10 Gráfica que representa el estudio de dominios variando la cantidad de clases que los rigen, para distinta cantidad de valores posibles que puede tomar cada atributo [Kogan, 2007] 4.11 Conformación del grupo B de la clasificación taxonómica de dominios, en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] 4.12 Conformación del grupo B de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] 4.13 Gráfica que representa el estudio de dominios variando la cantidad de valores posibles que puede tomar cada uno de los atributos que conforman las reglas, para distinta cantidad de reglas que indican la pertenencia a cada clase [Kogan, 2007] 4.14 Conformación del grupo C de la clasificación taxonómica de dominios, en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] 4.15 Conformación del grupo C de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007]

13 Figura Descripción Sección Página 4.16 Gráfica que representa el estudio de dominios variando la especificidad del cubrimiento de cada regla sobre sus ejemplos asociados, para distinta cantidad de estos [Kogan, 2007] 4.17 Conformación del grupo D de la clasificación taxonómica de dominios, en función de losgráficos representados a partir de los atributos orientados a los ejemplos utilizados en [Kogan, 2007] Conformación del grupo D de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos relacionados con los ejemplos, utilizados en [Kogan, 2007] 4.19.a Conformación de los grupos A, B y C de la clasificación taxonómica de dominios, según los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] 4.19.b Codificación cromática explicativa de la Figura 4.19.a 4.20 Conformación del grupo D de la clasificación taxonómica de dominios, según los gráficos representados a partir de los atributos relacionados con los ejemplos, utilizados en [Kogan, 2007] 4.21 Clasificación taxonómica en grupos, en relación a los gráficos obtenidos en [Kogan, 2007] 4.22 Caracterización de los grupos, en relación a los gráficos obtenidos en [Kogan, 2007]

14 Figura Descripción Sección Página 4.23 Representación del estudio de dominios variando el número de ejemplos que dan soporte a cada regla, para distinta concentración de las reglas que indican la pertenencia a cada clase [Kogan, 2007] 4.24.a Ejemplo de Diagrama de Kiviat para una hipotética función de ocho variables 4.24.b Ejemplo de Diagrama de Kiviat para una hipotética función de ocho variables 4.25 Muestra de los datos utilizados para obtener el Diagrama de Kiviat que se muestra en la Figura Ejemplo de Diagrama de Kiviat obtenido para el juego de datos mostrado en la Figura Diagrama de Kiviat correspondiente a la Figura 4.26 del presente trabajo, en el cual los sectores se presentan en forma apilada en función del porcentaje de reglas correctamente cubiertas 5.2 Diagrama de Kiviat correspondiente a la Figura 4.26 del presente trabajo, en el cual los sectores se presentan como gráfico de barras, en función del porcentaje de reglas correctamente cubiertas 6.1 Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de variables 6.2 Diagrama de Kiviat que despliega los datos representados en Figura Gráfico de barras que despliega los resultados comparativos de los datos representados en Figura

15 Figura Descripción Sección Página 6.4 Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de variables, para los escenarios correspondientes a los sectores veintiocho, veintinueve y treinta 6.5 Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como medianos 6.6 Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como hipercomplejos 6.7 Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como complejos Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como oscilantes 6.9 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre SOM como algoritmo de clustering e ID3 de la familia TDIDT como algoritmo de inducción, para todos los escenarios en estudio 5,

16 Figura Descripción Sección Página 6.10 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre SOM como algoritmo de clustering y M5 como algoritmo de inducción, para todos los escenarios en estudio 6.11 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre K-means como algoritmo de clustering y M5 como algoritmo de inducción, para todos los escenarios en estudio 6.12 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre KNN como algoritmo de clustering y M5 como algoritmo de inducción, para todos los escenarios en estudio 6.13 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre SOM como algoritmo de clustering y CN2 como algoritmo de inducción, para todos los escenarios en estudio 6.14 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre K-means como algoritmo de clustering y CN2 como algoritmo de inducción, para todos los escenarios en estudio Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre K-means como algoritmo de clustering y CN2 como algoritmo de inducción, para todos los escenarios en estudio

17 Figura Descripción Sección Página 6.16 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre SOM como algoritmo de clustering y AQ15 como algoritmo de inducción, para todos los escenarios en estudio 6.17 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre K-means como algoritmo de clustering y AQ15 como algoritmo de inducción, para todos los escenarios en estudio 6.18 Diagrama de Kiviat correspondiente al porcentaje de reglas correctamente cubiertas para la combinación entre NNC como algoritmo de clustering y AQ15 como algoritmo de inducción, para todos los escenarios en estudio 6.19 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como medianos 6.20 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como hipercomplejos 6.21 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como complejos

18 Figura Descripción Sección Página 6.22 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, para los escenarios correspondientes a dominios catalogados como oscilantes 6.23 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, consolidados por tipo de dominio 6.24 Grupo que mayor porcentaje de reglas cubrió para cada combinación entre un algoritmo de agrupamiento y otro de inducción, según la experimentación llevada a cabo 6.25 Tipo de dominio que mayor porcentaje de reglas cubrió para cada combinación entre un algoritmo de agrupamiento y otro de inducción, según la experimentación llevada a cabo 6.26 Porcentajes promedio de reglas correctamente cubiertas para cada una de las combinaciones posibles de pares de algoritmos de clustering e inducción, consolidados por zona de los respectivos Diagramas de Kiviat 6.27 Características cualitativas más salientes encontradas para el comportamiento de todos los algoritmos utilizados en la experimentación, consolidadas por sector Ejemplo de lote de registros de la tabla Experience Ejemplo de lote de registros de la tabla Experience_iteration Ejemplo de lote de registros de la tabla Scenario Ejemplo de lote de registros de la tabla Graph Ejemplo de lote de registros de la tabla Graph_experience

19 Figura Descripción Sección Página 8.6 Ejemplo de lote de registros de la tabla Tablita Análisis de diversas características de performance experimental observadas, correspondientes a la combinación de algoritmos NNC VS M Estructura de árbol con los directorios principales que constituyen el apéndice electrónico que acompaña este trabajo

20 GLOSARIO DE ACRONIMOS Acrónimo Significado AQ15 Algoritmo de inducción AQ15 BMU Best Matching Unit C4.5 Algoritmo de inducción C4.5 C5.0 Algoritmo de inducción C5.0 CD Compact Disc CLS Concept Learning Systems CN2 Algoritmo de inducción CN2 DVD Digital Versatile Disk GB Gigabyte

21 Acrónimo Significado GNU GNU is Not Unix GNU-GPL GNU General Public License HDD Hard Disk Drive ID3 Algoritmo de inducción Induction of Decision Trees JAR Java Archive JDBC Java Database Connectivity JDK Java Development Kit JRE Java Runtime Environment KD Knowledge Discovery K-means Algoritmo de agrupamiento K-medias KNN Algoritmo de agrupamiento K-Nearest Neighbour

22 Acrónimo Significado M5 Algoritmo de inducción M5 MB Megabyte MDL Minimum Description Length NN Algoritmo de agrupamiento Nearest Neighbour NNC Algoritmo de agrupamiento Nearest Neighbour Cluster PHP PHP Hypertext Preprocessor SOM Algoritmo de agrupamiento Self Organizing Maps SQL Structured Query Language TDIDT Top Down Induction of Decision Trees U-Matrix Unified Distance Matrix URL Uniform Resource Locator

23 Acrónimo Significado USB Universal Serial Bus VS Versus WEBSOM Aplicación Web que utiliza el algoritmo de clustering SOM WEKA Waikato Environment for Knowledge Analysis WWW World Wide Web

24 INTRODUCCION 1. INTRODUCCIÓN En este capítulo se presenta el contexto del presente trabajo (Sección 1.1), sus objetivos (Sección 1.2), la visión general de la tesis (Sección 1.3) y la producción científica derivada de resultados parciales de la misma (Sección 1.4) Contexto de la Tesis En Minería de Datos (Data Mining) se parte, supuestamente, de dominios equivalentes o directamente indistinguibles entre sí a los efectos experimentales. En [Kogan, 2007] se diseñó un experimento para analizar el rendimiento del proceso de descubrimiento de conocimiento para un determinado par (algoritmo de agrupamiento, algoritmo de inducción), a saber, SOM e ID3 de la familia TDIDT. Este trabajo, que no tenía en cuenta la caracterización de los dominios con los que se operó, ha sido adaptado (Sección 4.1), para justamente poder caracterizar los distintos dominios que se podrían definir. Se parte también de lo postulado como futura línea de investigación, tanto en [Kogan, 2007] como así también en [Britos, 2008], en cuanto a la extensión de la investigación a otro tipo de dominios y con la aplicación de otros pares de algoritmos como soporte (Sección 3.4). El tema elegido implica analizar la evolución de la calidad del proceso de descubrimiento de conocimiento mediante el uso de la integración de los algoritmos de agrupamiento e inducción, al ir variando sus parámetros en condiciones de laboratorio. La integración de agrupamiento e inducción como técnica de descubrimiento de conocimiento será analizada en detalle más adelante en el presente trabajo, en función de la degradación de la calidad (Sección 3.2), y la variación de parámetros a utilizar (Sección 3.3). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 1 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

25 INTRODUCCION 1.2. Objetivos de la Tesis Se presentan aquí los objetivos del presente trabajo, que se clasifican en generales (Sección 1.2.1) y específicos (Sección 1.2.1) y la metodología de desarrollo del trabajo aplicada para alcanzarlos (Sección 1.2.3), agregándoses también una serie de consideraciones adicionales al respecto (Sección 1.2.4) Objetivos Generales 1) Analizar cómo se comporta la integración de los algoritmos de inducción y agrupamiento al ir variando sus parámetros en condiciones de laboratorio, en un marco teórico previamente definido. 2) Evaluar la calidad de las reglas obtenidas y la evolución de su variación como consecuencia de la modificación de los parámetros controlados en los experimentos dentro de porcentajes de fluctuación determinados mediante umbrales de confianza preestablecidos Objetivos Específicos 1) Identificar los parámetros del problema señalado y los límites de aceptación de los mismos. Esto conlleva: a) Analizar la efectividad del método para cada uno de los dominios involucrados, definido un universo de estudio y un conjunto de datos previamente obtenido. b) Discretizar los atributos clase, definiendo los rangos de efectividad del método por medio de intervalos porcentuales. c) Aplicar métodos automáticos de descubrimiento de conocimientos (eg. SOM y TDIDT) para obtener las reglas que resulten de efectiva aplicación al presente estudio. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 2 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

26 INTRODUCCION d) Definir las combinaciones de pares de parámetros que se aplicarán al presente estudio, considerando además rangos de variación lo más amplios posible para los valores que puedan tomar. e) Sistematizar la complejidad de cada dominio en función de sus parámetros, lo cual implica además analizar la complejidad que cada dominio representa para la aplicación de mecanismo de descubrimiento de conocimiento. f) Estudiar el comportamiento de la efectividad del método propuesto, toda vez que se introduce ruido en los ejemplos generados. g) Utilizar atributos numéricos, de forma tal que el algoritmo de inducción pueda eventualmente generar condiciones de desigualdad entre atributos, y no sólo de equivalencia. 2) Plantear algunas definiciones necesarias, como el cubrimiento de una regla de inferencia sobre otra, el cubrimiento de una regla original por reglas descubiertas y el concepto de concentración de reglas que indican la pertenencia a una clase. 3) Diseñar e implementar el banco de pruebas necesario para llevar adelante las experiencias en cuestión. Esto incluye: a) Tomar todos los pares posibles de algoritmos de clasificación e inducción y ver cuál es la combinación que ofrece mejor respuesta, en igualdad de condiciones experimentales dadas. b) Para determinado par, someterlo a un conjunto dado pruebas, introduciendo diversos tipos de ruido, y observar en qué situación se desempeña mejor. 4) Analizar los distintos casos de experimentación llevados adelante, con el fin de generalizar los resultados y obtener las correspondientes conclusiones, construyendo un modelo que permitea explicar la conducta observada Metodología de Desarrollo El trabajo se ha planificado en cuatro etapas, a saber: Etapa 1 (Sección ), Etapa 2 (Sección ), Etapa 3 (Sección ) y Etapa 4 (Sección ). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 3 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

27 INTRODUCCION Etapa 1 Se recabó información en centros de investigación accesibles mediante la Internet, libros, journals, trabajos publicados en revistas especializadas y actas de congresos acerca de la teoría de base y los algoritmos de clustering e inducción existentes, junto con un estudio de su performance observada en determinadas condiciones de laboratorio, para precisar el estado del arte Etapa 2 Se diseñaron y realizaron experiencias de laboratorio, en condiciones simuladas, para evaluar la variación de calidad mencionada. Se contó con software de simulación específico, como por ejemplo Simulink y The Neural ToolBox [Demuth, Hagan y Beales, 2004] provistos con Matlab 6.1 1, o las herramientas análogas provistas por Scilab , integrando asimismo las aplicaciones para mapas autoorganizados ya existentes como SOM_PACK (The Self Organizing Maps Program Package 3 ) y LVQ_PACK (The Learning Vector Quantization Program Package, V3.1 4 ) y las aplicaciones específicas para árboles desarrolladas por Quinlan [Quinlan, 1993], como así también las aplicaciones existentes en el mercado comercial, como KnowledgeSeeker 5, Clementine 6, DataEngine 7, DecisionHouse 8 o IntelligentMiner 9 [Sal, 2007], e incluso aplicaciones de libre disponibilidad para Data Mining y Bussiness Intelligence, como Pentaho Disponible su uso y consulta en: (vigente al 01/06/2012) 2 Disponible para su uso y consulta en: (vigente al 01/06/2012) 3 Disponible para su uso y consulta en: (vigente al 01/06/2012) 4 Disponible para su uso y consulta en: (vigente al 01/06/2012) 5 Disponible para su uso y consulta en: (vigente al 01/06/2012) 6 Disponible para su uso y consulta en: (vigente al 01/06/2012) 7 Disponible para su uso y consulta en: (vigente al 01/06/2012) TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 4 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

28 INTRODUCCION Se llevó adelante, entonces, una metodología cuantitativa, con la aplicación de instrumentos específicos en pos de la solución deseada. A tal efecto, se propuso tomar bases de datos preexistentes (por ejemplo, tomar una de las existentes en el repositorio del UCI Machine Learning Repository 11 ), junto con una planilla de cálculo con datos preelaborados, como las desarrolladas por Saha 12 en ocasión de su tesis de doctorado [Saha, 1998] Etapa 3 Se llevó a cabo el análisis de las experiencias realizadas, incluyendo el procesamiento de los datos y la interpretación de la información obtenida. Por tratarse de una investigación basada sobre un análisis comparativo, el conocimiento fue validado en forma experimental Etapa 4 Se obtuvieron las conclusiones y se elaboró el informe final, incluyendo los aportes que se derivaron del trabajo, como así también las futuras líneas de investigación que surgieron del mismo. 8 Disponible para su uso y consulta en: (vigente al 01/06/2012) 9 Disponible para su uso y consulta en: (vigente al 01/06/2012) 10 Disponible para su uso y consulta en: (vigente al 01/06/2012) 11 Las cuales se encuentran disponibles para su consulta y uso en: (vigente al 01/06/2012) 12 Las cuales se hallan disponibles para su consulta y uso en (en el caso de juegos de datos para SOM) en: (vigente al 01/06/2012), o bien, (en el caso de juegos de datos para TDIDT) en: (vigente al 01/06/2012) TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 5 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

29 INTRODUCCION Consideraciones Adicionales Para cumplir con los objetivos enunciados, en el presente trabajo se postula no solo que los dominios son distinguibles a los efectos experimentales, sino también que la caracterización de los dominios en uso durante la fase experimental tiene amplia injerencia en los resultados observados y finalmente obtenidos (Sección 3.1). Se intenta asismismo extender el estudio a otras combinaciones (Sección 3.4) de pares de algoritmos de agrupamiento y de inducción (a saber: SOM VS AQ15, SOM VS CN2, SOM VS M5, KNN (también conocido como NNC) VS AQ15, KNN-NNC VS CN2, KNN-NNC VS M5, K-means VS AQ15, K-means VS CN2, K-means VS M5), como así también definir detalladamente un protocolo (Sección 4.5) para encontrar las características del dominio que mejor es explicado por los algoritmos seleccionados, y finalmente ofrecer una prueba de concepto (Sección 4.6) del protocolo propuesto, para luego así exponer las conclusiones del trabajo de investigación realizado (Sección 7.1) y plantear las futuras líneas de investigación (Sección 7.3). Se intenta también medir la calidad de las reglas obtenidas y la variación o degradación de la misma como consecuencia de la modificación de los parámetros controlados en las experiencias a realizar (Sección 3.2). Adicionalmente, el análisis que se plantea en el presente trabajo acerca de la integración de los distintos algoritmos de agrupamiento e inducción como mecanismo de descubrimiento de conocimiento (Sección 3.3) incluye la proposición de evaluar el rendimiento en el descubrimiento de reglas de las distintas combinaciones de algoritmos en cuestión y analizar cuál de todas ellas es la que brinda mejor cubrimiento en igualdad de condiciones experimentales dadas, haciendo especial hincapié sobre el tipo de dominio con el que se opera en cada caso, de modo tal de poder determinar cuál es entonces la mejor combinación para cada tipo de dominio utilizado (Sección 3.4). Para ello será fundamental tener en cuenta los dominios generados (Sección 4.1.1) y las variables o atributos utilizados (Sección 4.1.2). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 6 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

30 INTRODUCCION 1.3. Visión General de la Tesis La estructura de la tesis comienza con un análisis del estado de la cuestión (Capítulo 2), capítulo en el cual se describen con sumo detalle las características de los algoritmos de clasificación e inducción, en particular los que son utilizados en la parte experimental del presente trabajo. Luego de ello se delimita el problema a estudiar (Capítulo 3), para lo cual se discurre sobre el modelo tradicional de caracterización de dominios, se plantea un análisis de la calidad del proceso de descubrimiento de conocimiento, se plantea profundizar el estudio acerca de la integración entre algoritmos de agrupamiento e inducción y se postulan los rendimientos que podrían alcanzar las distinas combinaciones de algoritmos al ser sometidas a las experiencias de laboratorio que serán presentadas en el capítulo de la tesis dedicado a proponer la solución. Asimismo, se proponen las preguntas de investigación a ser respondidas en la presente tesis. Se continúa con la proposición de una solución al problema propuesto (Capítulo 4), para lo cual se presenta el esquema de laboratorio con todos sus componentes, proponiéndose luego una clasificación taxonómica de dominios y también un análisis de la eficiencia de la aplicación del proceso de experimentación a cada dominio dado. Luego de ello, se introducen los Diagramas de Kiviat como herramientas útiles para la visualización de los datos experimentales y se describe el protocolo de caracterización de dominios propuesto, para terminar con la descripción de la prueba de concepto a utilizar. Realizados los experimentos, se muestran los resultados experimentales obtenidos Capítulo 5), se completa la descripción del esquema experimental utilizado, se describe el contenido completo de las tablas que alojan los datos experimentales, se detalla el banco de pruebas confeccionado ad hoc, se describen los gráficos obtenidos como consecuencia de las experiencias realizadas, se ahonda el detalle de la referencia a los Diagramas de Kiviat y se analiza pormenorizadamente el rendimiento de las experiencias de laboratorio realizadas. A colación de ello se interpretan dichos resultados expeimentales (Capítulo 6), se detalla el esquema de laboratorio a utilizar para llevar a cabo el análisis, se analizan cualitativa y cuantitativamente los datos, se comparan los resultados con los obrantes con anterioridad, se realizan las proposiciones experimentales pertinentes, se enuncia un conjunto de conclusiones experimentales y se propone una serie de futuras líneas de investigación experimentales. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 7 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

31 INTRODUCCION Se cierra el trabajo con las correspondientes conclusiones finales (Capítulo 7), donde se detallan las conclusiones generales, incluyendo las respuestas a las preguntas de investigación formuladas previamente, se analizan los aportes realizados por el presente estudio y se enuncian las futuras líneas de investigación generales. Posteriormente, a guisa de apéndices, se anexa el material complementario al trabajo (Capítulo 8) y se finaliza con las referencias bibliográficas (Capítulo 9) Producción Científica Derivada de Resultados Parciales de la Tesis Durante el desarrollo de esta tesis se han comunicado resultados parciales a través de diversas publicaciones que a continuación se detallan: a) Congresos Nacionales: [López Nocera et al., 2011] López Nocera, M., Pollo Cattaneo, F., Britos, P., García Martínez, R. (2011) Un protocolo de caracterización empírica de dominios para uso en explotación de la información. Artículo presentando en el VIII Workshop de Bases de Datos y Minería de Datos del XVII CONGRESO ARGENTINO DE CIENCIAS DE LA COMPUTACION (CACIC), desarrollado en la Facultad de Ciencias Informáticas de la Universidad Nacional de La Plata, (La Plata, Buenos Aires, Argentina, Octubre 2011). b) Congresos Internacionales: [López Nocera y García Martínez, 2012] López Nocera, M., García Martínez, R. (2012) Variabilidad del comportamiento de agrupamiento e inducción basado en las características del dominio. Artículo presentando en el LATIN AMERICAN CONGRESS ON REQUIREMENTS ENGINEERING AND SOFTWARE TESTING (LACREST), a desarrollarse en Medellín, Colombia, en julio de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 8 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

32 ESTADO DE LA CUESTIÓN 2. ESTADO DE LA CUESTIÓN En este capítulo se presenta el estado de la cuestión en relación al estudio llevado a cabo en el presente trabajo. Se comienza con una descripción de los algoritmos de clasificación (Sección 2.1), para lo cual se realiza una introducción teórica a los mismos (Sección 2.1.1), continuando con el desarrollo teórico de los algoritmos probabilísticos (Sección 2.1.2), comenzando con el algoritmo naive Bayes (Sección ), a colación del cual son descriptos el algoritmo de Rocchio (Sección ) y el algoritmo KNN, también conocido como NNC (Sección ). Se describe a continuación la teoría de redes neuronales (Sección 2.1.3), con una introducción general al tema (Sección ), luego de la cual se describe en detalle el algoritmo SOM (Sección ). Luego de ello se procede a desarrollar en forma teórica los algoritmos jerárquicos (Sección 2.1.4). A continuación de lo anterior se describen los algoritmos particionales (Sección 2.1.5), con una introducción general al tema (Sección ), luego de la cual se describe en detalle el algoritmo K-means (Sección ), como así también los algoritmos Bisecting K-means y Bisecting K-means con refinamiento (Sección ) y, por último, se lleva a cabo el desarrollo teórico de los algoritmos genéticos (Sección ). Acto seguido se realiza el desarrollo teórico de los algoritmos de inducción (Sección 2.2), con una introducción teórica a los mismos (Sección 2.2.1), y luego de ello se pasa a analizar en detalle la familia de algoritmos TDIDT (Sección 2.2.2), para lo cual primeramente se hace una introducción teórica a los algoritmos de dicha familia (Sección ), a continuación de lo cual se analizan en forma particular el algoritmo ID3 (Sección ), el algoritmo C4.5 (Sección ) y el algoritmo C5.0 (Sección ). Finalmente, se describe en forma teórica el resto de los algoritmos de inducción, que no pertenecen a la familia TDIDT, utilizados en la experimentación llevada a cabo en el presente trabajo (Sección 2.2.3), para lo cual se hace primeramente una introducción teórica (Sección ), luego de lo cual se analizan en detalle el algoritmo AQ15 TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 9 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

33 ESTADO DE LA CUESTIÓN (Sección ), el algoritmo CN2 (Sección ) y, por último, el algoritmo M5 (Sección ) Algoritmos de Clasificación En esta sección se hace primero una introducción teórica general a los algoritmos de clasificación (Sección 2.1.1), profundizando luego el particular el desarrollo teórico de los algoritmos probabilísticos (Sección 2.1.2) Una Introducción Teórica General a los Algoritmos de Clasificación La idea de clasificación es bien conocida por quienes se dedican a la experimentación de este tipo. Sin entrar en disquisiciones formales, se trata de organizar los ejemplos del dominio en cuestión en alguna forma que permita después su mejor recuperación. En torno a ello, se han elaborado diversas técnicas y se ha buscado la automatización de las mismas. En el presente apartado se describen algunas de las técnicas y algoritmos aplicables en clasificación automática, los conceptos básicos en que se basan tales algoritmos, así como los instrumentos necesarios para aplicarlos, con una estimación del alcance y posibilidades de cada uno de ellos. Por lo general, cuando se habla de clasificación automática se distingue entre dos escenarios diferentes, que obviamente, requieren soluciones distintas. Estos escenarios reciben diversos nombres, pero básicamente consisten en lo siguiente: de un lado, una situación en la que se parte de una serie de clases o categorías conceptuales prediseñadas a priori, y en la que labor del clasificador (manual o automático) es asignar cada documento a la clase o categoría que le corresponda. En el segundo escenario posible, no hay categorías previas ni esquemas o cuadros de clasificación establecidos a priori. Los ejemplos se agrupan en función de ellos mismos, auto organizándose. Es lo que se conoce como clasificación automática no supervisada o clustering no supervisado porque se efectúa de forma totalmente automática, sin supervisión o asistencia manual [Figuerola et al., 2004]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 10 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

34 ESTADO DE LA CUESTIÓN El primer tipo o escenario se conoce como clasificación supervisada, no sólo porque requiere la elaboración manual o intelectual del cuadro o esquema de categorías sino también porque requiere un proceso de aprendizaje o entrenamiento por parte del clasificador, que debe ser supervisado manualmente en mayor o menor medida. Como se ha dicho recién, en esta modalidad se parte de una serie de clases o categorías prediseñadas a priori, en las cuales hay que colocar a cada uno de los ejemplos del dominio. Conocida también como categorización, facilita la recuperación ad hoc, limitando las búsquedas a las clases o categorías que el usuario elige, basándose en el conocimiento intelectual que previamente tiene del tema. Aunque hay gran cantidad de algoritmos capaces de hacer clasificación supervisada, la idea o enfoque básico es muy parecido: conseguir, de alguna manera, construir un patrón representativo de cada una de las clases o categorías y aplicar alguna función que permita estimar el parecido o similitud entre el o los ejemplos a clasificar y cada uno de los patrones de las categorías [He et al., 2003]. El patrón más parecido al ejemplo será el que nos indica a qué clase se deberá asignar ese ejemplo. Para la construcción de los patrones de las categorías se utilizan ejemplos clasificados manualmente de antemano. El proceso de formar esos patrones de cada clase a partir de esos ejemplos preclasificados se conoce como entrenamiento o aprendizaje, y la colección de ejemplos preclasificados utilizada se conoce como colección de entrenamiento [Figuerola et al., 2004]. Para poder llevar a cabo la clasificación automática es preciso contar entonces con una serie de elementos previos. Lo más importante es contar con una forma consistente de representar cada ejemplo, de manera que esa representación pueda generarse de forma automática. En este sentido, el formalismo más utilizado es el del bien conocido modelo vectorial, formulado por Gerard Salton ya en los años setenta y ampliamente utilizado en la actualidad [Salton et al., 1975]. Básicamente, cada ejemplo del dominio puede ser representado mediante un vector de parámetros. Cada parámetro lleva asociado un coeficiente o peso que trata de expresar la importancia o grado de representatividad de ese parámetro en ese vector o ejemplo. Este peso puede calcularse en forma automática a partir de diversos elementos, basándose en las frecuencias de los parámetros, tanto en toda la colección de ejemplos de entrenamiento con que se trabaje, como para cada uno en particular. Un mismo parámetro puede ser más o menos significativo en un contexto que en otro, de manera que tendrá también diferente peso en un ejemplo que en otro. Adicionalmente, dependiendo del ámbito de conocimiento TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 11 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

35 ESTADO DE LA CUESTIÓN en que se inscriba la colección de ejemplos, algunos parámetros cobran más importancia que otros. Así, parámetros que aparecen en casi todos los ejemplos serían poco aprovechables para lograr una buena clasificación o agrupamiento en clases a partir de ellos. Por otra parte, el tamaño o número de parámetros o cantidad de ocurrencias de los parámetros en cada ejemplo también juega un papel importante. Estos elementos son los que forman parte en el cálculo de los pesos. Aunque hay muchas ecuaciones propuestas para estimar dichos pesos, todas se basan de una u otra forma en estos elementos y pueden ser obtenidos de manera automática [Figuerola et al., 2004]. Independientemente del algoritmo de clasificación que se utilice, en algún momento será preciso estimar la cercanía o distancia, esto es, el parecido o similitud entre dos ejemplos. Si se ha representado cada documento mediante un vector, se puede aplicar alguna de las muchas funciones de similitud disponibles para estimar la cercanía o parecido entre dos vectores. Existen multitud de funciones de similitud, propuestas ya incluso desde los años cincuenta [Goodman y Kruskal, 1954]. En realidad, trabajos experimentales han mostrado que los resultados obtenibles son muy parecidos con cualquiera de dichas funciones, lo cual se explica porque en realidad todas usan los mismos elementos de información [Van Rijsbergen, 1975]. En ocasiones, la diferencia hay que buscarla en la mayor o menor facilidad de implementación. La más conocida y utilizada de éstas es la llamada función del coseno, en referencia al coseno de ángulo que forman dos vectores que se representan en un espacio multivectorial. Se basa sobre el producto entre ambos vectores, aplicando un factor de normalización para obviar los efectos de la disparidad en los tamaños (número de parámetros) de los vectores o ejemplos. Otras, entre las más conocidas, son los coeficientes de Dice y de Jaccard, así como el coeficiente de solapamiento [Korfhage, 1997; Kowalski, 1998]. Hay una buena cantidad de algoritmos propuestos para este tipo de clasificación. Entre los más utilizados se encuentran: los algoritmos probabilísticos, el algoritmo de Rocchio, el algoritmo del vecino más próximo, con sus variantes, y los algoritmos basados sobre redes neuronales [Figuerola et al., 2004]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 12 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

36 ESTADO DE LA CUESTIÓN Algoritmos Probabilísticos En esta sección se comienza analizando el algoritmo naive Bayes (Sección ), a colación del cual son descriptos el algoritmo de Rocchio (Sección ) y el algoritmo NNC, también conocido como KNN (Sección ) Algoritmo naive Bayes Los algoritmos probabilísticos se basan sobre la teoría probabilística, en especial en el teorema de Bayes. Éste permite estimar la probabilidad de un suceso a partir de la probabilidad de que ocurra otro suceso, del cual depende. De hecho, el algoritmo de este tipo más conocido, y también el más simple, es el denominado naive Bayes, propuesto desde hace bastante tiempo [Maron, 1961; Van Rijsbergen, 1975]. Básicamente, se trata de estimar la probabilidad de que un ejemplo pertenezca a una categoría. Dicha pertenencia depende de la posesión de una serie de características, de cada una de las cuales se conoce la probabilidad de que aparezcan en los ejemplos que pertenecen a la categoría en cuestión. Naturalmente, dichas características son los parámetros que conforman los ejemplos, y tanto su probabilidad de aparición en general, como la probabilidad de que aparezcan en los ejemplos de una determinada categoría, pueden obtenerse a partir de los ejemplos de entrenamiento. Para ello se utilizan las frecuencias de aparición en la colección de entrenamiento. Pero cuando las colecciones de aprendizaje son pequeñas, pueden producirse errores al estimar dichas probabilidades. Por ejemplo, cuando sucede que un determinado término no aparece nunca en esa colección de aprendizaje, pero sí en cambio aparece en los ejemplos a categorizar. Esto implica la necesidad de aplicar técnicas de suavizado o smoothing, a fin de evitar distorsiones en la obtención de las probabilidades. Una vez que dichas probabilidades fueron obtenidas de la colección de entrenamiento, se puede estimar la probabilidad de que un nuevo ejemplo dado, que contiene un conjunto determinado de parámetros, pertenezca a cada una de las categorías preexistentes. Es a la más probable, obviamente, a la cual será asignado. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 13 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

37 ESTADO DE LA CUESTIÓN Como se ha ya mencionado, la implementación del naive Bayes es sencilla y rápida y sus resultados son bastante buenos, como atestiguan numerosos trabajos experimentales [Lewis y Ringuette, 1994; Moens y Dumortier, 1999; Yang y Liu, 1999; Chakrabarti, 2003; Figuerola et al., 2004] Algoritmo de Rocchio Por su parte, el llamado algoritmo de Rocchio, es bien conocido y aplicado en la realimentación de consultas. En este contexto, la idea es simple: formulada y ejecutada una primera consulta, el usuario examina los datos devueltos y determina cuáles le resultan relevantes y cuáles no. Con estos datos, el sistema genera automáticamente una nueva consulta, basándose en esos datos que el usuario señaló como relevantes o no relevantes. En este mismo contexto, el algoritmo de Rocchio en forma recursiva proporciona un sistema para construir el vector de la nueva consulta, recalculando los pesos de los parámetros de ésta y aplicando un coeficiente a los pesos de la consulta inicial, otro a los de los datos relevantes y otro distinto a los de los no relevantes. En el ámbito de la categorización, el mismo algoritmo de Rocchio proporciona un sistema para construir los patrones de cada una de las clases o categorías de datos. Así, partiendo de una colección de entrenamiento categorizada manualmente de antemano y aplicando el modelo vectorial, se pueden construir vectores patrón para cada una de las clases, considerando como ejemplos positivos los datos de entrenamiento de esa categoría, y como ejemplos negativos los de las demás categorías [Rocchio, 1971; Figuerola et al., 2004]. El algoritmo de Rocchio es entonces una forma de construir patrones de cada clase. Una vez que se tienen los patrones de cada una de las clases, el proceso de entrenamiento o aprendizaje está concluido. Para categorizar nuevos datos, simplemente se estima la similitud entre el nuevo dato y cada uno de los patrones. El que arroja un índice mayor indica la categoría a la que se debe asignar ese dato. El algoritmo de Rocchio ha sido utilizado en tareas de categorización con buenos resultados [Lewis et al., 1996; Figuerola et al., 2004]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 14 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

38 ESTADO DE LA CUESTIÓN Algoritmo NNC o KNN Uno de los algoritmos utilizados en la experimentación llevada a cabo en el presente trabajo (Sección 6.2, por ejemplo) es el algoritmo del vecino más próximo (Nearest Neighbour, NN, también conocido como NNC (Nearest Neighbour Cluster) o KNN (K-Nearest Neighbour)), que es uno de los más sencillos de implementar. La idea básica es como sigue: si se cuantifica la similitud entre el ejemplo a clasificar y cada uno de los ejemplos de entrenamiento, la mayor de esas similitudes medidas es la que estará indicando a qué clase o categoría se debe asignar el ejemplo que se desea clasificar. Desde un punto de vista más práctico, el algoritmo del vecino más próximo puede aplicarse con cualquier programa de recuperación de tipo best match. Lo más frecuente es utilizar alguno basado sobre el modelo vectorial, pero, en realidad, esto no es imprescindible. Lo necesario es que sea best match y no de comparación exacta, como podría ser el caso de los booleanos [Figuerola et al., 2004]. El algoritmo se basa en localizar el ejemplo más similar o parecido al que se desea clasificar. Para esto no hay más que utilizar ese ejemplo, como si fuera una consulta, sobre la colección de entrenamiento. Una vez localizado el ejemplo de entrenamiento más similar, dado que éste ha sido previamente categorizado en forma manual, se sabe a qué categoría pertenece y, por ende, a qué categoría se debe asignar el ejemplo que se está clasificando. Una de las variantes más conocidas de este algoritmo es la del K-Nearest Neighbour o KNN, que consiste en tomar los k ejemplos más parecidos, en lugar de tomar sólo el primero. Como en esos k ejemplos los habrá, presumiblemente, de varias categorías, se suman los coeficientes de cada uno de los ejemplos de cada una de ellas. La que más puntos acumule, será la candidata idónea [Figuerola et al., 2004]. El KNN une a su sencillez una eficacia notable. Se observa que el proceso de entrenamiento no es más que la indización o descripción automática de los ejemplos, y que tanto dicho entrenamiento como la propia categorización pueden llevarse a cabo con instrumentos bien conocidos y disponibles para cualquiera. Por otra parte, numerosas pruebas experimentales han mostrado su eficacia; éste es el caso de los experimentos publicados sobre diversas colecciones de ejemplos de prueba [Yang, 1999; Figuerola et al., 2004; Molina López y García Herrero, 2006]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 15 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

39 ESTADO DE LA CUESTIÓN Redes Neuronales En esta sección se comienza con una introducción general al tema (Sección ), luego de la cual se describe en detalle el algoritmo SOM (Sección ) Una Introducción a las Redes Neuronales Las redes neuronales, en general, han sido propuestas en numerosas ocasiones como instrumentos útiles para la recuperación de información y también para la clasificación automática. De una manera genérica, una de las principales aplicaciones de las redes neuronales es el reconocimiento de patrones. No es de extrañar, por tanto, que se hayan aplicado a problemas de categorización de ejemplos. Básicamente, una red neuronal consta de varias capas de unidades de procesamiento o neuronas interconectadas; la capa de entrada recibe parámetros, mientras que las unidades o neuronas de la capa de salida mapea clases o categorías. Las interconexiones tienen pesos, es decir, un coeficiente que expresa la mayor o menor fuerza de la conexión. Es posible entrenar una red para que, dada una entrada determinada (los parámetros de un ejemplo), produzca la salida deseada (la clase que corresponde a ese ejemplo). El proceso de entrenamiento consta de un ajuste de los pesos de las interconexiones, a fin de que la salida sea la deseada [Oard, 1994; Figuerola et al., 2004] Algoritmo SOM Existen diversos tipos de redes neuronales. Una de las redes neuronales más conocidas son los denominados Mapas Autorganizados o SOM (Self Organizing Maps), o también Mapas de Kohonen, que ha sido asimismo utilizado en la experimentación llevada a cabo en el presente trabajo (Sección 6.2). Numerosos trabajos aplican este tipo de redes. De mayor impacto ha sido el proyecto que ha desarrollado la herramienta WEBSOM [Honkela et al., 1997; Kaski, 1997; Kohonen et al., 2000] que ha generado una buena cantidad de literatura. WEBSOM es básicamente una herramienta de organización automática de ejemplos y, sobre todo, de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 16 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

40 ESTADO DE LA CUESTIÓN visualización de dicha organización [Lin et al., 1994; Honkela et al. 1997; Kohonen et al., 2000_a; Kohonen et al, 2000_b; Figuerola et al., 2004]. La clasificación automática de datos puede conseguirse entonces mediante diversas técnicas. Se han revisado algunos de los algoritmos más frecuentes en clasificación supervisada de datos; al margen de la mayor o menor complejidad de cada uno de ellos, parece que se trata de técnicas lo suficientemente maduras, cuyos resultados son equiparables a los conseguidos por clasificadores inteligentes, es decir, personas. Algunas cuestiones, sin embargo, quedan por resolver; por ejemplo, las características idóneas de las colecciones de entrenamiento, tanto en tamaño como en distribución de las diferentes categorías. También, la mayor o menor capacidad de adaptación a cambios en los contenidos de las propias clases. Con el paso del tiempo los datos contendrán parámetros en mayor o menor medida diferentes a los que aparecían en los datos que se usaron para el entrenamiento. Las necesidades, incluso la capacidad de captar los cambios en los datos y clases, son cuestiones abiertas. Por otra parte, la aparición de tipos nuevos de datos necesita otro tipo de respuestas. Así, los datos multimedia difícilmente pueden representarse como vectores de términos, puesto que no consisten en texto. Las propias páginas Web, por ejemplo, aunque siguen siendo datos textuales en buena medida, incorporan otros elementos de información que es necesario recoger (no sólo las imágenes o el sonido sino también los propios enlaces), los llamados meta datos. Diversos trabajos se han centrado en esta cuestión, pero parecería que aún queda bastante por hacer [Noel et al., 2003; Figuerola et al., 2004]. En cuanto a la utilización de SOM, existen evidencias que demuestran que en el cerebro hay neuronas que se organizan en muchas zonas, de forma que las informaciones captadas del entorno a través de los órganos sensoriales se representan internamente en forma de mapas bidimensionales [Beveridge, 1996; Kogan, 2007]. Por ejemplo, en el sistema visual se han detectado mapas del espacio visual en zonas del córtex (capa externa del cerebro). También en el sistema auditivo se detecta una organización según la frecuencia a la que cada neurona alcanza mayor respuesta [Hilera González y Martínez Hernando, 2000; Kogan, 2007]. Aunque en gran medida esta organización neuronal está predeterminada genéticamente, es probable que parte de ella se origine mediante el aprendizaje. Esto sugiere, por tanto, que el cerebro podría poseer capacidad inherente de formar mapas topológicos de las informaciones recibidas del exterior [Kogan, 2007]. Las redes neuronales se comportan mejor en situaciones en las cuales la salida no es lineal o con problemas complejos en que no requieren una solución de absoluta precisión. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 17 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

41 ESTADO DE LA CUESTIÓN También son ideales en situaciones donde una gran cantidad de datos históricos están disponibles para el entrenamiento y donde se efectuará una solución de caja negra y no se requerirá una explicación detallada [Sal, 2008]. A partir de estas ideas, Teuvo Kohonen presentó en 1982 un sistema con un comportamiento semejante. Se trata de un modelo de red neuronal con capacidad para formar mapas de características, de manera similar a como sucede en el cerebro humano. El objetivo de Kohonen era demostrar que un estímulo externo (la información de entrada) por sí solo, suponiendo una estructura propia y una descripción funcional del comportamiento de la red, era suficiente para forzar la formación de esos mapas. Este es el modelo llamado Self Organizing Maps (SOM) que se basa en el principio de formación de mapas topológicos para establecer características comunes entre las informaciones (vectores) de entrada a la red [Kohonen, 1982; Kogan, 2007]. Este modelo es uno de los más populares que se utilizan en redes neuronales artificiales y pertenece a la categoría de redes con aprendizaje competitivo [Kogan, 2007]. El algoritmo de aprendizaje del SOM está basado sobre el aprendizaje no supervisado y competitivo, lo cual quiere decir que no se necesita intervención humana durante el mismo y que se necesita saber muy poco sobre las características de la información de entrada. Se podría, por ejemplo, usar SOM para clasificar datos sin saber a qué clase pertenecen estos [Hollmen, 1996; Kogan, 2007]. Dicho modelo como ya se señaló anteriormente- provee, por intermedio del propio algoritmo, un mapa topológico de datos que se representan en varias dimensiones utilizando unidades de mapeo (las neuronas), simplificando así el problema [Kohonen, 2001; Kogan, 2007]. Las neuronas usualmente forman un mapa bidimensional por lo que el mapeo de un problema ocurre con muchas dimensiones en el espacio a un plano [Hollmen, 1996; Kogan, 2007]. La propiedad de preservar la topología significa que el mapeo preserva las distancias relativas entre puntos [Kohonen, 1982; Kogan, 2007]. Los puntos que están cerca unos de los otros en el espacio original de entrada son mapeados a neuronas cercanas en el SOM. Por lo tanto, el SOM sirve como herramienta de análisis de clases de datos de muchas dimensiones [Vesanto y Alhoniemi, 2000; Kogan, 2007]. Además, tiene la capacidad de generalizar, lo que implica que la red puede reconocer o caracterizar entradas que nunca antes había encontrado. Una nueva entrada es entonces asimilada por la neurona a la cual queda mapeada [Essenreiter et al., 1999; Kogan, 2007]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 18 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

42 ESTADO DE LA CUESTIÓN El SOM es, por tanto, un vector bidimensional de neuronas, donde cada neurona es un vector llamado patrón y tiene una representación propia. La neurona tiene las mismas dimensiones que los vectores de entrada (datos de entrada), es decir que es N-dimensional. Las neuronas están conectadas a las neuronas adyacentes por una relación de vecinos. Esta dicta la topología (también llamada estructura) del mapa. Usualmente, las neuronas están conectadas unas con otras en una topología hexagonal o rectangular. Se puede definir una distancia entre las neuronas de acuerdo a su relación de topología. Las mismas pueden ser vecinas inmediatas (las neuronas adyacentes) que pertenecen al vecindario N de la neurona n. La función de vecindario es una función decreciente en el tiempo: N = N (t). Existen vecindarios de distintos tamaños y son concéntricos [Kogan, 2007]. En el algoritmo básico del SOM, las relaciones topológicas y el número de neuronas son ambos fijos desde el comienzo. Este número de neuronas determina la escala o la granularidad del modelo resultante. La selección de la granularidad afecta la certeza y la capacidad de generalizar del modelo. Debe tenerse en cuenta que la granularidad y la generalización son objetivos contradictorios [Hollmen, 1996; Kogan, 2007]. Mejorando el primero, se pierde en el segundo, y viceversa. Esto se debe a que si se aumenta el primero se obtendrán muchos más grupos para poder clasificar los datos de entrada, evitando que se pueda generalizar el espacio en clases más abarcativas. De manera inversa, si se generaliza demasiado se puede perder la información que caracteriza a un grupo específico, que quedará incluido en otro por la falta de granularidad [Kogan, 2007]. Un algoritmo SOM comienza preprocesando los datos. Esto es, los datos que alimentan al SOM incluyen toda la información que toma la red. Si se le presenta información errónea, el resultado final será erróneo o de mala calidad. Entonces, el SOM, tanto como los otros modelos de redes neuronales, debe eliminar la información clasificada como ruido para que no ingrese al sistema, por lo cual se debe trabajar con un subconjunto de los datos. Estos deben ser relevantes para el modelo a analizar. También se deben eliminar los errores en los datos. Si los mismos se obtienen a través de una consulta a una base de datos, el resultado puede incluir datos erróneos debido a la falta de integridad de la base. Entonces, estos deben ser filtrados usando conocimientos previos del dominio del problema y el sentido común [Kogan, 2007]. Comúnmente, los componentes de los datos de entrada se normalizan para tener una escala de 0 a 1. Esto asegura que por cada componente, la diferencia entre dos muestras contribuye con un valor igual a la distancia medida calculada entre una muestra de entrada TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 19 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

43 ESTADO DE LA CUESTIÓN y un patrón dados. Es decir que los datos deben estar previamente normalizados. De lo contrario, no será posible usar la distancia como una medida de similitud. Esta medida debe ser cuantificable, por lo que la codificación debe ser armónica con la medida de similitud utilizada. La medida más frecuentemente utilizada es la distancia euclídea. Los datos simbólicos no pueden ser procesados por un SOM como tales, por lo que deben ser transformados a una codificación adecuada [Kogan, 2007]. En cuanto a la fase de inicialización del valor de las neuronas que se produce a continuación, existen varios tipos de inicializaciones para los valores de las neuronas (patrones). Entre ellos se pueden nombrar la inicialización al azar y la inicialización utilizando las primeras muestras. En la inicialización al azar, se asignan valores aleatorios a los patrones. Se utiliza cuando se sabe muy poco o nada sobre los datos de entrada en el momento de comenzar el entrenamiento. La inicialización utilizando las primeras muestras, por su parte, utiliza los primeros datos de entrada asignándolos a los patrones. Tiene la ventaja de ubicarse automáticamente en la parte correspondiente del espacio de entrada [Kogan, 2007]. Luego de la inicialización se procede al entrenamiento, que es un proceso iterativo a través del tiempo. Requiere un esfuerzo computacional importante y, por lo tanto, consume mucho de ese tiempo. Consta de muestras del conjunto de datos de entrada que van ingresando a la red para que la misma las aprenda. El aprendizaje propiamente dicho consiste en elegir una neurona ganadora por medio de una medida de similitud y actualizar, en consecuencia, los valores de los patrones en el vecindario de la misma. Este proceso se repite varias veces en forma iterativa para poder ir refinando (y acotando) el error y acercar como ya se dijo las neuronas a una representación más adecuada de los datos de entrada [Kogan, 2007]. En un paso del entrenamiento, se toma un vector muestra de los datos de entrada. Este vector es presentado a todas las neuronas en la red y se calcula entonces la medida de similitud entre la muestra ingresada y todos los patrones. La unidad más parecida o Best Matching Unit (BMU) se elige como el prototipo con la mayor similitud con la muestra de entrada. Esta similitud usualmente se define con una medida de distancia vectorial. Por ejemplo, en el caso de la distancia euclídea, la BMU es la neurona más cercana a la muestra presentada en el espacio representado por todos los datos de entrada [Kogan, 2007]. La BMU es el patrón que más se parece al vector de entrada. Luego de encontrar la BMU, se actualizan todas las neuronas del SOM. Durante el procedimiento de actualización, la TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 20 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

44 ESTADO DE LA CUESTIÓN BMU se actualiza recursivamente para acercarse aún más al vector de entrada [Kogan, 2007]. Los vecinos topológicos de la BMU también se actualizan de manera similar utilizando una tasa de aprendizaje de menor valor. Este procedimiento acerca a la BMU y a sus vecinos topológicos hacia la muestra ingresada. El esfuerzo computacional consiste en encontrar una BMU entre todas las neuronas y actualizar cada uno de los patrones en el vecindario de la unidad ganadora. Si el vecindario es grande, entonces más patrones deberán ser actualizados. Este es el caso que se presenta en el comienzo del entrenamiento, donde se recomienda utilizar vecindarios grandes. En el caso de redes con muchas neuronas, gran parte del tiempo se utiliza buscando a la ganadora. Obviamente que, dependiendo del diseño del software y del hardware utilizados, estas consideraciones serán más o menos significativas [Kogan, 2007]. Por intermedio del procedimiento de actualización descrito, se forma una red elástica que durante el aprendizaje cae en una nube formada por los datos de entrada. Los patrones tienden a posicionarse allí donde los datos son densos, mientras que se tiende a tener pocos patrones donde los datos de entrada están más dispersos. Por lo tanto, la red tiende a aproximar la función de densidad de probabilidad de los datos de entrada [Kohonen, 2001; Kogan, 2007]. Existe una regla temporal de actualización y, por lo tanto (y como se mencionó anteriormente), este es un proceso de entrenamiento a través del tiempo. El vector de entrada es tomado en un determinado instante para ser procesado. La ya mencionada función de vecindario, que incluye una tasa temporal de aprendizaje, determina la forma en que serán actualizadas las neuronas vecinas. Se pueden utilizar distintos tipos de funciones de vecindario. La única restricción es que sean decrecientes alrededor de la neurona que corresponde al vector que representa la BMU. Por lo tanto, también podrían ser constantes alrededor de la neurona ganadora. La tasa de aprendizaje utilizada en la función vecindario es una función decreciente en el tiempo. Dos formas comúnmente usadas son la función lineal decreciente y la inversamente proporcional al tiempo. Se debe determinar previamente el valor inicial de la tasa de aprendizaje. Usualmente, cuando se utiliza una función inversa, el valor inicial puede ser mayor que en el caso lineal. El aprendizaje se realiza usualmente en dos fases: en la primera se utilizan valores relativamente altos de tasa de aprendizaje, mientras que en la segunda se utilizan valores más pequeños. Esto corresponde a adaptaciones que se van haciendo hasta que la red TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 21 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

45 ESTADO DE LA CUESTIÓN funciona correctamente. La elección de los valores iniciales de la tasa de aprendizaje y la forma en que estos van variando pueden modificar sensiblemente los resultados obtenidos [Kohonen, 2001; Kogan, 2007]. A continuación se sucede el proceso de visualización de los resultados. El SOM es una aproximación de la función de densidad de probabilidad de los datos de entrada y puede representarse su salida de modo que incluya una representación visual de dichos resultados [Kohonen, 2001; Kogan, 2007]. La representación U-Matrix (Unified Distance Matrix) del SOM visualiza la distancia entre neuronas adyacentes. La misma se calcula y se presenta con diferentes colores entre los nodos adyacentes. Un color oscuro entre neuronas corresponde a una distancia grande que representa un espacio importante entre los valores de los patrones en el espacio de entrada. Un color claro, en cambio, significa que los patrones están cerca unos de otros. Las áreas claras pueden pensarse como clases y las oscuras como separadores. Esta puede ser una representación muy útil de los datos de entrada sin tener información a priori sobre las clases [Kohonen, 2001; Kogan, 2007]. La separación de clases se logra con aprendizaje no supervisado, es decir, sin intervención humana. Enseñar a un SOM y representarla con la U-Matrix ofrece una forma rápida de analizar la distribución de los datos. Finalmente se produce la validación del modelo. Se pueden crear la cantidad de modelos que se quiera, pero antes de utilizar alguno de ellos, deben ser validados. La validación significa que el modelo debe ser probado para asegurar que devuelve valores razonables y certeros. La misma debe realizarse usando un conjunto independiente de datos. Éste es similar al utilizado para el entrenamiento pero no parte de él. Puede verse a este conjunto de prueba como un caso representativo del caso general [Kogan, 2007] Algoritmos Jerárquicos A continuación se expondrán las características de los algoritmos de agrupamiento denominados jerárquicos. Los algoritmos jerárquicos se caracterizan por generar una estructura de árbol (llamada dendograma), en la que cada nivel es un agrupamiento posible de los objetos de la TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 22 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

46 ESTADO DE LA CUESTIÓN colección. Cada vértice (nodo) del árbol es un grupo de elementos [Yolis et al., 2003; Jain et al., 1999]. La raíz del árbol (primer nivel) se compone de un sólo grupo que contiene todos los elementos. Cada hoja del último nivel del árbol es un grupo compuesto por un sólo elemento (hay tantas hojas como objetos tenga la colección). En los niveles intermedios, cada nodo del nivel n es dividido para formar sus hijos del nivel n + 1. Los algoritmos de agrupamiento jerárquicos fueron uno de los primeros enfoques para los problemas de categorización de documentos, y todavía se siguen utilizando debido a la forma simple e intuitiva en la que trabajan [Yolis et al., 2003; Dash y Liu, 2001]. De acuerdo a la metodología que aplican para obtener el dendograma, los algoritmos jerárquicos pueden dividirse en aglomerativos y divisivos [Yolis et al., 2003; Han et al., 2001]. Los métodos aglomerativos parten de las hojas del árbol, ubicando a cada elemento en su propio grupo, y en cada paso buscan los dos grupos más cercanos para juntarlos. Los divisivos, por su parte, hacen el camino inverso. Comenzando en la raíz, en cada paso seleccionan un grupo para dividirlo en dos, buscando que el agrupamiento resultante sea el mejor de acuerdo a un criterio predeterminado [Yolis et al., 2003]. Entre las características de estos dos métodos pueden destacarse las siguientes: a) Su forma de trabajo es simple e intuitiva. El enfoque utilizado por estos métodos es semejante al que utilizaría una persona para realizar la tarea del agrupamiento, especialmente los aglomerativos (comenzar juntando los documentos más similares entre si, y luego buscar similitudes entre los grupos). b) Su resultado es una serie de agrupamientos anidados. Esto facilita la revisión de los resultados por parte del usuario, que puede recorrer la estructura de árbol para ver agrupamientos con diferentes niveles de detalle [Yolis et al., 2003; Maarek et al., 2000]. c) Son deterministas. Al aplicar dos veces un algoritmo jerárquico a una colección de documentos, las dos veces seguirá el mismo camino hacia la solución. Hay algunos agrupamientos que el algoritmo nunca considerará, sin importar la cantidad de veces que se lo ejecute [Yolis et al., 2003; Steinbach et al., 2000]. d) No revisan las decisiones que toman en los pasos anteriores. Una vez que dos documentos se han asignado (en al caso de los aglomerativos) al mismo grupo (o se han colocado en distintos grupos, en el caso de los divisivos), ningún paso posterior TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 23 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

47 ESTADO DE LA CUESTIÓN los volverá (en el caso de los aglomerativos) a separar (o juntar, en el caso de los divisivos), por lo que una mala asignación en los primeros pasos no puede corregirse [Yolis et al. 2003; Cole, 1998]. e) Requieren grandes tiempos de cómputo La forma de buscar en cada paso (en el caso de los aglomerativos) los grupos a unir (o dividir, en los divisivos), hacen que las implementaciones conocidas de estos algoritmos tengan tiempos de implementación del orden de n 2 o n 3 [Yolis et al. 2003; Zamir y Etzioni, 1998]. En definitiva, si bien se acepta que los métodos jerárquicos aglomerativos obtienen resultados de buena calidad, los tiempos de cómputo requeridos hacen que no sean una solución factible para la mayoría de las aplicaciones prácticas [Yolis et al., 2003; Cutting et al., 1992; Cole, 1998; Dash y Liu, 2001; Zamir y Etzioni, 1998] Algoritmos Particionales Se inicia la presente sección con una introducción general al tema (Sección ), luego de la cual se describe en detalle el algoritmo K-means (Sección ), como así también los algoritmos Bisecting K-means y Bisecting K-means con refinamiento (Sección ) y, por último, se lleva a cabo el desarrollo teórico de los algoritmos genéticos (Sección ) Una Introducción Teórica General a los Algoritmos Particionales A continuación se analizarán las características de los algoritmos de agrupamiento particionales. Los métodos de optimización o particionales, que utilizan justamente los algoritmos denominados particionales, se diferencian de los jerárquicos en que no van generando distintos niveles de agrupamiento de los objetos, sino que trabajan en un sólo nivel, en el que se refina (optimiza) un agrupamiento [Yolis et al. 2003; Everitt, 1993]. Las técnicas de optimización se están comenzando a utilizar con más frecuencia en aplicaciones de categorización automática de documentos debido a requieren TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 24 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

48 ESTADO DE LA CUESTIÓN considerablemente menos recursos que los algoritmos jerárquicos [Yolis et al., 2003; Zaho y Karypis, 2001]. Estos métodos asumen que el valor de k (la cantidad de grupos), está definida de antemano [Yolis et al., 2003; Qin He, 1996]. La estructura general de estos métodos se compone de los siguientes pasos [Yolis et al., 2003; Han, Kamber y Tung, 2001]: a) Seleccionar k puntos representantes (cada punto representa un grupo de la solución). b) Asignar cada elemento al grupo del representante más cercano, de forma de optimizar un determinado criterio. c) Actualizar los k puntos representantes de acuerdo a la composición de cada grupo. d) Volver al paso b), asignando otro elemento. e) Este ciclo se repite hasta que no sea posible mejorar el criterio de optimización. Existen numerosas variantes de algoritmos de optimización que implementan la estructura básica de cinco pasos descripta anteriormente. Estos algoritmos son muy similares entre sí, por lo que se describirá primeramente el algoritmo K-means que es el referente más típico, y luego se mencionarán los algoritmos Bisecting K-Means, Bisecting K-Means con refinamiento y, por último, los algoritmos genéticos [Yolis et al., 2003; Steinbach et al., 2000; Qin He, 1996; Jain et al., 1999; Han et al., 2001; Rasmussen, 1992]. Por otra parte, cabe señalar y recordar que las técnicas de Minería de Datos se clasifican en dos grandes categorías [Weiss e Indirkhya, 1998]: supervisadas o predictivas y no supervisadas o descriptivas, según el siguiente esquema de técnicas [Molina López y García Herrero, 2006]: Técnicas: a) No supervisadas i. Clustering 1. Numérico 2. Conceptual 3. Probabilístico ii. Asociación 1. A Priori TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 25 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

49 ESTADO DE LA CUESTIÓN b) Supervisadas i. Predicción 1. Regresión 2. Árboles de Predicción 3. Estimador de Núcleos ii. Clasificación 1. Tabla de Decisión 2. Árboles de Decisión 3. Inducción de Reglas 4. Bayesiana 5. Basado sobre Ejemplares 6. Redes de Neuronas 7. Lógica Borrosa 8. Técnicas Genéticas Algoritmo K-means Uno de los algoritmos más utilizados para hacer clustering, como se dijo ya, es el k-medias (K-means) [Molina López y García Herrero, 2006; MacQueen, 1967], que se caracteriza por su sencillez. En primer lugar se debe especificar por adelantado cuantos clusters se van a crear, éste es el parámetro k, para lo cual se seleccionan k elementos aleatoriamente, que representaran el centro o media de cada cluster. A continuación cada una de las instancias, ejemplos, es asignada al centro del cluster más cercano de acuerdo con la distancia euclídea que le separa de él. Para cada uno de los clusters así construidos se calcula el centroide de todas sus instancias. Estos centroides son tomados como los nuevos centros de sus respectivos clusters. Finalmente se repite el proceso completo con los nuevos centros de los clusters. La iteración continúa hasta que se repite la asignación de los mismos ejemplos a los mismos clusters, ya que los puntos centrales de los clusters se han estabilizado y permanecerán invariables después de cada iteración. El algoritmo de k-medias se puede entonces esquematizar de la manera siguiente: a) Elegir k ejemplos que actúan como semillas (k es el número de clusters). b) Para cada ejemplo, añadir dicho ejemplo a la clase más similar. c) Calcular el centroide de cada clase, que pasan a ser las nuevas semillas. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 26 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

50 ESTADO DE LA CUESTIÓN d) Si no se llega a un criterio de convergencia (por ejemplo, dos iteraciones no cambian las clasificaciones de los ejemplos), volver al paso b). Para obtener los centroides, se calcula la media (mean) o la moda (mode) según se trate de atributos numéricos o simbólicos. Una vez inicializados los datos, se comienza el bucle del algoritmo. Los árboles de predicción numérica son similares a los árboles de decisión, excepto en que la clase a predecir es continua. En este caso, cada nodo hoja almacena un valor de clase consistente en la media de las instancias que se clasifican con esa hoja, en cuyo caso se está hablando de un árbol de regresión, o bien un modelo lineal que predice el valor de la clase, en cuyo caso se habla de árbol de modelos [Molina López y García Herrero, 2006]. Referido siempre entonces al algoritmo K-means, puede redefinirse lo anterior diciendo que utiliza a los centroides de cada grupo como sus puntos representativos [Yolis et al. 2003; McQueen, 1967]. Partiendo de una selección inicial de k centroides (que pueden ser k elementos de la colección seleccionados al azar, o los que se obtengan mediante la aplicación de alguna técnica de inicialización), cada uno de los elementos de la colección se asigna al grupo con el centroide más cercano. A continuación, se calcula el centroide de cada uno de los grupos resultantes. En los primeros pasos se obtienen las mayores diferencias entre los centroides originales y los calculados luego de las reasignaciones. Los puntos de la colección vuelven a asignarse al grupo del centroide más cercano, y estos pasos se repiten hasta que los k centroides no cambian luego de una iteración (esto es equivalente a decir que el valor de la función utilizada como criterio de optimización no varía). El algoritmo K-means encuentra una categorización que representa un óptimo local del criterio elegido [Yolis et al., 2003; Bradley y Fayyad, 1998]. Entre las características de estos métodos que se acaban de confrontar, pueden destacarse las siguientes: a) Pueden ser no deterministas. Partiendo del mismo agrupamiento inicial, los métodos llegarán siempre a la misma solución. Sin embargo, casi todos los métodos para la selección inicial son no deterministas. El algoritmo evaluará diferentes agrupamientos cada vez que se lo ejecute, y (si los grupos no están claramente separados) podrá llegar a soluciones distintas [Yolis et al., 2003; Steinbach et al., 2000]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 27 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

51 ESTADO DE LA CUESTIÓN b) Pueden corregir errores cometidos en pasos anteriores. En cada paso del algoritmo los objetos de la colección se asignan al grupo más apropiado según el criterio de optimización. De esta manera, el algoritmo va refinando el agrupamiento en cada iteración [Yolis et al., 2003; Qin He, 1996]. c) Pueden implementarse en forma eficiente. Las restricciones de recursos son la causa principal por la que se utilizan este tipo de métodos. La mayoría de las variantes pueden implementarse de forma que sus tiempos de ejecución sean del orden de n. Si bien el algoritmo K-Means es mucho más eficiente que los algoritmos jerárquicos, es dependiente de la selección inicial de centroides. Sus resultados pueden ser bastante pobres y suelen variar mucho si se aplica varias veces a la misma colección de elementos (documentos, por ejemplo), ya que si la selección de centroides al azar es mala, la solución encontrada también lo será [Yolis et al., 2003; Han et al., 2001] Algoritmo Bisecting K-means y Bisecting K-means con Refinamiento Con respecto al algoritmo Bisecting K-means, puede señalarse que varios investigadores han presentado alternativas a los algoritmos tradicionales de categorización, siendo el algoritmo Bisecting K-Means una de ellas. La calidad de los resultados obtenidos con la aplicación de este algoritmo supera tanto a los algoritmos jerárquicos aglomerativos como al K-Means, con tiempos de cómputo lineales en relación con la cantidad de elementos a agrupar [Yolis et al. 2003; Cutting et al., 1992; Zhao y Karypis, 2001; Steinbach et al., 2000; Bradley y Fayyad, 1998]. El algoritmo Bisecting K-Means sigue los siguientes pasos: a) Colocar todos los documentos en un sólo grupo. b) Elegir el grupo más grande para dividirlo. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 28 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

52 ESTADO DE LA CUESTIÓN c) Dividir el grupo en 2 (dos) subgrupos usando el algoritmo K-Means (paso de bisección). d) Repetir el paso de bisección 5 (cinco) veces, y tomar la división que lleve a una mayor similitud promedio. e) Repetir los últimos 3 (tres) pasos anteriores hasta alcanzar el número de grupos deseado. Al utilizar el algoritmo K-Means para formar solamente 2 (dos) grupos cada vez, y repetir 5 (cinco) veces cada división, se intenta atenuar la dependencia de este algoritmo con la selección inicial de los representantes. En cuanto a la variante del algoritmo Bisecting K-means conocida como Bisecting K-means con refinamiento, la misma consiste en refinar la solución obtenida con el algoritmo Bisecting K-Means utilizando el algoritmo K-Means estándar. El agrupamiento generado por el algoritmo Bisecting K-Means se toma como el punto de partida para el algoritmo K-Means. Este refinamiento apunta a corregir posibles asignaciones incorrectas a los grupos que se podrían haber realizado durante las fases de división del algoritmo. Los resultados muestran que el paso de refinamiento mejora la calidad de las soluciones obtenidas. Aunque el algoritmo Bisecting K-Means ha demostrado obtener mejores soluciones que el algoritmo K-means y los métodos jerárquicos aglomerativos, en tiempos de cómputo lineales con la cantidad de elementos a agrupar, la forma en que explora el espacio de búsqueda es claramente poco óptima. Al momento de dividir un grupo, el algoritmo Bisecting K-Means realiza cinco divisiones diferentes del grupo (aplicando cinco veces el algoritmo K-means con k = 2 a los elementos del grupo), y luego elige una de ellas (la que más hace crecer el criterio de optimización), descartando las demás divisiones que creó. Esta forma de trabajo no es eficiente, dado que cuando el grupo es fácilmente divisible (hay dos subgrupos claramente definidos), las cinco corridas del algoritmo K-Means encontrarán la misma división, o divisiones con muy pocas variaciones. En este caso, el algoritmo estaría repitiendo cinco veces el mismo trabajo. Además, cuando no hay dos subgrupos claramente definidos, las cinco corridas del algoritmo K-Means encontrarán divisiones diferentes. En este caso, el problema es que el algoritmo Bisecting K-Means no tiene ningún mecanismo para aprovechar el trabajo realizado al armar las divisiones que son descartadas. Es muy posible que en alguna de ellas haya encontrado un grupo excelente y uno muy malo, que en promedio, hagan que descarte esa división, y no tiene TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 29 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

53 ESTADO DE LA CUESTIÓN ningún mecanismo que le permita quedarse con la parte buena y descartar sólo lo malo [Yolis et al., 2003; Steinbach et al., 2000] Algoritmos Genéticos A continuación se describirán las características de los ya anteriormente mencionados algoritmos genéticos. Los algoritmos genéticos combinan las nociones de supervivencia del más apto con un intercambio estructurado y aleatorio de características entre individuos de una población de posibles soluciones, conformando un algoritmo de búsqueda que puede aplicarse para resolver problemas de optimización en diversos campos [Yolis et al., 2003; Holland, 1975; Goldberg, 1989]. Imitando la mecánica de la evolución biológica en la naturaleza, los algoritmos genéticos operan sobre una población compuesta de posibles soluciones al problema. Cada elemento de la población se denomina cromosoma. Un cromosoma es el representante, dentro del algoritmo genético, de una posible solución al problema. La forma en que los cromosomas codifican a la solución se denomina representación. El algoritmo genético va creando nuevas generaciones de esta población, cuyos individuos son cada vez mejores soluciones al problema. La creación de una nueva generación de individuos se produce aplicando a la generación anterior operadores genéticos, adaptados de la genética natural. El proceso comienza seleccionando un número de cromosomas para que conformen la población inicial. A continuación se evalúa la función de adaptación para estos individuos. La función de adaptación da una medida de la aptitud del cromosoma para sobrevivir en su entorno. Debe estar definida de tal forma que los cromosomas que representen mejores soluciones tengan valores más altos de adaptación. Los individuos más aptos se seleccionan en parejas para reproducirse. La reproducción genera nuevos cromosomas que combinan características de ambos padres. Estos nuevos cromosomas reemplazan a los individuos con menores valores de adaptación. A continuación, algunos cromosomas son seleccionados al azar para ser mutados. La mutación consiste en aplicar un cambio aleatorio en su estructura. Luego, los nuevos cromosomas deben incorporarse a la población. Estos cromosomas deben reemplazar a cromosomas ya existentes. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 30 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

54 ESTADO DE LA CUESTIÓN Hay varios criterios que pueden utilizarse para elegir a los cromosomas que serán reemplazados. El ciclo de selección, reproducción y mutación se repite hasta que se cumple el criterio de terminación del algoritmo, momento en el cual el cromosoma mejor adaptado se devuelve como solución [Yolis et al. 2003; Yang y Liu 1999] Algoritmos de Inducción En esta sección se hace primero una introducción a los algoritmos de inducción (Sección 2.2.1), profundizando luego el particular el desarrollo teórico de la familia de algoritmos TDIDT (Sección 2.2.2) y el de los otros algoritmos de inducción, no pertenecientes a dicha familia, que han sido utilizados en la experimentación llevada adelante en el presente estudio (Sección 2.2.3) Introducción a los Algoritmos de Inducción A continuación, en el resto de este capítulo, se detallarán las características de los algoritmos de inducción, en particular los utilizados en el presente trabajo, ya sean los de la familia TDIDT (Sección 2.2.2) como los no pertenecientes a ella (Sección 2.2.3) La familia TDIDT de Algoritmos de Inducción En la presente sección se hace una introducción teórica a los algoritmos de esta familia (Sección ), para continuar con una descripción detallada del algoritmo ID3 (Sección ), del algoritmo C4.5 (Sección ) y del algoritmo C5.0 (Sección ). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 31 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

55 ESTADO DE LA CUESTIÓN Una Introducción Teórica a los Algoritmos de la Familia TDIDT La familia de los algoritmos Top Down Induction of Decision Trees (TDIDT), pertenece a los métodos inductivos del aprendizaje automático que aprenden a partir de ejemplos preclasificados [Quinlan, 1986; Kogan, 2007]. En minería de datos, por ejemplo, se utiliza para modelar las clasificaciones en los datos mediante árboles de decisión. El Aprendizaje Automático (Machine Learning) es el campo dedicado al desarrollo de métodos computacionales para los procesos de aprendizaje y a la aplicación de los sistemas informáticos de aprendizaje en problemas prácticos [Michalski et al., 1998]. La Minería de Datos (comúnmente conocida como Data Mining), según se expuso anteriormente, es la búsqueda de patrones e importantes regularidades en bases de datos de gran volumen [Michalski et al., 1998]. También puede definirse como el proceso de extraer información previamente desconocida, válida y realizable de grandes bases de datos y entonces utilizar la información para efectuar decisiones de negocio cruciales [Sal, 2008]. La Minería de Datos utiliza métodos y estrategias de otras áreas o ciencias, entre las cuales se puede nombrar al Aprendizaje Automático. Cuando este tipo de técnicas se utilizan para realizar la minería, como ya se señaló, se dice que se está ante una Minería de Datos Inteligente [Servente y García Martínez, 2002]. Los árboles de decisión representan una estructura de datos que organiza eficazmente los descriptores; dichos árboles son construidos de forma tal que en cada nodo se realiza una prueba sobre el valor de los descriptores y, de acuerdo con la respuesta, se va descendiendo en las ramas hasta llegar al final del camino, donde se encuentra el valor del clasificador [Servente y García Martínez, 2002; Kogan, 2007]. Se puede analizar un árbol de decisión como una caja negra en función de cuyos parámetros (descriptores) se obtiene un cierto valor del clasificador. También puede analizarse como una disyunción de conjunciones, donde cada camino desde la raíz hasta las hojas representa una conjunción, y todos los caminos son alternativos, es decir, son disyunciones. Los árboles TDIDT, a los cuales pertenecen los generados por los algoritmos ID3 y C4.5, entre otros, se construyen a partir del llamado método de Hunt que incluye calcular la ganancia de información, la poda de árboles generados y la aplicación del principio de longitud de descripción mínima [Hunt et al., 1966; Quinlan, 1986; García Martínez, 1997; Kogan, 2007]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 32 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

56 ESTADO DE LA CUESTIÓN La estructura de este método para construir un árbol de decisión a partir de un conjunto de datos de entrenamiento se detalla a continuación. Con varias clases, existen tres posibilidades: a) En la primera de ellas, el conjunto contiene uno o más casos, todos pertenecientes a una única clase. En este caso, el árbol de decisión para el conjunto es una hoja identificando la clase. b) Si el conjunto de datos no contiene ningún caso, el árbol de decisión es una hoja, pero la clase asociada debe ser determinada por información que no pertenezca al conjunto. Por ejemplo, una hoja puede escogerse de acuerdo a conocimientos de base del dominio, como ser la clase mayoritaria. c) Finalmente, si el conjunto contiene casos pertenecientes a varias clases, la idea consiste en refinarlo en subconjuntos de casos que tiendan o parezcan tender hacia una colección de casos pertenecientes a una única clase. Se elige una prueba basada sobre una única variable, que tiene uno o más resultados, mutuamente excluyentes, y el conjunto se particiona en subconjuntos donde cada uno contiene todos los casos del conjunto que tienen un resultado dado para la prueba elegida. El árbol de decisión para el conjunto consiste en un nodo de decisión identificando la prueba, con una rama para cada resultado posible. El mecanismo de construcción del árbol se aplica el a cada subconjunto de datos de entrenamiento, para que la i-ésima rama lleve al árbol de decisión construido por el subconjunto de datos de entrenamiento correspondiente a ella [Hunt et al., 1966; Kogan, 2007]. El siguiente paso es el cálculo de la ganancia de información. En los casos en los que el conjunto contiene ejemplos pertenecientes a distintas clases, se realiza una prueba sobre las distintas variables y se realiza una partición según la mejor variable. Para encontrar la mejor variable, se utiliza la teoría de la información, que sostiene que la información se maximiza cuando la entropía se minimiza. La entropía determina la condición de azarosidad o de desestructuración de un conjunto. La ganancia en información puede calcularse como la disminución en entropía. A continuación se produce la poda de los árboles generados. Existen varias razones para la poda de los árboles generados por los métodos de TDIDT [Michalski et al., 1998; Kogan, 2007]. Entre ellas podemos nombrar la sobre generalización, la evaluación de variables poco importantes o significativas, y el gran tamaño del árbol obtenido. En el primer caso, un árbol puede haber sido construido a partir de ejemplos con ruido, con lo TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 33 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

57 ESTADO DE LA CUESTIÓN cual algunas ramas del árbol pueden ser engañosas; en cuanto a la evaluación de variables no relevantes, éstas deben podarse ya que sólo agregan niveles en el árbol y no contribuyen a la ganancia de información. Por último, si el árbol obtenido es demasiado profundo o demasiado frondoso, se dificulta la interpretación por parte del usuario, con lo cual hubiera sido lo mismo utilizar un método de caja negra. Existen dos enfoques para podar los árboles: la pre poda (preprunning) y la post poda (postprunning). En el primer caso se detiene el crecimiento del árbol cuando la ganancia de información producida al dividir un conjunto no supera un umbral determinado, mientras que en la post poda se podan algunas ramas una vez que se ha terminado de construir el árbol. El primer enfoque tiene la ventaja de no perder tiempo en construir una estructura que luego será simplificada en el árbol final. El método típico en estos casos es buscar la mejor manera de partir el subconjunto y evaluar la partición desde el punto de vista estadístico mediante la teoría de la ganancia de información, reducción de errores, etcétera. Si esta evaluación es menor que un límite predeterminado, la división se descarta y el árbol para el subconjunto es simplemente la hoja más apropiada. Sin embargo, este tipo de método tiene la desventaja de la dificultad para detener una partición en el momento adecuado. Un límite muy alto puede terminar con la partición antes de que los beneficios de particiones subsiguientes parezcan evidentes, mientras que un límite demasiado bajo resulta en una simplificación demasiado leve. El segundo enfoque (utilizado por los algoritmos ID3 y C4.5, entre otros), procede a la simplificación una vez construido el árbol según los criterios propios de cada uno de los algoritmos [Quinlan, 1986; Quinlan, 1993; Kogan, 2007]. El principio de longitud de descripción mínima (MDL, Minimum Description Length) sostiene que la mejor teoría para un conjunto de datos es aquella que minimiza el tamaño de la teoría utilizada y la cantidad de información necesaria para especificar las excepciones. Desde el punto de vista del aprendizaje automático esto significa que, dado un conjunto de instancias, un sistema de aprendizaje infiere una teoría a partir de ellas. Supóngase una analogía con el campo de las comunicaciones. Según ello, la teoría con las excepciones debe ser transmitida por un canal perfecto. El MDL sostiene que la mejor generalización es aquella que requiere la menor cantidad de bits para transmitir la generalización junto con los ejemplos a partir de la cual fue generada. Esto evita las teorías que satisfacen los datos al extremo sobre ajuste, ya que los ejemplos se transmiten también, y las teorías demasiado extensas serán penalizadas. Por otro lado, también se puede transmitir la teoría nula que no ayuda en lo más mínimo al transmitir los ejemplos. Pueden TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 34 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

58 ESTADO DE LA CUESTIÓN transmitirse entonces tanto las teorías simples como aquellas muy complejas y el MDL provee una forma de medir la performance de los algoritmos basándose en los datos de entrenamiento únicamente. Esta parecería ser la solución ideal al problema de medir la performance [Quinlan, 1986; Quinlan, 1993; Mitchell, 2000; Kogan, 2007]. La aplicación del principio MDL toma como punto de partida la suposición de que un sistema de aprendizaje genera una teoría basada sobre un conjunto de entrenamiento, y de que se requiere una cierta cantidad de bits para codificarla. Dada la teoría, el conjunto de entrenamiento puede codificarse en una cantidad determinada de bits, que está dada por la función de ganancia de información (sumando todos los miembros del conjunto de entrenamiento, lo cual da la longitud de descripción total de la teoría). El principio MDL recomienda la teoría que minimiza esta suma. Hay que recordar que los algoritmos de la familia TDIDT realizan una búsqueda en el espacio de hipótesis posibles, constituido por todos los árboles de decisión posibles. Su sesgo inductivo, siguiendo el principio de la Afeitadora de Occam, es una preferencia sobre los árboles pequeños frente a los árboles más profundos y frondosos [Mitchell, 2000; Servente y García Martínez, 2002; Kogan, 2007]. La heurística principal de los algoritmos de la familia TDIDT es el proceso de generación de un árbol de decisión inicial a partir de un conjunto de datos de entrenamiento. La idea original está entonces basada sobre un trabajo que Hunt comenzó con su equipo en los años cincuenta, y que terminó siendo publicado en 1966 [Hunt et al., 1966], el cual describe varios experimentos con diversas implementaciones de sistemas de aprendizaje de conceptos (Concept Learning Systems, abreviado como CLS). Esta familia de algoritmos aplica el método divide y reinarás, que realiza en cada paso una partición de los datos del nodo según una prueba realizada sobre la mejor variable. Cualquier prueba que divida al árbol en una manera no trivial, tal que al menos dos subconjuntos distintos no estén vacíos, eventualmente resultará en una partición de subconjuntos de una única clase, aún cuando la mayoría de los subconjuntos contengan un solo ejemplo. Sin embargo, el proceso de construcción del árbol no apunta meramente a encontrar cualquier partición de este tipo, sino a encontrar un árbol que revele una estructura del dominio y, por lo tanto, tenga poder predictivo [Servente y García Martínez, 2002; Kogan, 2007]. Para ello, se necesita un número importante de casos en cada hoja o, dicho de otra manera, la partición debe tener la menor cantidad de clases posibles. En el caso ideal, se busca elegir en cada paso la prueba que genere el árbol más pequeño; es decir, se busca un árbol de decisión compacto que sea consistente con los datos de entrenamiento. Para ello se TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 35 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

59 ESTADO DE LA CUESTIÓN pueden explorar todos los árboles posibles y elegir el más simple, pero desafortunadamente un número exponencial de árboles debería ser analizado. El problema de encontrar el árbol de decisión más pequeño consistente con un conjunto de entrenamiento es de complejidad completa. La mayoría de los métodos de construcción de árboles de decisión, incluyendo los ya mencionados algoritmos C4.5 y el ID3, no permiten volver a estados anteriores. Una vez que se ha escogido una prueba para particionar el conjunto actual, típicamente basándose en la maximización de alguna medida local de progreso, la partición se concreta y las consecuencias de una elección alternativa no se exploran. Por este motivo, la elección debe ser cuidadosamente realizada. Para realizar la división de los datos en cada paso, Quinlan propone la utilización de los métodos de la teoría de la información en la elección de un criterio de división. En un principio, el algoritmo ID3 utilizaba la ganancia como criterio de división. Sin embargo, a partir de numerosas pruebas, se descubrió que este criterio no era efectivo en todos los casos y se obtenían mejores resultados si se normalizaba el criterio en cada paso. Por lo tanto, comenzó a utilizarse la proporción de ganancia de información, con mayor éxito [Quinlan, 1993; Kogan, 2007]. A continuación se presentan ambos criterios. En cuanto al criterio de ganancia, puede comenzarse diciendo que la definición de ganancia se presenta suponiendo que se tiene una prueba posible con una determinada cantidad de resultados, que particionan al conjunto de entrenamiento en tantos subconjuntos como resultados haya. Si la prueba se realiza sin explorar las divisiones subsiguientes en cada uno de los subconjuntos, la única información disponible para evaluar la partición es la distribución de clases en el conjunto de entrenamiento y en sus subconjuntos. Considerando una medida similar luego de que el conjunto de entrenamiento ha sido particionado de acuerdo a la cantidad de resultados de la prueba, la información esperada (entropía) puede determinarse como la suma ponderada de todos los subconjuntos. La variación de la entropía respecto al estado inicial mide la información ganada al partir el conjunto de acuerdo a la prueba. El criterio de ganancia, entonces, selecciona la prueba que maximice la ganancia de información. Es decir, antes de particionar los datos en cada nodo, se calcula la ganancia que resultaría de particionar el conjunto de datos según cada una de las variables posibles y se realiza la partición que resulta en la mayor ganancia [Kogan, 2007]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 36 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

60 ESTADO DE LA CUESTIÓN En lo referido al criterio de proporción de ganancia, debe antes que nada señalarse que el criterio de ganancia tiene un defecto muy serio, y es que presenta una tendencia muy fuerte a favorecer las pruebas con muchos resultados. Si se analiza una prueba sobre una variable que sea la clave primaria de un conjunto de datos, en la cual se obtendrá un único subconjunto para cada caso y para cada subconjunto se tendrá variación de entropía nula, entonces la ganancia de información será máxima. Desde el punto de vista de la predicción, este tipo de división no es útil. Esta tendencia inherente al criterio de ganancia puede corregirse mediante una suerte de normalización, en la cual se ajusta la ganancia aparente atribuible a pruebas con muchos resultados. Considérese para ello el contenido de información de un mensaje correspondiente a los resultados de las pruebas. Por analogía a la definición misma de la variación de entropía, se obtiene la información potencial al dividir el árbol en subconjuntos, mientras que la ganancia de información mide la información relevante a una clasificación que nace de la misma división. Entonces, la denominada proporción de ganancia expresa la proporción útil de información generada en la partición. Si la partición es casi trivial, la información de la división será pequeña y esta proporción se volverá inestable. Para evitar este fenómeno, el criterio de proporción de ganancia selecciona una prueba que maximice la expresión anterior, sujeta a la restricción de que la información de la división sea grande, al menos tan grande como la ganancia promedio sobre todas las pruebas realizadas [Kogan, 2007]. Finalmente, a continuación se construye el árbol (con algoritmos como el ID3 o el C4.5). Se describirán más adelante los detalles de dicha construcción Algoritmo ID3 Como ya se dijo, el algoritmo ID3 (Induction of Decision Trees), diseñado en 1993 por J. Ross Quinlan [Quinlan, 1993], toma objetos de una clase conocida y los describe en términos de una colección fija de propiedades o de variables, produciendo un árbol de decisión sobre estas variables, el cual clasifica correctamente todos los objetos [Quinlan, 1986; Quinlan, 1993; Kogan, 2007]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 37 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

61 ESTADO DE LA CUESTIÓN El ID3 es un sistema de aprendizaje supervisado que construye árboles de decisión a partir de un conjunto de ejemplos. Estos ejemplos o tuplas están constituidos por un conjunto de atributos y un clasificador o clase. Los dominios de los atributos y de las clases deben ser discretos (es decir, no pueden ser continuos). Además, las clases deben ser disjuntas. Las primeras versiones del ID3 generaban descripciones únicamente para dos clases, como ser positiva y negativa. En las versiones posteriores, se eliminó esta restricción, pero se mantuvo la restricción de clases disjuntas. El ID3 genera descripciones que clasifican a cada uno de los ejemplos del conjunto de entrenamiento. Este sistema tiene una buena performance en un amplio rango de aplicaciones de diversos dominios, como el dominio médico, el artificial y el análisis de juegos de ajedrez. El nivel de precisión en la clasificación generalmente es alto. Sin embargo, el sistema tiene algunas desventajas. Recuérdese que los atributos y las clases deben ser discretos y no pueden ser continuos. Además, aún cuando se cuente con conocimientos de dominio o conocimientos previos, el sistema no hace uso de ellos. A veces, los árboles son demasiado frondosos, lo cual conlleva una difícil interpretación. En esos casos pueden ser transformados en reglas de decisión para hacerlos más comprensibles [Servente y García Martínez, 2002]. Hay ciertas cualidades que diferencian a este algoritmo de otros sistemas generales de inferencia. La primera se basa en la forma en que el esfuerzo requerido para realizar una tarea de inducción crece con la dificultad de la tarea. El ID3 fue diseñado específicamente para trabajar con masas de objetos, y el tiempo requerido para procesar los datos crece sólo linealmente con la dificultad, como producto de la cantidad de objetos presentados como ejemplos, la cantidad de variables dadas para describir estos objetos y la complejidad del concepto a ser desarrollado (medido por la cantidad de nodos en el árbol de decisión). Esta linealidad se consigue a costa del poder descriptivo, ya que los conceptos desarrollados por el ID3 sólo toman la forma de árboles de decisión basados sobre las variables dadas, y esto es mucho más restrictivo que la lógica de primer orden o la lógica multivaluada, en la cual otros sistemas expresan sus conceptos [Quinlan, 1993]. El ID3 fue presentado como descendiente del CLS creado por Hunt [Hunt et al., 1966] y, como contrapartida de su antecesor, es un mecanismo mucho más simple para el descubrimiento de una colección de objetos pertenecientes a dos o más clases. Cada objeto debe estar descripto en términos de un conjunto fijo de variables, cada una de las cuales cuenta con su conjunto de posibles valores. Por ejemplo, la variable humedad puede tener los valores: {alta, baja}, y la variable clima, los valores: {soleado, nublado, lluvioso}. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 38 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

62 ESTADO DE LA CUESTIÓN Una regla de clasificación en la forma de un árbol de decisión puede construirse para cualquier conjunto de variables aplicando el procedimiento ideado por Quinlan [Quinlan, 1993]. Según ese procedimiento, si el conjunto está vacío, entonces se lo asocia arbitrariamente a cualquiera de las clases. Si, por el contrario, el conjunto contiene los representantes de varias clases, se selecciona una variable y se particiona el conjunto en subconjuntos disjuntos, donde cada uno de ellos contiene aquellos miembros del conjunto que tienen un valor determinado para la variable seleccionada. Cada uno de estos subconjuntos se maneja con la misma estrategia. El resultado es un árbol en el cual cada hoja contiene un nombre de clase y cada nodo interior especifica una variable para ser testeada con una rama correspondiente al valor de la variable. El objetivo del ID3 es, como ya se señaló, crear una descripción eficiente de un conjunto de datos mediante la utilización de un árbol de decisión. Dados datos consistentes, es decir, sin contradicción entre ellos, el árbol resultante describirá el conjunto de entrada a la perfección. Además, el árbol puede ser utilizado para predecir los valores de nuevos datos, asumiendo siempre que el conjunto de datos sobre el cual se trabaja es representativo de la totalidad de los datos. Dados entonces: un conjunto de datos, un conjunto de descriptores de cada dato y un clasificador/conjunto de clasificadores para cada objeto, se desea obtener un árbol de decisión simple basándose en la entropía, donde los nodos pueden ser: nodos intermedios (en donde se encuentran los descriptores escogidos según el criterio de entropía, que determinan cuál rama es la que debe tomarse) u hojas (estos son los nodos que determinan el valor del clasificador). Este procedimiento de formación de reglas funcionará siempre, dado que no existen dos objetos pertenecientes a distintas clases pero con idéntico valor para cada uno de sus variables; si este caso llegara a presentarse, las variables son consideradas inadecuadas para el proceso de clasificación. Hay dos conceptos importantes a tener en cuenta en el algoritmo ID3 [Blurock, 1996]: la entropía y el árbol de decisión. La entropía, según se indicó, se utiliza para encontrar el parámetro más significativo en la caracterización de un clasificador. El árbol de decisión es un medio eficiente e intuitivo para organizar los descriptores que pueden ser utilizados con funciones predictivas. El método que utiliza el algoritmo ID3 para la construcción de árboles de decisión en función de un conjunto de datos previamente clasificados [Kogan, 2007], puede consultarse en la Figura 2.1 a continuación: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 39 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

63 ESTADO DE LA CUESTIÓN Figura 2.1: Método utilizado por el algoritmo ID3 para la construcción de árboles de decisión La poda de los árboles de decisión se realiza con el objetivo de que éstos sean más comprensibles, lo cual implica que tengan menos niveles y/o sean menos frondosos. La poda aplicada en el ID3 se realiza una vez que el árbol ha sido generado y es un mecanismo bastante simple: si de un nodo nacen muchas ramas, las cuales terminan todas en la misma clase, entonces se reemplaza dicho nodo por una hoja con la clase común, en caso contrario, se analizan todos los nodos hijos. En cuanto a las limitaciones del ID3, cabe decir puede aplicarse a cualquier conjunto de datos, siempre y cuando las variables sean discretas. Este sistema no cuenta con la facilidad de trabajar con variables continuas ya que analiza la entropía sobre cada uno de los valores de una variable. Por lo tanto, tomaría cada valor de una variable continua individualmente en el cálculo de la entropía, lo cual no es útil en muchos de los dominios. Cuando se trabaja con variables continuas, generalmente se piensa en rangos de valores y no en valores particulares. Existen varias maneras de solucionar este problema del ID3, como por ejemplo la agrupación de valores o la discretización de los mismos [Blurock, 1996; Quinlan, 1989; Kogan, 2007]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 40 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

64 ESTADO DE LA CUESTIÓN Algoritmo C4.5 El algoritmo C4.5, por su parte, resolvió el problema de los atributos continuos mediante la discretización. El C4.5 se basa sobre el ID3. Por lo tanto, la estructura principal de ambos métodos es la misma. El C4.5 también construye un árbol de decisión mediante el algoritmo divide y reinarás y evalúa la información en cada caso utilizando los criterios de entropía y ganancia o proporción de ganancia, según sea el caso. A continuación, se explicarán las características particulares de este método que lo diferencian de su antecesor. El C4.5 no es una mera extensión del ID3, dado que acaba con muchas de sus limitaciones. Por ejemplo, permite trabajar con valores continuos para los atributos, separando los posibles resultados en dos ramas: una para aquellos Ai <= N y otra para Ai > N. Además, los árboles son menos frondosos porque cada hoja no cubre una clase en particular sino una distribución de clases, lo cual los hace menos profundos y menos frondosos. Este algoritmo fue propuesto como ya se señaló- por Quinlan en El C4.5 genera un árbol de decisión a partir de los datos mediante particiones realizadas recursivamente, según la estrategia de profundidad-primero (depth-first). Antes de cada partición de datos, el algoritmo considera todas las pruebas posibles que pueden dividir el conjunto de datos y selecciona la prueba que resulta en la mayor ganancia de información o en la mayor proporción de ganancia de información. Para cada atributo discreto, se considera una prueba con n resultados, siendo n el número de valores posibles que puede tomar el atributo. Para cada atributo continuo, se realiza una prueba binaria sobre cada uno de los valores que toma el atributo en los datos [Servente y García Martínez, 2002]. Tanto el ID3 como el C4.5 generan árboles y reglas de decisión a partir de datos preclasificados. Para construir los árboles se utiliza, según se acaba de indicar, el método de aprendizaje divide y reinarás, que particiona el conjunto de ejemplos en subconjuntos a medida que avanza; trabajar sobre cada subconjunto es más sencillo que trabajar sobre el total de los datos [Servente y García Martínez, 2002]. El ID3 y el C4.5 utilizan entonces, para la construcción del árbol, la estrategia de divide y reinarás para generar el árbol de decisión inicial a partir de un conjunto de datos de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 41 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

65 ESTADO DE LA CUESTIÓN entrenamiento. La idea original de esta estrategia se basa en el trabajo ya mencionado de Hunt de los años cincuenta, culminado en el libro Experiments in Induction [Hunt et al., 1966]. El método que utiliza el algoritmo C4.5 para la construcción de árboles de decisión es a grandes rasgos, entonces, muy similar al del ID3. Varía en la manera en que realiza las pruebas sobre las variables [Kogan, 2007]. Este método puede consultarse en la Figura 2.2 a continuación: Figura 2.2: Método utilizado por el algoritmo C4.5 para la construcción de árboles de decisión Los árboles de decisión demasiado grandes son difíciles de entender porque cada nodo debe ser interpretado dentro del contexto fijado por las ramas anteriores. En cualquier árbol de decisión, las condiciones que deben satisfacerse cuando un caso se clasifica por una hoja pueden encontrarse analizando los resultados de las pruebas en el camino recorrido desde la raíz. Es más, si el camino fuese transformado directamente en una regla de producción, dicha regla podría ser expresada como una conjunción de todas las condiciones que deben satisfacerse para llegar a la hoja. Consecuentemente, todos los antecedentes de las reglas generadas de esta manera son mutuamente excluyentes y exhaustivos. Para pasar a reglas de decisión, el ID3 recorre el TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 42 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

66 ESTADO DE LA CUESTIÓN árbol desde la raíz hasta las hojas en pre orden (de raíz a hojas, de izquierda a derecha) y genera una regla por cada camino recorrido. El antecedente de cada regla estará compuesto por la conjunción de las pruebas de valor de cada nodo visitado y la clase será la correspondiente a la hoja [Servente y García Martínez, 2002]. En cuanto a las características particulares del C4.5, cabe señalar que en cada nodo, el sistema debe decidir cuál prueba escoge para dividir los datos. Los tres tipos de pruebas posibles propuestas por el C4.5 son: a) La prueba estándar para las variables discretas, con un resultado y una rama para cada valor posible de la variable. b) Una prueba más compleja, basada sobre una variable discreta, en donde los valores posibles son asignados a un número variable de grupos con un resultado posible para cada grupo, en lugar de un resultado para cada valor. c) Una prueba binaria, que se realiza si una variable tiene valores numéricos continuos, con resultados comparados contra un cierto valor umbral o límite, el cual debe fijarse previamente. [Quinlan, 1988]. Todas estas pruebas se evalúan de la misma manera, mirando el resultado de la proporción de ganancia, o alternativamente, el de la ganancia resultante de la división que producen. Ha sido útil agregar una restricción adicional: para cualquier división, al menos dos de los subconjuntos generados deben contener un número razonable de casos. Esta restricción, que evita las subdivisiones casi triviales, es tenida en cuenta solamente cuando el conjunto en cuestión es pequeño. En cuanto a la poda de los árboles de decisión, el método recursivo de particionamiento para construir los árboles de decisión descriptos anteriormente, subdividirá el conjunto de entrenamiento hasta que la partición contenga casos de una única clase, o hasta que la prueba no ofrezca mejora alguna. Esto da como resultado, generalmente, un árbol muy complejo que sobre-ajusta los datos al inferir una estructura mayor que la requerida por los casos de entrenamiento [Quinlan, 1995; Mitchell, 2000; Kogan, 2007]. Además, el árbol inicial generalmente es extremadamente complejo y tiene una proporción de errores superior a la de un árbol más simple. Mientras que el aumento en complejidad se comprende a simple vista, la mayor proporción de errores puede ser más difícil de visualizar. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 43 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

67 ESTADO DE LA CUESTIÓN Para entender este problema, supóngase que se tiene un conjunto de datos con dos clases, donde una proporción de los casos pertenecen a la clase mayoritaria cuenta con probabilidad superior a la mitad. Si un clasificador asigna todos los casos con valores indeterminados a la clase mayoritaria, la proporción esperada de error es claramente lo que falta a esa probabilidad para llegar a la unidad. Si, en cambio, el clasificador asigna un caso a la clase mayoritaria con una cierta probabilidad y a la otra clase con la probabilidad restante para alcanzar el valor unidad, su proporción esperada de error es la suma de la probabilidad de que un caso perteneciente a la clase mayoritaria sea asignado a la otra clase, o sea el producto de ambas probabilidades, y de la probabilidad de que un caso perteneciente a la otra clase sea asignado a la clase mayoritaria, que es nuevamente dicho producto, aunque ahora en orden inverso de factores. Esta suma da como resultado el doble producto de ambas probabilidades. Como la probabilidad en cuestión es al menos la mitad, esto es generalmente superior a lo que falta para alcanzar el valor unidad, entonces el segundo clasificador tendrá una mayor proporción de errores. Un árbol de decisión complejo tiene una gran similitud con este segundo tipo de clasificador. Los casos no se relacionan a una clase, entonces, el árbol manda cada caso al azar a alguna de las hojas. Un árbol de decisión no se simplifica borrando todo el árbol a favor de una rama, sino que se eliminan las partes del árbol que no contribuyen a la exactitud de la clasificación para los nuevos casos, produciendo un árbol menos complejo, y por lo tanto, más comprensible [Kogan, 2007]. Por último se presentan los resultados, donde tanto el ID3 como el C4.5 generan un clasificador de la forma de un árbol de decisión, cuya estructura es una hoja, indicando una clase, o bien un nodo de decisión que especifica alguna prueba a ser realizada sobre un único atributo, con una rama y subárbol para cada valor posible de la prueba [Quinlan, 1986; Quinlan, 1993; Kogan, 2007]. El árbol de decisión generado por el C4.5 cuenta con varias características particulares, entre ellas que cada hoja tiene asociados dos números, que indican el número de casos de entrenamientos cubiertos por cada hoja y la cantidad de ellos clasificados erróneamente por la hoja. Esto es, en cierta manera, un estimador del éxito del árbol sobre los casos de entrenamiento. El ID3, en cambio, no clasifica erróneamente a los datos de entrenamiento, con lo cual no son necesarios este tipo de indicadores. Es por ello que este algoritmo, a diferencia del C4.5, corre el riesgo de caer en sobre ajuste [Kogan, 2007; Servente y García Martínez, 2002]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 44 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

68 ESTADO DE LA CUESTIÓN Esta metodología de descubrimiento de conocimiento ha sido aplicada en diversas actividades, y se siguen investigando y descubriendo constantemente nuevas aplicaciones. Entre las más destacadas se pueden señalar: toma de decisiones estratégicas operacionales, control del espacio aéreo, alistamiento de unidades navales, categorización automática de documentos, ventiladores en sala de neonatología, selección de estrategias educacionales, acuerdos en procesos judiciales, generación asistida de mapas de actividades en proyectos de desarrollo de software, análisis de riesgos en el ambiente laboral y asistencia en educción de requerimientos para sistemas de información [Yolis et al., 2003; García Martínez y Britos, 2004; Rancán et al., 2007; Kogan et al., 2007; Kogan, 2007] Algoritmo C5.0 El C5.0 es otro de los algoritmos que forma parte de la familia de los TDIDT (Top Down Induction and Decision Trees), junto con sus antecesores el ID3 y el C4.5. A continuación se describirán sus características más salientes. Este algoritmo fue también desarrollado por Quinlan y, al igual que sus antecesores, es un sistema de aprendizaje supervisado que construye árboles de decisión a partir de un conjunto de ejemplos. Estos ejemplos o tuplas están constituidos por un conjunto de atributos y un clasificador o clase [Sal, 2008]. Este algoritmo tiene una buena performance en un amplio rango de aplicaciones de diversos dominios, como el dominio médico, el artificial y el análisis de juegos de ajedrez. El nivel de precisión en la clasificación generalmente es alto. A veces, los árboles son demasiado frondosos, lo cual conlleva una difícil interpretación. En esos casos pueden ser transformados en reglas de decisión para hacerlos más comprensibles [Sal, 2008]. El C5.0 utiliza también la estrategia de divide y reinarás para generar el árbol de decisión inicial a partir de un conjunto de datos de entrenamiento Se genera una regla por cada camino recorrido y el antecedente de cada regla estará compuesto por la conjunción de las pruebas de valor de cada nodo visitado y la clase será la correspondiente a la hoja. [García Martínez et al., 2003; Sal, 2008]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 45 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

69 ESTADO DE LA CUESTIÓN Otros Algoritmos de Inducción Finalmente, en esta sección se describe en forma teórica el resto de los algoritmos de inducción, que no pertenecen a la familia TDIDT, utilizados en la experimentación llevada a cabo en el presente trabajo. Para ello, se hace primeramente una introducción muy breve (Sección ), luego de lo cual se analizan en detalle el algoritmo AQ15 (Sección ), el algoritmo CN2 (Sección ) y, por último, el algoritmo M5 (Sección ) Algoritmos de Inducción no Pertenecientes a la Familia TDIDT Existen otros algoritmos de inducción, que no pertenecen a la familia TDIDT, que han sido utilizados para las experiencias que se han desarrollado en el presente trabajo, como el AQ15, el CN2 y el M Algoritmo AQ15 El primer algoritmo de inducción no perteneciente a la familia TDIDT que se mencionará es el AQ15, que fue desarrollado por Michalski. Es un sistema de aprendizaje inductivo que genera reglas de decisión, donde el antecedente es una fórmula lógica. Una característica particular de este sistema es la inducción constructiva (constructive induction), es decir, el uso de conocimientos del dominio para generar nuevos atributos que no están presentes en los datos de entrada [Servente y García Martínez, 2002; García Martínez et al., 2003; Michalski et al., 1982; Michalski, 1983]. Al igual que el ID3, el AQ15 está diseñado para la generación de reglas fuertes, es decir, que para cada clase, se construye una regla que cubre todos los ejemplos positivos y ningún ejemplo negativo. El sistema soluciona el problema de los ejemplos incompletos o inconsistentes mediante un pre o post procesamiento. En el post procesamiento, además, se reduce de forma drástica la cantidad de reglas generadas mediante el truncamiento de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 46 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

70 ESTADO DE LA CUESTIÓN reglas, lo cual no afecta la precisión de las reglas obtenidas [Michalski, 1991; Michalski et al., 1998; Servente y García Martínez, 2002; García Martínez et al., 2003]. El algoritmo AQ15 ha sido testeado en dominios médicos, como el diagnóstico angiológico de alteraciones del sistema linfático con linfografía, el diagnóstico de cáncer de mama y la ubicación de tumores primarios. En estos casos, se obtuvieron reglas con el mismo nivel de precisión que el de los expertos humanos. En todos los casos, además, los datos de entrenamiento son conjuntos chicos, de unos cientos de ejemplos [Servente y García Martínez, 2002; García Martínez et al., 2003; Michalski y Teucci; 1994] Algoritmo CN2 Otro algoritmo de inducción no perteneciente a la familia TDIDT utilizado en las experiencias del presente trabajo es el CN2, desarrollado por Clark y Niblett como una adaptación del AQ15. La gran desventaja del AQ15 es que elimina los ruidos mediante pre y post procesamiento y no durante la ejecución del algoritmo. El objetivo del CN2 es, entonces, incorporar el manejo de datos ruidosos al algoritmo en sí. Combina entonces las técnicas de poda utilizadas en el ID3 con las técnicas de reglas condicionales utilizadas en el AQ15 [García Martínez et al., 2003; Servente y García Martínez, 2002]. El CN2 genera reglas simples y comprensibles en dominios donde los datos pueden tener ruido. Construye reglas probabilísticas, es decir, el antecedente en cada regla cubre ejemplos positivos de una clase, pero también puede cubrir ejemplos de otra clase en menor número. De esta forma no restringe el espacio de búsqueda únicamente a aquellas reglas inferibles a partir de los ejemplos. La performance del ID3, el AQ15 y el CN2 ha sido comparada en dominios médicos y artificiales. Las estructuras de conocimiento generadas en cada caso son de similar calidad y complejidad [García Martínez et al., 2003; Servente y García Martínez, 2002]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 47 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

71 ESTADO DE LA CUESTIÓN Algoritmo M5 En el caso del algoritmo M5 [Witten y Frank, 2005], se trata de obtener un árbol de modelos, si bien se puede utilizar para obtener un árbol de regresión, justamente por ser éste un caso específico o particular de árbol de modelos. Mientras que en el caso de los árboles de decisión se emplea la entropía de clases para definir el atributo con el que dividir, en el caso de la predicción numérica se emplea la varianza del error en cada hoja. Una vez construido el árbol que clasifica las instancias se realiza la poda del mismo, tras lo cual, se obtiene para cada nodo hoja una constante en el caso de los árboles de regresión o un plano de regresión en el caso de árboles de modelos. En éste último caso, los atributos que formarán parte de la regresión serán aquellos que participaban en el subárbol que ha sido podado. Al construir un árbol de modelos y definir, para cada hoja, un modelo lineal con los atributos del subárbol podado suele ser beneficioso, sobre todo cuando se tiene un pequeño conjunto de entrenamiento, realizar un proceso de suavizado o smoothing, que compense las discontinuidades que ocurren entre modelos lineales adyacentes. Este proceso consiste en: cuando se predice el valor de una instancia de test con el modelo lineal del nodo hoja correspondiente, este valor obtenido se filtra hacia atrás hasta el nodo hoja, suavizando dicho valor al combinarlo con el modelo lineal de cada nodo interior por el que pasa. Para construir el árbol se emplea como heurística el minimizar la variación interna de los valores de la clase dentro de cada subconjunto. Se trata de seleccionar aquel atributo que maximice la reducción de la desviación estándar de error (SDR, standard deviation reduction). En cada nodo del árbol se muestra la desviación típica de los ejemplos de entrenamiento que inciden en el nodo y la desviación estándar del error (SD (E)) para el atributo y el punto de corte que lo maximiza, por lo que es el seleccionado. Para obtener el atributo y el punto de corte se debe calcular la desviación estándar del error para cada posible punto de corte. Por lo general, la finalización de la construcción del árbol ocurre porque no se puede seguir subdividiendo, ya que en cada hoja hay dos ejemplos (número mínimo permitido). Por último, tras generar el árbol, en cada hoja se añade la media de los valores de la clase de los ejemplos que se clasifican a través de dicha hoja. Una vez se ha construido el árbol se va definiendo, para cada nodo interior (no para las hojas para emplear el proceso de suavizado) un modelo lineal, concretamente una regresión lineal múltiple, tal y como se mencionó anteriormente. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 48 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

72 ESTADO DE LA CUESTIÓN Únicamente se emplean para realizar esta regresión aquellos atributos que se utilizan en el subárbol del nodo en cuestión. A continuación se pasa al proceso de poda, en el que se estima, para cada nodo, el error esperado en el conjunto de test. Para ello, lo primero que se hace es calcular la desviación de las predicciones del nodo con los valores reales de la clase para los ejemplos de entrenamiento que se clasifican por el mismo nodo. Sin embargo, dado que el árbol se ha construido con estos ejemplos, el error puede subestimarse, con lo que se compensa con el número de ejemplos de entrenamiento que se clasifican por el nodo actual con el número de parámetros del modelo lineal. Para podar el árbol, se comienza por las hojas del mismo y se va comparando el error estimado para el nodo con el error estimado para los hijos del mismo. Comparando el error estimado para el nodo con el error estimado para el subárbol, se decide podar si no es menor el error para el subárbol. El proceso explicado hasta el momento sirve para el caso de que los atributos sean numéricos pero, si los atributos son nominales, será preciso modificar el proceso. En primer lugar, se calcula el promedio de la clase en los ejemplos de entrenamiento para cada posible valor del atributo nominal, y se ordenan dichos valores de acuerdo a este promedio. Entonces, un atributo nominal con k posibles valores se transforma en k-1 atributos binarios. El i-ésimo atributo binario tendrá, para un ejemplo dado, un 0 si el valor del atributo nominal es uno de los primeros i valores del orden establecido y un 1 en caso contrario. Con este proceso se logra tratar los atributos nominales como numéricos. También es necesario determinar cómo se actuará frente a los atributos para los que faltan valores. Una vez explicadas las características de los árboles de predicción numérica, se pasa a mostrar ahora el algoritmo M5, cuyo pseudocódigo se puede esquematizar así [Molina López y García Herrero, 2006]: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 49 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

73 ESTADO DE LA CUESTIÓN M5 (ejemplos) { SD = sd (ejemplos) Para cada atributo nominal con k-valores Convertir en k-1 atributos binarios raíz = nuevo nodo raíz.ejemplos = ejemplos Dividir (raíz) Podar (raíz) Dibujar (raíz) } Dividir (nodo) { Si tamaño (nodo.ejemplos) < 4 O sd (nodo.ejemplos) <= 0.05 * SD Entonces nodo.tipo = HOJA Si no nodo.tipo = INTERIOR Para cada atributo Para cada posible punto de división del atributo Calcular el SDR del atributo nodo.atributo = atributo con mayor SDR Dividir (nodo.izquierda) Dividir (nodo.derecha) } Podar (nodo) { Si nodo = INTERIOR Podar (nodo.hijoizquierdo) Podar (nodo.hijoderecho) nodo.modelo = RegresionLinear (nodo) Si ErrorSubarbol (nodo) > Error (nodo) Entonces nodo.tipo = HOJA } TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 50 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

74 ESTADO DE LA CUESTIÓN ErrorSubarbol (nodo) { l = nodo.izquierda r = nodo.derecha Si nodo = INTERIOR Entonces ErrorSubarbol = (tamaño (l.ejemplos) * ErrorSubarbol (l) + tamaño (r.ejemplos) * ErrorSubarbol (r)) + tamaño (nodo.ejemplos) Si no ErrorSubarbol = error (nodo) } La función RegresionLinear generará la regresión correspondiente al nodo en el que se encuentre. La función error evaluará el correspondiente error del nodo. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 51 E.I.S.I. LIC. MARCELO U. LOPEZ NOCERA

75 DELIMITACION DEL PROBLEMA 3. DELIMITACION DEL PROBLEMA En este capítulo se presentan observaciones sobre el modelo tradicional de caracterización de dominios (Sección 3.1), se plantea un análisis de la calidad del proceso de descubrimiento de conocimiento (Sección 3.2), se argumenta acerca de la profundización del estudio de la integración de los algoritmos de inducción y agrupamiento al ir variando los parámetros que caracterizan el dominio en condiciones de laboratorio dadas (Sección 3.3), se evalúan los distintos rendimientos que podrían presentar las diversas combinaciones de pares formados por un algoritmo de agrupamiento y otro de inducción al someterlos a las experiencias que se detallarán en el capítulo dedicado a desarrollar la solución propuesta (Sección 3.4) más adelante en el presente trabajo y se resumen las preguntas de investigación derivadas de las observaciones, análisis, argumentos y evaluaciones efectuadas (Sección 3.5) Modelo Tradicional de Caracterización de Dominios En Data Mining se parte, supuestamente, de dominios equivalentes o directamente indistinguibles entre sí a los efectos experimentales. Tradicionalmente, se denomina Minería de Datos (Data Mining) al conjunto de técnicas y herramientas aplicadas al proceso no trivial de extraer y presentar conocimiento implícito, previamente desconocido, potencialmente útil y humanamente comprensible, a partir de grandes conjuntos de datos, con objeto de predecir de forma automatizada tendencias y comportamientos y de describir (también de forma automatizada) modelos previamente desconocidos [Michalski, 1983; Holsheimer y Siebes, 1991; Piatetski-Shapiro et al., 1991; Chen et al., 1996; Evangelos y Han, 1996; Mannila, 1997; Felgaer et al. 2006; Kogan, 2007]. El caso particular de la Minería de Datos Inteligente consiste en la aplicación de métodos de aprendizaje automático para descubrir y enumerar patrones presentes en los datos o mejorar procesos predictivos [Joshi, 1997; Michalski et al. 1998; Palace, 1999; Servente y García Martínez, 2002; Bot, 2005; Britos et al. 2005; Kogan, 2007; Britos, 2008; Jiménez Rey et al., 2009]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 52 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

76 DELIMITACION DEL PROBLEMA El descubrimiento de conocimiento (KD, Knowledge Discovery) consiste en la búsqueda de patrones interesantes y de regularidades importantes en grandes bases de información. Al hablar de descubrimiento de conocimiento basado sobre sistemas inteligentes, se hace referencia específicamente a la aplicación de métodos de aprendizaje automático u otros métodos similares, para descubrir y enumerar patrones presentes en dicha información [Kogan et al., 2007]. No existe aún, como se esbozó en el primer párrafo de la presente sección, una definición de conceptualización de dominios que permita su estudio sistemático en función de los parámetros que los rigen [Kogan, 2007]. Un procedimiento recurrente a la hora de realizar Minería de Datos Inteligente consiste en tomar el conjunto de datos a estudiar, aplicar un algoritmo de clustering o agrupamiento para separarlo en distintos grupos (también llamados clases o clústers) y sobre cada uno de estos grupos intentar luego generar reglas que caractericen su conformación, también utilizando un determinado algoritmo que se conoce como algoritmo de inducción- a tales efectos [Kaski, 1997; Hall y Holmes, 2003; Grosser et al., 2005; Cogliati et al., 2006; Kogan et al., 2007; Kogan, 2007]. Una de las opciones para llevar adelante el proceso de clustering es dada por el uso de los mapas auto-organizados (SOM, Self-Organizing Maps) de Kohonen [Kohonen, 1982; Kohonen, 1990; Kohonen, 1995; Kohonen et al., 1996; Kohonen, 2001]. Estos mapas son un algoritmo de redes neuronales que ha sido utilizado con mucho éxito para una gran variedad de aplicaciones, principalmente para problemas técnicos, industriales y de ingeniería (por ejemplo, en monitoreo de procesos y máquinas, identificación de fallas y control de robots), pero también (dada su gran capacidad de dividir el espacio en clases y patrones representativos, lo cual los hace muy asimismo muy poderosos para la clasificación y segmentación de datos) para análisis de datos [Widrow y Lehr, 1990; Ritter et al., 1992; Kohonen, et al., 1996; Essenreiter y Treitel, 1999; Hilera González y Martínez Hernando, 2000; Vesanto y Alhoniemi, 2000; Yolis et al., 2003; Figuerola et al., 2004; Salgueiro et al., 2006; Del Brío y Sanz Molina, 2007; Kogan, 2007; Kuna et al., 2009], e incluso para clasificación de documentos, como se ha visto con la aplicación de la herramienta WEBSOM [Honkela et al., 1997; Kaski, 1997; Kohonen et al., 2000]. En cuanto a la inducción de reglas, dadas la caracterización de las entidades que se utilizan comúnmente en descubrimiento de conocimiento, fuertemente basadas sobre los valores de sus atributos y no sobre las relaciones establecidas entre ellos, se suelen emplear métodos TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 53 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

77 DELIMITACION DEL PROBLEMA basados justamente sobre atributos. Uno de los más claros y difundidos son los árboles de decisión o clasificación, en los cuales se cuenta con nodos que modelizan cada atributo, ramas que se originan en estos nodos (una por cada valor que el atributo puede tomar) y finalmente- las hojas, las cuales corresponden a las clases individuales [Grossman et al., 1999; Kogan et al., 2007; Michalski et al., 2008; Britos, 2008]. Una de las herramientas aplicadas al mencionado proceso es la familia de algoritmos TDITD (Top Down Induction of Decision Trees, o inducción de arriba hacia abajo de los árboles de decisión) [Quinlan, 1986; Quinlan, 1988; Servente y García Martínez, 2002; Kogan et al., 2007]. Recorriendo un árbol desde su nodo padre hasta las distintas hojas, se pueden generar de forma muy simple las reglas a las que corresponde la clasificación [Servente y García Martínez, 2002; Kogan et al., 2007]. Sin embargo, estos pasos se realizan únicamente bajo la presunción de obtener un resultado representativo del conjunto de datos sobre el cual se trabaja [Kogan et al., 2007; Jiménez Rey et al., 2009]. En este contexto surgen las siguientes preguntas: Es correcta la suposición acerca de que todos los dominios son equivalentes entre sí o, más aún, directamente indistinguibles a los efectos experimentales? Tiene injerencia la caracterización de los dominios en uso durante la fase experimental en los resultados observados y finalmente obtenidos en forma experimental? 3.2. Calidad del Proceso de Descubrimiento de Conocimiento El problema del cual se parte podría describirse diciendo que la integración de algoritmos de agrupamiento e inducción como técnica de descubrimiento de conocimiento, utilizada frecuentemente en trabajos de campo, no cuenta aún con estudios sobre performance o calidad de los resultados que se obtienen por vía experimental, ni lineamientos ni métricas que permitan optimizar su desempeño [Britos et al., 2005; Salgueiro et al., 2006; Kogan, 2007]. Por ejemplo, trabajos realizados en la última década sobre sistemas de ayuda a la toma de decisiones centrados en tecnologías de sistemas basados sobre conocimiento, en áreas como el control aéreo o el alistamiento de unidades navales, han puesto de manifiesto que la definición de cómo se puede extraer conocimiento de las bases de datos de registros de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 54 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

78 DELIMITACION DEL PROBLEMA eventos e integrarlo a la Base de Conocimiento del sistema de ayuda es un problema abierto [Ierache y García Martínez, 2004; Rancán, 2004; Sierra et al., 2006; Kogan et al., 2007]. Se ha propuesto incluso un método de descubrimiento de conocimiento basado sobre agrupamiento e inducción de reglas en el marco de una propuesta de integración de sistemas de descubrimiento de conocimiento y sistemas basados sobre conocimiento [Rancán et al., 2007; Kogan et al., 2007]. Por otra parte, es sabido que dicha integración forma parte de estudios más abarcativos, que tienden a la integración entre sistemas basados sobre conocimiento y sistemas de descubrimiento de conocimiento [Rancán et al., 2007]. El tema en cuestión implica analizar la evolución de la calidad del proceso de descubrimiento de conocimiento mediante el uso de la integración de los algoritmos de agrupamiento e inducción, al ir variando sus parámetros en condiciones de laboratorio. Sería menester, en consecuencia, analizar la medida de la calidad de las reglas obtenidas y la variación o degradación de dicha calidad como consecuencia de la modificación de los parámetros controlados en las experiencias a realizar [Kogan et al., 2007]. Adicionalmente, se conoce que el mejoramiento de una Base de Conocimiento mediante la incorporación de piezas de conocimiento descubiertas en forma automática puede conducir a la degradación de la Base de Conocimiento original [Ierache y García Martínez, 2004; Rancán, 2004; Sierra et al., 2006]. Parece resultar necesario, por tanto, explorar la degradación de la calidad de dicho proceso de descubrimiento de conocimiento mediante el uso de la integración de algoritmos de agrupamiento e inducción. Es dable entonces realizar al respecto una serie de preguntas: Se degrada la calidad de las reglas obtenidas como consecuencia de la modificación de parámetros controlados durante las experiencias que se realicen? Puede el conocimiento descubierto en forma automática conducir a la degradación de la Base de Conocimiento original? Puede reducirse dicha degradación mediante el uso de la integración de algoritmos de agrupamiento e inducción? TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 55 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

79 DELIMITACION DEL PROBLEMA 3.3. Integración de los Algoritmos de Agrupamiento e Inducción En este contexto, resultaría de sumo interés el estudio de la integración de los algoritmos de inducción y agrupamiento al ir variando los parámetros que caracterizan el dominio en condiciones de laboratorio, en adición al mencionado intento de cuantificar la calidad de las reglas obtenidas y la degradación de dicha calidad como consecuencia de la variación de los parámetros controlados en los experimentos [Kogan et al., 2007]. Empero, la no existencia de conceptualización de dominios, de modo tal que permita el estudio sistemático de estos, es una limitación que debería ser tenida en cuenta al realizar cualquier estudio. La ausencia misma de un sistema que permita la experimentación controlada de un ambiente de laboratorio presenta, en consecuencia, el desafío de proveer una solución para llevar adelante una experimentación sistemática con el objetivo de adquirir resultados de laboratorio para el análisis del problema a resolver. Podría ser planteado, entonces, el estudio del comportamiento de la integración de los algoritmos de agrupamiento e inducción como mecanismo de descubrimiento de conocimiento [Hunt, 1966; Kohonen, 1982; Kogan, 2007]. A tales efectos, se ha tomado como base para el estudio llevado a cabo en el presente trabajo la investigación publicada por el Ingeniero Ariel Kogan en 2007 en oportunidad de su tesis de grado en Ingeniería [Kogan, 2007]. Se ha elegido como aporte del presente trabajo profundizar algunas de las líneas de investigación allí planteadas, a saber: a) Analizar la aplicación de métodos automáticos de descubrimiento de conocimiento mediante inferencia de reglas, con el fin de obtener reglas que indiquen las condiciones que se cumplen para que, mediante la aplicación de SOM (u otro algoritmo de agrupamiento) e ID3 de la familia TDITD (u otro algoritmo de inducción) a un dominio, se obtenga un determinado rango de efectividad del método. b) Sistematizar la complejidad de un dominio dado en función de los parámetros a partir de los cuales es generado. c) Estudiar la complejidad que un dominio presenta para la aplicación de un mecanismo de descubrimiento de conocimiento. d) Estudiar el comportamiento de la efectividad del método propuesto, introduciendo variaciones en los parámetros (conocidas como ruido) para los ejemplos generados. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 56 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

80 DELIMITACION DEL PROBLEMA De todo lo expuesto, surge el planteo de las siguientes preguntas: Cómo afecta a la integración de los algoritmos de agrupamiento e inducción la variación de parámetros caracterizadores del dominio, en condiciones de laboratorio dadas? Existirá una solución que permita conducir una experimentación sistemática para adquirir resultados de laboratorio que den lugar al estudio del comportamiento de la integración de los algoritmos de agrupamiento e inducción como mecanismo de descubrimiento de conocimiento? Puede analizarse la aplicación de métodos automáticos de descubrimiento de conocimiento, con el fin de obtener reglas que indiquen las condiciones que se cumplen para que se obtenga un determinado rango de efectividad del método? Puede sistematizarse la complejidad de un dominio dado en función de los parámetros a partir de los cuales es generado? Puede clasificarse la complejidad que un dominio presenta para la aplicación de un mecanismo de descubrimiento de conocimiento? Se puede realizar un estudio del comportamiento de la efectividad del método propuesto, introduciendo variaciones en los parámetros en los ejemplos generados? 3.4. Rendimientos de las Distintas Combinaciones de Algoritmos En función de verificar experimentalmente todo lo anteriormente expuesto, surge la inquietud de tomar diversas combinaciones posibles de pares de algoritmos de agrupamiento e inducción y evaluar cuál es el par (algoritmo de agrupamiento, algoritmo de inducción) que mejor performance brinda, en igualdad de condiciones experimentales dadas. Un posible punto de partida para ello sería el experimento diseñado [Kogan, 2007] para un algoritmo de clustering, cual es el denominado SOM (Self-Organizing Maps) [Kohonen, 1995], en combinación con un algoritmo de inducción, id est, ID3 (Induction of Decision Trees) de la familia TDITD (Top-Down Induction and Decision Trees) [Quinlan, 1986]. Como se señaló en la sección dedicada al análisis de la calidad del proceso de descubrimiento de conocimiento (Sección 3.2 del presente trabajo), el mejoramiento de una Base de Conocimiento con piezas de conocimiento descubiertas automáticamente puede conducir a una degradación de la Base de Conocimiento original, por lo que se vuelve necesario explorar cuáles son las curvas de degradación de la calidad de proceso de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 57 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

81 DELIMITACION DEL PROBLEMA descubrimiento de conocimiento, identificando para ello las condiciones de borde para el modelo, dentro del marco teórico desarrollado [Kogan et al., 2007]. Con el objetivo de realizar esta tarea, se ha llevado a cabo una serie de experiencias de laboratorio que serán descritas en detalle más adelante en el presente trabajo, en el capítulo destinado a desarrollar la solución propuesta. Estos experimentos exploran el comportamiento del proceso propuesto al proponer distintos valores continuos para una de las variables independientes sobre dominios en los que una segunda variable independiente toma ciertos valores discretos. Es dable esperar que los resultados de los experimentos permitan cuantificar la medida en que los procesos de descubrimiento de conocimiento deben lidiar con la incertidumbre vinculada a la medida de la calidad del conocimiento educido. Los resultados experimentales obtenidos, mediante la abducción, deberían permitir inferir las características del dominio y en consecuencia una estimación de la calidad del conocimiento obtenido [Kogan et al., 2007]. Quedaría entonces claramente determinado que surge como conclusión la necesidad de, como se dijo anteriormente (Sección 3.2), explorar la degradación de la calidad del proceso de descubrimiento de conocimiento mediante el uso, según ya se afirmó también, de la integración de algoritmos de agrupamiento e inducción (Sección 3.3). Es dable entonces preguntarse nuevamente si es posible plantearse el estudio del comportamiento de la integración de los algoritmos de agrupamiento (como SOM u otro algoritmo de agrupamiento) y de los de inducción (como ID3 de la familia TDITD u otro algoritmo de inducción) como mecanismo de descubrimiento de conocimiento. Esto es, una vez encontrado un clúster con el algoritmo de agrupamiento, se inferirá la correspondiente regla con el algoritmo de inducción, la cual indicará si un individuo dado pertenece o no a un grupo especificado [Rancán et al., 2007]. En [Kogan, 2007], como se acaba de señalar (Sección 3.3), se diseñó un experimento que involucraba un algoritmo de clustering, cual es el denominado SOM (Self-Organizing Maps) [Kohonen, 1995], en combinación con otro algoritmo de inducción, verbigracia, el conocido como ID3 (Induction of Decision Trees) de la familia TDIDT (Top-Down Induction and Decision Trees) [Quinlan, 1986]. Dicho trabajo experimental se ha replicado y extendido para caracterizar los distintos dominios que se podrían definir. Se parte también, según ya se detallara en la anterior sección, de aquello que fuera postulado como futuras líneas de investigación, tanto en [Kogan, 2007] como en [Britos, 2008]. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 58 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

82 DELIMITACION DEL PROBLEMA Es menester para la profundización de la presente investigación intentar, asimismo, extender el estudio llevado a cabo par el par SOM+ID3 de la familia TDIDT a otras combinaciones de pares de algoritmos de agrupamiento y de inducción (como son, por ejemplo: SOM+AQ15, SOM+CN2, KNN (también conocido como NNC) +AQ15, SOM+M5, KNN+CN2, KNN+M5, K-means+AQ15, K-means+CN2, K-means+M5, entre otros), como así también definir detalladamente un protocolo para encontrar las características del dominio que mejor es explicado por los algoritmos seleccionados, y finalmente procurar ofrecer una prueba de concepto del protocolo propuesto, para luego así exponer las conclusiones del trabajo de investigación realizado y plantear las futuras líneas de investigación. A partir de todo lo anteriormente expuesto, surge la necesidad de formular el siguiente conjunto de preguntas: Cuál es el par (algoritmo de agrupamiento, algoritmo de inducción) que mejor performance brinda, en igualdad de condiciones experimentales dadas? Cuáles son las curvas de degradación de la calidad de proceso de descubrimiento de conocimiento, identificando las condiciones de borde para el modelo dentro del marco teórico desarrollado? Permitirán los resultados de los experimentos concluir en qué medida los procesos de descubrimiento de conocimiento deben lidiar con la incertidumbre vinculada a las métricas de la calidad del conocimiento educido? Permitirán los resultados de los experimentos inferir las características del dominio? Permitirán los resultados de los experimentos llevar a cabo una estimación de la calidad del conocimiento obtenido? Se podrá definir detalladamente un protocolo para encontrar las características del dominio que mejor es explicado por los algoritmos seleccionados? Se podrá ofrecer una prueba de concepto del protocolo propuesto, que permita extraer las correspondientes conclusiones del trabajo de investigación realizado y plantear así las hipotéticas futuras líneas de investigación? 3.5. Resumen de las Preguntas de Investigación Como resumen de lo expuesto en las precedentes secciones del presente capítulo (Sección 3.1, Sección 3.2, Sección 3.3 y Sección 3.4), se enumeran a continuación las preguntas de investigación ibi identificadas: 1. Es correcta la suposición acerca de que todos los dominios son equivalentes entre sí o, más aún, directamente indistinguibles a los efectos experimentales? TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 59 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

83 DELIMITACION DEL PROBLEMA 2. Tiene injerencia la caracterización de los dominios en uso durante la fase experimental en los resultados observados y finalmente obtenidos por vía de esos experimentos? 3. Se degrada la calidad de las reglas obtenidas como consecuencia de la modificación de parámetros controlados durante las experiencias que se realicen? 4. Puede el conocimiento descubierto en forma automática conducir a la degradación de la Base de Conocimiento original? 5. Puede reducirse dicha degradación mediante el uso de la integración de algoritmos de agrupamiento e inducción? 6. Cómo afecta a la integración de los algoritmos de agrupamiento e inducción la variación de parámetros caracterizadores del dominio, en condiciones de laboratorio dadas? 7. Existirá una solución que permita conducir una experimentación sistemática para adquirir resultados de laboratorio que den lugar al estudio del comportamiento de la integración de los algoritmos de agrupamiento e inducción como mecanismo de descubrimiento de conocimiento? 8. Puede analizarse la aplicación de métodos automáticos de descubrimiento de conocimiento, con el fin de obtener reglas que indiquen las condiciones que se deberían cumplir para que se obtenga un determinado rango de efectividad del método? 9. Puede sistematizarse la complejidad de un dominio dado en función de los parámetros a partir de los cuales es generado? 10. Puede clasificarse la complejidad que un dominio presenta para la aplicación de un mecanismo de descubrimiento de conocimiento? 11. Se puede realizar un estudio del comportamiento de la efectividad del método propuesto, introduciendo ruido en los ejemplos generados? 12. Cuál es el par (algoritmo de agrupamiento, algoritmo de inducción) que mejor performance brinda, en igualdad de condiciones experimentales dadas? 13. Cuáles son las curvas de degradación de la calidad de proceso de descubrimiento de conocimiento que permiten identificar las condiciones de borde para el modelo, dentro del marco teórico desarrollado? 14. Permitirán los resultados de los experimentos concluir en qué medida los procesos de descubrimiento de conocimiento deben lidiar con la incertidumbre vinculada a las métricas de calidad del conocimiento educido? TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 60 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

84 DELIMITACION DEL PROBLEMA 15. Permitirán los resultados de los experimentos inferir las características del dominio? 16. Permitirán los resultados de los experimentos llevar a cabo una estimación de la calidad del conocimiento obtenido? 17. Se podrá definir detalladamente un protocolo para encontrar las características del dominio que mejor es explicado por los algoritmos seleccionados? 18. Se podrá ofrecer una prueba de concepto del protocolo propuesto, que permita extraer las correspondientes conclusiones del trabajo de investigación realizado y plantear así las hipotéticas futuras líneas de investigación? TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 61 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

85 SOLUCION PROPUESTA 4. SOLUCION PROPUESTA En este capítulo se presenta una propuesta de solución aplicada en forma experimental al problema delimitado (Sección 4.1), focalizándose en la preparación de las experiencias a realizar (Sección 4.1.1), como así también en la presentación de las variables a utilizar (Sección 4.1.2) y en la ejecución misma de las experiencias (Sección 4.1.3), llevándose a cabo para esto último una introducción (Sección ), a colación de la cual son descriptas las bases de datos a utilizar (Sección ) y son asimismo detalladas las características del banco de pruebas diseñado para las experiencias (Sección ) y también las de las variables que serán utilizadas en las mismas (Sección ) y, finalmente, es expuesto el detalle de las experiencias o corridas a ejecutar (Sección ). Se realiza a continuación de todo aquello una propuesta de clasificación taxonómica de dominios (Sección 4.2). Luego de ello se procede a analizar la eficiencia de la aplicación del proceso de experimentación a cada tipo de dominio dado (Sección 4.3). A continuación de lo anterior se describen los Diagramas de Kiviat, en tanto y en cuanto son herramientas útiles para la visualización de los datos a ser obtenidos como resultados experimentales (Sección 4.4). Acto seguido se describe el protocolo de caracterización de dominios propuesto (Sección 4.5), detallando en primer lugar el procedimiento utilizado para generar dominios en forma previa a la ejecución de las experiencias (Sección 4.5.1) y luego de ello, el protocolo para la identificación de dominios propiamente dicho (Sección 4.5.2). Finalmente, se describe la prueba de concepto que se utilizará en el resto del presente trabajo (Sección 4.6). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 62 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

86 SOLUCION PROPUESTA 4.1. Una Propuesta de Solución Aplicada en Forma Experimental al Problema Delimitado Según ya se señalara en el capítulo dedicado a la delimitación del problema (Sección 3.4), se parte del experimento diseñado en [Kogan, 2007], adaptando dicha solución experimental al problema delimitado específicamente en el presente trabajo. Se presenta entonces en esta sección una propuesta de solución aplicada en forma experimental al problema delimitado, comprendiendo: preparación de las experiencias a realizar (Sección 4.1.1), presentación de las variables a utilizar (Sección 4.1.2) y ejecución misma de las experiencias (Sección 4.1.3). Este último apartado contendrá una introducción (Sección ), una descripción de las bases de datos a utilizar (Sección ), el detalle de las características del banco de pruebas diseñado para las experiencias (Sección ), la descripción de las variables que serán utilizadas en esas experiencias (Sección ) y, finalmente, el detalle de las experiencias o corridas a ejecutar (Sección ) Preparación de las Experiencias a Realizar El primer paso consiste en la preparación del experimento. Este paso involucra: a) generación del dominio, basado sobre generación de las clases y reglas que indican la pertenencia a cada clase. b) generación de muestras para cada regla. Como salida de este paso se obtiene un conjunto de reglas de clasificación y un conjunto de muestras del dominio (los ejemplos). El segundo paso consiste en la ejecución del experimento. Este paso involucra: a) aplicar el proceso de agrupamiento al conjunto de muestras del dominio (los ejemplos) para obtener el conjunto de sus clústeres (los grupos). b) aplicar a cada clúster el proceso de inducción para obtener reglas que caractericen la pertenencia a dicho clúster, obteniendo así el conjunto de reglas descubiertas. El tercer y último paso consiste en: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 63 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

87 SOLUCION PROPUESTA a) la comparación entre el conjunto de reglas de clasificación generadas en el primer paso y las reglas descubiertas en el segundo paso. El porcentaje de reglas descubiertas de forma correcta, define el éxito del experimento [Kogan et al., 2007] Presentación de las Variables a Utilizar La experimentación hace uso de las siguientes variables independientes: a) attributes number: cantidad de atributos en cada regla de clasificación (en el presente trabajo, se ha adoptado la decisión de utilizar la misma cantidad en cada una de las muestras a desarrollar). b) rules per class: cantidad de reglas de clasificación que indican la pertenencia a cada clase. c) class possible values: cantidad de clases que rigen el dominio. d) attributes possible values: cantidad de posibles valores que puede tomar cada atributo. e) instantes by rule: cantidad de ejemplos de cada regla. f) class possible values percentage: porcentaje sobre la cantidad total de valores posibles que puede tomar cada atributo. Asimismo, la experimentación hace uso de la siguiente variable dependiente: g) rules correctly covered: porcentaje de reglas pertenecientes al conjunto de reglas original que se encuentra en el conjunto de reglas descubiertas [Kogan, 2007; Kogan et al., 2007] Panorama General de la Ejecución de las Experiencias En esta sección se presentará el panorama general de ejecución de las experiencias (Sección ), luego de lo cual se introducirán las bases de datos a utilizar (Sección ). A continuación, se describirá en detalle el banco de pruebas que se usará TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 64 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

88 SOLUCION PROPUESTA en las experiencias (Sección ), a colación de lo cual quedarán finalmente determinadas las variables en uso (Sección ), para finalizar con la descripción de las mismas experiencias o corridas a realizar (Sección ) Introducción a la Ejecución de las Experiencias Según se señaló en el párrafo anterior, para la solución experimental propuesta al problema en cuestión se utilizarán siete variables previamente definidas en el dominio, a saber: instances by rule, class possible values, rules per class, attribute possible values, class attributes possible values percentage, attributes used in rule y attributes number, es decir, respectivamente: cantidad de ejemplos utilizados para cada regla, cantidad de clases que rigen los ejemplos, cantidad de reglas que indican la pertenencia a cada clase, cantidad de posibles valores que puede tomar cada atributo, porcentaje de la cantidad de valores posibles que puede tomar cada atributo, cantidad de atributos sobre los cuales las reglas impondrán condiciones y, finalmente, cantidad de atributos de cada ejemplo, para las cuales se verificará y analizará el porcentaje de reglas correctamente cubiertas en cada caso [Kogan, 2007]. El resto de la estructuración del esquema experimental se describirá, como se dijo, en las subsecciones a continuación Descripción de las Bases de Datos a Utilizar en la Ejecución de las Experiencias Se creará una base de datos con la aplicación GNU PostgreSQL para cada par de algoritmos de clustering e inducción utilizado, esto es, para trabajar con los datos generados con por las corridas de las experiencias y poder persistirlos se trabajará con motor de base de datos GNU PostgreSQL 9.0, administrado por la aplicación propietaria pgadmin Para cada par de algoritmos que será sometido a dichas corridas, se creará, en definitiva, una base de datos ad hoc. En cada una de estas bases de datos se creará la misma estructura de 6 tablas, partiendo de los lineamientos descritos al respecto en [Kogan, 2007], a saber: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 65 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

89 SOLUCION PROPUESTA a) Experiencias (nomenclada como Experience en las bases de datos): En esta tabla, en cada una de las bases de datos, se describirán las características de cada una de las experiencias a realizar, otorgándosele a cada una de dichas experiencias su identificación única, asociándola a un escenario, indicando qué variable se tomará en cada caso como parámetro fijo y qué variable será analizada en cada una de esas experiencias, qué rango de valores podrá tomar el parámetro utilizado en cada una de ellas, qué cantidad de iteraciones se llevarán a cabo por cada conjunto de valores de los atributos variables en función del parámetro en cada una de ellas, y finalmente se incluirá una descripción narrativa de cada corrida, donde se indicará qué atributo se hará variar para cada una de las experiencias. Así, por ejemplo, a la primera corrida, que utiliza SOM como algoritmo de clustering e ID3 de la familia TDIDT como algoritmo de inducción se le asignará el identificador 1, se indicará que estará asociada al escenario número 1, se utilizará como parámetro el atributo instances by rule, contra el cual se hará variar entre los valores 1 y 20 el atributo attributes number, lo cual se repetirá durante 50 iteraciones. Se describirá todo esto como instancesbyrule con attributesnumber en 4, donde 4 será el valor que tomará el atributo attributes number para esa primera corrida. Un detalle de la estructura de la tabla, con el recién descrito primer registro de la misma a modo de ejemplo, puede verse en la Figura 4.1 a continuación: clustering induccion experience scenario parameter from to ixv SOM ID3 1 1 INSTANCES _BY_RULE Figura 4.1: Ejemplo de registro de la tabla Experience descripcion instancesbyrule con attributesnumber en 4 Se espera que el número de registros de esta tabla sea de 210 para cada par de algoritmos de clustering e inducción elegidos, a razón de una experiencia por cada uno de los 30 escenarios existentes en la base de datos (escenarios que se describirán a continuación en el Apartado c) de esta misma sección) para cada uno de los posibles 7 parámetros utilizables. El contenido completo de la tabla TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 66 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

90 SOLUCION PROPUESTA Experience puede también consultarse en formato electrónico, según se indicará más adelante en el capítulo de Resultados Experimentales Obtenidos en el presente trabajo. b) Iteraciones (nomenclada como Experience_iteration en las bases de datos): En esta tabla, en cada una de las bases de datos, se describirán las características de cada una de las iteraciones que se llevarán a cabo para cumplimentar cada una de las experiencias, otorgándosele a cada una su identificación única, asociándola a una experiencia en particular e indicando la cantidad de reglas correctamente cubiertas tanto por el algoritmo de clustering como por el de inducción. Así, por ejemplo, a la primera iteración se le asignará el identificador 1, se indicará que estará asociada a la experiencia número 1 y se indicará que será cubierta correctamente 1 regla por parte del algoritmo de clustering (que en este caso es SOM) y 5 reglas por el de inducción (que en el presente ejemplo es ID3 de la familia TDIDT), a la vez que el porcentaje de reglas correctamente cubiertas por parte del algoritmo de clustering será igual a 20, mismo porcentaje que se verificará para el algoritmo de inducción. Un detalle de la estructura de la tabla, con el ya descrito primer registro de la misma a modo de ejemplo, puede verse en la Figura 4.2 a continuación: clustering induccion iteration experience parameter rccc rcci prccc prcci SOM ID Figura 4.2: Ejemplo de registro de la tabla Experience_iteration El número esperado de registros para esta tabla es de para cada par de algoritmos de clustering e inducción elegidos, a razón de 50 iteraciones por cada uno de los 7 atributos utilizados y por cada una de las 210 experiencias a realizar (es decir, 50 * 7 * 210, producto cuyo resultado equivale al valor antes mencionado). El contenido completo de la tabla puede también consultarse en formato electrónico, según se indicará más adelante en el capítulo de Resultados Experimentales Obtenidos en el presente trabajo. c) Escenarios (nomenclada como Scenario en las bases de datos): En esta tabla, en cada una de las bases de datos, se describirán las características de cada uno de los escenarios que darán cabida a las experiencias a realizar, los cuales a su vez estarán asociados a un tipo de dominio en particular, según la clasificación que ya se describió. Se otorgará a cada escenario su identificación única, asociándola a una TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 67 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

91 SOLUCION PROPUESTA 7-tupla o septeto de valores, correspondiendo cada uno de ellos a cada uno de los atributos componentes del dominio, y se configurarán las características generales para todas las corridas y también las que tendrán relación con los algoritmos utilizados en las mismas. Un detalle de la estructura de la tabla, con el primer registro de la misma a modo de ejemplo, puede verse en la Figura 4.3.a, en la Figura 4.3.b, en la Figura 4.3.c, en la Figura 4.3.d y en la Figura 4.3.e a continuación: clustering induccion scenario_id attributes_number att_posible_values SOM AQ class_posible_values rules_per_class att_used_in_rule instances_by_rule class_att_possible_values_percentage mix allow_multiple_coverage 20 TRUE FALSE allowed_coverage_desviation som_training_iterations_multiplier som_map_width som_map_height 4 4 Figuras 4.3.a, 4.3.b, 4.3.c, 4,3,d y 4.3.e: Ejemplo de registro de la tabla Scenario Así, por ejemplo, al primer escenario, que utilizará SOM como algoritmo de clustering y AQ15 como algoritmo de inducción, se le asignará el identificador 1, se indicará que los atributos: attributesnumber, attpossiblevalues, classpossiblevalues, rulesperclass, attusedinrules, instancesbyrule y classattpossiblevaluespercentage, toman los valores: 2, 20, 5, 5, 3, 10 y 20, respectivamente, que los ejemplos se han de distribuir aleatoriamente antes de ser sometidos a proceso por la combinación de algoritmos, que no se permitirá la cobertura múltiple o no estricta de reglas, que el porcentaje de desviación máximo admitido en la cantidad de instancias cubiertas para considerar que la regla ha sido correctamente cubierta se fijará con el valor de 20, que el algoritmo de clustering utilizado será sometido a un entrenamiento previo de 100 iteraciones para su ajuste y que se utilizará un mapa de neuronas de 4x4 (o sea, una matriz de cuatro filas por cuatro columnas). El número de registros esperados para esta tabla es de 30 para cada combinación de algoritmos de clustering e inducción que se apareará, en TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 68 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

92 SOLUCION PROPUESTA función de la cantidad de combinaciones experimentales que se determinaron a priori, basándose sobre los resultados de laboratorio recopilados en [Kogan, 2007]. El contenido completo de la tabla podrá asimismo consultarse, en formato electrónico, según se indicará más adelante, en el capítulo de Resultados Experimentales Obtenidos del presente trabajo. d) Gráficos (nomenclada como Graph en las bases de datos): En esta tabla, en cada una de las bases de datos, se describirán las características de cada uno de los gráficos que se confeccionarán a partir de cada una de las experiencias a realizar. Se otorgará a cada gráfico una identificación única, asociándolo a cada uno de los siete atributos componentes del dominio en el eje de abscisas y a otro (distinto de aquél) como parámetro variable, obteniéndose entonces en el eje de ordenadas el porcentaje de reglas correctamente cubiertas en cada caso, y se mostrará también una descripción verbosa de la estructura de cada uno de los gráficos. Un detalle de la estructura de la tabla, con un registro de la misma a modo de ejemplo, puede verse en la Figura 4.4 a continuación: clustering induccion grafico parvariable parserie descripcion SOM ID3 1 ATT_USED_IN_RULE ATTRIBUTES_NUMBER Escenario patrón variando attusedinrule para distintos attributesnumber Figura 4.4: Ejemplo de registro de la tabla Graph Así, por ejemplo, al primer gráfico, para cuya representación se utilizará SOM como algoritmo de clustering e ID3 de la familia TDIDT como algoritmo de inducción, se le asignará el identificador 1, se indicará que los atributos attusedinrule y attributesnumber funcionarán respectivamente como valores para el eje de abscisas y como parámetro de serie y se describirá el gráfico como Escenario patrón variando attusedinrule para distintos attributesnumber. El número esperado de registros para esta tabla por cada combinación de algoritmo de clustering con algoritmo de inducción a utilizar, es de 42, valor que se obtiene de multiplicar 7 * 6, en función de la cantidad de combinaciones existentes entre los distintos atributos a utilizar en las diversas experiencias que se llevarán a cabo. El contenido completo de la tabla podrá asimismo consultarse, en formato electrónico, TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 69 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

93 SOLUCION PROPUESTA según se indicará más adelante, en el capítulo de Resultados Experimentales Obtenidos del presente trabajo. e) Puntos de los gráficos (tabla que ha sido nomenclada como Graph_experience en las correspondientes bases de datos): En esta tabla, en cada una de las bases de datos, se describirán las características de cada uno de los puntos o coordenadas que se representarán para cada uno de los gráficos que surgirán de cada una de las experiencias realizadas. Se otorgará a cada punto de cada gráfico su identificación única, asociándolo a uno de los 42 gráficos existentes y también a una determinada experiencia de las previamente definidas, y se le dará así un indicador de orden a cada punto en cada uno de los gráficos. Un detalle de la estructura de la tabla, con un registro de la misma a modo de ejemplo, puede verse en la Figura 4.5 a continuación: clustering induccion graficacion grafico experience nropunto SOM ID Figura 4.5: Ejemplo de registro de la tabla Graph_experience Así, por ejemplo, al primer punto de este gráfico que representará un apareamiento entre el algoritmo de clustering SOM y el algoritmo de inducción ID3 de la familia TDIDT, se le asignará el identificador único correlativo 1, se lo asociará al gráfico cuyo identificador único había ya sido definido como 1 en la anterior tabla Graph y a la experiencia cuyo identificador único había ya sido definido previamente con el número 89 en la tabla Experience. Se indicará además que ese será el primer punto del gráfico en cuestión, para lo cual se le asignará el número de orden 1. El número de registros esperado por cada combinación de algoritmo de clustering e inducción a utilizar es, para esta tabla, de 210 lo que se obtiene de multiplicar 5 * 42, dado que, según se ha establecido para la experimentación, se graficarán 5 puntos para cada uno de los 42 gráficos existentes. El contenido completo de esta tabla podrá asimismo consultarse, en formato electrónico, según se indicará más adelante, en el capítulo de Resultados Experimentales Obtenidos del presente trabajo. f) Determinación de los porcentajes de reglas correctamente cubiertas (tabla denominada simplemente como Tablita en las bases de datos): En esta tabla, en cada una de las bases de datos, se calculará como valor agrupado el porcentaje promedio de reglas correctamente cubiertas para cada combinación de valores de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 70 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

94 SOLUCION PROPUESTA los septetos utilizados en las iteraciones realizadas para cumplimentar cada una de las experiencias. Un detalle de la estructura de la tabla, con un registro de la misma a modo de ejemplo, puede verse en la Figura 4.6 a continuación: clustering induccion cpv rpc an apv capvp auirp ibr rccp_alg_ind SOM ID ,4658 Figura 4.6: Ejemplo de registro de la tabla Tablita Así, por ejemplo, el primer registro de la tabla (en el que se utilizará SOM como algoritmo de clustering e ID3 de la familia TDIDT como algoritmo de inducción) indicará que el septeto integrado por los atributos: classattpossiblevaluespercentage, classpossiblevalues, rulesperclass, attributesnumber, attpossiblevalues, attusedinrules, e instancesbyrule, tomará respectivamente los valores: 5, 5, 4, 20, 20, 25 y 10 y que el porcentaje de reglas correctamente cubiertas por esa combinación de valores de los atributos será, redondeando a la cuarta cifra decimal, de 22,4658%. El número de registros esperados para cada combinación entre un algoritmo de clustering y otro de inducción a utilizar será para esta tabla de 10500, es decir, la cantidad total de iteraciones (cincuenta) de todas las experiencias (doscientas diez) agrupadas de a siete (la cantidad total de atributos), o sea: ((50 * 7 * 210)/7), que será entonces la cantidad de veces (una por cada atributo) que se repetirá cada combinación de valores en el total de las iteraciones. El contenido completo de esta tabla podrá asimismo consultarse, en formato electrónico, según se indicará más adelante, en el capítulo de Resultados Experimentales Obtenidos del presente trabajo Descripción del Banco de Pruebas a Utilizar en la Ejecución de las Experiencias Para llevar adelante la prueba de concepto que se describirá en la Sección 4.6 del presente trabajo, se generará previamente una muestra de los grupos de dominios con los correspondientes conjuntos de reglas y de ejemplos, utilizándose como herramienta para llevar a cabo dicho esquema experimental una adaptación ad hoc del banco de pruebas TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 71 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

95 SOLUCION PROPUESTA descrito en [Kogan, 2007]. Se configurará el mismo de modo tal de lograr el ajuste de sus parámetros para cada uno de los experimentos a realizar. El hecho de fijar estos valores permitirá convertir la realización de cada experiencia en un ambiente controlado de experimentación, a guisa de laboratorio simulado. Se utilizará entonces el banco de pruebas para la generación de dominios en condiciones de laboratorio, la generación de ejemplos en dichas condiciones, el agrupamiento por parte de diversos algoritmos de clustering, la inducción sobre el conjunto de ejemplo por parte de los distintos algoritmos utilizados, para obtener reglas que lo caractericen, y finalmente la contrastación de reglas, con el fin de establecer la cantidad o porcentaje de reglas correctamente cubiertas. La dinámica de trabajo que tendrá el banco de pruebas puede ser descrita entonces de la siguiente manera: a) Generación de dominio b) Generación de ejemplos c) Generación de reglas teóricas d) Agrupamiento de ejemplos e) Aplicación de inducción a los clústeres obtenidos f) Generación de reglas descubiertas g) Comparación de ambos conjuntos de reglas Este procedimiento es el que da base al protocolo experimental [López Nocera et al., 2011] que se ha ya mencionado en el presente trabajo y que será descrito en detalle en la Sección 4.5 del presente trabajo Determinación de las Variables a Utilizar en la Ejecución de las Experiencias Cada grupo de dominio, según ya se dijo, se formará con todos los dominios surgidos de las combinaciones de los posibles valores de las variables independientes: cantidad de atributos de cada ejemplo, cantidad de posibles valores que pueden tomar los atributos, cantidad de clases que rigen los ejemplos, cantidad de reglas que indican la pertenencia a cada clase, porcentaje sobre la cantidad total de valores posibles que puede tomar cada atributo y cantidad de ejemplos utilizados para cada regla [Kogan, 2007]. A su vez, se utilizará, como ya se señaló también, una variable dependiente, cual es el porcentaje de reglas correctamente cubiertas. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 72 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

96 SOLUCION PROPUESTA Detalle de las Corridas a Llevar a Cabo en la Ejecución de las Experiencias A cada dominio generado se le aplicará el proceso de descubrimiento de reglas de pertenencia a grupos [Pollo Cattaneo et al., 2010] utilizando un algoritmo de clustering por ejemplo, SOM [Kohonen, 1995] junto con un algoritmo de inducción por ejemplo, ID3 de la familia TDITD [Quinlan, 1986] a tal efecto. Para ello se partirá del código asociado al banco de pruebas diseñado en [Kogan. 2007], el cual -según se señaló en la sección anterior- se adaptará para su aplicación en el presente trabajo, siguiendo para ello el procedimiento indicado en [López Nocera et al., 2011]. A tal efecto, se utilizará código propio escrito en lenguaje GNU Java JDK versión y el código fuente de las librerías públicas gratuitas del software WEKA [Kogan, 2007; Witten y Frank, 2005], desarrollado por la Universidad de Waikato (Helsinki, Finlandia) Una Propuesta de Clasificación Taxonómica Aplicada a los Dominios a Utilizar Para proceder a la implementación experimental antes descrita, resultaría procedente construir dominios representables por siete dimensiones (las siete variables antes presentadas), respecto de todos los cuales se debería constituir una octava dimensión, esto es, el porcentaje de reglas correctamente cubiertas. Por tanto, se debería postular una clasificación taxonómica cualitativa de los dominios a utilizar. Dicha clasificación podría estructurarse, por ejemplo, en cuanto a la complejidad de los dominios en cuestión (y así elaborar una clasificación al respecto, exemplis gratia: simples, medianos, oscilantes, complejos e hipercomplejos) o bien podría elaborarse una clasificación en relación a la orientación de los dominios (por ejemplo: orientados a las clases, orientados a las reglas, orientados a los atributos, orientados a los valores u orientado a las instancias), toda vez que se constate una predominancia de alguna de las variables en cuestión sobre las restantes, o bien, incluso, podría postularse alguna otra clasificación de similar índole. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 73 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

97 SOLUCION PROPUESTA En esta investigación se ha decidido adoptar la primera de las estructuras clasificatorias mencionadas, es decir, se clasificarán los dominios en función de su complejidad, clasificación que se describirá a continuación, y que será ampliada con sumo detalle más adelante en el presente trabajo, a saber, en la Sección 4.3. Partiendo del análisis de los 18 gráficos obtenidos como resultado experimental en [Kogan, 2007], se inferirá entonces una clasificación empírica que permitirá agrupar a esos gráficos según distintas categorías en función de la complejidad del dominio subyacente, como recién se dijo. Para comenzar con el detalle del análisis, se reproducirá a continuación un gráfico (extraído del Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.1, siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.1) que se representará mediante la Figura 4.7: Figura 4.7: Gráfica que representa el estudio de dominios variando la cantidad de clases que los rigen, para distinta cantidad de atributos que tienen los ejemplos [Kogan, 2007] Se observa en dicha Figura 4.7, a cuyo gráfico subyacente se denotará aquí como class possible values VS attributes number (es decir, distintas valores que podrían tomar las cantidades de atributos que tienen los ejemplos a considerar en función de la cantidad de clases que rigen el dominio), lo siguiente: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 74 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

98 SOLUCION PROPUESTA a) Cuando se aumenta el valor del parámetro (eje de abscisas o X, en este caso representando al atributo class posible values) y se mantiene fijo el valor en las distintas series (es decir, se elige una de las distintas curvas de nivel, que en este caso representan al atributo attributes number), disminuye el porcentaje de reglas correctamente cubiertas (eje de ordenadas o Y, que representa dicho porcentaje como Rules Correctly Covered). Así, por ejemplo, recorriendo en sentido positivo el eje de abscisas en la Figura 4.7 para la curva de nivel de valor 4 (cuatro), que es la curva representada en la parte superior de la Figura 4.7, se observa que el porcentaje de reglas correctamente cubiertas decae de 58% a 42%. Similar situación se observa con las curvas de nivel de valores 6, 8 y 10. La situación podría esquematizarse tomando el parámetro como función de las series de este modo: (, =, ), lo que se debe leer así: cuando aumenta el parámetro ( ) y se mantiene fijo el valor de las series (=), el porcentaje de reglas correctamente cubiertas disminuye ( ). b) Por otra parte, cuando se mantiene constante en la Figura 4.7 el valor del parámetro (eje X) y a la vez aumenta el valor en las series, disminuye el porcentaje de reglas correctamente cubiertas (eje Y). Así, por ejemplo, si se fija en 2 el valor de class posible values y aumenta de 4 a 10 el valor de attributes number, Rules Correctly Covered disminuye del 58% al 19%. La situación podría esquematizarse tomando el parámetro como función de las series de este modo: (=,, ), lo que se debe leer así: cuando se mantiene fijo el parámetro (=) y aumenta el valor de las series ( ), el porcentaje de reglas correctamente cubiertas disminuye ( ). c) Asimismo se observa en la Figura 4.7 que, cuando se mantiene constante el parámetro (eje X) y disminuye el valor en las series (eje Y), aumenta el porcentaje de reglas cubiertas correctamente). Así, por ejemplo, tomando el mismo caso anterior, si se fija en 2 el valor de class posible values y disminuye de 10 a 4 el valor de attributes number, Rules Correctly Covered aumenta del 19% al 58%. La situación podría esquematizarse tomando el parámetro como función de las series de este modo: (=,, ), lo que se debe leer así: cuando se mantiene fijo el parámetro (=) y disminuye el valor de las series ( ), el porcentaje de reglas correctamente cubiertas aumenta ( ). La situación general, englobando los tres casos anteriores, podría esquematizarse siempre tomando el parámetro como función de las series de este modo: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 75 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

99 SOLUCION PROPUESTA ((, =, ); (=,, ); (=,, )), es decir, las primeras, segundas y terceras componentes, respectivamente, de cada una de estas 3-tuplas o ternas se relacionan entre sí para conformar finalmente cada una de las tres ternas obtenidas con la notación anterior. Así, por ejemplo, si se toma la primera componente de cada terna y se agrupan las mismas en una nueva terna, se obtiene: (, =, ), que es justamente la primera terna obtenida con la notación anterior. De la misma manera se obtendrían la segunda y tercera de las ternas. Incluso, utilizando otra notación, la situación podría quedar esquematizada así: (,=,=) VS (=,, ) = (,, ), lo que se debería leer de forma tal que ligando las respectivas componentes de cada una de las dos primeras ternas se obtiene así la respectiva componente de la tercera terna, lo cual llevaría en definitiva a cada una de las ternas obtenidas con la anterior notación. Así, por ejemplo, tomando la primera componente de cada una de las primeras dos ternas, que son, respectivamente: y =, se obtiene:, que sería la primera componente de la nueva terna obtenida. Repitiendo el procedimiento con las segundas y terceras componentes de las dos primeras ternas, se obtendrán respectivamente las segundas y terceras componentes de la tercera terna, la cual quedará compuesta entonces de la siguiente manera: (, =, ), que, como se observa, es la misma terna obtenida en el Apartado a) anterior. El antes mencionado agrupamiento clasificatorio puede resumirse así: los dominios conformados por gráficas con características de este tipo serán agrupados bajo la denominación común de grupo A. Asimismo, los integrantes de este grupo, en función de la complejidad del mismo dominio, serán catalogados como medianos, concepto que se desarrollará en profundidad en la Sección 4.3 de este mismo trabajo. En la Figura 4.7 se mostró entonces la gráfica que toma como parámetro class possible values (cantidad de clases que rigen el dominio) y como serie attributes number (distinta cantidad de atributos que tienen los ejemplos a considerar), que son dos características del dominio elegido. Otras gráficas que caracterizan dominios que pertenecen también a este grupo A, y que aquí no se reproducen son: class possible values VS rules per class (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.3, siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.3), rules per class VS attributes number (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.4, siendo TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 76 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

100 SOLUCION PROPUESTA referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.4), rules per class VS class possible values (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.5, siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.5), attributes number VS class possible values (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.9 siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.9) y attributes number VS rules per class (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.10, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ). Todo lo descrito anteriormente queda diagramado mediante la Figura 4.8 a continuación: Serie (Curvas de Nivel) atrributes rules per class possible number class values (5.6.1, 5.6.4) (5.6.3, ) (5.6.5, 5.6.9) = = = Parámetro class possible, =, = (Eje X ó values Abscisas) rules per class, =, = attributes, =, = number Figura 4.8: Conformación del grupo A de la clasificación taxonómica de dominios, en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] El contenido de esta figura pasa a describirse a continuación. Las curvas de nivel de los gráficos estarán representadas por las tres grandes columnas, y los parámetros por las tres grandes filas. Las tres grandes columnas están encabezadas por la celda Serie (Curvas de Nivel) y las tres grandes filas están encabezadas por la celda Parámetro (Eje X ó Abscisas). Las tres grandes columnas se denominan, de izquierda a derecha, attributes number, rules per class y class possible values. A su vez, los números entre paréntesis indican los gráficos a los que harán referencia al intersecarse con las filas. Así, (5.6.1, 5.6.4) hace referencia al Gráfico y al Gráfico (disponibles para su consulta, como ya se señaló, en [Kogan, 2007]). Del mismo modo, (5.6.3, ) hace referencia al ya TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 77 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

101 SOLUCION PROPUESTA mencionado Gráfico y al Gráfico (disponibles para su consulta, como ya se señaló, en [Kogan, 2007]) y, por último, (5.6.5, 5.6.9) hace referencia al Gráfico y al Gráfico (disponibles también para su consulta, como ya se señaló, en [Kogan, 2007]). Debajo de cada una de las columnas aparecen tres subcolumnas, encabezadas respectivamente con los símbolos: =,,. Esto indica que cada serie se mantendrá constante, o bien se aumentará o disminuirá al contrastarla con cada parámetro. Las tres grandes filas a su vez - se denominan, de arriba hacia abajo, class possible values, rules per class y attributes number. A la derecha de cada uno de estos parámetros se simboliza un aumento de su valor con, o bien se indica que se mantiene constante con el símbolo =. Así, cada coordenada de la terna (,=,=) interactuará con su correspondiente coordenada en las columnas (=,, ). Los otros seis casos combinatoriamente posible se analizarían en forma similar, descartándose aquí dicho desarrollo. Al intersecar entonces una fila con cada una de las subcolumnas, se obtiene un resultado en la celda de intersección, sea, =, o bien, que indicará si el porcentaje de reglas correctamente cubiertas aumenta, se mantiene constante o disminuye, respectivamente. Así, para lo ya analizado en la Figura 4.7, puede decirse a modo de ejemplo lo siguiente, a partir de lo visualizado en la Figura 4.8: Al aumentarse el valor del parámetro class possible values (lo que se visualiza con la a su derecha), si se mantiene constante el valor de la curva de nivel de la serie attributes number, lo que se visualiza con el = en la primera subcolumna de la izquierda, la celda que corresponde a la intersección marca, lo cual indica que Rules Correctly Covered descenderá, como ya se dijo anteriormente. Esta celda corresponde al Gráfico 5.6.1, al igual que las dos celdas a su derecha. Asimismo, las tres celdas que están debajo de ellas corresponderán al Gráfico según se deduce de la leyenda existente en la celda del encabezado de columna de la serie, lo que concuerda también con el hecho de tomar rules per class como parámetro, lo que se comprueba leyendo el contenido de la celda de encabezado de parámetro, a la izquierda en esa fila inferior. Este mismo procedimiento de lectura se debe aplicar mutatis mutandi al resto de la Figura 4.8, con lo cual queda entonces diagramado completamente el grupo A. En la Figura 4.9 se presenta la lista definitiva de gráficos obtenidos en [Kogan, 2007] que pertenecerán al denominado grupo A: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 78 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

102 SOLUCION PROPUESTA grupo A Figura 4.9: Conformación del grupo A de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] Allí, 1 representa al Gráfico 5.1 de [Kogan, 2007] o, tal cual se denomina en este trabajo, al Gráfico 5.6.1, 3 representa al gráfico 5.6.3, y así siguiendo hasta llegar a 10, que representa al Gráfico Continuando con el análisis de los dieciocho gráficos obtenidos como resultado experimental en [Kogan, 2007], se pasará a analizar otro grupo que se denominará como grupo B y que se caracterizará por gráficas que, cuando se aumente el valor del parámetro (eje X) y se mantenga fijo el valor en las distintas series (es decir, se elija una de las distintas curvas de nivel), o bien cuando se mantenga constante el valor del parámetro y a la vez disminuya el valor en las series, disminuirá el porcentaje de reglas correctamente cubiertas (eje Y). Asimismo, cuando se mantenga constante el parámetro y aumente el valor en las series, aumentará la cantidad de reglas cubiertas correctamente. Utilizando la misma notación ya explicada en detalle para el grupo A, la situación podría esquematizarse tomando el parámetro como función de las series de este modo: (,=,=) VS (=,, ) = (,, ), o, con la otra notación ya explicada entonces: ((, =, ); (=,, ); (=,, )). Un ejemplo de este tipo de gráfica, obtenido de [Kogan, 2007], donde obraba como Gráfico 5.2 y que será aquí referenciado a partir de ahora como Gráfico 5.6.2, siendo la gráfica subyacente class posible values VS attributes posible values, puede verse en la Figura 4.10 que se muestra a continuación: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 79 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

103 SOLUCION PROPUESTA Figura 4.10: Gráfica que representa el estudio de dominios variando la cantidad de clases que los rigen, para distinta cantidad de valores posibles que puede tomar cada atributo [Kogan, 2007] En esta figura se muestra la gráfica que toma como parámetro entonces la cantidad de clases que rigen el dominio y como serie la distinta cantidad de valores posibles que pueden tomar cada uno de los atributos utilizados, que son dos características del dominio. Otras gráficas que pertenecen también a este grupo B son: rules per class VS attribute possible values (esta gráfica no aparece en [Kogan, 2007], pero puede consultarse en el apéndice en formato electrónico que acompaña a este trabajo, y será referenciada aquí a partir de ahora como gráfica ) y attributes number VS attribute possible values (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.8, siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.8). Todo lo descrito anteriormente para este grupo B, puede esquematizarse en la siguiente Figura 4.11: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 80 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

104 SOLUCION PROPUESTA Serie (Curvas de Nivel) attribute possible values (5.6.3, , ) = class possible, =, = Parámetro values (Eje X ó rules per class, =, = Abscisas) attributes, =, = number Figura 4.11: Conformación del grupo B de la clasificación taxonómica de dominios, en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] La descripción del contenido de esta figura es exactamente igual, mutatis mutandi, a la que se desarrolló para la Figura 4.8 anterior. En la Figura 4.12 se presenta la lista definitiva de gráficos obtenidos en [Kogan, 2007] que pertenecerán al denominado grupo B. grupo B Figura 4.12: Conformación del grupo B de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] Allí, 2 representa al Gráfico 5.2 de [Kogan, 2007] o, tal cual se denomina en este trabajo, al Gráfico 5.6.2, 8 representa al Gráfico 5.6.8, y finalmente 17 representa al Gráfico El tercer grupo a analizar, que se denominará de ahora en más como grupo C, se caracterizará por gráficas para las que, cuando se aumente el valor del parámetro (eje X) y se mantenga fijo el valor en las distintas series (es decir, se elija una de las distintas curvas de nivel), o bien cuando se mantenga constante el valor del parámetro y a la vez disminuya el valor en las series, aumentará el porcentaje de reglas correctamente cubiertas (eje Y). Asimismo, cuando se mantenga constante el parámetro y aumente el valor en las series, disminuirá la cantidad de reglas cubiertas correctamente. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 81 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

105 SOLUCION PROPUESTA Utilizando la misma notación anterior, la situación podría esquematizarse, tomando el parámetro como función de las series, de este modo: (,=,=) VS (=,, ) = (,, ), o bien, utilizando la otra notación ya explicada: ((, =, ); (=,, ); (=,, )). Un ejemplo de este tipo de gráfica, obtenido de [Kogan, 2007], donde obraba como Gráfico 5.7 y que será aquí referenciado a partir de ahora como Gráfico 5.6.7, siendo la gráfica subyacente attributes posible values VS rules per class, puede verse en la Figura 4.13 a continuación: Figura 4.13: Gráfica que representa el estudio de dominios variando la cantidad de valores posibles que puede tomar cada uno de los atributos que conforman las reglas, para distinta cantidad de reglas que indican la pertenencia a cada clase [Kogan, 2007] En esta figura, como recién se dijo, se muestra la gráfica que toma como parámetro attribute possible values y como serie rules per class, que son dos características del dominio. Otras gráficas que pertenecen también a este grupo C son: attribute possible values VS class possible values (esta gráfica no aparece en [Kogan, 2007], pero puede consultarse en el apéndice en formato electrónico que acompaña a este trabajo, y será referenciada aquí a partir de ahora como gráfica ) y attribute possible values VS attributes number (disponible para su consulta en el TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 82 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

106 SOLUCION PROPUESTA Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.6, siendo referenciado en el presente trabajo a partir de ahora como Gráfico 5.6.6). Todo lo descrito anteriormente para este grupo C, puede esquematizarse en la siguiente Figura 4.14: Serie (Curvas de Nivel) class atrributes rules per possible number Class values (5.6.6) (5.6.7) (5.6.18) Parámetro (eje X o abscisas) = = = attribute possible values (, =, =) Figura 4.14: Conformación del grupo C de la clasificación taxonómica de dominios, en función de los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] La descripción del contenido de esta figura es exactamente igual, mutatis mutandi, a la que se desarrolló para la Figura 4.8 anterior. En la Figura 4.15 se presenta la lista definitiva de gráficos obtenidos en [Kogan, 2007] que pertenecerán al denominado grupo C. grupo C Figura 4.15: Conformación del grupo C de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] Allí, 6 representa al Gráfico 5.6 de [Kogan, 2007] o, tal cual se denomina en este trabajo, al Gráfico 5.6.6, 7 representa al Gráfico 5.6.7, y finalmente 18 representa al Gráfico El grupo siguiente, que se denominará como grupo D, está fuertemente orientado al conjunto de atributos relacionados con los ejemplos, más que con el dominio en sí, y se caracteriza por gráficas en las cuales, cuando se aumente el valor del parámetro (eje X) y se mantenga fijo el valor en las distintas series (es decir, cuando se elija una de las distintas curvas de nivel), o bien cuando se mantenga constante el valor del parámetro y a la vez aumente el valor en las series, aumentará el porcentaje de reglas correctamente cubiertas TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 83 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

107 SOLUCION PROPUESTA (eje Y). Asimismo, cuando se mantenga constante el parámetro y disminuya el valor en las series, disminuirá el porcentaje de reglas cubiertas correctamente. La situación podría, con la notación ya explicada, esquematizarse tomando el parámetro como función de las series de este modo: (,=,=) VS (=,, ) = (,, ), o bien, con la otra notación que ya se introdujo antes: ((, =, ); (=,, ); (=,, )). Un ejemplo de este tipo de gráfica, obtenido de [Kogan, 2007], donde obraba como Gráfico 5.11 y que será aquí referenciado a partir de ahora como Gráfico , siendo la gráfica subyacente attributes used in rule VS instances by rule, puede verse en la Figura 4.16 a continuación: Figura 4.16: Gráfica que representa el estudio de dominios variando la especificidad del cubrimiento de cada regla sobre sus ejemplos asociados, para distinta cantidad de estos [Kogan, 2007] En la precedente figura se muestra, según se acaba de decir, la gráfica que toma como parámetro attributes used in rule (cantidad de atributos usados en cada regla, lo que se conoce como la especificidad de la regla) y como serie instances by rule (distinta cantidad de ejemplos a considerar para cada regla), que son dos características del dominio elegido que se encuentran directamente asociadas con los ejemplos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 84 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

108 SOLUCION PROPUESTA Otras gráficas que pertenecen también a este grupo D son: attributes used in rule VS class attributes possible values percentage (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.12, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ), class possible values percentage (porcentaje de la cantidad de valores posibles que puede tomar cada atributo, mediante el cual -para los atributos sobre los que se imponen condiciones- se generará un subconjunto de los valores posibles para cada atributo, de forma tal de establecer un subespacio correspondiente a una clase, lo cual se conoce también como la concentración de las reglas que indican la pertenencia a cada clase) VS instances by rule (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.13, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ), class attributes possible values percentage VS attributes used in rules (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.14, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ), instances by rule VS attributes used in rules (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.15, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ) e instances by rule VS class attributes possible values percentage (disponible para su consulta en el Capítulo 5, Sección 6, de [Kogan, 2007], donde se denomina como Gráfico 5.16, siendo referenciado en el presente trabajo a partir de ahora como Gráfico ). Todo lo descrito anteriormente para este grupo D, puede esquematizarse en la siguiente Figura 4.17: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 85 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

109 SOLUCION PROPUESTA Serie (Curvas de Nivel) atrributes used Instances class attributes possible in rules by rule values percentage (5.6.14, ) (5.6.11, ) (5.6.12, ) Parámetro (eje X o abscisas) (,=,=) = = = attributes uses in rules class attributes possible values percentage instances by rule Figura 4.17: Conformación del grupo D de la clasificación taxonómica de dominios, en función de losgráficos representados a partir de los atributos orientados a los ejemplos utilizados en[kogan, 2007] La descripción del contenido de esta figura es exactamente igual, mutatis mutandi, a la que se desarrolló para la Figura 4.8 anterior. En la Figura 4.18 se presentan la lista definitiva de gráficos obtenidos en [Kogan, 2007] que pertenecerán al denominado grupo B. grupo D Figura 4.18: Conformación del grupo D de la clasificación taxonómica de dominios, en función de la denominación aplicada a los gráficos representados a partir de los atributos relacionados con los ejemplos, utilizados en [Kogan, 2007] Allí, 11 representa al Gráfico 5.11 de [Kogan, 2007] o, tal cual se denomina en este trabajo, al Gráfico , 12 representa al Gráfico , y así siguiendo hasta llegar a 16, que representa al Gráfico En la Figura 4.19.a, la Figura 4.19.b, la Figura 4.20, la Figura 4.21 y la Figura 4.22 a continuación, se consolida todo lo descrito anteriormente: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 86 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

110 Dominio Ejemplos SOLUCION PROPUESTA dominio atrribute nstant Parámetro / Serie atrributes values rules per class possible (Eje x) (Curva) number values class values (, =, =) (=,, ) (5.6.1, 4, 6) (5.6.2, 17, 8) (5.6.3, 7, 10) (5.6.5, 18, 9) class nstant values rules per class attribute nstant values attributes number Figura 4.19.a: Conformación de los grupos A, B y C de la clasificación taxonómica de dominios, según los gráficos representados a partir de los atributos de dominio propiamente dichos utilizados en [Kogan, 2007] grupo A grupo B grupo C Figura 4.19.b: Codificación cromática explicativa de la Figura 4.19.a ejemplos atrributes used class attributes Parámetro values instances possible / values (Eje x) (Curva) in rules by rule percentage (, =, =) (=,, ) (5.6.14, 15) (5.6.11, 13) (5.6.12, 16) attributes uses in rule class attributes possible values percentage nstantes by rule Figura 4.20: Conformación del grupo D de la clasificación taxonómica de dominios, según los gráficos representados a partir de los atributos relacionados con los ejemplos, utilizados en [Kogan, 2007] TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 87 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

111 SOLUCION PROPUESTA grupo A grupo B grupo C grupo D Figura 4.21: Clasificación taxonómica en grupos, en relación a los gráficos obtenidos en [Kogan, 2007] grupo A grupo B grupo C grupo D Figura 4.22: Caracterización de los grupos, en relación a los gráficos obtenidos en [Kogan, 2007] 4.3. Análisis de la Eficiencia de la Aplicación del Proceso de Experimentación a los Tipos de Dominios Dados Luego de realizada la mencionada clasificación, será menester analizar la eficiencia de la aplicación de un algoritmo de clustering y otro de inducción para cada tipo de dominio TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 88 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

112 SOLUCION PROPUESTA determinado en dicha clasificación previa. El estudio se aplicará a diversos pares de algoritmos, según lo ya estipulado anteriormente en el presente trabajo. Según la clasificación de los dominios que en cuanto a su complejidad se estableció, el análisis de la eficiencia de la aplicación a cada uno de los mismos del proceso experimental procede entonces de la siguiente manera: a) Para dominios con pocos atributos y pocas clases se esperaría a priori obtener mejor cubrimiento de reglas que para dominios con pocos atributos y muchas clases. Lo mismo debería suceder con dominios con pocas clases y pocas reglas por clase (a pesar de no conocerse de antemano las reglas). En estos casos, si se invirtiera el orden entre el atributo que se toma como parámetro (que varía en forma continua; gráficamente se puede ver como el eje de abscisas; por ejemplo, en la Figura 4.7 anterior, el parámetro sería el atributo class possible values y el atributo que se toma como serie (que varía en forma discreta, tomando sólo ciertos valores fijos para los cuales se aplica la variación continua del otro atributo; gráficamente puede verse esto como las curvas de nivel del gráfico; por ejemplo, en la Figura 4.7 anterior, la serie sería el atributo attributes number), se debería obtener el mismo resultado cualitativo (es decir, similar porcentaje de cubrimiento de reglas, el cual puede pensarse gráficamente como el eje de ordenadas; en la Figura 4.7 anterior, por ejemplo, esto puede apreciarse como Rules Correctly Covered). Se dirá entonces, por definición, que se está en presencia de un dominio de complejidad mediana, y más sucintamente, se hará referencia a partir de ahora a los dominios de este tipo como dominios medianos o directamente medianos. Otro ejemplo de este tipo de dominio puede visualizarse en la Figura 4.16 anterior. Los dominios del grupo A y algunos de los del grupo D (los orientados a atributos relacionados con los atributos de dominio propiamente dichos) serán catalogados, entonces, como medianos. b) Para dominios con pocos atributos y pocos valores posibles por atributo se esperaría obtener mejor cubrimiento de reglas (asumiendo que se conocieran a priori dichas reglas) que para dominios con pocos atributos y muchos valores posibles por atributo; a su vez, para dominios con muchos atributos y pocos valores posibles por atributo, se debería obtener muy escaso cubrimiento, al igual que para dominios con muchos atributos y muchos valores posibles por atributo; es decir, si se invirtieran la serie y el parámetro, se esperaría encontrar resultados inversos; lo mismo debería esperarse que suceda para dominios que involucrasen reglas y TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 89 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

113 SOLUCION PROPUESTA valores, o clases y valores; en estos casos se hablará de dominios complejos. Un ejemplo de este tipo de dominio puede visualizarse en la Figura 4.10 anterior. Así, los dominios del grupo B serán entonces catalogados como complejos. c) Para dominios que tuviesen como parámetro la cantidad de distintos valores que podrían tomar los atributos, siendo las series posibles el número de atributos, la cantidad de reglas por clase o bien la cantidad de clases que regirían los ejemplos, se debería observar que, amén de la complejidad del dominio (según la definición del término dominios complejos aportada anteriormente), la fluctuación de los datos que, según se espera, serían obtenidos, debería ser importante, con una gran oscilación de datos sobre la curva que los representaría. En este caso, se hablará de dominios hipercomplejos. Un ejemplo de este tipo de dominio puede visualizarse en la Figura 4.13 anterior. Por ende, los dominios pertenecientes al grupo C serán catalogados como hipercomplejos. d) Se observa adicionalmente que, para dominios en los que interviniesen, sea como parámetro o serie, las características asociadas a los ejemplos propiamente dichos [Kogan, 2007] y no al dominio (verbigracia, attributes uses in rules, class attributes possible values percentage, instances by rule), se esperaría un comportamiento ambiguo, dispar y menos predecible, con lo cual estos dominios serán denominados como oscilantes. Se observa que los dominios pertenecientes al grupo D, para aquellos casos en que los atributos estén relacionados a los ejemplos, son oscilantes. A modo ilustrativo, se añade un ejemplo adicional a los ya mostrados, que para este tipo de dominio puede visualizarse en la siguiente Figura 4.23, la cual representa el estudio de dominios variando el número de ejemplos que dan soporte a cada regla, para distinta concentración de las reglas que indican la pertenencia a cada clase, obtenido de [Kogan, 2007] donde se denomina como Gráfico 5.16, siendo referenciado en el presente trabajo como Gráfico , representando a instances by rule VS class attributes possible values percentage: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 90 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

114 SOLUCION PROPUESTA Figura 4.23: Representación del estudio de dominios variando el número de ejemplos que dan soporte a cada regla, para distinta concentración de las reglas que indican la pertenencia a cada clase [Kogan, 2007] e) En todos los anteriores casos se esperaría además que, con el aumento de la cantidad de ejemplos por regla mejorara el cubrimiento de reglas, independientemente de las series o parámetros utilizados, con lo cual cualquiera de los dominios ya vistos en los que se hiciera fluctuar o interviniera esta variable serían caracterizados como de complejidad simple o trivial, o directamente como simples Descripción de los Diagramas de Kiviat como Herramientas de Utilidad para la Visualización de los Datos Obtenidos como Resultados Experimentales Un tipo de herramientas que podría considerarse como muy útil para la visualización gráfica de los resultados experimentales son los denominados Diagramas de Kiviat. Estos diagramas han sido usados por muchos años en evaluación de rendimiento de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 91 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

115 SOLUCION PROPUESTA computadoras [Kolence y Kiviat, 1973], y en los últimos años han visto extendido su uso a otras disciplinas, como la Ingeniería del Software y la Administración de Proyectos, entre otras. Un Diagrama de Kiviat permite describir en términos comparativos las relaciones entre datos afectados por múltiples variables. En ellos, cada valor de cada una de las variables se muestra sobre un eje distinto. Todos los ejes, si bien independientes, están unidos por un mismo punto central. Así, si se cuenta, por ejemplo, con ocho variables, se dibujará un octógono, con ocho radios, cada uno de medida posiblemente diferente (la longitud del radio es proporcional al valor del dato para esa variable). El gráfico obtenido se conoce también como gráfico de radar o gráfico radial [Soman et al., 2006]. Este tipo de gráficos se puede obtener incluso utilizando planillas de cálculo de uso cotidiano, como, por ejemplo Microsoft Excel. Ejemplos de este tipo de gráficos, para una función cualquiera (de, por caso, ocho variables), podrían ser los que se ven a continuación, en la Figura 4.24.a y en la Figura 4.24.b siguientes [Kolence y Kiviat, 1973]: Figuras 4.24.a y 4.24.b: Ejemplos de Diagramas de Kiviat para una hipotética función de ocho variables TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 92 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

116 SOLUCION PROPUESTA 4.5. Descripción del Protocolo de Caracterización de Dominios Propuesto en el Presente Trabajo A continuación se definirá, como antedicho, un protocolo de caracterización de dominios, con el fin de identificar el dominio que resulte mejor explicado por el par de algoritmos seleccionados [López Nocera et al., 2011]. Dicho protocolo se basará sobre la generación previa de dominios para su caracterización empírica. Esa generación se llevará a cabo mediante la adaptación a tal efecto del banco de pruebas desarrollado en [Kogan, 2007]. Se detallará a continuación en primer lugar, como ya se dijo, el procedimiento utilizado para generar dominios en forma previa a la ejecución de las experiencias (Sección 4.5.1) y luego el protocolo para la identificación de dominios propiamente dicho (Sección 4.5.2) Detalle del Procedimiento Utilizado para la Generación de Dominios en Forma Previa a la Ejecución de las Experiencias El procedimiento para describir dicha generación es el siguiente [López Nocera et al., 2011]: Paso 1: Preparación del Experimento. Como salida de este paso se obtendrá un conjunto de reglas de clasificación y un conjunto de ejemplos del dominio que dan soporte a éstas. Sub paso 1.1 Generación del dominio basada sobre la generación de clases y reglas que indican la pertenencia a cada una de éstas. Sub paso 1.2 Generación de ejemplos que den soporte a cada una de las reglas de clasificación. Paso 2: Ejecución del Experimento. Como salida de este paso se obtendrá el conjunto de reglas descubiertas. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 93 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

117 SOLUCION PROPUESTA Sub paso 2.1 Aplicación del proceso de agrupamiento al conjunto de ejemplos del dominio para obtener el conjunto de sus clústeres (grupos). Sub paso 2.2 Aplicación del proceso de inducción a cada clúster para obtener reglas que caractericen la pertenencia a dicho clúster. Paso 3: Comparación entre el conjunto de reglas de clasificación del Paso 1 y las reglas descubiertas en el Paso 2. El porcentaje de reglas descubiertas de forma correcta define el éxito del experimento Descripción del Protocolo para la Identificación de Dominios Descrito el procedimiento de generación de dominios, se pasará ahora a describir el protocolo de identificación de dominio anteriormente mencionado. El protocolo se describirá en términos de los siguientes pasos [López Nocera et al., 2011]: Paso 1: Elegir un algoritmo de clustering, sea K, y un algoritmo de inducción, sea I. Paso 2: Repetir N veces: SubP 2.1. Generar un dominio (ejemplos y reglas) para cada una de las combinaciones de valores posibles de las variables independientes predefinidas por el experimentador. SP Para cada dominio generado: SP Obtener una partición del conjunto de ejemplos del dominio en grupos aplicando el algoritmo K a los ejemplos del dominio. SP Obtener reglas que caractericen la pertenencia a los grupos encontrados utilizando el algoritmo I. SP Obtener el porcentaje de reglas correctamente cubiertas por comparación del conjunto de reglas obtenidas en SP con el conjunto de reglas obtenido en SubP 2.1. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 94 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

118 SOLUCION PROPUESTA SubP 2.2. Registrar los datos obtenidos (cantidad de atributos de cada ejemplo, cantidad de posibles valores que pueden tomar los atributos, cantidad de clases que rigen los ejemplos, cantidad de reglas que indican la pertenencia a cada clase, cantidad de ejemplos utilizados para cada regla, porcentaje de reglas correctamente cubiertas, cantidad de atributos sobre los cuales las reglas impondrán condiciones). Paso 3: Obtener el Diagrama de Kiviat para los datos obtenidos. Paso 4: Identificar usando Diagramas de Kiviat el tipo de dominio en el que la combinación seleccionada (K, I) mejor descubre conocimiento Descripción de la Prueba de Concepto a Utilizar en la Implementación de la Solución Para implementar la solución se desarrollará una prueba de concepto, para lo cual se ejecutarán los siguientes pasos: 1) Se llevarán a cabo en este caso 210 corridas, utilizando para ello los 7 atributos antes descritos para cada uno de los 30 escenarios ya introducidos, y aplicando asimismo un par dado de algoritmos (el primero de clustering y el restante de inducción) sobre el dominio. Se elegirá en primer término SOM como algoritmo de clustering e ID3 de la familia TDITD como algoritmo de inducción, utilizando una adaptación ad hoc del banco de pruebas utilizado en [Kogan, 2007] y las librerías GNU del software denominado WEKA [Kogan, 2007; Witten y Frank, 2005], desarrollado por la Universidad de Waikato (Helsinki, Finlandia). Se repetirá el experimento, a continuación, para los otros 9 pares de algoritmos de clustering e inducción, los que ya se mencionaron anteriormente en el presente trabajo, a saber: SOM VS AQ15, SOM VS CN2, SOM VS M5, K-means VS AQ15, K-means VS CN2, K-means VS M5, NNC-KNN VS AQ15, NNC-KNN VS CN2 y NNC-KNN VS M5. 2) Se analizarán los resultados recopilados experimentalmente, y se verificará el porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de variables. Una muestra posible de los datos que se esperan obtener, y TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 95 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

119 SOLUCION PROPUESTA que serán tratados con sumo detalle en el capítulo de Resultados Experimentales Obtenidos del presente trabajo, se puede observar la Figura 4.25 a continuación: an apv cpv rpc ibr %rcc an = cantidad de atributos de cada ejemplo (attributes number) apv =cantidad de posibles valores que pueden tomar los atributos (attribute possible values) cpv= cantidad de clases que rigen los ejemplos (class possible values) rpc= cantidad de reglas que indican la pertenencia a cada clase (rules per class) ibr= cantidad de ejemplos utilizados para cada regla (instances by rule) %rcc= porcentaje de reglas correctamente cubiertas (rules correctly covered percentage) Figura 4.25: Muestra de los datos utilizados para obtener el Diagrama de Kiviat que se muestra a continuación, en la Figura ) Se graficará cada resultado experimental obtenido, utilizando para ello Diagramas de Kiviat. Uno de los posibles Diagramas de Kiviat que se espera sean obtenidos en forma experimental puede verse, a modo de ejemplo, en la Figura 4.26 a continuación: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 96 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

120 SOLUCION PROPUESTA Figura 4.26: Ejemplo de Diagrama de Kiviat obtenido para el juego de datos de la Figura 4.25 En este ejemplo preliminar, que se desarrollará en detalle en el capítulo de Resultados Experimentales Obtenidos del presente trabajo, se observa mejor cubrimiento para los casos 2 y 3 de la tabla de la Figura 4.25, es decir, para aquellos casos con menor cantidad de reglas por clase (rules per class), manteniendo fijas las otras variables; dicho cubrimiento mejora, a su vez, como ya se señaló, si se aumenta adicionalmente la cantidad de ejemplos utilizados para cada clase (instances by rule) y se mantiene constante el resto de las variables, incluyendo rules per class. 4) Asimismo, se analizarán (como ya se indicó) los resultados obtenidos experimentalmente según los distintos tipos de dominios: hipercomplejo, complejo, mediano, oscilante y simple y se intentará llegar a una conclusión mediante la interpretación de los resultados experimentales obtenidos, todo lo cual se desarrollará a continuación en el capítulo siguiente, esto es, justamente, el de Resultados Experimentales Obtenidos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 97 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

121 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION 5. RESULTADOS EXPERIMENTALES OBTENIDOS En este capítulo se presentan los resultados obtenidos como consecuencia de los experimentos llevados a cabo. Se comenzará con una presentación del esquema completo de laboratorio diseñado para la propuesta de solución aplicada en forma experimental al problema delimitado (Sección 5.1). A continuación se describirá el contenido completo obtenido de las tablas que constituyen cada una de las bases de datos utilizadas (Sección 5.2), a saber: experiencias (Sección 5.2.1), iteraciones (Sección 5.2.2), escenarios (Sección 5.2.3), gráficos (Sección 5.2.4), puntos graficados (Sección 5.2.5) y reglas correctamente cubiertas (Sección 5.2.6). Luego de ello se destacará el rol del banco de pruebas ad hoc utilizado para la experimentación (Sección 5.3). Acto seguido se describirán los gráficos obtenidos durante la experimentación llevada a cabo (Sección 5.4). A colación de ello, se incluirá una referencia a los Diagramas de Kiviat obtenidos durante la experimentación, en tanto y en cuanto como ya se señaló en la Sección 4.4 del presente trabajo- son herramientas útiles para la visualización de los datos obrantes como resultados experimentales obtenidos en este trabajo (Sección 5.5). Finalmente, se hará un análisis completo de la performance de las corridas que posibilitaron la obtención de los resultados experimentales expuestos en el presente capítulo (Sección 5.6) Presentación del Esquema Completo de Laboratorio Teniendo en cuenta todo lo expresado en el capítulo en el que se presentó una propuesta de solución aplicada en forma experimental al problema delimitado como premisa, se efectuaron las experiencias, que tuvieron la siguiente estructuración: TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 98 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

122 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION a) Se creó una base de datos con la aplicación GNU PostgreSQL 9.0 para cada par de algoritmos de clustering e inducción utilizado (Sección del presente trabajo). b) En y para cada base de datos se preparó el banco de pruebas, adaptando en forma ad hoc el ya existente en [Kogan, 2007], desarrollado con lenguaje de programación GNU Java y adaptado con la ayuda del ya mencionado software WEKA (Sección del presente trabajo). c) Se preparó la separación del estudio de modo tal de efectuarlo para cada una de las siete variables antes mencionadas (Sección 4.1.2, Sección y Sección del presente trabajo). d) Para cada una de esas siete variables, se efectuaron 30 corridas, abarcando cada una de ellas cada uno de los 30 escenarios existentes, con lo cual se generaron aproximadamente ejemplos en cada una. Es decir, se efectuaron 210 experiencias (a razón de treinta corridas para cada una de las siete variables) generando así igual cantidad de grupos de dominios y unos ejemplos (a razón de diez mil quinientos ejemplos para cada una de las siete variables utilizadas en el estudio) para cada par de algoritmos utilizados (Sección , Sección y Sección 4.6 del presente trabajo). e) Se graficaron los resultados obtenidos para cada corrida, obteniéndose 42 gráficos (una por cada una de las siete variables utilizadas, confeccionándose un gráfico versus cada una de las otras seis variables en cuestión) por cada par de algoritmos utilizados (Sección y Sección 4.2 del presente trabajo), utilizando como Graph Drawer el programa GNU JFreeChart versión f) Se tabularon los resultados experimentales obtenidos en las bases de datos creadas con la aplicación GNU PostgreSQL 9.0, exportándolos a Microsoft Access 2007, para obtener así los porcentajes de reglas correctamente cubiertas, la cantidad de ejemplos generados y los tiempos de ejecución empleados (Sección del presente trabajo). g) Se graficaron los correspondientes Diagramas de Kiviat, a razón de uno para cada par de algoritmos sujetos a experimentación (Sección del presente trabajo), utilizando para ello los gráficos de radar que provee Microsoft Excel h) Luego de ello, se analizarán los resultados experimentales obtenidos desde el punto de vista teórico y también numérico (Sección 6.2 en el capítulo Interpretación de los Resultados Experimentales Obtenidos del presente trabajo). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 99 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

123 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION i) Se compararán los resultados obtenidos experimentalmente con las predicciones teóricas y con los resultados experimentales preexistentes (Sección 6.3 en el capítulo Interpretación de los Resultados Experimentales Obtenidos en el presente trabajo). j) Se elaborarán y enunciarán las correspondientes proposiciones experimentales (Sección 6.4 en el capítulo Interpretación de los Resultados Experimentales Obtenidos en el presente trabajo). k) Se arribará a las conclusiones finales a partir de los resultados obtenidos en la experimentación (Sección 6.5 en el capítulo Interpretación de los Resultados Experimentales Obtenidos en el presente trabajo). l) Se propondrán las futuras líneas de investigación que pudieran continuar con el camino experimental abordado (Sección 6.6 en el capítulo Interpretación de los Resultados Experimentales Obtenidos en el presente trabajo) Descripción del Contenido de las Tablas que Constituyen cada una de las Bases de Datos Utilizadas en el Esquema Experimental A continuación se describirá el contenido completo obtenido de las tablas que constituyen cada una de las bases de datos utilizadas en las experiencias. Se trata de las tablas correspondientes a las experiencias (Sección en el presente trabajo), a las iteraciones, (Sección en el presente trabajo), a los escenarios (Sección en el presente trabajo), a los gráficos (Sección en el presente trabajo), a los puntos graficados (Sección en el presente trabajo) y a las reglas correctamente cubiertas (Sección en el presente trabajo) Contenido de la Tabla de Experiencias Si bien el número de registros obtenidos para esta tabla (nomenclada como Experience en las bases de datos) ha sido variable (desde un mínimo de 210 para las combinaciones NNC VS M5, NNC VS CN2, K-means VS M5, K-means VS CN2, K-means VS AQ15, TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 100 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

124 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION SOM VS M5 y SOM VS CN2, hasta un máximo de 224 para la combinación NNC VS AQ15 y de 264 para la combinación SOM VS AQ15) para cada una de las bases de datos (es decir, para cada par de algoritmos de clustering e inducción para los que se crearon las bases), el número esperado de registros es justamente de 210 a razón de una experiencia por cada uno de los 30 escenarios existentes para cada uno de los posibles 7 parámetros utilizables, más allá de los valores previamente obtenidos en [Kogan, 2007] que, para la combinación SOM VS ID3 de la familia TDIDT analizada en el mencionado trabajo, alcanza a 295 registros. En la Sección , Apartado a) del presente trabajo, se describió ya la estructura de esta tabla y se presentó un registro a modo de ejemplo (Figura 4.1 en el presente trabajo). En la Figura 8.1, en la Sección 8.1 del capítulo de Anexos del presente trabajo, se reproduce una versión reducida del contenido de los primeros 264 registros de la tabla, correspondientes a la primera combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla, id est, SOM VS AQ15, haciendo variar cada uno de los parámetros entre los valores 3 y 10, a lo largo de los 30 escenarios ya mencionados. Los 2253 registros que constituyen el contenido completo de esta tabla, para todas las bases de datos, pueden consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.2 del capítulo de Anexos. Una representación gráfica de la estructura del árbol de directorios del soporte digital que acompaña el presente trabajo puede visualizarse por intermedio de la Figura 8.8, en la Sección Contenido de la Tabla de Iteraciones Si bien el número de registros obtenidos para esta tabla (nomenclada como Experience_iteration en las bases de datos) ha sido variable (desde un mínimo de para la combinación SOM VS CN2, hasta un máximo de para la combinación SOM VS AQ15) para cada una de las bases de datos (es decir para cada par de algoritmos de clustering e inducción para los que se crearon las bases), el número máximo esperado de registros es de 73500, a razón de una iteración por cada uno de los siete atributos utilizados TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 101 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

125 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION y por cada una de las cincuenta corridas realizadas por cada una de las doscientas diez experiencias llevadas a cabo, o sea: (50 * 7 * 210). En la Sección , Apartado b) del presente trabajo, se describió ya la estructura de esta tabla y se presentó un registro a modo de ejemplo (Figura 4.2 en el presente trabajo). En la Figura 8.2, en la Sección 8.3 del capítulo de Anexos del presente trabajo, se reproduce una versión reducida del contenido de los primeros 350 registros de la tabla, correspondientes a la primera combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla, id est, SOM VS CN2, haciendo variar el parámetro (en este caso attributes number) en un rango de 7 valores, entre los valores 4 y 10, durante 50 iteraciones a lo largo de la primera de las 210 experiencias ya mencionadas. El contenido de los registros que constituyen la información completa de esta tabla, para todas las bases de datos, puede consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.4 del capítulo de Anexos Contenido de la Tabla de Escenarios Si bien el número de registros obtenidos para esta tabla nomenclada como Scenario en las bases de datos de experimentación ha sido variable (desde un mínimo de 30 para las combinaciones NNC VS M5, NNC VS CN2, NNC VS AQ15, K-means VS M5, K-means VS CN2, K-means VS AQ15, SOM VS M5 y SOM VS CN2, hasta un máximo de 32 para la combinación SOM VS ID3 de la familia TDIDT, valor obtenido en [Kogan, 2007] para cada una de las bases de datos (es decir para cada par de algoritmos de clustering e inducción para los que se crearon las bases), el número teórico esperado de registros es de 30, en función de la cantidad de combinaciones aceptables experimentalmente que se detectaron. En la Sección , Apartado c) del presente trabajo, se describió ya la estructura de esta tabla y se presentó un registro a modo de ejemplo (Figura 4.3.a, Figura 4.3.b, Figura 4.3.c, Figura 4.3.d y Figura 4.3.e en el presente trabajo). En la Figura 8.3 de la Sección 8.5 del capítulo de Anexos del presente trabajo, se reproduce una versión reducida del contenido de los primeros 30 registros de la tabla, correspondientes a la primera TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 102 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

126 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla, id est, SOM VS AQ15, haciendo variar los siete parámetros entre los diversos valores correspondientes al rango preestablecido para la experimentación. Los 302 registros que constituyen el contenido completo de esta tabla, para todas las bases de datos, pueden consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.6 del capítulo de Anexos Contenido de la Tabla de Gráficos El número de registros obtenidos para esta tabla nomenclada como Graph en las bases de datos experimentales ha sido para todas ellas de 42, que es el número teórico esperado en función de la cantidad de combinaciones experimentalmente aceptables que existen para cada par conformado por un algoritmo de clustering y un algoritmo de inducción que se eligieron para la experimentación, dado que cada uno de los siete parámetros puede graficarse en función de los otros seis, resultando así: 7 * 6 = 42. En la Sección , Apartado d) del presente trabajo, se describió ya la estructura de esta tabla y se presentó un registro a modo de ejemplo (Figura 4.4 en el presente trabajo). En la Figura 8.4 de la Sección 8.7 del capítulo de Anexos del presente trabajo se reproduce una versión reducida del contenido de los primeros 42 registros de la tabla, correspondientes a la primera combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla, id est SOM VS AQ15, haciendo variar los siete parámetros entre los diversos valores correspondientes al rango preestablecido para la experimentación, tanto para las abscisas como para el parámetro de serie. Los 420 registros que constituyen el contenido completo de esta tabla, para todas las bases de datos, puede consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.8 del capítulo de Anexos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 103 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

127 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION Contenido de la Tabla de Graficaciones El número de registros obtenidos para esta tabla nomenclada como Graph_experience en las bases de datos experimentales ha sido variable para todas ellas, desde un máximo de 264 para la combinación SOM VS AQ15 hasta un mínimo de 198 para la combinación KNN VS CN2, siendo para el resto de las combinaciones de 210, que es el número teórico esperado en función de la cantidad de combinaciones experimentalmente aceptables que existen, dado que cada uno de los siete parámetros puede graficarse en función de los otros seis, y para cada gráfico se han decidido elegir a priori 5 puntos de graficación, resultando así: 7 * 6 * 5 = 210. En la Sección , Apartado e) del presente trabajo, se describió ya la estructura de esta tabla y se presentó un registro de la misma con un punto de un gráfico a modo de ejemplo (Figura 4.5 en el presente trabajo). En la Figura 8.5 de la Sección 8.9 del capítulo de Anexos del presente trabajo, se reproduce una versión reducida del contenido de los primeros 210 registros de la tabla, correspondientes a todos los puntos tomados para los gráficos representados para la combinación entre el algoritmo de clustering SOM y al algoritmo de inducción M5, que es la primera combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla. Los 2250 registros que constituyen el contenido completo de esta tabla, para todas las bases de datos, puede consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.10 del capítulo de Anexos Contenido de la Tabla de Reglas Correctamente Cubiertas El número de registros obtenidos para esta tabla nomenclada simplemente como Tablita en las bases de datos experimentales ha ido desde un mínimo de 9998 para la combinación SOM VS ID3 de la familia TDIDT y, para el resto de las combinaciones elegidas entre un algoritmo de clustering y otro de inducción, se ha llegado al máximo de registros, que es el número teórico esperado en función de la cantidad de combinaciones aceptables experimentalmente que existen para los siete atributos considerados, según ya se explicó en la Sección , Apartado e) del presente trabajo, a saber, la cantidad total de TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 104 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

128 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION iteraciones agrupadas de a siete, o sea ((50 * 7 * 210)/7), que es, por tanto, la cantidad de veces (una por cada atributo) que se repite cada combinación de valores en las iteraciones. En el recién mencionado Apartado e) de la Sección del presente trabajo se describió asimismo la estructura de esta tabla y se presentó un registro a modo de ejemplo (Figura 4.6). En la Figura 8.6 de la Sección 8.11 del capítulo de Anexos del presente trabajo, se reproduce una versión reducida del contenido de los primeros 50 registros de la tabla, correspondientes a todos los cubrimientos correctos de reglas representados por la primera combinación entre un algoritmo de clustering y un algoritmo de inducción que existe en la tabla, id est SOM VS ID3 de la familia TDIDT, tomando en cuenta también la primera combinación posible entre los dos primeros atributos elegidos, esto es, class possible values igual a 5 y rules per class igual a 5 lo cual ocurre durante las 50 iteraciones llevadas a cabo para esa combinación. Los registros que constituyen el contenido completo de esta tabla, para todas las bases de datos, a razón de, como recién se indicó, 9998 registros para la combinación SOM VS ID3 de la familia TDIDT y de registros para cada una de las otras nueve combinaciones entre un algoritmo de clustering y un algoritmo de inducción tomadas en cuenta para la experimentación llevada a cabo, pueden consultarse en formato electrónico en el soporte digital que acompaña al presente trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.12 del capítulo de Anexos Presentación del Banco de Pruebas de Laboratorio En el presente apartado se destaca el rol cumplido en el proceso experimental por el banco de pruebas originalmente existente en [Kogan, 2007], que fuera adaptado ad hoc para el presente trabajo. En la Sección del presente trabajo ya se describió en detalle la estructura del mismo, como asimismo su configuración en función de los parámetros utilizados, en pos de lograr un ambiente controlado de experimentación, esto es, un laboratorio simulado, el cual permitió la generación experimental de dominios, de ejemplos, el clustering o agrupamiento y la inducción de reglas, lo cual, en definitiva, constituye el conjunto de los resultados experimentales obtenidos señalados a lo largo de todo el presente capítulo. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 105 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

129 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION La dinámica de trabajo del mencionado banco de pruebas fue ya descrita también en la recién mencionada Sección del presente trabajo, donde se señaló que estaba basada sobre el protocolo experimental para caracterización de dominios que también se describió en detalle en la Sección del presente trabajo, el cual a su vez conlleva un protocolo para la generación previa de dominios [López Nocera et al., 2011], lo que ya fue asimismo descrito en detalle en la Sección del presente trabajo. En definitiva, los resultados experimentales obtenidos en el presente trabajo y presentados en el actual capítulo, se lograron aplicando la prueba de concepto que utiliza ambos protocolos a todas las combinaciones de pares de algoritmos de clustering e inducción ya descritas en el Apartado l) de la Sección 4.6 del presente trabajo. El procedimiento operativo de aplicación de la prueba de concepto ya fue descrito con detalle en los cuatro apartados que constituyen la misma Sección 4.6 del presente trabajo Descripción de los Gráficos Obtenidos como Resultado del Proceso Experimental Efectuado Se graficaron, según ya se señaló en diversas ocasiones en el presente trabajo (vedi, por ejemplo, Sección y Sección 5.2.5) las 42 combinaciones experimentalmente aceptables, para cada una de las diez combinaciones entre un algoritmo de clustering y otro de inducción que se utilizaron en laboratorio. Los 405 gráficos obtenidos experimentalmente con la ayuda del Graph Drawer GNU JFreeChart versión , a razón entonces (Sección y Sección 5.2.5) de cuarenta y dos gráficos por cada una de las diez bases de datos utilizadas (42 * 10), desde un mínimo de 36 gráficos obtenidos para, por ejemplo, la combinación SOM VS AQ15 hasta un máximo de 42 para, por caso, la combinación NNC VS CN2, pueden consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.13 del capítulo de Anexos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 106 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

130 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION 5.5. Descripción de los Diagramas de Kiviat Obtenidos como Resultado del Proceso Experimental Efectuado En la presente sección se destaca el rol cumplido en el proceso experimental por los denominados Diagramas de Kiviat [Kolence y Kiviat, 1973; Soman et al., 2006] en la parte experimental del presente trabajo. La utilidad de los diagramas ha sido ya explicada en la introducción al presente capítulo, como así también en la Sección 4.4 del presente trabajo. Allí se muestran además, a modo de ejemplo, la Figura 4.24.a y la Figura 4.24.b. Asimismo, en la Sección 4.6 del presente trabajo, donde se discurrió sobra la prueba de concepto a utilizar en el presente estudio, se describió detalladamente el modo de uso de estos diagramas y se ilustró ampliamente la situación con la ayuda de la Figura 4.25 y de la Figura A lo largo del capítulo de la solución propuesta, verbigracia por intermedio de la Figura 4.8, Figura 4.11, Figura. 4.14, Figura 4.17, Figura 4.19.a, Figura 4.19.b, Figura 4.20 y Figura 4.21, se fueron postulando los distintos tipos de sectores que finalmente, durante la experimentación, quedaron reflejados como resultados experimentales obtenidos, para cada par de algoritmos de clustering e inducción utilizados durante la fase de laboratorio. A su vez, en [López Nocera et al., 2011; López Nocera y García Martínez, 2012], se da una explicación en detalle acerca de la obtención e interpretación de dicha clasificación sectorial, la que será ampliada en el siguiente capítulo del presente trabajo, a saber, el de interpretación de los resultados experimentales obtenidos. Por otra parte, dicha clasificación sectorial ya se describió antes en el presente trabajo, por medio de la Figura 4.9, Figura 4.12, Figura 4.15, Figura 4.18 y Figura El origen de los datos para todas las mencionadas figuras del presente trabajo puede consultarse en formato electrónico en el soporte digital que acompaña este trabajo, siguiendo las indicaciones detalladas más adelante, en la Sección 8.14 del capítulo de Anexos. El gráfico de la Figura 4.26 del presente trabajo se obtiene utilizando la opción de gráfico de radar del menú de graficación de Microsoft Office Excel 2007, opción que se ha elegido como la más adecuada en el presente trabajo, por ser la que permite mejor visualización de los datos. Sin embargo, el programa permite realizar otros tipos de gráficos con los datos de origen. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 107 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

131 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION A modo de ejemplo, se presentan aquí, por un lado, otro tipo de Diagrama de Kiviat, donde los sectores se muestran apilados, y, por otro lado, se presenta también un gráfico de barras para desplegar los valores obtenidos experimentalmente. Ambos gráficos se muestran, respectivamente, en la Figura 5.1 y en la Figura 5.2, a continuación: Figura 5.1: Diagrama de Kiviat correspondiente a la Figura 4.26 del presente trabajo, en el cual los sectores se presentan en forma apilada en función del porcentaje de reglas correctamente cubiertas TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 108 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

132 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION Figura 5.2: Diagrama de Kiviat correspondiente a la Figura 4.26 del presente trabajo, en el cual los sectores se presentan como gráfico de barras, en función del porcentaje de reglas correctamente cubiertas En particular, la Figura 5.2 será reproducida nuevamente en el siguiente capítulo de Interpretación de los Resultados Experimentales Obtenidos, donde se explicará en detalle su contenido (Sección 6.2, Figura 6.3 en el presente trabajo), en especial el significado de las letras que aquí constituyen el eje de abscisas. Por su parte, además, en las experiencias de laboratorio se representó gráficamente un Diagrama de Kiviat para cada una de las diez combinaciones experimentales existentes entre un algoritmo de clustering y otro de inducción que se utilizaron en laboratorio. Los diez gráficos obtenidos experimentalmente pueden consultarse en formato electrónico en el soporte digital que acompaña este trabajo siguiendo las indicaciones detalladas más adelante, en la Sección 8.15 del capítulo de Anexos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 109 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

133 RESULTADOS OBTENIDOS ESCUBRIMIENTO DE CONOCIMIENTO MEDIANTE LA INTEGRACION DE ALGORITMOS DE EXPLOTACION DE LA INFORMACION 5.6. Análisis Completo De La Performance de las Corridas que Posibilitaron la Obtención de los Resultados Experimentales En la presente sección se detalla el análisis completo realizado acerca de la performance alcanzada en las corridas llevadas a cabo durante la parte experimental del presente trabajo, teniendo en cuenta diversos aspectos, los que son expuestos en formato electrónico en el soporte digital que acompaña este trabajo, y pueden consultarse allí siguiendo las indicaciones detalladas más adelante, en la Sección 8.16 del capítulo de Anexos. Todas estas características se muestran gráficamente, a modo de ejemplo, con todos los valores obtenidos experimentalmente para la combinación NNC VS M5, en la Figura 8.7 de la Sección 8.17 del capítulo de Anexos. Finalmente, el análisis completo del rendimiento experimental, aplicado a todas las combinaciones de algoritmos utilizadas en la fase de laboratorio, puede consultarse en formato electrónico en el soporte digital que acompaña este trabajo y pueden consultarse allí siguiendo las indicaciones detalladas más adelante, en la Sección 8.18 del capítulo de Anexos. El análisis e interpretación de las características experimentales obrantes en el recién mencionado documento se profundizará y se desarrollará en detalle en el siguiente capítulo del presente trabajo, a saber, el correspondiente a la interpretación de los resultados experimentales obtenidos. TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 110 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

134 INTERPRETACIÓN DE RESULTADOS 6. INTERPRETACIÓN DE LOS RESULTADOS EXPERIMENTALES OBTENIDOS En este capítulo se interpretarán los resultados obtenidos como consecuencia de los experimentos llevados a cabo en el presente trabajo. Se comenzará con una introducción al esquema experimental en relación a la interpretación de los resultados obtenidos como consecuencia de dicha experimentación (Sección 6.1 del presente trabajo). Se continuará con un análisis cualitativo y cuantitativo de los resultados obtenidos experimentalmente (Sección 6.2 del presente trabajo). A continuación de lo anterior se compararán los resultados obtenidos en la experimentación llevada a cabo en el presente trabajo con los resultados experimentales previos, obrantes en [Kogan, 2007] (Sección 6.3 del presente trabajo). Acto seguido se describirá el corpus de proposiciones experimentales aplicables a los resultados obtenidos experimentalmente, de modo tal de contar así también con un método comparativo en relación a las predicciones teóricas (Sección 6.4 del presente trabajo). Luego de ello, se enunciará el conjunto de conclusiones experimentales al que se arriba como corolario de la ejecución de las experiencias realizadas en el presente trabajo (Sección 6.5 del presente trabajo). Finalmente, se enunciarán las futuras líneas de investigación experimentales (Sección 6.6 del presente trabajo) Introducción al Esquema Experimental Desarrollado en relación a la Interpretación de los Resultados Obtenidos como Consecuencia de la Experimentación Llevada a cabo en el Presente Trabajo En el capítulo de Resultados Experimentales Obtenidos (Sección 5.1 del presente trabajo) se describió el esquema experimental completo utilizado en la experimentación llevada a cabo. Allí se completaron los contenidos de todas las tablas, los gráficos y los Diagramas de Kiviat (Sección 5.1, Apartado a), Apartado b), Apartado c), Apartado d), Apartado e), Apartado f) y Apartado g)). TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 111 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

135 INTERPRETACIÓN DE RESULTADOS Luego de ello, el esquema continúa aplicándose para proceder con el análisis de los resultados experimentales obtenidos, según se detalla a continuación (Sección 5.1, Apartado h), Apartado i), Apartado j), Apartado k) y Apartado l), en el presente trabajo). Para ello, se analizarán los resultados experimentales obtenidos desde el punto de vista teórico y también numérico, utilizando para ello Microsoft Office Access 2007 y Microsoft Office Excel 2007 (Sección 6.2), como así también Microsoft Office Excel 97 o superior, hasta Microsoft Office Excel Se compararán luego los resultados obtenidos experimentalmente con las predicciones teóricas y con los resultados experimentales preexistentes (Sección 6.3). A continuación, se elaborarán y enunciarán las correspondientes proposiciones experimentales (Sección 6.4). Acto seguido, se esbozarán las conclusiones finales a partir de los resultados obtenidos en la experimentación (Sección 6.5). A colación, se propondrán las futuras líneas de investigación que pudieran continuar con el camino experimental abordado (Sección 6.6) Análisis Cualitativo y Cuantitativo de los Resultados Obtenidos Experimentalmente De la observación de los resultados experimentales obtenidos se aprecia que, en cuanto a la caracterización de los dominios, se puede inferir lo siguiente [López Nocera et al., 2011]: a) Los dominios pertenecientes al grupo A (Sección 4.2 y Sección 4.3) resultaron pertenecer a la categoría de medianos. b) Los dominios pertenecientes al grupo B (Sección 4.2 y Sección 4.3) resultaron pertenecer a la categoría de hipercomplejos. c) Los dominios pertenecientes al grupo C (Sección 4.2 y Sección 4.3) resultaron pertenecientes a la categoría de complejos. d) En cuanto a los dominios del grupo D (Sección 4.2 y Sección 4.3), aquellos que cuentan con atributos orientados a ejemplos, por caso la variable instances by rule como parámetro y la variable class attribute possible values percentage como serie, y viceversa, entre otros (Figura 4.17 y Figura 4.20) han resultado pertenecer a la categoría de oscilantes. Los que cuentan con atributos orientados al dominio propiamente TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 112 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

136 ÙMERO DE SECTOR CANTIDAD DE ATRIBUTOS DE CADA EJEMPLO CANTIDAD DE POSIBLES VALORES QUE PUEDEN TOMAR LOS ATRIBUTOS CANTIDAD DE CLASES QUE RIGEN LOS EJEMPLOS CANTIDAD DE REGLAS QUE INDICAN LA PERTENENCIA A CADA CLASE CANTIDAD DE EJEMPLOS UTILIZADOS PARA CADA REGLA PORCENTAJE DE REGLAS CORRECTAMENTE CUBIERTAS GRUPO AL QUE PERTENECE INTERPRETACIÓN DE RESULTADOS dicho, como se adelantó en Sección 4.3, Apartado a), también han resultado pertenecer a la categoría de medianos. Se observó además de los resultados que se obtuvieron experimentalmente que, de acuerdo a lo esperado, cuando se considera al atributo attribute possible values como serie, se obtiene pertenencia al grupo B (dominio hipercomplejo). Considerando, en cambio attribute possible values como parámetro, se observa pertenencia al grupo C (dominio complejo). Considerando rules per class como parámetro y attributes number o class possible values como serie, como así también con attributes number como parámetro y rules per class o class possible values como serie, se observa pertenencia al grupo A (dominio mediano) [López Nocera et al., 2011; López Nocera y García Martínez, 2012]. Asimismo, se observa que para cualquiera de las características inherentes a los ejemplos (attributes used in rules, class attributes possible values percentage e instances by rule), sea como serie o como parámetro, se obtiene pertenencia al grupo D (dominio oscilante), observándose similitudes también con algunas características del grupo A en lo que hace a los dominios con características inherentes al dominio propiamente dicho, con lo cual se obtiene, para ellos, pertenencia a la categoría de dominios medianos [López Nocera et al., 2011; López Nocera y García Martínez, 2012]. En [López Nocera et al., 2011; López Nocera y García Martínez, 2012], asimismo, se analizaron gráficamente los resultados experimentales obtenidos para la combinación SOM VS ID3 de la familia TDIDT y se representaron los mismos mediante las ibi denominadas Tabla 1, Figura 1 y Figura 2, que aquí se reproducen a continuación como Figura 6.1, Figura 6.2 y Figura 6.3, respectivamente (ésta última ya se incluyó anteriormente en el presente trabajo como Figura 5.8 (Sección 5.5)): A A A C C C TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 113 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

137 NÙMERO DE SECTOR CANTIDAD DE ATRIBUTOS DE CADA EJEMPLO CANTIDAD DE POSIBLES VALORES QUE PUEDEN TOMAR LOS ATRIBUTOS CANTIDAD DE CLASES QUE RIGEN LOS EJEMPLOS CANTIDAD DE REGLAS QUE INDICAN LA PERTENENCIA A CADA CLASE CANTIDAD DE EJEMPLOS UTILIZADOS PARA CADA REGLA PORCENTAJE DE REGLAS CORRECTAMENTE CUBIERTAS GRUPO AL QUE PERTENECE INTERPRETACIÓN DE RESULTADOS D D D B B B C C C C C C B B B C C C C C C Figura 6.1. Porcentaje de reglas correctamente cubiertas para cada una de las combinaciones posibles de variables TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 114 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

138 INTERPRETACIÓN DE RESULTADOS Figura 6.2. Diagrama de Kiviat que despliega los datos representados en Figura 6.1 Figura 6.3. Gráfico de barras que despliega los resultados comparativos de los datos representados en Figura 6.1 TESIS DE MAESTRIA EN INGENIERIA EN SISTEMAS DE LA INFORMACION 115 E.I.S.I. LIC.MARCELO U. LOPEZ NOCERA

de Lanús. Buenos Aires, Argentina. rgarcia@unla.edu.ar.

de Lanús. Buenos Aires, Argentina. rgarcia@unla.edu.ar. Behavioral Variability of Clustering and Induction Based on Domain Features Variabilidad del Comportamiento de Agrupamiento e Inducción Basado en las Características del Dominio Marcelo López N. 1, Ramón

Más detalles

Impacto de la Complejidad del Dominio en las Variaciones del Comportamiento de Procesos de Explotación de Información

Impacto de la Complejidad del Dominio en las Variaciones del Comportamiento de Procesos de Explotación de Información Impacto de la Complejidad del Dominio en las Variaciones del Comportamiento de Procesos de Explotación de Información Marcelo López Nocera Programa de Maestría en Ingeniería de Sistemas de Información.

Más detalles

Un Protocolo de Caracterización Empírica de Dominios para Uso en Explotación de Información

Un Protocolo de Caracterización Empírica de Dominios para Uso en Explotación de Información Un Protocolo de aracterización Empírica de Dominios para Uso en Explotación de Información Lopez-Nocera, M., Pollo-attaneo, F., Britos, P., García-Martínez, R. Grupo Investigación en Sistemas de Información.

Más detalles

1. INTRODUCCIÓN AL CONCEPTO DE LA INVESTIGACIÓN DE MERCADOS 1.1. DEFINICIÓN DE INVESTIGACIÓN DE MERCADOS 1.2. EL MÉTODO CIENTÍFICO 2.

1. INTRODUCCIÓN AL CONCEPTO DE LA INVESTIGACIÓN DE MERCADOS 1.1. DEFINICIÓN DE INVESTIGACIÓN DE MERCADOS 1.2. EL MÉTODO CIENTÍFICO 2. 1. INTRODUCCIÓN AL CONCEPTO DE LA INVESTIGACIÓN DE MERCADOS 1.1. DEFINICIÓN DE INVESTIGACIÓN DE MERCADOS 1.2. EL MÉTODO CIENTÍFICO 2. GENERALIDADES SOBRE LAS TÉCNICAS DE INVESTIGACIÓN SOCIAL Y DE MERCADOS

Más detalles

CLUSTERING MAPAS AUTOORGANIZATIVOS (KOHONEN) (RECUPERACIÓN Y ORGANIZACIÓN DE LA INFORMACIÓN)

CLUSTERING MAPAS AUTOORGANIZATIVOS (KOHONEN) (RECUPERACIÓN Y ORGANIZACIÓN DE LA INFORMACIÓN) CLASIFICACIÓN NO SUPERVISADA CLUSTERING Y MAPAS AUTOORGANIZATIVOS (KOHONEN) (RECUPERACIÓN Y ORGANIZACIÓN DE LA INFORMACIÓN) info@clustering.50webs.com Indice INTRODUCCIÓN 3 RESUMEN DEL CONTENIDO 3 APRENDIZAJE

Más detalles

Weka como herramienta de data mining

Weka como herramienta de data mining Weka como herramienta de data mining Lic. Aldave Rojas Isaac Alberto Instituto Tecnológico Superior de Ciudad Serdán Abstract El presente trabajo muestra un ejemplo introductorio a la herramienta de Data

Más detalles

Inteligencia en Redes de Comunicaciones. Tema 7 Minería de Datos. Julio Villena Román, Raquel M. Crespo García, José Jesús García Rueda

Inteligencia en Redes de Comunicaciones. Tema 7 Minería de Datos. Julio Villena Román, Raquel M. Crespo García, José Jesús García Rueda Inteligencia en Redes de Comunicaciones Tema 7 Minería de Datos Julio Villena Román, Raquel M. Crespo García, José Jesús García Rueda {jvillena, rcrespo, rueda}@it.uc3m.es Índice Definición y conceptos

Más detalles

Líneas de I+D+I del Laboratorio de Investigación y Desarrollo en Ingeniería de Explotación de Información (LIDIEI GISI UNLa)

Líneas de I+D+I del Laboratorio de Investigación y Desarrollo en Ingeniería de Explotación de Información (LIDIEI GISI UNLa) Líneas de I+D+I del Laboratorio de Investigación y Desarrollo en Ingeniería de Explotación de Información (LIDIEI GISI UNLa) R. García-Martínez, D. Rodríguez, E. Baldizzoni, S. Martins Grupo Investigación

Más detalles

ANALES DEL XVIII CONGRESO ARGENTINO DE CIENCIAS DE LA COMPUTACIÓN CACIC. 8 al 12 de octubre de 2012. Bahía Blanca, Buenos Aires, Argentina

ANALES DEL XVIII CONGRESO ARGENTINO DE CIENCIAS DE LA COMPUTACIÓN CACIC. 8 al 12 de octubre de 2012. Bahía Blanca, Buenos Aires, Argentina ANALES DEL XVIII CONGRESO ARGENTINO DE CIENCIAS DE LA COMPUTACIÓN XVIII CACIC 2012 8 al 12 de octubre de 2012 Bahía Blanca, Buenos Aires, Argentina XIII Workshop Agentes y Sistemas Inteligentes (WASI)

Más detalles

Visión global del KDD

Visión global del KDD Visión global del KDD Series Temporales Máster en Computación Universitat Politècnica de Catalunya Dra. Alicia Troncoso Lora 1 Introducción Desarrollo tecnológico Almacenamiento masivo de información Aprovechamiento

Más detalles

INSTITUTO MATEMÁTICO Y ACTUARIAL MEXICANO DIPLOMADO EN MINERÍA DE DATOS

INSTITUTO MATEMÁTICO Y ACTUARIAL MEXICANO DIPLOMADO EN MINERÍA DE DATOS INSTITUTO MATEMÁTICO Y ACTUARIAL MEXICANO DIPLOMADO EN MINERÍA DE DATOS Por qué es importante la Minería de Datos? 2 La Minería de Datos es un proceso que permite obtener conocimiento a partir de los datos

Más detalles

Fundamentos y Aplicaciones Prácticas del Descubrimiento de Conocimiento en Bases de Datos. - Sesión 9 -

Fundamentos y Aplicaciones Prácticas del Descubrimiento de Conocimiento en Bases de Datos. - Sesión 9 - Fundamentos y Aplicaciones Prácticas del Descubrimiento de Conocimiento en Bases de Datos - Sesión 9 - Juan Alfonso Lara Torralbo 1 Índice de contenidos Actividad. Qué es un modelo de Data Mining Qué es

Más detalles

Base de datos II Facultad de Ingeniería. Escuela de computación.

Base de datos II Facultad de Ingeniería. Escuela de computación. Base de datos II Facultad de Ingeniería. Escuela de computación. Introducción Este manual ha sido elaborado para orientar al estudiante de Bases de datos II en el desarrollo de sus prácticas de laboratorios,

Más detalles

CARTOGRAFIADO DE TEXTOS Métodos Iconográficos de Observación, Exploración y Comunicación Aplicados a la Minería de Textos

CARTOGRAFIADO DE TEXTOS Métodos Iconográficos de Observación, Exploración y Comunicación Aplicados a la Minería de Textos CARTOGRAFIADO DE TEXTOS Métodos Iconográficos de Observación, Exploración y Comunicación Aplicados a la Minería de Textos Anteproyecto de Tesis de Magíster en Ingeniería del Software Tesista: Lic. Matilde

Más detalles

Aplicación de herramientas de inteligencia de negocios en modelamiento geometalúrgico

Aplicación de herramientas de inteligencia de negocios en modelamiento geometalúrgico Aplicación de herramientas de inteligencia de negocios en modelamiento geometalúrgico Verónica Escobar González, Claudio Barrientos Ochoa, Sergio Barrientos Ochoa, Dirección de Modelamiento Geometalúrgico

Más detalles

DETECCIÓN DE PATRONES DE ACCESIBILIDAD EN EL DESARROLLO DE PROYECTOS WEB

DETECCIÓN DE PATRONES DE ACCESIBILIDAD EN EL DESARROLLO DE PROYECTOS WEB DETECCIÓN DE PATRONES DE ACCESIBILIDAD EN EL DESARROLLO DE PROYECTOS WEB Villanueva, J. (p) ; Rodríguez, V.; Ortega, F.; Mijares, A. Abstract The use of accessibility requirements in the development of

Más detalles

HERRAMIENTA DE INTEGRACION DE ALGORITMOS DE INDUCCION Y MAPA AUTO-ORGANIZADOS Anteproyecto de Tesis de Magíster en Ingeniería del Software

HERRAMIENTA DE INTEGRACION DE ALGORITMOS DE INDUCCION Y MAPA AUTO-ORGANIZADOS Anteproyecto de Tesis de Magíster en Ingeniería del Software HERRAMIENTA DE INTEGRACION DE ALGORITMOS DE INDUCCION Y MAPA AUTO-ORGANIZADOS Anteproyecto de Tesis de Magíster en Ingeniería del Software Tesista: Ing. Esteban Sal Directores: Prof. Ramòn Garcia-Martinez,

Más detalles

Formalización de Dominios de Negocio para Proyectos de Explotación de Información basada en Técnicas de Ingeniería del Conocimiento

Formalización de Dominios de Negocio para Proyectos de Explotación de Información basada en Técnicas de Ingeniería del Conocimiento Formalización de Dominios de Negocio para Proyectos de Explotación de Información basada en Técnicas de Ingeniería del Conocimiento Vegega, C., Pytel, P., Ramón, H., Rodríguez, D., Pollo-Cattaneo, F.,

Más detalles

Aplicación de Redes bayesianas usando Weka.

Aplicación de Redes bayesianas usando Weka. Aplicación de Redes bayesianas usando Weka. Cynthia Lorena Corso 1, Fabian Gibellini 1 1 Universidad Tecnológica Nacional, Facultad Regional Córdoba Laboratorio de Sistemas de Información Maestro M. López

Más detalles

EPB 603 Sistemas del Conocimiento!"#$ %& $ %'

EPB 603 Sistemas del Conocimiento!#$ %& $ %' Metodología para el Desarrollo de Proyectos en Minería de Datos CRISP-DM EPB 603 Sistemas del Conocimiento!"#$ %& $ %' Modelos de proceso para proyectos de Data Mining (DM) Son diversos los modelos de

Más detalles

Introducción a selección de. Blanca A. Vargas Govea blanca.vargas@cenidet.edu.mx Reconocimiento de patrones cenidet Octubre 1, 2012

Introducción a selección de. Blanca A. Vargas Govea blanca.vargas@cenidet.edu.mx Reconocimiento de patrones cenidet Octubre 1, 2012 Introducción a selección de atributos usando WEKA Blanca A. Vargas Govea blanca.vargas@cenidet.edu.mx Reconocimiento de patrones cenidet Octubre 1, 2012 Contenido 1 Introducción a WEKA El origen Interfaces

Más detalles

Trabajo final de Ingeniería

Trabajo final de Ingeniería UNIVERSIDAD ABIERTA INTERAMERICANA Trabajo final de Ingeniería Weka Data Mining Jofré Nicolás 12/10/2011 WEKA (Data Mining) Concepto de Data Mining La minería de datos (Data Mining) consiste en la extracción

Más detalles

ESTIMACIÓN EN GESTIÓN DE PROYECTOS DE SOFTWARE BASADA EN EXPLOTACIÓN DE INFORMACIÓN

ESTIMACIÓN EN GESTIÓN DE PROYECTOS DE SOFTWARE BASADA EN EXPLOTACIÓN DE INFORMACIÓN ESTIMACIÓN EN GESTIÓN DE PROYECTOS DE SOFTWARE BASADA EN EXPLOTACIÓN DE INFORMACIÓN Bogado, Verónica 1, Dapozo, Gladys 1 ; García Martínez, Ramón 2 1. Departamento de Informática. Facultad de Ciencias

Más detalles

Capítulo 1. Introducción

Capítulo 1. Introducción Capítulo 1. Introducción El WWW es la mayor fuente de imágenes que día a día se va incrementando. Según una encuesta realizada por el Centro de Bibliotecas de Cómputo en Línea (OCLC) en Enero de 2005,

Más detalles

Minería de Datos Web. 1 er Cuatrimestre 2015. Página Web. Prof. Dra. Daniela Godoy. http://www.exa.unicen.edu.ar/catedras/ageinweb/

Minería de Datos Web. 1 er Cuatrimestre 2015. Página Web. Prof. Dra. Daniela Godoy. http://www.exa.unicen.edu.ar/catedras/ageinweb/ Minería de Datos Web 1 er Cuatrimestre 2015 Página Web http://www.exa.unicen.edu.ar/catedras/ageinweb/ Prof. Dra. Daniela Godoy ISISTAN Research Institute UNICEN University Tandil, Bs. As., Argentina http://www.exa.unicen.edu.ar/~dgodoy

Más detalles

MINERÍA DE DATOS. Teleprocesos y Sistemas Distribuidos Licenciatura en Sistemas de Información FACENA - UNNE. Octubre - 2003

MINERÍA DE DATOS. Teleprocesos y Sistemas Distribuidos Licenciatura en Sistemas de Información FACENA - UNNE. Octubre - 2003 MINERÍA DE DATOS Teleprocesos y Sistemas Distribuidos Licenciatura en Sistemas de Información FACENA - UNNE Octubre - 2003 CONTENIDO Qué es Data Warehousing Data Warehouse Objetivos del Data Warehouse

Más detalles

LA GESTIÓN DEL CONOCIMIENTO

LA GESTIÓN DEL CONOCIMIENTO Plan de Formación 2006 ESTRATEGIAS Y HABILIDADES DE GESTIÓN DIRECTIVA MÓDULO 9: 9 LA ADMINISTRACIÓN ELECTRÓNICA EN LA SOCIEDAD DE LA INFORMACIÓN LA GESTIÓN DEL CONOCIMIENTO José Ramón Pereda Negrete Jefe

Más detalles

Introducción a la Minería de Datos

Introducción a la Minería de Datos Introducción a la Minería de Datos Abdelmalik Moujahid, Iñaki Inza y Pedro Larrañaga Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad del País Vasco Índice 1 Minería de

Más detalles

Cómo se usa Data Mining hoy?

Cómo se usa Data Mining hoy? Cómo se usa Data Mining hoy? 1 Conocer a los clientes Detectar segmentos Calcular perfiles Cross-selling Detectar buenos clientes Evitar el churning, attrition Detección de morosidad Mejora de respuesta

Más detalles

código Java Solicitudes Reportes AJI resultados API

código Java Solicitudes Reportes AJI resultados API Analizador Java Inteligente López De Luise María Daniela, miembro IT-Lab de la Universidad de Palermo, mlopez74@palermo.edu Agüero Martín Jorge, miembro IT-Lab de la Universidad de Palermo, agüero.martin@gmail.com

Más detalles

Naive Bayes Multinomial para Clasificación de Texto Usando un Esquema de Pesado por Clases

Naive Bayes Multinomial para Clasificación de Texto Usando un Esquema de Pesado por Clases Naive Bayes Multinomial para Clasificación de Texto Usando un Esquema de Pesado por Clases Emmanuel Anguiano-Hernández Abril 29, 2009 Abstract Tratando de mejorar el desempeño de un clasificador Naive

Más detalles

CURSO/GUÍA PRÁCTICA GESTIÓN EMPRESARIAL DE LA INFORMACIÓN.

CURSO/GUÍA PRÁCTICA GESTIÓN EMPRESARIAL DE LA INFORMACIÓN. SISTEMA EDUCATIVO inmoley.com DE FORMACIÓN CONTINUA PARA PROFESIONALES INMOBILIARIOS. CURSO/GUÍA PRÁCTICA GESTIÓN EMPRESARIAL DE LA INFORMACIÓN. Business Intelligence. Data Mining. PARTE PRIMERA Qué es

Más detalles

Comparación de Modelos de Redes Neuronales Utilizados en Sistemas de Soporte de Decisiones

Comparación de Modelos de Redes Neuronales Utilizados en Sistemas de Soporte de Decisiones Comparación de Modelos de Redes Neuronales Utilizados en Sistemas de Soporte de Decisiones Broggi, Carlos Javier Goujon, Diego Javier Herrmann, Raúl Alberto Universidad Tecnológica Nacional, Facultad Regional

Más detalles

Servidores Donantonio

Servidores Donantonio Especificación de requisitos software Tabla de contenidos Juan José Amor David Escorial Ismael Olea 1. Introducción...3 1.1. Propósito...3 1.2. Ámbito del sistema...3 1.3. Definiciones, acrónimos y abreviaturas...3

Más detalles

Text mining versus redes neuronales. Dos métodos de análisis aplicados al caso de las políticas de las revistas sobre datos

Text mining versus redes neuronales. Dos métodos de análisis aplicados al caso de las políticas de las revistas sobre datos Text mining versus redes neuronales. Dos métodos de análisis aplicados al caso de las políticas de las revistas sobre datos Alicia García-García, Xavier García-Massó, Antonia Ferrer, Luis-Millán González,

Más detalles

código Java Solicitudes Reportes AJI resultados API

código Java Solicitudes Reportes AJI resultados API Analizador Java Inteligente Agüero Martin Jorge, miembro IT-Lab de la Universidad de Palermo, agüero.marin@gmail.com López De Luise María Daniela, miembro IT-Lab de la Universidad de Palermo, mlopez74@palermo.edu

Más detalles

Text Mining Introducción a Minería de Datos

Text Mining Introducción a Minería de Datos Text Mining Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu.ar/~laura SADIO 12 de Marzo de 2008 qué es la minería de datos? A technique using software tools

Más detalles

TESIS DE MAGÍSTER EN INGENIERÍA DEL SOFTWARE

TESIS DE MAGÍSTER EN INGENIERÍA DEL SOFTWARE TESIS DE MAGÍSTER EN INGENIERÍA DEL SOFTWARE HERRAMIENTA DE INTEGRACION DE ALGORITMOS DE INDUCCION Y MAPAS AUTO-ORGANIZADOS AUTOR: ING. ESTEBAN RICARDO SAL DIRECTORES: M. ING. PAOLA BRITOS M. ING. CLAUDIO

Más detalles

Text Mining. Laura Alonso i Alemany. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu.

Text Mining. Laura Alonso i Alemany. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu.ar/ laura SADIO 12, 13 y 14 de Marzo de 2008 grupo de PLN en FaMAF http://www.cs.famaf.unc.edu.ar/ pln/

Más detalles

MINERIA DE DATOS Y Descubrimiento del Conocimiento

MINERIA DE DATOS Y Descubrimiento del Conocimiento MINERIA DE DATOS Y Descubrimiento del Conocimiento UNA APLICACIÓN EN DATOS AGROPECUARIOS INTA EEA Corrientes Maximiliano Silva La información Herramienta estratégica para el desarrollo de: Sociedad de

Más detalles

Parte 7: Análisis de los datos

Parte 7: Análisis de los datos Metodología de la investigación Curso 2008 Parte 7: Análisis de los datos Los ejemplos han sido tomados en su mayoría de la bibliografía recomendada para el curso Análisis de los datos El análisis de datos

Más detalles

Introducción al Data Mining Clases 5. Cluster Analysis. Ricardo Fraiman Centro de Matemática, Udelar y Universidad de San Andrés, Argentina

Introducción al Data Mining Clases 5. Cluster Analysis. Ricardo Fraiman Centro de Matemática, Udelar y Universidad de San Andrés, Argentina Introducción al Data Mining Clases 5 Cluster Analysis Ricardo Fraiman Centro de Matemática, Udelar y Universidad de San Andrés, Argentina Cluster Análisis 1 El término cluster analysis (usado por primera

Más detalles

Modelo de Procesos para la Gestión de Requerimientos en Proyectos de Explotación de Información

Modelo de Procesos para la Gestión de Requerimientos en Proyectos de Explotación de Información Modelo de Procesos para la Gestión de Requerimientos en Proyectos de Explotación de Información Pollo-Cattaneo, M. F. 1,2, Mansilla, D 2,Vegega, C 2, Pesado, P. 3, García-Martínez, R. 4, P. Britos, P.

Más detalles

Clientes Donantonio. Especificación de requisitos software. Juan José Amor David Escorial Ismael Olea

Clientes Donantonio. Especificación de requisitos software. Juan José Amor David Escorial Ismael Olea Especificación de requisitos software Tabla de contenidos Juan José Amor David Escorial Ismael Olea 1. Introducción...3 1.1. Propósito...3 1.2. Ámbito del sistema...3 1.3. Definiciones, acrónimos y abreviaturas...3

Más detalles

CLASIFICACIÓN NO SUPERVISADA

CLASIFICACIÓN NO SUPERVISADA CLASIFICACIÓN NO SUPERVISADA CLASIFICACION IMPORTANCIA PROPÓSITO METODOLOGÍAS EXTRACTORES DE CARACTERÍSTICAS TIPOS DE CLASIFICACIÓN IMPORTANCIA CLASIFICAR HA SIDO, Y ES HOY DÍA, UN PROBLEMA FUNDAMENTAL

Más detalles

ALGUNOS RESULTADOS EXPERIMENTALES DE LA INTEGRACIÓN DE AGRUPAMIENTO E INDUCCIÓN COMO MÉTODO DE DESCUBRIMIENTO DE CONOCIMIENTO

ALGUNOS RESULTADOS EXPERIMENTALES DE LA INTEGRACIÓN DE AGRUPAMIENTO E INDUCCIÓN COMO MÉTODO DE DESCUBRIMIENTO DE CONOCIMIENTO ALGUNOS RESULTADOS EXPERIMENTALES DE LA INTEGRACIÓN DE AGRUPAMIENTO E INDUCCIÓN COMO MÉTODO DE DESCUBRIMIENTO DE CONOCIMIENTO Kogan, A. 1, Rancan, C. 2,3, Britos, P. 3,1, Pesado, P. 2,4, García-Martínez,

Más detalles

Resumen. Palabras claves: Clusteres, Crisp-DM, Morosidad, Sigmoidal, Algoritmos, K-medias, UPeU.

Resumen. Palabras claves: Clusteres, Crisp-DM, Morosidad, Sigmoidal, Algoritmos, K-medias, UPeU. Model Clustering Neural Network Monitoring Applications No K-Means Algorithm for the Segmentation of the Peruvian University Students Union Rodolfo Pacco, Palomino; Del Rosario Montero, Wilson Tomas Anquise,

Más detalles

Análisis de Incidentes Informáticos usando Modelos de Asociación y Métodos del Análisis de Datos Multivariante.

Análisis de Incidentes Informáticos usando Modelos de Asociación y Métodos del Análisis de Datos Multivariante. Análisis de Incidentes Informáticos usando Modelos de Asociación y Métodos del Análisis de Datos Multivariante. García, Alejandro (1), Corso, Cynthia Lorena (2), Gibellini, Fabián (3), Rapallini, Marcos

Más detalles

Propuesta de una arquitectura para la generación de mutantes de orden superior en WS-BPEL

Propuesta de una arquitectura para la generación de mutantes de orden superior en WS-BPEL Propuesta de una arquitectura para la generación de mutantes de orden superior en WS-BPEL Emma Blanco Muñoz, Antonio García Domínguez, Juan José Domínguez Jiménez, Inmaculada Medina Bulo Escuela Superior

Más detalles

CAPÍTULO 5: MODELADO DEL IDS CON REDES NEURONALES

CAPÍTULO 5: MODELADO DEL IDS CON REDES NEURONALES Capítulo 5 Modelado y Simulación del IDS 35 CAPÍTULO 5: MODELADO DEL IDS CON REDES NEURONALES En este capítulo se describe la preparación de los datos para servir como entradas al IDS y la simulación de

Más detalles

SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0

SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0 SPEM 2.0 SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0 Metamodelo para modelos de procesos de ingeniería de software y de ingeniería de sistemas. La idea central de SPEM

Más detalles

Propuesta de un modelo de análisis para estimación del tamaño del software y gestión de costos y riesgos a partir de requerimientos funcionales

Propuesta de un modelo de análisis para estimación del tamaño del software y gestión de costos y riesgos a partir de requerimientos funcionales Propuesta de un modelo de análisis para estimación del tamaño del software y gestión de costos y riesgos a partir de requerimientos funcionales S.Forigua, O.Ballesteros Abstract. This paper describes the

Más detalles

CURSO MINERÍA DE DATOS AVANZADO

CURSO MINERÍA DE DATOS AVANZADO CURSO MINERÍA DE DATOS AVANZADO La minería de datos (en inglés, Data Mining) se define como la extracción de información implícita, previamente desconocida y potencialmente útil, a partir de datos. En

Más detalles

Evaluación, limpieza y construcción de los datos: un enfoque desde la inteligencia artificial

Evaluación, limpieza y construcción de los datos: un enfoque desde la inteligencia artificial Universidad del Cauca Facultad de Ingeniería Electrónica y Telecomunicaciones Programas de Maestría y Doctorado en Ingeniería Telemática Seminario de Investigación Evaluación, limpieza y construcción de

Más detalles

Modelado de relaciones existentes en un equipo de proyecto de software Modeling relationships in a software project team

Modelado de relaciones existentes en un equipo de proyecto de software Modeling relationships in a software project team Modelado de relaciones existentes en un equipo de proyecto de software Modeling relationships in a software project team Rafael Rodríguez-Puente 1, Eliana B. Ril-Valentin 2 1 Departamento de Técnicas de

Más detalles

Aplicación de mapas autoorganizados (SOM) a la visualización de datos. Modelos Computacionales Fernando José Serrano García

Aplicación de mapas autoorganizados (SOM) a la visualización de datos. Modelos Computacionales Fernando José Serrano García Aplicación de mapas autoorganizados (SOM) a la visualización de datos Modelos Computacionales Fernando José Serrano García 2 Contenido Introducción... 3 Estructura... 3 Entrenamiento... 3 Aplicación de

Más detalles

CONSTRUCCION DE SISTEMAS EXPERTOS

CONSTRUCCION DE SISTEMAS EXPERTOS CONSTRUCCION DE SISTEMAS EXPERTOS TECNICAS DE EDUCCION DEL CONOCIMIENTO Dr. Ramón GARCIA MARTINEZ GRAFOS ARQUETÍPICOS En muchos dominios de conocimiento, puede reconocerse una estructura de representación

Más detalles

Trabajo Practico N 12

Trabajo Practico N 12 Trabajo Practico N 12 Minería de Datos CATEDRA: Actualidad Informática Ingeniería del Software III Titular: Mgter. Horacio Kuna JTP: Lic. Sergio Caballero Auxiliar: Yachesen Facundo CARRERAS: Analista

Más detalles

Usos de Data Mining y KDD en Marketing Research

Usos de Data Mining y KDD en Marketing Research Usos de Data Mining y KDD en Marketing Research Charla Alumnos Maestría Minería de Datos y Explotación Conocimiento - Facultad Ciencias Exactas y Naturales UBA Buenos Aires - Noviembre 2008 Temario Los

Más detalles

Aproximación evolutiva a la inducción constructiva basada en expresiones algebraicas

Aproximación evolutiva a la inducción constructiva basada en expresiones algebraicas Aproximación evolutiva a la inducción constructiva basada en expresiones algebraicas Manuel Baena García, Rafael Morales Bueno y Carlos Cotta Porras Workshop MOISES Septiembre 2004 1/15 Contenido Inducción

Más detalles

9.1.Los sistemas expertos. 9.2.Las redes neuronales artificiales. 9.3.Sistemas de inducción de reglas y árboles de decisión.

9.1.Los sistemas expertos. 9.2.Las redes neuronales artificiales. 9.3.Sistemas de inducción de reglas y árboles de decisión. TEMA 9 TÉCNICAS DE INTELIGENCIA ARTIFICIAL PARA EL ANÁLISIS DE LA INFORMACIÓN CONTABLE 9.1.Los sistemas expertos. 9.2.Las redes neuronales artificiales. 9.3.Sistemas de inducción de reglas y árboles de

Más detalles

Algoritmos de minería de datos incluidos en SQL Server 2008 1. Algoritmo de árboles de decisión de Microsoft [MIC2009a] Cómo funciona el algoritmo

Algoritmos de minería de datos incluidos en SQL Server 2008 1. Algoritmo de árboles de decisión de Microsoft [MIC2009a] Cómo funciona el algoritmo 1 Algoritmos de minería de datos incluidos en SQL Server 2008 Los algoritmos que aquí se presentan son: Árboles de decisión de Microsoft, Bayes naive de Microsoft, Clústeres de Microsoft, Serie temporal

Más detalles

UNIVERSIDAD DE COSTA RICA SISTEMA DE ESTUDIOS DE POSGRADO POSGRADO EN COMPUTACION E INFORMATICA JUSTIFICACIÓN OBJETIVO GENERAL OBJETIVOS ESPECÍFICOS

UNIVERSIDAD DE COSTA RICA SISTEMA DE ESTUDIOS DE POSGRADO POSGRADO EN COMPUTACION E INFORMATICA JUSTIFICACIÓN OBJETIVO GENERAL OBJETIVOS ESPECÍFICOS UNIVERSIDAD DE COSTA RICA SISTEMA DE ESTUDIOS DE POSGRADO POSGRADO EN COMPUTACION E INFORMATICA PF-3808 Minería de Datos II Semestre del 2009 Profesor: Dr. Francisco J. Mata (correo: fmatach@racsa.co.cr;

Más detalles

Proyecto de Desarrollo de una Base de Datos para un concesionario

Proyecto de Desarrollo de una Base de Datos para un concesionario Proyecto de Desarrollo de una Base de Datos para un concesionario Etienne Boshoff de Jong Enginyeria en Informàtica Juan Martinez Bolaños 14 enero 2013 Proyecto Final de Carrera: Base de Datos Page 1 1.

Más detalles

Metodologías híbridas para desarrollo de software: una opción factible para México Eréndira Miriam Jiménez Hernández y Sandra Dinora Orantes Jiménez

Metodologías híbridas para desarrollo de software: una opción factible para México Eréndira Miriam Jiménez Hernández y Sandra Dinora Orantes Jiménez Revista Digital Universitaria 1 de enero 2012 Volumen 13 Número 1 ISSN: 1067-6079 Metodologías híbridas para desarrollo de software: una opción factible para México Eréndira Miriam Jiménez Hernández y

Más detalles

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 6. Actualización

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 6. Actualización Página 1 de 19 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 6 Situación Contraste externo Actualización

Más detalles

Redes Bayesianas para predecir riesgo de plomo en sangre de puérperas y neonatos

Redes Bayesianas para predecir riesgo de plomo en sangre de puérperas y neonatos Redes Bayesianas para predecir riesgo de plomo en sangre de puérperas y neonatos Autores A.M. Sancho 1,2 ; V. Messina 3 ; M. Cuevas 4 ; I. Sattolo 2 ; R.Dante 1 ; A. Ricca 1, y L. De Oto 2 RESUMEN Las

Más detalles

Similaridad y Clustering

Similaridad y Clustering Similaridad y Clustering 1 web results motivación Problema 1: ambigüedad de consultas Problema 2: construcción manual de jerarquías de tópicos y taxonomías Problema 3: acelerar búsqueda por similaridad

Más detalles

Productividad en Empresas de Construcción: Conocimiento adquirido de las bases de datos

Productividad en Empresas de Construcción: Conocimiento adquirido de las bases de datos Productividad en Empresas de Construcción: Conocimiento adquirido de las bases de datos Productivity in Construction Companies: Knowledge acquired from the databases Hernando Camargo Mila, Rogelio Flórez

Más detalles

Estudio comparativo de los currículos de probabilidad y estadística español y americano

Estudio comparativo de los currículos de probabilidad y estadística español y americano Estudio comparativo de los currículos de probabilidad y estadística español y americano Jaldo Ruiz, Pilar Universidad de Granada Resumen Adquiere las mismas capacidades en Probabilidad y Estadística un

Más detalles

MINERÍA DE DATOS Y DESCUBRIMIENTO DE CONOCIMIENTO (DATA MINING AND KNOWLEDGE DISCOVERY)

MINERÍA DE DATOS Y DESCUBRIMIENTO DE CONOCIMIENTO (DATA MINING AND KNOWLEDGE DISCOVERY) MINERÍA DE DATOS Y DESCUBRIMIENTO DE CONOCIMIENTO (DATA MINING AND KNOWLEDGE DISCOVERY) Autor: Lic. Manuel Ernesto Acosta Aguilera Entidad: Facultad de Economía, Universidad de La Habana Dirección: Edificio

Más detalles

REPUBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD NUEVA ESPARTA FACULTAD DE INFORMATICA ESCUELA DE COMPUTACION

REPUBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD NUEVA ESPARTA FACULTAD DE INFORMATICA ESCUELA DE COMPUTACION REPUBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD NUEVA ESPARTA FACULTAD DE INFORMATICA ESCUELA DE COMPUTACION HERNANDEZ, Julio(2007). Asistente para el diseño de Redes Híbridas entre Fibra Optica y Cable

Más detalles

Informática II Ing. Industrial. Data Warehouse. Data Mining

Informática II Ing. Industrial. Data Warehouse. Data Mining Data Warehouse Data Mining Definición de un Data Warehouses (DW) Fueron creados para dar apoyo a los niveles medios y altos de una empresa en la toma de decisiones a nivel estratégico en un corto o mediano

Más detalles

Minera de datos aplicada a la detección de Cáncer de Mama

Minera de datos aplicada a la detección de Cáncer de Mama Minera de datos aplicada a la detección de Cáncer de Mama Eugenio Hernández Martínez Universidad Carlos III de Madrid 100039081@alumnos.uc3m.es Rodrigo Lorente Sanjurjo Universidad Carlos III de Madrid

Más detalles

Text Mining. Laura Alonso i Alemany. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu.

Text Mining. Laura Alonso i Alemany. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu. Facultad de Matemática, Astronomía y Física UNC, Córdoba (Argentina) http://www.cs.famaf.unc.edu.ar/~laura SADIO 26 de Marzo, 9 y 23 de Abril y 7 de mayo de 2010 grupo de PLN en FaMAF http://www.cs.famaf.unc.edu.ar/~pln/

Más detalles

Proyecto técnico MINERÍA DE DATOS. Febrero 2014. www.osona-respon.net info@osona-respon.net

Proyecto técnico MINERÍA DE DATOS. Febrero 2014. www.osona-respon.net info@osona-respon.net Proyecto técnico MINERÍA DE DATOS Febrero 2014 www.osona-respon.net info@osona-respon.net 0. Índice 0. ÍNDICE 1. INTRODUCCIÓN... 2 2. LOS DATOS OCULTOS... 3 2.1. Origen de la información... 3 2.2. Data

Más detalles

PROPUESTA DE GESTIÓN DE RIESGOS DE PROYECTOS SOFTWARE, DESARROLLADOS CON LA METODOLOGÍA SCRUM

PROPUESTA DE GESTIÓN DE RIESGOS DE PROYECTOS SOFTWARE, DESARROLLADOS CON LA METODOLOGÍA SCRUM PROPUESTA DE GESTIÓN DE S DE PROYECTOS SOFTWARE, DESARROLLADOS CON LA METODOLOGÍA SCRUM V. Johanna Dirección de Postgrado, ESPE Universidad de las Fuerzas Armadas, Sede Latacunga johaflaquita82@hotmail.com

Más detalles

Detección de Patrones de Daños y Averías en la Industria Automotriz

Detección de Patrones de Daños y Averías en la Industria Automotriz Universidad Tecnológica Nacional Facultad Regional Buenos Aires Tesis de Magister en Ingeniería en Sistemas de Información Detección de Patrones de Daños y Averías en la Industria Automotriz Directora:

Más detalles

SISTEMA DE INFORMACION GERENCIAL. Lic.Patricia Palacios Zuleta

SISTEMA DE INFORMACION GERENCIAL. Lic.Patricia Palacios Zuleta SISTEMA DE INFORMACION GERENCIAL Lic.Patricia Palacios Zuleta Pentaho Open BI Suite La suite Pentaho cubre principalmente las siguientes áreas: integración de datos, reportes, análisis, alertas y dashboards,

Más detalles

Taxonomía de los principales temas de I A Por: Luis Guillermo Restrepo Rivas

Taxonomía de los principales temas de I A Por: Luis Guillermo Restrepo Rivas Taxonomía de los principales temas de I A Por: Luis Guillermo Restrepo Rivas 1. DEFINICIONES, UBICACIÓN CONCEPTUAL E HISTORIA DE LA I.A. 2. COMPLEJIDAD COMPUTACIONAL, EXPLOSIÓN COMBINATORIA, DOMINIOS NO

Más detalles

2. CLASIFICACIÓN DE LA ACTIVIDAD CURRICULAR, FORMACIÓN PRÁCTICA Y CARGA HORARIA

2. CLASIFICACIÓN DE LA ACTIVIDAD CURRICULAR, FORMACIÓN PRÁCTICA Y CARGA HORARIA CÓDIGO ASIGNATURA 1131-3 DEPARTAMENTO: Ingeniería e Investigaciones Tecnológicas ASIGNATURA: DATA MINING y DATA WAREHOUSE Plan 2009 Ingeniería en Informática Año: 5 (Electiva - Ingeniería de Software)

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

PROYECTO JAZO 2007. Título. Participantes. Datos Generales. Detección y seguimiento de sucesos para euskera y español. Ametzagaiña A.I.E.

PROYECTO JAZO 2007. Título. Participantes. Datos Generales. Detección y seguimiento de sucesos para euskera y español. Ametzagaiña A.I.E. PROYECTO JAZO 2007 Título Detección y seguimiento de sucesos para euskera y español Participantes Ametzagaiña A.I.E. Datos Generales Tipo: Proyecto de Plan de Especialización Años de actividad: 2007-2008

Más detalles

SERVICIOS: EXPLORACIONES EN SOA y WEB.

SERVICIOS: EXPLORACIONES EN SOA y WEB. SERVICIOS: EXPLORACIONES EN SOA y WEB. López, G. 1 ; Jeder, I 1.; Echeverría, A 1.; Grossi, M.D. 2 ; Servetto, A 2.; Fierro, P. (PhD.) 3 1. Laboratorio de Informática de Gestión - Facultad de Ingeniería.

Más detalles

TESIS DE MAGISTER EN INGENIERIA DE SOFTWARE CATEGORIZACION AUTOMATICA DE DOCUMENTOS CON MAPAS AUTO-ORGANIZADOS DE KOHONEN

TESIS DE MAGISTER EN INGENIERIA DE SOFTWARE CATEGORIZACION AUTOMATICA DE DOCUMENTOS CON MAPAS AUTO-ORGANIZADOS DE KOHONEN TESIS DE MAGISTER EN INGENIERIA DE SOFTWARE CATEGORIZACION AUTOMATICA DE DOCUMENTOS CON MAPAS AUTO-ORGANIZADOS DE KOHONEN Autor: Lic. Daniel Goldenberg Directores de Tesis: M. Ing. Hernán Merlino M. Ing.

Más detalles

Introducción. Francisco J. Martín Mateos. Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla

Introducción. Francisco J. Martín Mateos. Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Francisco J. Martín Mateos Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Qué es la (KE)? Definición de Wikipedia: La es una disciplina cuyo objetivo es integrar conocimiento

Más detalles

INDICE Prefacio 1 Introducción 2 Organizaciones de los datos para que transmitan un significado: tablas y graficas

INDICE Prefacio 1 Introducción 2 Organizaciones de los datos para que transmitan un significado: tablas y graficas INDICE Prefacio 1 Introducción 1-1 Preámbulo 1-2 Reseña histórica 1-3 Subdivisiones de la estadística 1-4 Estrategia, suposiciones y enfoque 2 Organizaciones de los datos para que transmitan un significado:

Más detalles

APLICATIVO WEB PARA LA ADMINISTRACIÓN DE LABORATORIOS Y SEGUIMIENTO DOCENTE EN UNISARC JUAN DAVID LÓPEZ MORALES

APLICATIVO WEB PARA LA ADMINISTRACIÓN DE LABORATORIOS Y SEGUIMIENTO DOCENTE EN UNISARC JUAN DAVID LÓPEZ MORALES APLICATIVO WEB PARA LA ADMINISTRACIÓN DE LABORATORIOS Y SEGUIMIENTO DOCENTE EN UNISARC JUAN DAVID LÓPEZ MORALES CORPORACIÓN UNIVERSITARIA SANTA ROSA DE CABAL CIENCIAS Y TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN

Más detalles

Data & Text Mining. III Reunión de la RedDES(GT de Tecnología de la BVS6) Exponentes:

Data & Text Mining. III Reunión de la RedDES(GT de Tecnología de la BVS6) Exponentes: Data & Text Mining Exponentes: - Dr. Jorge Bacallao Guerra - Ing. Ramón Martinez - Ing. José Villanueva Agosto del 2012 Introducción o Porqué es necesario utilizar data mining o Que ésdata miningy qué

Más detalles

PLAN DE TRABAJO DOCENTE 2013

PLAN DE TRABAJO DOCENTE 2013 PLAN DE TRABAJO DOCENTE 2013 1. DATOS DE LA ASIGNATURA Nombre: Procesamiento Analítico de Datos Código: Nivel: Grado Carácter: Optativo Área curricular a la que pertenece: Administración Carrera: Contador

Más detalles

Algoritmos y Estructuras de Datos 2. Web Mining Esteban Meneses

Algoritmos y Estructuras de Datos 2. Web Mining Esteban Meneses Algoritmos y Estructuras de Datos 2 Web Mining Esteban Meneses 2005 Motivación La Web contiene miles de millones de documentos con información sobre casi cualquier tópico. Es la Biblioteca de Alejandría

Más detalles

Capítulo 1. Introducción. 1.1. Antecedentes

Capítulo 1. Introducción. 1.1. Antecedentes Capítulo 1. Introducción En este capítulo se presenta una descripción general del problema a investigar y el enfoque con el que se aborda. Se establece la necesidad de incorporar técnicas de análisis novedosas

Más detalles

STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA

STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA 27 Congreso Nacional de Estadística e Investigación Operativa Lleida, 8-11 de abril de 2003 STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA M. Calvo, A.Villarroya, A.Miñarro, S.Vives, A.Arcas Departamento

Más detalles

KNime. KoNstanz Information MinEr. KNime - Introducción. KNime - Introducción. Partes de la Herramienta. Editor Window. Repositorio de Nodos

KNime. KoNstanz Information MinEr. KNime - Introducción. KNime - Introducción. Partes de la Herramienta. Editor Window. Repositorio de Nodos KNime - Introducción KNime Significa KoNstanz Information MinEr. Se pronuncia [naim]. Fue desarrollado en la Universidad de Konstanz (Alemania). Esta escrito en Java y su entorno grafico esta desarrollado

Más detalles

HERRAMIENTAS TECNOLÓGICAS PARA EL APRENDIZAJE BASADO EN PROYECTOS

HERRAMIENTAS TECNOLÓGICAS PARA EL APRENDIZAJE BASADO EN PROYECTOS X CONGRESO INTERNACIONAL DE INGENIERIA DE PROYECTOS VALENCIA, 13-15 Septiembre, 2006 HERRAMIENTAS TECNOLÓGICAS PARA EL APRENDIZAJE BASADO EN PROYECTOS F.Buendía, E. De la Asunción Abstract The current

Más detalles

Christian Bolívar Moya Calderón

Christian Bolívar Moya Calderón UNIVERSIDAD SAN FRANCISCO DE QUITO Software Orientado a Sistemas de Control HMI/Scada usando Recursos Libres y de Código Abierto, desarrollado sobre Plataforma Linux Christian Bolívar Moya Calderón Tesis

Más detalles

Minería de datos (Introducción a la minería de datos)

Minería de datos (Introducción a la minería de datos) Minería de datos (Introducción a la minería de datos) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-I. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de minería de datos 1 / 24

Más detalles

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 17 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 5 Situación RD 1201/2007 Actualización Competencia

Más detalles

Aplicación de Vectores Estadísticos de Características y Ensambles para el Reconocimiento Automático del Llanto de Bebés

Aplicación de Vectores Estadísticos de Características y Ensambles para el Reconocimiento Automático del Llanto de Bebés Aplicación de Vectores Estadísticos de Características y Ensambles para el Reconocimiento Automático del Llanto de Bebés Amaro Camargo Erika, Reyes García Carlos A. Instituto Nacional de Astrofísica, Óptica

Más detalles