Minería de subgrafos conexos frecuentes



Documentos relacionados
Reglas de Asociación. Carlos Alonso González Grupo de Sistemas Inteligentes Departamento de Informática Universidad de Valladolid

Elementos requeridos para crearlos (ejemplo: el compilador)

forma de entrenar a la nuerona en su aprendizaje.

SÍNTESIS Y PERSPECTIVAS

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Coordinación de Ciencias Computacionales INAOE. Reporte Técnico No. CCC de Marzo de 2009

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

GRAFOS. Prof. Ing. M.Sc. Fulbia Torres

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final

Unidad 1. Fundamentos en Gestión de Riesgos

DESCRIPCIÓN DEL PROCESO DE RIESGO OPERACIONAL

Adelacu Ltda. Fono Graballo+ Agosto de Graballo+ - Descripción funcional - 1 -

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322

Los servicios más comunes son como por ejemplo; el correo electrónico, la conexión remota, la transferencia de ficheros, noticias, etc.

Introducción a la Firma Electrónica en MIDAS

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Tesina. Considerada también un texto recepcional, la tesina es un informe científico breve y original con

CAPÍTULO 2 DEFINICIÓN DEL PROBLEMA

Su éxito se mide por la pertinencia y la oportunidad de la solución, su eficacia y eficiencia.

La explicación la haré con un ejemplo de cobro por $ más el I.V.A. $16.00

SEGURIDAD Y PROTECCION DE FICHEROS

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES

ARQUITECTURA ESCALABLE PARA LA DETECCIÓN DE PATRONES SECUENCIALES DIFUSOS EN MINERÍA DE DATOS CUANTITATIVA

I INTRODUCCIÓN. 1.1 Objetivos

Gestión de la Configuración

Ya se definió brevemente lo que es la minería de datos, pero ahora conviene

Interoperabilidad de Fieldbus

Administración del conocimiento y aprendizaje organizacional.

x

El rincón de los problemas

Reporte inicial. Metodología

CAPÍTULO 4. FORMA DE EVALUACIÓN CMM. 4.1 Evolución de los métodos de valoración del SEI

Experiencias de la Televisión Digital Interactiva en Colombia - ARTICA

Sistemas de Sensación Segmentación, Reconocimiento y Clasificación de Objetos. CI-2657 Robótica M.Sc. Kryscia Ramírez Benavides

SAQQARA. Correlación avanzada y seguridad colaborativa_

DATA MINING EN LA BASE DE DATOS DE LA OMS KNOWLEDGE DETECTION (DETECCIÓN DEL CONOCIMIENTO) Q.F.B. JUANA LETICIA RODRÍGUEZ Y BETANCOURT

GedicoPDA: software de preventa

Gestión de la Prevención de Riesgos Laborales. 1

Capítulo IV. Manejo de Problemas

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre.

INGENIERÍA DEL SOFTWARE

Parte I: Introducción

Manejo de versiones 392

CAPITULO 4 JUSTIFICACION DEL ESTUDIO. En este capítulo se presenta la justificación del estudio, supuestos y limitaciones de

ORIENTACIONES GENERALES SOBRE EL PROCESO DE TRABAJO DE GRADO

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net

Contenido Derechos Reservados DIAN - Proyecto MUISCA

Capítulo 1. Introducción

Informes de activos fijos Versión 1.1. Tabla de contenidos. Informes de activos fijos

Minería de subgrafos conexos frecuentes reduciendo el número de candidatos

ESTADÍSTICA APLICADA A LA INVESTIGACIÓN EN SALUD Construcción de una Base de Datos

Mesa de Ayuda Interna

PROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN

Introducción a la Teoría de Grafos

MANUAL DEL TRABAJO FIN DE GRADO EN FISIOTERAPIA GUÍA PARA LOS TUTORES

TEMA 2. FILOSOFÍA DE LOS GRÁFICOS DE CONTROL. Principios básicos de los gráficos de control. Análisis de patrones.

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

12 Minería de Datos Reglas de asociación.

INSTRUCTIVO PARA LA CUENTA DE PUNTOS FUNCIÓN

DISEÑO DE FUNCIONES (TRATAMIENTOS)

PRU. Fundamento Institucional. Objetivos. Alcance

Caso práctico de Cuadro de Mando con Tablas Dinámicas

Capítulo 5: METODOLOGÍA APLICABLE A LAS NORMAS NE AI

Base de datos en Excel

18. Camino de datos y unidad de control

Un primer acercamiento a la CMDB.

RELACIONES DE RECURRENCIA

Caso de estudio EFL: Uso del puntaje EFL para mejorar los datos de la central de riesgo crediticio

Qué son los protocolos de enrutamiento Dinámico?

CMMI (Capability Maturity Model Integrated)

Validation. Validación Psicométrica. Validation. Central Test. Central Test. Centraltest CENTRAL. L art de l évaluation. El arte de la evaluación

ANALIZANDO GRAFICADORES

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

Operación de Microsoft Excel. Guía del Usuario Página 79. Centro de Capacitación en Informática

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Decisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama.

7. Conclusiones. 7.1 Resultados

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

2O21 METAS EDUCATIVAS LA EDUCACIÓN QUE QUEREMOS PARA LA GENERACIÓN DE LOS BICENTENARIOS

QUÉ ES LA RENTABILIDAD Y CÓMO MEDIRLA. La rentabilidad mide la eficiencia con la cual una empresa utiliza sus recursos financieros.

Portal de Compras del Gobierno del Estado de Baja California ( A. Antecedentes

Sistemas de Gestión de Documentos Electrónicos de Archivo (SGDEA)

Como se mencionó en la parte de la teoría, no existe consenso en cuanto a la

Cifras significativas e incertidumbre en las mediciones

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

SEDO: SOFTWARE EDUCATIVO DE MATEMÁTICA NUMÉRICA. Lic. Maikel León Espinosa.

SistemA Regional de Información y Evaluación del SIDA (ARIES)

Técnicas de Planeación y Control

ISO 9001:2015 Comprender los cambios clave. Lorri Hunt

Capitulo III. Diseño del Sistema.

Sistemas de Gestión de Calidad. Control documental

Manual de Usuario Comprador Presupuesto

Observatorio Bancario

Guía de Planificación Estratégica de la Informática Educativa

Transcripción:

Minería de subgrafos conexos frecuentes Autor: Andrés Gago Alonso 1,2 Asesores: Dr. José Eladio Medina Pagola 1 Dr. Jesús Ariel Carrasco Ochoa 2 1 Departamento de Minería de Datos Centro de Aplicaciones de Tecnología de Avanzada (CENATAV), 7a 21812 e/ 218 y 222, Rpto. Siboney, Playa, C.P. 12200, La Habana, Cuba. {agago,jmedina}@cenatav.co.cu 2 Coordinación de Ciencias Computacionales Instituto Nacional de Astrofísica, Óptica y Electrónica (INAOE), Luis Enrique Erro No. 1, Sta. María Tonantzintla, Puebla, CP: 72840, Mexico. ariel@inaoep.mx

Índice general 1. Introducción.................................................. 2 2. Conceptos preliminares......................................... 4 3. Trabajo relacionado............................................ 5 3.1. Algoritmos basados en Apriori.............................. 5 3.2. Algoritmos basados en crecimiento de patrones................ 7 3.3. Conteo de frecuencia....................................... 8 4. Problema a resolver............................................ 9 5. Motivación.................................................... 9 6. Propuesta..................................................... 10 6.1. Pregunta de investigación.................................. 10 6.2. Objetivo general.......................................... 10 6.3. Objetivos particulares...................................... 10 6.4. Metodología propuesta..................................... 10 Referencias....................................................... 11 1. Introducción En los últimos años se ha observado un significativo avance en la minería de patrones frecuentes [10]. Métodos cada vez más eficientes se han ido desarrollando para la minería de conjuntos frecuentes[1,2,8,38,37,11], patrones secuenciales [3,24] y árboles [4,39]. Sin embargo, en muchas aplicaciones científicas y comerciales, han estado presentes patrones con una complejidad estructural mayor que conjuntos, secuencias y árboles, por ejemplo los grafos conexos. Es por eso que se ha requerido el diseño de nuevos métodos para la minería de subgrafos conexos frecuentes (SCF) [10] sobre conjuntos de grafos etiquetados. La minería de SCF ha sido objeto de estudios recientes dada su amplia variedad de aplicaciones. Los subgrafos repetidos dentro de un conjunto de grafos etiquetados proporcionan un mejor entendimiento de las relaciones existentes entre los datos y han sido utilizados como base para crear algoritmos de clasificación [9], agrupamiento [27] e indexación [36]. Un grafo etiquetado es una forma de representación genérica que es usada en muchos dominios de aplicación. Por ejemplo, la estructura química de una sustancia puede ser modelada mediante un grafo etiquetado no dirigido, en el cual cada vértice representa un átomo y cada arista corresponde a un enlace [23]. En problemas de verificación toxicológica predictiva [26], los SCF están relacionados con sustancias toxicas. Borgelt y Berthold [6], descubrieron estructuras químicas activas en conjuntos de datos sobre el Virus de Inmunodeficiencia Humana (VIH), contrastando el soporte de los SCF entre diferentes clases. En el estudio de redes biológicas también se han buscado subestructuras frecuentes [18]. El primer algoritmo sobre minería de subgrafos frecuentes (SF) fue AGM (Apriori based Graph Mining) [16], se diseñó para buscar los subgrafos inducidos

Propuesta de tesis doctoral 3 frecuentes (SIF), sin tener en cuenta la conexidad. Esto fue una limitante para las aplicaciones donde los SCF eran de interés. En respuesta a esta problemática surge el segundo algoritmo FSG (Frequent SubGraph discovery) [19] para buscar todos los SCF dentro de un conjunto de grafos. Este algoritmo pudo acelerar el conteo de frecuencia de los subgrafos candidatos utilizando recursos de memoria para mantener listas de identificadores. Desde entonces se han ido creando nuevos algoritmos cada vez más eficientes para encontrar todos los SCF [10]. En estados del arte anteriormente escritos sobre esta temática [10,32], los algoritmos se han clasificados, de acuerdo a la estrategia de generación de candidatos, en dos grupos: los basados en Apriori y los basados en crecimiento de patrones. Los algoritmos basados en Apriori, comparten características similares con el algoritmo Apriori de conjuntos frecuentes [2]. En el contexto de la minería de SCF, los algoritmos basados en Apriori tienen dos grandes dificultades relacionadas con la generación de candidatos: (1) alta complejidad computacional y (2) se generan muchos candidatos (para cada candidato es necesario calcular su frecuencia de aparición). Para evitar las dificultades mencionadas en los modelos basados en Apriori, se han desarrollado otros algoritmos basados en la metodología de crecimiento de patrones [11]. Estos algoritmos obtienen los subgrafos candidatos extendiendo directamente un solo subgrafo [35,6,13,22]. En algunas aplicaciones no es práctico considerar todos los SCF debido a que pueden ser demasiados. Algunas soluciones para abordar este problema, que permiten obtener solo una parte de los SCF, han sido propuestas. Una de ellas está relacionada con los patrones frecuentes cerrados [37]. Se dice que un patrón frecuente es cerrado si no existe un patrón que lo contiene con su misma frecuencia. En [34,7] se proponen algoritmos para la minería de subgrafos conexos frecuentes y cerrados (SCFC). Los patrones frecuentes maximales son aquellos que no están contenidos en ningún otro patrón frecuente. La minería de subgrafos conexos frecuentes y maximales (SCFM) fue estudiada en [14,28]. Independientemente de cuanto se ha avanzado en esta temática, los algoritmos existentes solo pueden ejecutarse en conjuntos de datos estáticos de tamaño limitado. Es por eso que sigue siendo necesario desarrollar algoritmos capaces de procesar mayores volúmenes de datos, es decir mayor cantidad de grafos y de mayor tamaño promedio. Otra dificultad es que los algoritmos más eficientes en el estado del arte han sido diseñados para grafos con estructuras simplificadas (para representar moléculas). En esta tesis se desarrollarán al menos tres algoritmos para la minería de SCF y sus diferentes variantes: cerrados y maximales. Con estos algoritmos será posible procesar volúmenes de datos superiores a los permitidos por los algoritmos existentes.

4 Andrés Gago Alonso 2. Conceptos preliminares En esta tesis nos enfocaremos en los grafos etiquetados no dirigidos y sin bucles. Ya que todos los algoritmos para el minado de SCF fueron presentados para este tipo de grafos, aunque algunos de estos algoritmos pueden ser fácilmente extendidos a grafos dirigidos y grafos no etiquetados. La definición formal de grafo etiquetado es la siguiente. Definition 1. Un grafo etiquetado, de manera general, puede ser representado como una tétrada (V, E, L, l), donde V es el conjunto de vértices, E V V es el conjunto de aristas, L es el conjunto de etiquetas y l : V E L es una función que asigna etiquetas a los vértices y aristas del grafo. Esta definición puede generalizarse a grafos parcialmente etiquetados si se incluye la etiqueta vacía (empty label). Definition 2. Un grafo G 1 es subgrafo de G 2 si V (G 1 ) V (G2) y E(G 1 ) E(G2). En muchos de los algoritmos para el minado de SCF, el conteo de la frecuencia de aparición de un subgrafo candidato se realiza mediante pruebas de sub-isomorfismo. Definition 3. Se dice que f es un isomorfismo entre dos grafos etiquetados G 1 y G 2, si f : V (G 1 ) V (G2) es una función biyectiva y v V (G 1 ), l G1 (v) = l G2 (f(v)), (u, v) E(G 1 ), (f(u), f(v)) E(G 2 ) y l G1 (u, v) = l G2 (f(u), f(v)). Un sub-isomorfismo de G 1 a G 2 es un isomorfismo de G 1 a un subgrafo de G 2. El problema de determinar el isomorfismo entre dos grafos (etiquetados o no) es NP-duro (NP-hard) [25]. Existen dos algoritmos clásicos para realizar las pruebas de isomorfismo y sub-isomorfismo: Nauty [20] y Ullmann [29]. Para las pruebas de isomorfismo se han utilizado representaciones canónicas para los grafos [5]. Las principales representaciones canónicas utilizadas están relacionadas con codificaciones de matrices de adyacencias [17,12,15] y listas de arcos basadas en recorridos en profundidad [35]. Estas representaciones deben cumplir que dos grafos isomorfos tengan siempre la misma representación canónica. Definition 4. Se dice que P = (v 1, v 2,..., v k ) es un camino en el grafo G si todo vértice de P está en V (G) y para cada par de vértices v i y v i+1 (consecutivos en P ) se cumple que (v i, v i+1 ) E(G). En tal caso se dice que v 1 y v k están conectados por P. Además el grafo G es conexo si todo par de vértices en V (G) están conectados por algún camino.

Propuesta de tesis doctoral 5 La minería de SCF puede ser definida formalmente utilizando los conceptos introducidos anteriormente. Para esto es necesario definir el concepto de subgrafo frecuente. Definition 5. Sea un conjunto de grafos D = {G 0, G 1,..., G m 1 }, un umbral de frecuencia δ y un grafo g. La frecuencia de aparición (algunos autores utilizan el término soporte) de g en D que denotaremos σ(g, D), se define como la cantidad de grafos G i D tales que existe un sub-isomorfismo de g a G i. La minería de SCF consiste en encontrar todos los grafos conexos y etiquetados g donde σ(g, D) > δ. Esta última definición es compatible con todos los modelos de minería de SCF encontrados en la literatura. 3. Trabajo relacionado En estados del arte anteriormente escritos [10] sobre esta temática, los algoritmos para la minería de SCF han clasificados, de acuerdo a la estrategia de generación de candidatos, en dos grupos: los basados en Apriori y los basados en crecimiento de patrones. 3.1. Algoritmos basados en Apriori Los algoritmos basados en Apriori, comparten características similares con el Apriori de conjuntos frecuentes [2]. Todos estos algoritmos requieren de una operación FUSIÓN(en Inglés JOIN) para mezclar dos subgrafos y obtener subgrafos candidatos de tamaño mayor. Estos algoritmos se diferencian entre sí casi siempre por los elementos que son usados para medir el tamaño (cantidad de elementos) de cada subgrafo: vértices [16,17], aristas [19], y caminos con arcos disjuntos [30]. En el contexto de la minería de SCF, los algoritmos basados en Apriori tienen dos grandes dificultades relacionadas con la operación FUSIÓN: (1) es computacionalmente compleja y (2) genera muchos candidatos. El algoritmo 1 muestra una descripción general de los algoritmos basados en Apriori. En cada llamado recursivo del algoritmo, el tamaño de los nuevos SCF descubiertos es incrementado en uno. El proceso de generación de candidatos es mostrado en la línea 5 y se realiza mediante la operación FUSIÓN. Para invocar este algoritmo por primera vez es necesario calcular S 1 (el conjunto de SCF de tamaño 1) en un procedimiento aparte (dependiendo de las especificaciones de cada algoritmo).

6 Andrés Gago Alonso 1 2 3 4 5 6 7 8 9 10 11 12 Algorithm 1: SCF-Apriori(D, δ, S k, S) Input: D - conjunto de grafos, σ - umbral de frecuencia mínima, S k - Conjunto de subgrafos conexos frecuentes de tamaño k. Output: S - Conjunto de todos los subgrafos conexos frecuentes S S S k ; S k+1 ; foreach subgrafo frecuente g i S k do foreach subgrafo frecuente g j S k do foreach subgrafo de tamaño k + 1: g FUSIÓN(g i, g j ) do if σ(g, D) δ then S k+1 S k+1 {g}; end end end if S k+1 then SCF-Apriori(D, δ, S k+1, S); end Como ya se mencionó, el primer algoritmo diseñado para la minería de SCF fue FSG [19], aunque hubo un trabajo previo a este (AGM [16]) que no tenía en cuenta la conexidad. Ambos modelos son basados en Apriori. En FSG el tamaño de los grafos está determinado por el número de aristas. Dos grafos de tamaño k se pueden fusionar cuando comparten un mismo subgrafo de tamaño k 1 llamado centro (core en inglés) y se diferencian en una sola arista. Esta fusión es muy compleja para los candidatos de mayor tamaño, aunque genera menos candidatos que la variante AGM. Tanto AGM como sus posteriores adaptaciones para la minería de SCF (AcGM [17], Topology [12], Generalized AcGM [15]) miden el tamaño de los grafos contando el número de vértices. Los grafos candidatos son representados mediante su matriz de adyacencia canónica (MAC) y esta representación es usada para la generación de candidatos. Para que dos grafos de tamaño k se puedan fusionar es necesario que ambas MAC tengan igual submatriz principal de tamaño k 1, en otro caso el resultado de la fusión es el conjunto vacío. Esto significa que ambos grafos deben compartir un subgrafo de tamaño k 1 y diferenciarse en un solo vértice. Los grafos de tamaño k + 1 resultantes de la fusión contienen el subgrafo común, los dos vértices que diferencian los grafos. La arista que pudiera unir a estos dos vértices es la que diferencia a los nuevos grafos generados y es el motivo del alto número de candidatos que hay que procesar. Un variante muy interesante basada en Apriori, es el PATH-BASED [30] que usa un procedimiento complicado para la generación de candidatos. El tamaño de un grafo está dado por la cantidad de caminos disjuntos que tiene. Un grafo candidato de tamaño k + 1 es generado a partir dos grafos de tamaño k que solo se diferencian en uno de los caminos disjuntos.

Propuesta de tesis doctoral 7 3.2. Algoritmos basados en crecimiento de patrones Un grafo g puede ser extendido adicionando una nueva arista e. Hay dos formas de realizar esta extensión en dependencia de que la arista esté compuesta por: (1) dos vértices de g, o (2) un vértice en g y otro nuevo. El grafo resultante se denota como g e, y en caso que sea necesario para diferenciar la variante por donde se realizó la extensión g 1 e y g 2 e. El esquema de los algoritmos basados en el crecimiento de patrones, puede ser descrito de manera general como en Algoritmo 2. 1 2 3 4 5 6 Algorithm 2: SCF-Crecimiento(g, D, δ, S) Input: g - un grafo frecuente, D - conjunto de grafos, σ - umbral de frecuencia mínima. Output: S - Conjunto de todos los subgrafos conexos frecuentes if g S then return; S S {g}; recorrer D una vez, para encontrar todas las aristas e tales que g pueda ser extendido a g e; foreach subgrafo frecuente g e do SCF-Crecimiento(g e, D, δ, S); end La generación de candidatos en este paradigma está basada en la operación de extensión. Se han diseñado varias estrategias basadas en diferentes representaciones canónicas de grafos [35,6,13,22], pero en todas es necesario tener en cuenta la posibilidad de duplicados. En muchos casos la eficiencia de un algoritmo está fuertemente ligada a disminuir la posibilidad de duplicados. El primer algoritmo basado en el crecimiento de patrones fue gspan (graphbased Substructure pattern mining) [35]. Este trabajo introduce una novedosa forma de representación canónica basada en recorridos en profundidad denominada código DFS mínimo (Depth-First Search). Esta representación canónica no solo garantiza que dos grafos isomorfos tengan la misma codificación, también restringe notablemente las posibles extensiones g e (línea 3 del Algoritmo 2) y propone un mecanismo interesante para la detección de duplicados (línea 1) que es más eficiente que las pruebas de isomorfismo. Otros ejemplos de algoritmos desarrollados bajo este paradigma fueron MoFa [6], FFSM [13] y Gaston [22]. El algoritmo MoFa (Mining Molecular Fragments) fue inspirado en el algoritmo Eclat [38] para conjuntos frecuentes. FFSM (Fast Frequent Subgraph Mining) es un método que mezcla ideas de ambos paradigmas. Este algoritmo restringe tanto el número de posibles extensiones g e, de tal modo que si se utilizan solo extensiones entonces no se garantiza la completitud de los resultados. Esto no es un problema porque el resto de los candidatos se genera mediante una operación FUSIÓN, análoga a la del paradigma Apriori. El algoritmo Gaston (Graph/sequence/tree extraction) es considerado por muchos el más eficiente entre los algoritmos de minería de SCF. En Gaston se utilizan ideas anteriormente desarrolladas para la búsqueda de subestructuras

8 Andrés Gago Alonso más simples tales como: caminos y árboles; antes de buscar los subgrafos frecuentes. Primero se detectan los subcaminos frecuentes, éstos se usan para formar subárboles (grafos acíclicos) y finalmente se generan los subgrafos cíclicos. Estos tres algoritmos (MoFa, FFSM y Gaston), mantienen en memoria estructuras de correspondencias (ES, por las siglas en inglés Embedding Structures), que permiten realizar un conteo eficiente de la frecuencia de los candidatos. Esta es una diferencia entre estos tres algoritmos y gspan. La implementación actual de gspan utiliza listas de identificadores (LI) y algoritmos para prueba de sub-isomorfismo que permiten localizar al candidato dentro de los grafos de D cuyo identificador está en LI. Los algoritmos que usan ES no necesitan realizar las pruebas de sub-isomorfismo, aunque ocupan más espacio en memoria que las LI (sobre todo en los candidatos de tamaño menor). En la siguiente sección abordaremos un poco más sobre las estructuras de datos y estrategias que se han utilizado para realizar el conteo de soporte. 3.3. Conteo de frecuencia En la sección anterior se resumieron los aspectos fundamentales sobre la generación de candidatos. En los algoritmos de minería de patrones frecuentes, el conteo de frecuencia es uno de los procesos fundamentales. Las pruebas de subisomorfismo en la minería de SCF, hacen que este proceso sea aún más crítico. Otra manera de clasificar a los algoritmos existentes es teniendo en cuenta el conteo de frecuencia. Han existido cuatro tendencias: (1) búsqueda exhaustiva, (2) usando lista de identificadores, (3) usando estructuras de correspondencias, y (4) los híbridos entre (2) y (3). (1) Búsqueda exhaustiva: consiste en que dado un candidato g, es necesario recorrer D para encontrar cuantos grafos G i contienen al menos un sub- -isomorfismo de g a D. Por el costo computacional asociado a las pruebas de sub-isomorfismo esta variante solo es funcional para candidatos de tamaño muy pequeño. La ventaja que tiene este método es que no necesita memoria adicional para realizar con conteo, durante el proceso de generación de candidatos. La búsqueda exhaustiva solo ha sido utilizada en variantes simplificadas de los algoritmos existentes para bases de datos pequeñas casi siempre utilizando Ullmann [29] para las pruebas de sub-isomorfismo. (2) Listas de identificadores: (LI) consiste en mantener para cada grafo generado g, una lista de con los identificadores i de los grafos G i que contienen al menos un sub-isomorfismo de g a G i. Esta variante no elimina las pruebas de sub-isomorfismo pero reduce el número de éstas notablemente. El proceso de mantener las listas en estado consistente no requiere de gran poder de cómputo pues la lista de un nuevo candidato puede obtenerse fácilmente a partir de las listas de los grafos que le dieron origen durante el proceso de generación. Se requiere memoria adicional para almacenar estas listas. Los algoritmos FSG, Topology, gspan y MoFa, usan este tipo de estructuras. (3) Estructuras de correspondencias: (ES) consiste en mantener para cada grafo generado g, estructuras que indexen todas las ocurrencias de g en D. Nótese que g puede ocurrir más de una vez en algunos G i D. Las ES

Propuesta de tesis doctoral 9 requieren mucho más espacio en memoria que las LI, pero eliminan por completo las pruebas exhaustivas de sub-isomorfismo. Este tipo de estructuras se ha usado con éxito en los algoritmos AcGM, FFSM y Gaston. (4) Híbridos: consiste en utilizar LI durante el procesamiento de los candidatos de menor tamaño y a partir de cierto umbral de tamaño empezar a usar las ES. Las ES requieren mucha más memoria en los candidatos pequeños, ya que éstos pueden ocurrir en muchas partes dentro de los grafos de D. Es conocido que las pruebas de sub-isomorfismo son menos costosas en los candidatos de menor tamaño. Esto justifica el uso de la variante (2) para empezar la búsqueda y luego continuar con la variante (3). Para un mejor diseño de estas variantes, surge la siguiente pregunta: Cómo seleccionar el umbral entre las dos variantes?; que es equivalente a responder: A partir de qué momento las pruebas de sub-isomorfismo se hacen lo suficientemente costosas para que sea preferible mantener las ES en memoria?. En [21] se propuso usar una variante de este tipo. 4. Problema a resolver Diseñar algoritmos para la minería de SCF y sus variantes (cerrados y maximales) que sean más eficientes que los algoritmos existentes. 5. Motivación Como puede apreciarse los algoritmos para la minería de SCF han ido ganando en eficiencia y aplicabilidad. Diversas estrategias para mejorar los procesos medulares en la búsqueda de los SCF: (1) generación de candidatos y (2) el conteo de frecuencia, han sido creadas. No obstante todos los intentos presentan algunas de las siguientes dificultades: El tiempo de respuesta del algoritmo solo es aceptable en conjuntos de datos con tamaño reducido. Se ha simplificado la complejidad estructural de los grafos, por ejemplo: no se pueden encontrar subgrafos con aristas múltiples de igual etiqueta. Esto es fundamentalmente porque se han diseñado para resolver problemas en conjuntos de moléculas. No se han estudiado con suficiente profundidad estrategias de generación de candidatos para la búsqueda de SCFC (cerrados) y SCFM (maximales), y las propuestas no son tan eficientes que se requiere. No se han estudiado con profundidad estrategias adaptativas, o sean que seleccionen cual variante utilizar en dependencia de la complejidad estructural del conjunto de datos. Es por eso que consideramos importante investigar sobre este tipo de minería de datos.

10 Andrés Gago Alonso 6. Propuesta 6.1. Pregunta de investigación Cómo reducir los tiempos de respuesta en la minería de SCF, para poder procesar conjuntos de datos (grafos) de mayor tamaño y diferentes complejidades, como los grafos de aristas múltiples? 6.2. Objetivo general Diseñar algoritmos para la minería de SCF y sus variantes (cerrados y maximales), más eficientes que los existentes en el estado del arte, para poder procesar conjuntos de datos de mayor tamaño. 6.3. Objetivos particulares 1. Proponer un algoritmo para la generación de candidatos, que cumpla las siguientes condiciones: a) Reducir la posibilidad de duplicados respecto a los algoritmos existentes. b) Detección de duplicados más eficiente que en los algoritmos existentes. c) Utilizar de manera funcional la estructura de datos del objetivo 2 para la generación de candidatos. 2. Proponer una estructura de datos (como las ES) para el conteo de soporte que cumpla las siguientes condiciones: a) Pueda mantener en un estado consistente de manera eficiente durante el proceso de generación. b) Requiera menos memoria que las usadas en algoritmos existentes. c) Realicen de manera eficiente las operaciones requeridas en el objetivo 1. 3. Diseñar un algoritmo para la búsqueda de los SCF cerrados, que cumpla las condiciones del objetivo 1, y que incorpore podas que permitan reducir el recorrido por el espacio de soluciones. 4. Diseñar un algoritmo para la búsqueda de los SCF maximales, que cumpla las condiciones del objetivo 1, y que incorpore podas que permitan reducir el recorrido por el espacio de soluciones. 6.4. Metodología propuesta 1. Seleccionar, recopilar y analizar críticamente la bibliografía pertinente. 2. Proponer un algoritmo de generación de candidatos. a) Estudio crítico de las estrategias usadas en los algoritmos del estado del arte. b) Proponer una nueva estrategia que reduce el tiempo empleado en la detección de duplicados. c) Evaluación de los resultados mediante la realización de pruebas y comparación de resultados. Retroalimentación. 3. Crear una estructura de datos (como las ES) para el conteo de soporte.

Propuesta de tesis doctoral 11 a) Estudio crítico de las estructuras usadas en el estado del arte para este propósito, incluso en minería de otros tipos de datos como conjuntos, secuencias y árboles. b) Buscar las características usadas en otros modelos que pueden ser extendidas al caso de grafos etiquetados. c) Proponer una nueva estructura de datos con los menos requerimientos y funcionalidades que permitan optimizar también la generación de candidatos. d) Evaluación de los resultados mediante la realización de pruebas y comparación de resultados. Retroalimentación. 4. Diseñar un algoritmo para la búsqueda de los SCFC. a) Estudio crítico de los algoritmos del estado del arte para la minería de SCFC, incluso en minería de otros tipos de datos como conjuntos, secuencias y árboles. b) Buscar las características usadas en otros modelos que pueden ser extendidas al caso de subgrafos cerrados. c) Proponer un nuevo algoritmo mezclando los modelos estudiados y si es preciso proponer nuevas ideas. d) Evaluación de los resultados mediante la realización de pruebas y comparación de resultados. Retroalimentación. 5. Diseñar un algoritmo para la búsqueda de los SCFM. a) Estudio crítico de los algoritmos del estado del arte para la minería de SCFM, incluso en minería de otros tipos de datos como conjuntos, secuencias y árboles. b) Buscar las características usadas en otros modelos que pueden ser extendidas al caso de subgrafos maximales. c) Proponer un nuevo algoritmo mezclando los modelos estudiados y si es preciso proponer nuevas ideas. d) Evaluación de los resultados mediante la realización de pruebas y comparación de resultados. Retroalimentación. 6. Comparación experimental de los algoritmos obtenidos con otros algoritmos del estado del arte en conjuntos de datos de prueba. 7. Análisis de los resultados y elaboración de las conclusiones. Referencias 1. Agrawal, R., Imielinski, T. and Swami, A.N.: Mining Association Rules Between Sets of Items in Large Databases, In Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, Washington, DC, pp. 207-216, 1993. 2. Agrawal, R. and Srikant, R.: Fast algorithms for mining association rules, In Proceeding of the 1994 International Conference on Very Large Data Bases (VLDB 94), Santiago, Chile, pp 487-499, 1994. 3. Agrawal, R. and Srikant, R.: Mining sequential patterns, In Proceedings of the International Conference on Data Engineering (ICDE 95), Taipei, Taiwan, pp. 3-14, 1995.

12 Andrés Gago Alonso 4. Assai, T., Abe, K., Kawasoe, S., Arimura, H., Sakamoto, H. and Arikawa, S.: Efficient substructure discovery from large semi-structured data, In Proceeding of the 2002 SIAM International Conference on Data Mining (SDM 02), Arlington, VA, 2002 5. Borgelt, C.: Canonical Forms for Frequent Graph Mining, In Proceedings of the 30th Annual Conference of the Gesellschaft für Klassifikation e.v., Freie Universität, Berlin, pp. 8-10, 2006. 6. Borgelt, C. and Berthold, M.R.: Mining molecular fragments: finding relevant substructures of molecules, In Proceeding of the 2002 International Conference on Data Mining (ICDM 02), Maebashi, Japan, pp. 211-218, 2002. 7. Borgelt, C., Meinl, T. and Berthold, M.R.: Advanced pruning strategies to speed up mining closed molecular fragments. In Proceedings of the 2004 IEEE International Conference on Systems, Man and Cybernetics, Vol. 5, pp. 4535-4570, 2004. 8. Burdick, D., Calimlim, M. and Gehrke, J.: Mafia: A maximal frequent itemset algorithm for transactional databases, In Proceedings of the International Conference on Data Engineering (ICDE 01), Heidelberg, Germany, pp. 443-452, 2001. 9. Deshpande, M., Kuramochi, M., Wale, N. and Karypis G.: Frequent Substructure- Based Approaches for Classifying Chemical Compounds, IEEE Transaction on Knowledge and Data Engineering, Vol. 17, Number 8, pp. 1036-1050, 2005. 10. Han, J., Cheng, H., Xin, D. and Yan, X.: Frequent Pattern Mining: Current Status and Future Directions, Data Mining and Knowledge Discovery (DMKD 07), 10th Anniversary Issue, Vol. 15, Number 1, pp. 55-86, 2007. 11. Han, J., Pei, J. And Yin, Y.: Mining Frequent Patterns without Candidate Generation, In Proceeding of the 2000 ACM-SIGMOD International Conference on Management of Data (SIGMOD 2000), Dallas, TX, pp. 1-12, 2000. 12. Hong, M., Zhou, H., Wang, W. and Shi, B.: An Efficient Algorithm of Frequent Connected Subgraph Extraction, In Proceedings of the 7th Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD 03), LNAI 2347, pp. 40-51, 2003. 13. Huan, J., Wang, W. and Prins, J.: Efficient mining of frequent subgraph in the presence of isomorphism, In Proceeding of the 2003 International Conference on Data Mining (ICDM 03), Melbourne, FL, pp. 549-552, 2003. 14. Huan, J., Wang, W., Prins, J. and Yang, J.: SPIN: mining maximal frequent subgraphs from graph databases, In Proceeding of the 2004 ACM SIGKDD international conference on knowledge discovery in databases (KDD 04), Seattle, WA, pp. 581-586, 2004. 15. Inokuchi, A.: Mining Generalized Substructures from a Set of Labeled Graphs, In Proceedings of the 4th IEEE International Conference on Data Mining (ICDM 04), Los Alamitos, CA, pp. 415-418, 2004. 16. Inokuchi, A., Washio and T., Motoda, H.: An apriori-based algorithm for mining frequent substructures from graph data, In Proceeding of the 2000 European symposium on the principle of data mining and knowledge discovery (PKDD 00), Lyon, France, pp. 13-23, 2000. 17. Inokuchi, A., Washio, T., Nishimura and K., Motoda, H.: A Fast Algorithm for Mining Frequent Connected Subgraphs, Technical Report RT0448, In IBM Research, Tokyo Research Laboratory, pp. 10, 2002. 18. Koyutürk, M., Grama, A. and Szpankowski, W.: An efficient algorithm for detecting frequent subgraphs in biological networks, Bioinformatics, Vol. 20, Suppl. 1, pp. i200-i207, 2004.

Propuesta de tesis doctoral 13 19. Kuramochi, M. and Karypis, G.: Frequent subgraph discovery, In Proceeding of the 2001 International Conference on Data Mining (ICDM 01), San Jose, CA, pp. 313-320, 2001. 20. Mckay, B.D.: Practical graph isomorphism, Congressus Numerantium, Vol. 30 pp. 45-87, 1981. 21. Meinl, T. and Berthold, M.R.: Hybrid fragment mining with MoFa and FSG, In Proceeding of the 2004 IEEE International Conference on Systems, Man and Cybernetics, Vol. 5, pp. 4559-4564, 2004. 22. Nijssen, S. and Kok, J.: A quickstart in frequent structure mining can make a difference, In Proceedings of the 2004 ACM SIGKDD International Conference on Kowledge Discovery in Databases (KDD 04), Seattle, WA, pp. 647-352, 2004. 23. Nijssen, S. and Kok, J.: Frequent Graph Mining and its Application to Molecular Databases, In Proceedings of the 2004 IEEE Conference on Systems, Man and Cybernetics (ICSMC2004), Vol. 5, pp. 4571-4577, 2004. 24. Pei, J., Han, J., Mortazavi-Asl, B., Pinto, H., Chen, Q., Dayal, U., and Hsu, M.C.: PrefixSpan: mining sequential patterns efficiently by prefix-projected pattern growth, In Proceedings of the International Conference on Data Engineering (ICDE 01), Heidelberg, Germany, pp. 215-224, 2001. 25. Read, R.C. and Corneil, D.G.: The graph isomorphism disease, Journal of Graph Theory, Vol. 1, pp. 339-334, 1977. 26. Srinivasan, A., King, R. D., Muggleton, S. H. and Sternberg M.: The predictive toxicology evaluation challenge, In Proceedings of the 15th International Joint Conference on Artificial Intelligence (IJCAI 1997), Nagoya, Japan, pp. 1-6, 1997. 27. Tsuda, K. and T. Kudo: Clustering Graphs by Weighted Substructure Mining, In Proceedings of the 23rd International Conference on Machine Learning, Pittsburgh, Pennsylvania, pp. 953-917, 2006. 28. Thomas, L., Valluri, S. and Karlapalem, K.: MARGIN: Maximal Frequent Subgraph Mining, In Proceeding of the 6th International Conference on Data Mining (ICDM 06), Hong Kong, pp. 1097-1101, 2006. 29. Ullmann, J.R.: An algorithm for subgraph isomorphism, Journal of the ACM, Vol. 23, Number 1, pp. 31-42, 1976. 30. Vanetik, N., Gudes, E. and Shimony, S. E.: Computing Frequent Graph Patterns from Semistructured Data, In Proceeding of the 2002 International Conference on Data Mining (ICDM 02), Maebashi, Japan, pp. 458-435, 2002. 31. Wang, C., Wang, W., Pei, J., Zhu, Y. and Baile, Chi: Scalable Mining of Large Diskbased Graph Databases, In Proceeding of the 2004 ACM SIGKDD international conference on knowledge discovery in databases (KDD 04), Seattle, WA, pp. 316-325, 2004. 32. Washio, T. and Motoda H.: State of the art of graph-based data mining, SIGKDD Explor. Newsl, New York, NY, Vol. 5, Number 1, pp. 59-68, 2003. 33. Wörlein, M., Meinl, T., Fischer, I. and Philippsen, M.: A quantitative comparison of the subgraph miners MoFa, gspan, FFSM, and Gaston, In Proceeding of the 9th European Conference on Principles and Practice of Knowledge Discovery in Databases (PKDD 05), Porto, Portugal, pp. 392-403, 2005. 34. Yan, X. and Han, J.: CloseGraph: mining closed frequent graph patterns, In Proceedings of the 9th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Washington, DC, pp. 286-295, 2003. 35. Yan, X. and Han, J.: gspan: graph-based substructure pattern mining. In Proceeding of the 2002 International Conference on Data Mining (ICDM 02), Maebashi, Japan, pp. 721-724, 2002.

14 Andrés Gago Alonso 36. Yan, X., Yu, P.S. and Han, J.: Graph indexing: A frequent structure-based approach, In Proceeding of the 2004 ACM-SIGMOD International Conference on Management of Data (SIGMOD 2004), Chicago, IL, pp. 324-333, 2004. 37. Zaky, M.J. and Hsiao, C.J.: CHARM: An efficient algorithm for closed itemset mining, In Proceedings of the 2003 SIAM International Conference on Data Mining, Arlington, VA, pp. 457-473, 2002. 38. Zaki, M., Parthasarathy, S., Ogihara, M. and Li, W.: New Algorithm for fast Discovery of Association Rules, In Proceeding of the 3rd International Conference on Knowledge Discovery and Data Mining (KDD 97), AAAI Press, Menlo, CA, USA, pp. 283-296, 1997. 39. Zaky, M.: Efficiently mining frequent trees in a forest: Algorithms and Applications, In IEEE Transactions on Knowledge and Data Engineering, Vol. 17, Number 8, pp. 1021-1035, 2005.