Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La...

148
Miner´ ıa de subgrafos conexos frecuentes en colecciones de grafos etiquetados Por Andr´ es Gago Alonso Tesis sometida como requisito parcial para obtener el grado de DOCTOR EN CIENCIAS EN LA ESPECIALIDAD DE CIENCIAS COMPUTACIONALES en el Instituto Nacional de Astrof´ ısica, ´ Optica y Electr´ onica Tonantzintla, Puebla Enero 2010 Supervisada por: Dr. Jes´ us Ariel Carrasco Ochoa Investigador titular del INAOE Dr. Jos´ e E. Medina Pagola Investigador auxiliar del CENATAV c INAOE 2010 Derechos Reservados El autor otorga el INAOE el permiso de reproducir y distribuir copias de esta tesis en su totalidad o en partes

Transcript of Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La...

Page 1: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Minerıa de subgrafos conexos frecuentes en

colecciones de grafos etiquetados

Por

Andres Gago Alonso

Tesis sometida como requisito parcial para obtener el grado de

DOCTOR EN CIENCIAS EN LA ESPECIALIDAD

DE CIENCIAS COMPUTACIONALES

en el

Instituto Nacional de Astrofısica, Optica y Electronica

Tonantzintla, PueblaEnero 2010

Supervisada por:

Dr. Jesus Ariel Carrasco Ochoa

Investigador titular del INAOE

Dr. Jose E. Medina Pagola

Investigador auxiliar del CENATAV

c©INAOE 2010Derechos Reservados

El autor otorga el INAOE el permiso de reproducir ydistribuir copias de esta tesis en su totalidad o

en partes

Page 2: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Resumen

La minerıa de subgrafos conexos frecuentes (SCF) en colecciones de grafos etiquetados

se ha convertido en una importante lınea de investigacion, dentro de la minerıa de datos,

por sus diversas aplicaciones. Ejemplos de tales aplicaciones son el procesamiento de bases

de datos de componentes quımicas, documentos XML, redes de citas, redes sociales, redes

biologicas, etc. Para resolver el problema de la minerıa de SCF se han propuesto varios

algoritmos.

Los mejores desempenos en la minerıa de SCF se han logrado con los algoritmos

basados en el crecimiento de patrones. No obstante, la identificacion de los patrones

duplicados y el conteo de frecuencia, durante el proceso de minerıa, siguen siendo dos

tareas que demandan muchos recursos computacionales (tiempo y espacio) y que afectan

la eficiencia de los algoritmos.

Los cuatro algoritmos que se proponen en esta tesis se enfocan en resolver estas dos

tareas de una manera mas eficiente que los metodos existentes. En particular, se pre-

sentan nuevas propiedades en las formas de representar los grafos candidatos que logran

reducir el tiempo dedicado a la identificacion de duplicados. Ademas, se introduce una

nueva estructura de datos, que permite mantener valores pre-calculados, para acelerar el

conteo de frecuencia y la generacion de candidatos.

Por otro lado, existen aplicaciones donde no es practico considerar todos los SCF

i

Page 3: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

debido a que pueden ser demasiados. Una manera de abordar este problema es buscar

solamente los SCF cerrados. Esta solucion, ademas de reducir el numero de patrones

encontrados luego de la minerıa, permite describir completamente el conjunto de todos

los SCF.

De los cuatro algoritmos propuestos como parte de esta investigacion, tres de ellos

permiten encontrar todos los SCF y el cuarto se enfoca a la minerıa de los SCF cerrados.

De acuerdo a los experimentos realizados y resultados obtenidos, los nuevos algoritmos

logran mejores desempenos en comparacion con algoritmos existentes.

ii

Page 4: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Abstract

Frequent connected subgraph (FCS) mining is an interesting problem in data mining

with wide applications in real life. Examples of such applications appear in knowledge

discovery from several sources as: chemical compound databases, XML documents, ci-

tation networks, biological networks, etc. For solving the FCS mining problem, several

algorithms have been proposed to find all frequent connected subgraphs in collections of

labeled graphs.

The best performances in FCS mining are achieved by pattern growth-based algo-

rithms. However, duplicate detection and support counting, during the mining process,

are still a challenge in FCS mining.

The four algorithms proposed in this thesis are focused on solving these subtasks in

an efficient way regarding the reported methods. Specifically, novel theoretical properties

of the candidate graph codifications are introduced. These properties allow to reduce the

computational cost of duplicate detection in the practice. Moreover, a new data structure

for indexing the graph collection is also introduced. This structure allows to accelerate

support counting and candidate enumeration.

On the other hand, there are some applications where analyzing all FCS is imprac-

tical. A way to face this problem is by finding only the closed FCS. Moreover, using the

closed FCS set allows to reconstruct the whole set of FCS.

iii

Page 5: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Three of the four proposed algorithms allow to search the whole set of FCS while the

last one is focused on mining closed FCS sets. According to the experimental results, our

algorithms achieve better performances than previously reported algorithms.

iv

Page 6: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

A mi madre

v

Page 7: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Agradecimientos

Agradezco al Consejo Nacional de Ciencia y Tecnologıa (CONACyT), al Instituto

Nacional de Astrofısica, Optica y Electronica (INAOE), y tambien al Centro de Apli-

caciones de Tecnologıa de Avanzada (CENATAV) por el apoyo proporcionado para y

durante la realizacion de este trabajo de tesis. En particular, al CONACyT por el apoyo

otorgado a traves de la Beca para estudios de Doctorado # 228063, al INAOE por per-

mitirme desarrollar en sus instalaciones este trabajo de investigacion, y al CENATAV

por haber confiado en mı.

De manera especial, agradezco a tres excelentes guıas durante esta investigacion:

Dr. Jesus Ariel Carrasco Ochoa (Ariel), Dr. Jose Eladio Medina Pagola (Medina), y

Dr. Jose Francisco Martınez Trinidad (Pancho), cuya asesorıa fue indispensable para la

culminacion de esta tesis. Especıficamente, a Ariel y Pancho les agradezco por haberme

apoyado en todo durante mis estancias en Mexico. Tambien, le doy las gracias a Medina

por sus consejos y su ayuda constante ante las dificultades (de cualquier ındole) que tuve

que enfrentar durante el desarrollo de la tesis.

Quiero agradecer a mis sinodales: Dr. Roberto Santana Hermida, Dr. Leopoldo Alta-

mirano Robles, Dra. Angelica Munoz Melendez Dr. Saul Eduardo Pomares Hernandez, y

Dr. Jesus Antonio Gonzalez Bernal por su tiempo, observaciones y sugerencias realizadas

durante el proceso de revision de este trabajo.

vi

Page 8: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Le expreso mi gratitud al Dr. Jose Ruiz Shulcloper por haber sido el principal pro-

motor de la formacion de nuevos doctores en el CENATAV, su exigencia y optimismo

sirvieron como fuente de inspiracion para vencer muchos obstaculos. Hago extensivo mi

agradecimiento a los demas companeros del CENATAV y del INAOE ya que muchos

pusieron su granito de arena para la terminacion de este documento.

No puedo dejar de agradecerles a mis padres, y abuelas, por haberme dado todo lo

que soy, a mi hermano por asumir tantas responsabilidades en el cuidado de la familia

mientras yo preparaba esta tesis, y tambien a mi pequena hermana por su comprension

ante esos momentos difıciles en los que no he podido estar a su lado.

Expreso mi agradecimiento a cada uno de los miembros de mi nueva familia por los

sacrificios que han hecho para apoyarme y aceptarme. En particular, le agradezco a mi

esposa Adriana por estar a mi lado a pesar haber sido la mas afectada durante todo este

tiempo.

Incluyo ademas, mi gratitud a los tantos amigos que compartieron conmigo durante

el desarrollo de esta investigacion. En especial a aquellos que sentiran la ausencia de sus

nombres al leer esta seccion del documento, los llevo a todos en mi corazon.

vii

Page 9: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Indice general

1. Introduccion 1

1.1. Problematica actual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2. Motivacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.3. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4. Objetivos particulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.5. Organizacion de esta tesis . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2. Marco teorico 9

2.1. Conceptos preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2. Estrategias de generacion de candidatos . . . . . . . . . . . . . . . . . . . 13

2.2.1. Estrategia basada en Apriori . . . . . . . . . . . . . . . . . . . . . 142.2.2. Estrategia basada en crecimiento de patrones . . . . . . . . . . . 15

2.3. Formas canonicas para grafos etiquetados . . . . . . . . . . . . . . . . . . 172.3.1. Codificacion DFS . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.3.2. Codificacion BFS . . . . . . . . . . . . . . . . . . . . . . . . . . . 222.3.3. Codificacion CAM . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.4. Estructuras de datos para indizar la coleccion de grafos . . . . . . . . . . 262.4.1. Listas de identificadores . . . . . . . . . . . . . . . . . . . . . . . 272.4.2. Estructuras de correspondencias . . . . . . . . . . . . . . . . . . . 282.4.3. Estructuras hıbridas . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.5. Sıntesis y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3. Trabajo relacionado 33

3.1. Algoritmos basados en Apriori . . . . . . . . . . . . . . . . . . . . . . . . 343.2. Algoritmos basados en crecimiento de patrones . . . . . . . . . . . . . . . 35

3.2.1. gSpan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.2.2. MoFa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.2.3. FFSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.2.4. Gaston . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3.3. Subconjuntos de los subgrafos conexos frecuentes . . . . . . . . . . . . . 493.3.1. Subgrafos conexos frecuentes cerrados . . . . . . . . . . . . . . . . 493.3.2. Subgrafos conexos frecuentes maximales . . . . . . . . . . . . . . 54

viii

Page 10: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

3.3.3. Otros enfoques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553.4. Sıntesis y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

4. Resultados teoricos y estructura de datos propuesta 58

4.1. Nuevas propiedades de las formas canonicas . . . . . . . . . . . . . . . . 584.1.1. Propiedades para la codificacion DFS . . . . . . . . . . . . . . . . 594.1.2. Propiedades para la codificacion CAM . . . . . . . . . . . . . . . 67

4.2. La estructura DFSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744.3. Sıntesis y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5. Algoritmos propuestos 79

5.1. gRed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795.2. gdFil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.3. grCAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.4. gdFil-closed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905.5. Sıntesis y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6. Resultados experimentales 94

6.1. Colecciones de grafos utilizadas en la experimentacion . . . . . . . . . . . 946.2. Descripcion general de los experimentos . . . . . . . . . . . . . . . . . . . 986.3. Comparacion entre gRed y gSpan . . . . . . . . . . . . . . . . . . . . . . 1006.4. Experimentos con gdFil . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006.5. Experimentos con grCAM . . . . . . . . . . . . . . . . . . . . . . . . . . 1056.6. Comparacion de los mejores algoritmos . . . . . . . . . . . . . . . . . . . 1086.7. Experimentos con gdFil-closed . . . . . . . . . . . . . . . . . . . . . . . . 1146.8. Sıntesis y conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

7. Conclusiones, aportaciones y trabajo futuro 116

7.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177.2. Aportaciones del trabajo de investigacion . . . . . . . . . . . . . . . . . . 1187.3. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Anexos 122

Notaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122Acronimos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127Trabajos publicados o aceptados . . . . . . . . . . . . . . . . . . . . . . . . . . 128

Referencias 129

ix

Page 11: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Indice de figuras

2.1. Ejemplo de una coleccion de grafos con tres elementos. . . . . . . . . . . 122.2. Los SCF de la coleccion de grafos mostrada en la figura 2.1. . . . . . . . 132.3. Ejemplos de arboles DFS para el grafo G. . . . . . . . . . . . . . . . . . 192.4. Ejemplos de diferentes casos del orden lexicografico DFS en aristas. . . . 212.5. Ejemplos de arboles BFS para el grafo G. . . . . . . . . . . . . . . . . . . 232.6. Matrices de adyacencia del grafo G. . . . . . . . . . . . . . . . . . . . . . 25

3.1. Ejemplo de arbol CAM. . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.2. Ejemplos de los resultados operacion de fusion en CAM suboptimales. . . 463.3. Ejemplo de una situacion de cruce. . . . . . . . . . . . . . . . . . . . . . 52

4.1. Ejemplo de las particiones de un conjunto de extensiones. . . . . . . . . . 594.2. Ejemplo que ilustra el cumplimiento del teorema 4.1. . . . . . . . . . . . 604.3. Ejemplo que ilustra el cumplimiento del teorema 4.2. . . . . . . . . . . . 614.4. Ejemplo de un codigo DFS mınimo y un hijo que es un codigo DFS no-

mınimo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.5. Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima

celda de arista en hijos obtenidos mediante operaciones de fusion. . . . . 714.6. Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima

celda de arista en hijos obtenidos mediante operaciones de extension. . . 714.7. Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima

celda de vertice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734.8. Ejemplo de la estructura DFSE. . . . . . . . . . . . . . . . . . . . . . . . 75

6.1. Uso de la memoria en los algoritmos que utilizan listas de identificadores(gdFil(LI), gRed, y gSpan) en la coleccion HIV. . . . . . . . . . . . . . . 102

6.2. Tiempos de ejecucion de gdFil, gdFil(LI), gRed, y gSpan. . . . . . . . . . 1046.3. Uso de la memoria en los algoritmos que utilizan estructuras de corres-

pondencias (gdFil, gRed(EC), gSpan(EC), y Gaston) en la coleccion HIV. 1046.4. Tiempos de ejecucion de grCAM, FFSM, Gaston, y MoFa. . . . . . . . . 1076.5. Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed. . . . . . . . . . 1096.6. Uso de la memoria para gdFil, grCAM, Gaston, y gRed. . . . . . . . . . 1136.7. Tiempos de ejecucion de gdFil-closed, CloseGraph, y MoFa(closed). . . . 115

x

Page 12: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Indice de tablas

2.1. Ejemplos de codigos DFS para los arboles DFS de la figura 2.3. . . . . . 222.2. Ejemplos de codigos BFS para los arboles BFS de la figura 2.5. . . . . . . 24

3.1. Resumen de las caracterısticas de los algoritmos de minerıa de SCF. . . . 57

5.1. Resumen de las caracterısticas de los algoritmos de minerıa de SCF. . . . 93

6.1. Parametros PD, PT , PV , y PE en colecciones de grafos reales. . . . . . . . 976.2. Cantidad y tamano de los SCF encontrados en la coleccion HIV-CA usan-

do umbrales de frecuencia altos y bajos. . . . . . . . . . . . . . . . . . . 996.3. Numero de pruebas CF realizadas por los algoritmos gSpan, gSpan+(pre),

gSpan+(pos), y gRed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016.4. Numero de pruebas CF realizadas por los algoritmos gSpan, gRed, y gdFil

utilizando la coleccion PTE para varios umbrales de frecuencia. . . . . . 1036.5. Numero de candidatos duplicados que pasaron a la etapa de deteccion de

duplicados en algoritmos grCAM y FFSM. . . . . . . . . . . . . . . . . . 1066.6. Numero de pruebas CF realizadas por los algoritmos grCAM y FFSM. . 1066.7. Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones

artificiales variando los parametros PD e Pi. . . . . . . . . . . . . . . . . 1106.8. Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones

artificiales variando los parametros PD y PE. . . . . . . . . . . . . . . . . 1116.9. Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones

artificiales variando los parametros PD y PV . . . . . . . . . . . . . . . . . 112

xi

Page 13: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Indice de algoritmos

2.1. Descripcion general de los algoritmos basados en el paradigma Apriori. . 152.2. Descripcion general de los algoritmos basados en el crecimiento de patrones. 162.3. Pseudo-codigo para encontrar los hijos de g que ocurren en Gi ∈ D. . . . 282.4. Pseudo-codigo para encontrar los hijos de g que ocurren en G ∈ D utili-

zando LC(g,G). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.1. Algoritmo gSpan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.2. Primera version del algoritmo MoFa. . . . . . . . . . . . . . . . . . . . . 413.3. Algoritmo FFSM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473.4. Algoritmo para la minerıa de SCF cerrados. . . . . . . . . . . . . . . . . 534.1. Pseudo-codigo para encontrar los hijos de s que ocurren en Gi ∈ D utili-

zando LC(s,Gi). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.1. Algoritmo gRed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.2. Algoritmo gdFil. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835.3. Algoritmo grCAM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885.4. Algoritmo gdFil-closed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

xii

Page 14: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 1

Introduccion

Hoy en dıa, debido a los rapidos avances cientıficos y tecnologicos, se han incrementa-

do notablemente las capacidades de creacion, almacenamiento y distribucion de grandes

volumenes de datos. Esta situacion ha generado la necesidad de nuevas herramientas

para transformar estos datos en informacion o conocimiento util para la toma de deci-

siones. Cuando estos datos son complejos y estructurados, el proceso de transformacion

requiere de tecnicas que usualmente tienen una alta complejidad computacional en tiem-

po y espacio. Ejemplos de tales tecnicas son las relacionadas con la minerıa de patrones

frecuentes.

En los ultimos anos se ha observado un significativo avance en la minerıa de patrones

frecuentes [Han et al., 2007a]. Metodos cada vez mas eficientes se han ido desarrollando

para la minerıa de conjuntos frecuentes [Agrawal et al., 1993; Agrawal & Srikant, 1994;

Burdick et al., 2001; Zaky et al., 1997; Zaky & Hsiao, 2002; Han et al., 2000], patrones

secuenciales [Agrawal & Srikant, 1995; Pei et al., 2001] y subarboles frecuentes [Assai

et al., 2002; Zaky, 2005; Balcazar et al., 2007] en colecciones de datos. Sin embargo, en

muchas aplicaciones cientıficas y comerciales se utilizan los patrones basados en grafos los

cuales poseen una complejidad estructural mayor que la de los conjuntos, las secuencias

1

Page 15: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

y los arboles.

Informalmente, un grafo es una estructura que permite modelar topologicamente las

relaciones existentes entre los objetos de cierto conjunto. Los grafos han estado presentes

en muchas aplicaciones de minerıa de patrones frecuentes [Punin et al., 2002; Borgelt

& Berthold, 2002; Deshpande et al., 2005; Hossain & Angryk, 2007; Han et al., 2007a;

You et al., 2009]. Por ejemplo, el comportamiento de los usuarios de un sitio web ha sido

modelado mediante una coleccion de grafos, permitiendo ası el estudio de las tenden-

cias en la navegacion dentro de dicho sitio mediante la minerıa de subgrafos frecuentes

[Punin et al., 2002]. En particular, los grafos etiquetados han constituido una forma de

representacion generica que es usada en muchos de estos dominios de aplicacion. Por

ejemplo, la estructura quımica de una sustancia puede ser modelada mediante un grafo

etiquetado, cada uno de cuyos vertices representa un atomo y cada una de cuyas aristas

corresponde a un enlace [Nijssen & Kok, 2004b].

La minerıa de subgrafos frecuentes consiste en encontrar todos los subgrafos que

ocurren frecuentemente en una coleccion de grafos, por tanto, es una rama dentro de

la minerıa de patrones frecuentes. En los ultimos anos, diversos metodos para realizar

este tipo de minerıa han sido desarrollados [Han et al., 2007a]. Muchos de estos metodos

se han limitado a encontrar solamente los subgrafos frecuentes que son conexos ya que

la conexidad proporciona un mejor entendimiento de las relaciones existentes entre los

datos [Kuramochi & Karypis, 2001].

La minerıa de subgrafos conexos frecuentes (SCF) sobre colecciones de grafos eti-

quetados ha sido objeto de estudios recientes dada su amplia variedad de aplicaciones

[Motoda, 2007]. En problemas de verificacion toxicologica predictiva [Srinivasan et al.,

1997], los SCF estan relacionados con sustancias toxicas. Borgelt & Berthold [2002] des-

cubrieron estructuras quımicas activas en conjuntos de datos sobre el Virus de Inmuno-

2

Page 16: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

deficiencia Humana, contrastando la frecuencia de aparicion de los SCF entre diferentes

clases. En el estudio de redes biologicas tambien se han buscado subgrafos conexos fre-

cuentes [Koyuturk et al., 2004]. Los SCF tambien han sido utilizados como base para

crear algoritmos de clasificacion [Deshpande et al., 2005; Zeng et al., 2008], agrupa-

miento [Tsuda & Kudo, 2006; Hossain & Angryk, 2007] e indizacion [Yan et al., 2004].

Inclusive, existen aplicaciones donde es necesario encontrar solo aquellos SCF que son

suficientemente densos en cuanto al numero de aristas [Zeng et al., 2007].

Esta tesis se enfoca al estudio de la minerıa de todos los SCF sobre colecciones de

grafos etiquetados. Los grafos de estas colecciones son grafos simples, no-dirigidos y

pudieran no ser conexos.

Ademas de los grafos etiquetados, otros tipos de grafos tambien han sido utilizados

para hacer minerıa de SCF; por ejemplo, los grafos geometricos [Kuramochi & Karypis,

2007], los multi-estructurados [Yamamoto et al., 2008] y otros. No obstante, en esta

investigacion solamente se consideran los grafos etiquetados.

Es importante resaltar que existen algunos enfoques para la minerıa de subgrafos

conexos distintos al que se ha planteado en esta tesis. Por ejemplo, la minerıa de subgrafos

frecuentes dentro de un solo grafo masivo [Kuramochi & Karypis, 2005] queda fuera

del ambito de esta investigacion, ya que, como se dijo anteriormente, se trabajara con

colecciones de grafos y el concepto de frecuencia difiere entre estos dos enfoques [Vanetik

et al., 2006]. La minerıa basada en busquedas heurısticas o aproximadas [Cook & Holder,

1998] tampoco sera objeto de estudio en esta tesis ya que no se garantiza la completitud

en los resultados de la minerıa. Precisamente, los primeros metodos de minerıa de datos

basados en grafos fueron desarrollados dentro de este enfoque; entre ellos los trabajos

desarrollados por Cook & Holder [1994] y Matsuda et al. [2000].

3

Page 17: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

1.1. Problematica actual

Los algoritmos para la minerıa de todos los SCF que mejor desempeno logran son los

basados en crecimiento de patrones. No obstante, la identificacion de los duplicados y el

conteo de frecuencia, durante el proceso de minerıa, siguen siendo tareas que demandan

de muchos recursos computacionales (tiempo y espacio) y que atentan contra la eficiencia

de los algoritmos.

Los metodos que se han utilizado para la deteccion de duplicados requieren de pruebas

de isomorfismo de grafos [Borgelt & Fiedler, 2007]. Es conocido que este problema del

isomorfismo de grafos es NP-completo [Foggia et al., 2001]. Sin embargo, los mayores

esfuerzos realizados en mejorar la deteccion de duplicados han sido heurısticas para

el problema del isomorfismo de grafos y, por tanto, solamente logran alguna eficiencia

para ciertas familias de grafos [Yan & Han, 2002a; Nijssen & Kok, 2004a; Borgelt &

Fiedler, 2007]. Por tal motivo, uno de los problemas de esta investigacion es resumido a

continuacion.

Problema 1. Hasta nuestro conocimiento, ninguna de las soluciones existentes a la

minerıa de SCF ha reutilizado los resultados de las pruebas de isomorfismo ya reali-

zadas para detectar la duplicidad de nuevos candidatos, sin necesidad de realizar sus

correspondientes pruebas de isomorfismo.

Por otro lado, las pruebas de sub-isomorfismo (isomorfismo de subgrafos) son usadas

dentro de la minerıa de subgrafos frecuentes para calcular la frecuencia de los candida-

tos. Sin embargo, el problema de determinar los sub-isomorfismos en el caso general es

NP-duro [Eppstein, 1995]. Estas pruebas han sido enfrentadas manteniendo, en memoria

adicional, resultados pre-calculados en estructuras de datos conocidas como estructuras

de correspondencias (en ingles embedding structures). Estas estructuras de manera ge-

4

Page 18: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

neral son muy costosas de mantener en memoria [Worlein et al., 2005; Nijssen & Kok,

2006]; en parte porque la memoria adicional es utilizada tanto en candidatos duplicados

como en los utiles. Sin embargo, cuando no se usa este recurso, los algoritmos emplean

hasta mas del 85% del tiempo de ejecucion en realizar estas costosas pruebas de ma-

nera exhaustiva. Por tal motivo, el otro problema que sera resuelto como parte de esta

investigacion es el siguiente.

Problema 2. Hasta nuestro conocimiento, las soluciones existentes a la minerıa de SCF

que estan basadas en estructuras de correspondencias, emplean memoria adicional para

las estructuras de correspondencias asociadas a candidatos duplicados. Esto es un des-

perdicio de memoria. Por otro lado, las soluciones existentes que no utilizan estructuras

de correspondencias, estan obligadas a realizar las pruebas de sub-isomorfismo de manera

exhaustiva.

1.2. Motivacion

Como se ha dicho, la minerıa de SCF es un problema actual con muchas aplicaciones

en la vida practica. Muchos esfuerzos han sido y continuan siendo dedicados a lograr

mejores tiempos de respuestas y menores requerimientos de memoria. Independiente-

mente de cuanto se ha avanzado en tal empeno, los algoritmos reportados tienen los

problemas 1 y 2 mencionados en la seccion anterior. Por tanto, el desarrollo de nuevas y

mejores heurısticas para resolver estos problemas sigue siendo una lınea de investigacion

abierta.

Por otro lado, en algunas aplicaciones no es practico considerar todos los SCF debido

a que pueden ser demasiados; como ejemplos, se pueden mencionar aquellas aplicaciones

donde el resultado de la minerıa debe ser analizado por un humano, o cuando los SCF son

5

Page 19: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

utilizados en tareas de clasificacion. Las soluciones existentes para abordar este problema

tambien presentan los problemas 1 y 2.

Los algoritmos que se proponen en este trabajo estan enfocados en resolver los dos

problemas anteriormente mencionados.

1.3. Objetivo general

Con base en lo antes mencionado, el objetivo general de este trabajo de investigacion

es:

“Disenar dos algoritmos para la minerıa de SCF mas eficientes que los exis-

tentes en el estado del arte”.

1.4. Objetivos particulares

Los objetivos especıficos de este trabajo de investigacion son los siguientes:

1. Encontrar propiedades en las formas de representacion de los grafos etiquetados

que permitan:

a) Reducir el costo computacional de determinar si una forma es canonica, aun-

que sea solamente en algunos casos.

b) Optimizar el proceso de generacion de candidatos en minerıa de SCF.

2. Utilizar las propiedades encontradas previamente (indicadas en el objetivo 1) para

disenar un algoritmo para la minerıa de todos los SCF, que cumpla las siguientes

condiciones:

6

Page 20: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

a) Reducir la posibilidad de duplicados respecto a los algoritmos existentes, du-

rante el proceso de enumeracion de candidatos.

b) Deteccion de duplicados mas eficiente que en los algoritmos existentes.

3. Determinar un subconjunto de los SCF (cerrados, maximales o algun otro), que

cumpla las siguientes condiciones:

a) Este subconjunto debe ser mas pequeno en cardinalidad que el conjunto de

todos los SCF.

b) A partir de este subconjunto sea posible reconstruir el conjunto de todos los

SCF.

4. Disenar un algoritmo que permita encontrar el subconjunto de los SCF determinado

en el objetivo 3.

1.5. Organizacion de esta tesis

La manera en que esta organizado el contenido de este documento es la siguiente:

En el capıtulo 2 se presentan los conceptos basicos requeridos para definir el problema

de la minerıa de SCF y para entender el resto del documento. Se incluyen las diferentes

estrategias de enumeracion de candidatos, las formas canonicas usadas para representar

estos grafos, y las estructuras de datos para indizar la coleccion de grafos, que se han

utilizado en la minerıa de SCF.

En el capıtulo 3 se describen los trabajos mas relevantes relacionados con esta area

de investigacion. Se ha hace enfasis en los algoritmos basados en crecimiento de patrones

ya que estos algoritmos han demostrado ser los mas exitosos dentro de la minerıa de

SCF.

7

Page 21: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

En el capıtulo 4 se presentan y demuestran nuevas propiedades de las formas canoni-

cas que son utiles en la minerıa de SCF. Ademas, se introduce una nueva estructura de

correspondencias y se describe como esta puede ser utilizada en la minerıa de SCF.

En el capıtulo 5 se introducen los algoritmos que se proponen en este trabajo. Se pro-

ponen cuatro algoritmos de minerıa de SCF. Tres de estos algoritmos permiten encontrar

todos los SCF y el cuarto se enfoca en la minerıa de los SCF cerrados.

El capıtulo 6 muestra los resultados experimentales obtenidos al evaluar el desempeno

de los algoritmos propuestos y una comparacion experimental contra otros algoritmos

del estado del arte.

Finalmente, se exponen las conclusiones y algunas direcciones a seguir como trabajo

futuro.

8

Page 22: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 2

Marco teorico

En este capıtulo se dan los conceptos basicos necesarios para definir el problema de la

minerıa de SCF y para entender el resto del documento. Se explican las dos estrategias

de generacion de candidatos mas comunes en la minerıa de SCF. Se describen algunas

formas de representacion de grafos que se han utilizado en este tipo de minerıa de datos,

y finalmente se resumen los aspectos escenciales de las estructuras de datos utilizadas

para indizar la coleccion de grafos durante la minerıa.

2.1. Conceptos preliminares

La mayor parte de los algoritmos reportados en el estado del arte se han disenado

para procesar colecciones de grafos simples y no-dirigidos, ya que numerosas aplicaciones

no han requerido de un mayor grado de generalizacion y aun quedan muchos problemas

por resolver con este tipo de grafos [Han et al., 2007a].

De igual manera, los grafos utilizados en esta tesis son etiquetados, simples y no-

dirigidos. En lo adelante cuando se hable de grafo se suponen todas estas caracterısticas

y en otro caso se especificara explıcitamente. La definicion formal de este tipo de grafo

9

Page 23: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

es la siguiente.

Definicion 2.1 (Grafo etiquetado). Un grafo etiquetado simple y no-dirigido es una

tetrada 〈V,E, L, l〉, donde:

V es un conjunto cuyos elementos son llamados vertices,

E ⊂ {{u, v} |u, v ∈ V, u 6= v} es un conjunto cuyos elementos son llamados aristas

(se suele decir que la arista {u, v} conecta a los vertices u y v),

L es el conjunto de etiquetas y

l : V ∪E → L es una funcion que asigna etiquetas a los vertices y aristas del grafo.

Esta definicion puede generalizarse a grafos parcialmente etiquetados si se incluye la

etiqueta vacıa ε.

Definicion 2.2 (Subgrafo y supergrafo). Sean G1 y G2 dos grafos que comparten el

mismo conjunto de etiquetas L y la misma funcion etiquetadora l. Se dice que G1 es

subgrafo de G2 si V (G1) ⊆ V (G2), E(G1) ⊆ E(G2). En este caso se utiliza la notacion

G1 ⊆ G2 y se dice que G2 es un supergrafo de G1.

En los algoritmos para el minado de SCF, el conteo de la frecuencia de aparicion de

un subgrafo candidato se realiza mediante pruebas de sub-isomorfismo.

Definicion 2.3 (Isomorfismo y sub-isomorfismo). Se dice que f es un isomorfismo entre

dos grafos etiquetados G1 = 〈V1, E1, L1, l1〉 y G2 = 〈V2, E2, L2, l2〉, si f : V1 → V2 es una

funcion biyectiva tal que

∀v ∈ V1, l1(v) = l2(f(v)),

∀{u, v} ∈ E1, {f(u), f(v)} ∈ E2 ∧ l1({u, v}) = l2({f(u), f(v)}).

10

Page 24: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Un sub-isomorfismo (isomorfismo de subgrafos) de G1 a G2 es un isomorfismo de G1

a un subgrafo de G2. En caso que dicho sub-isomorfismo exista se denotara mediante

G1 ⊂s G2

El problema de determinar el isomorfismo entre dos grafos es NP-duro (en ingles

NP-hard) [Read & Corneil, 1977]. Una manera de abordar las pruebas de isomorfismo

es utilizando las formas canonicas para representar los grafos. Las formas canonicas mas

usadas en minerıa de grafos seran presentadas en proximos capıtulos (ver seccion 2.3).

Los algoritmos Nauty [Mckay, 1981] y Ullmann [Ullmann, 1976] han sido algoritmos muy

usados para realizar pruebas de isomorfismo y sub-isomorfismo respectivamente. Todos

los algoritmos para este tipo de pruebas se caracterizan por tener complejidad temporal

factorial en el caso peor [Foggia et al., 2001].

Definicion 2.4 (Camino y ciclo). Se dice que P = (v1, v2, . . . , vk) es un camino en el

grafo G si todo vertice de P esta en V (G) y para cada par de vertices vi y vi+1 que sean

consecutivos en P se cumple que {vi, vi+1} ∈ E(G). En tal caso se dice que v1 y vk estan

conectados por P . Si v1 = vk se dice que P es un ciclo.

Definicion 2.5 (Grafo conexo). Un grafo G es conexo si para todo par de vertices u y

v seleccionados de V (G) se cumple que u y v estan conectados por algun camino.

Definicion 2.6 (Arbol libre). Un arbol libre es un grafo G conexo y sin ciclos.

Cuando en un arbol libre se selecciona un vertice como raız entonces se tiene un

arbol enraizado. En adelante se utilizara el termino arbol para referirse a los arboles

enraizados.

Definicion 2.7 (Relacion padre-hijo en arboles enraizados). Sea T un arbol enraizado

con v0 ∈ V (T ) seleccionado como raız y v, u ∈ V (T ) dos vertices cualesquiera de T . Se

11

Page 25: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 2.1: Ejemplo de una coleccion de grafos con tres elementos.

dice que v es padre de u si {v, u} ∈ E(T ) y el camino que une a v con v0 esta completa-

mente contenido en el camino que une a u con v0. En ese caso se dice que u es un hijo

de v.

Sea D = {G1, G2, . . . , Gm} una coleccion de grafos, un umbral de frecuencia δ, 0 <

δ ≤ m, y un grafo g.

Definicion 2.8 (Conjunto soporte y frecuencia). El conjunto soporte de g en D, que se

denotara ∆(g,D), se define como el conjunto de todos los grafos Gi ∈ D tales que existe

un sub-isomorfismo de g a Gi; o sea, ∆(g,D) = {Gi ∈ D|g ⊂s Gi}. La frecuencia de g

en D se define y se denota como σ(g,D) = |∆(g,D)|.

Se dice que un grafo g es frecuente en D, si σ(g,D) ≥ δ.

La minerıa de SCF sobre una coleccion D es definida como el problema de encontrar

todos los subgrafos conexos g en D tales que σ(g,D) ≥ δ.

Por ejemplo, si se utiliza δ = 2 como umbral de frecuencia en la coleccion de grafos

mostrada en la figura 2.1 se obtendran cinco SCF (ver figura 2.2). Notese, que el conjunto

soporte del subgrafo SCF4 es ∆(SCF4, D) = {G1, G2, G3} y σ(SCF4, D) = 3.

12

Page 26: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 2.2: Los SCF de la coleccion de grafos mostrada en la figura 2.1 utilizando δ = 2como umbral de frecuencia.

2.2. Estrategias de generacion de candidatos

Generar los candidatos de una manera efectiva incide en el buen desempeno de los

algoritmos de minerıa de patrones frecuentes. Inclusive dentro de la minerıa de patrones

mas simples, como los conjuntos frecuentes, los algoritmos se clasificaron en dos grupos:

los basados en Apriori [Agrawal & Srikant, 1994] y los basados en crecimiento de patrones

[Han et al., 2000].

La primera de las dos variantes se enfoca en la idea de proponer nuevos candidatos

a partir de los patrones mas simples que ya hayan sido encontrados. Este enfoque se

justifica en dos hechos que estan presentes en la minerıa de patrones frecuentes:

Los patrones mas complejos pueden obtenerse a partir de los mas simples.

La propiedad de clausura descendente [Agrawal & Srikant, 1994] permite realizar

podas en el espacio de busqueda. Esta propiedad plantea que:

“La frecuencia de cualquier patron A es mayor o igual que la frecuencia

de cualquier patron B que contenga a A”.

Es importante senalar que la propiedad de clausura descendente no se cumple en todos

los tipos de minerıa de patrones frecuentes reportados. No obstante, para la minerıa de

SCF (segun el enfoque de esta tesis) esta propiedad sı se cumple.

13

Page 27: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Las estrategias basadas en crecimiento de patrones tambien se basan en el cumpli-

miento de la clausura descendente pero recorren el espacio de busqueda segun criterios

diferentes al enfoque Apriori. Cada vez que un patron frecuente es encontrado se propo-

nen nuevos candidatos a partir de las apariciones de dicho patron en la coleccion. Esto

permite reducir el numero de candidatos con respecto al enfoque Apriori. Ademas, per-

mite recorrer en profundidad el espacio de busqueda ahorrando notablemente recursos de

memoria (en el caso del enfoque Apriori siempre se realiza una busqueda en amplitud).

2.2.1. Estrategia basada en Apriori

Los algoritmos de minerıa de SCF basados en Apriori comparten caracterısticas simi-

lares con el algoritmo Apriori [Agrawal & Srikant, 1994] para minar conjuntos frecuentes.

Todos estos algoritmos requieren de una operacion FUSION (en ingles Join) para unir dos

subgrafos y obtener subgrafos candidatos de tamano mayor. Estos algoritmos se diferen-

cian entre sı, casi siempre, por los elementos que son usados para medir el tamano de

cada subgrafo: vertices [Inokuchi et al., 2000, 2002], aristas [Kuramochi & Karypis, 2001],

y caminos con aristas disjuntas [Vanetik et al., 2002]. En el contexto de la minerıa de

SCF, los algoritmos basados en Apriori tienen dos grandes dificultades relacionadas con

la operacion FUSION: (1) es computacionalmente compleja en tiempo y (2) genera muchos

candidatos (para cada candidato es necesario calcular su frecuencia de aparicion).

El algoritmo 2.1 muestra una descripcion general de los algoritmos basados en Apriori.

En cada llamado recursivo del algoritmo, el tamano de los nuevos SCF descubiertos es

incrementado en uno respecto al llamado anterior. El proceso de generacion de candidatos

es mostrado en la lınea 5 y se realiza mediante la operacion FUSION utilizando una

busqueda en amplitud. Para invocar este algoritmo por primera vez es necesario calcular

S1 (el conjunto de SCF de tamano 1) en un procedimiento aparte dependiendo de las

14

Page 28: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

especificaciones de cada algoritmo.

Procedimiento SCF-Apriori(D, δ, Sk, S)

Input: D - Coleccion de grafos, δ - Umbral de frecuencia mınima, Sk - Conjuntode subgrafos conexos frecuentes de tamano k.

Output: S - Conjunto de todos los subgrafos conexos frecuentes.Local vars: Sk+1 - Conjunto de subgrafos conexos frecuentes de tamano k + 1, gi,

gj - Subgrafos frecuentes tomados de Sk, g - Subgrafo de tamanok + 1.

S ← S ∪ Sk;1

Sk+1 ← ∅;2

foreach gi ∈ Sk do3

foreach gj ∈ Sk do4

foreach g ∈ FUSION(gi, gj) do5

if σ(g,D) ≥ δ then Sk+1 ← Sk+1 ∪ {g};6

end7

end8

end9

if Sk+1 6= ∅ then10

SCF-Apriori(D, δ, Sk+1, S);11

end12

Algoritmo 2.1: Descripcion general de los algoritmos basados en el paradigma Apriori.

2.2.2. Estrategia basada en crecimiento de patrones

Un grafo g puede ser extendido adicionandole una nueva arista e. Hay dos formas de

realizar esta extension en dependencia de que la arista este compuesta por dos vertices de

g (extensiones cerradas), o un vertice en g y un vertice nuevo (extensiones por vertice).

El grafo resultante de esta extension se denota como g � e. Se suele decir que g � e es un

hijo de g en el espacio de busqueda, y que g es el padre de g � e. Si se quiere especificar

que tipo de extension produce e se utiliza la notacion g �c e para las extensiones cerradas

o g �v e para las extensiones por vertice.

Los algoritmos basados en crecimiento de patrones se describen de forma general en

15

Page 29: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

el algoritmo 2.2.

Procedimiento SCF-Crecimiento(g, D, δ, S)

Input: g - Un grafo frecuente, D - Coleccion de grafos, δ - Umbral de frecuenciamınima.

Output: S - Conjunto de todos los subgrafos conexos frecuentes.Local vars: Eg - Conjunto de aristas, e - Una arista.

if g ∈ S then return;1

S ← S ∪ {g};2

Eg ← Conjunto de aristas e tales que exista en D la extension g � e;3

foreach e ∈ Eg do4

if σ(g � e,D) ≥ δ then SCF-Crecimiento(g � e, D, δ, S);5

end6

Algoritmo 2.2: Descripcion general de los algoritmos basados en el crecimiento de patro-nes.

La generacion de candidatos en este paradigma esta basada en la operacion de exten-

sion. Se han disenado varias estrategias utilizando diferentes formas canonicas de grafos,

pero en todas es necesario tener en cuenta la existencia de duplicados [Borgelt, 2006;

Han et al., 2007a]. En muchos casos la eficiencia de un algoritmo esta fuertemente ligada

a disminuir el numero de duplicados.

Las algoritmos basados en este paradigma tambien se apoyan en el cumplimiento de

la clausura descendente (ver lınea 5 del algoritmo 2.2). Cada vez que un subgrafo conexo

frecuente es encontrado se determinan que aristas pudieran ser anadidas al grafo segun la

coleccion de grafos. Estas aristas o extensiones son agregadas al grafo g para obtener los

nuevos candidatos. Ası el espacio de busqueda es recorrido en profundidad y por tanto

solo es necesario mantener una rama activa en este recorrido.

16

Page 30: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

2.3. Formas canonicas para grafos etiquetados

La idea central de representar un grafo mediante una forma canonica consiste en

construir una secuencia de sımbolos que identifique de manera unica a cada grafo. Estos

sımbolos describen la topologıa del grafo y el valor de etiquetas.

Para construir estas secuencias se requiere un ordenamiento de los vertices del grafo.

Este ordenamiento puede hacerse ya sea mediante la busqueda de arboles de cobertura

(en ingles spanning trees) o realizando alguna permutacion aleatoria de dichos vertices.

Existiran, entonces, muchas formas de realizar este ordenamiento y esto hace mas com-

plejo el hecho de definir tales secuencias. Mediante formas canonicas es posible construir

una descripcion unica de cada grafo. Esto se realiza seleccionando entre todas las posibles

secuencias que representan un grafo, aquella que se distinga por cumplir ciertos canones

o caracterısticas especiales, segun criterios de orden lexicografico entre los sımbolos. En

las siguientes secciones se presentan ejemplos concretos de como obtener estas secuencias.

La propiedad del prefijo plantea que: cada prefijo valido de una forma canonica es

la forma canonica del subgrafo que representa. Esta propiedad garantiza la completitud

de los resultados ya que cada grafo podra ser generado al menos una vez. Si una forma

canonica cumple la propiedad del prefijo entonces esta podra ser utilizada en minerıa de

subgrafos frecuentes por crecimiento de patrones. En las siguientes secciones se muestran

dos formas canonicas que cumplen esta propiedad: la codificacion DFS y la codificacion

BFS. Tambien se incluye un ejemplo de forma canonica que no cumple con esta propiedad

en la manera estricta en que esta planteada; sin embargo, puede ser utilizada en minerıa

de grafos utilizando otros mecanismos para garantizar la completitud.

Las formas canonicas son utilizadas fundamentalmente por los algoritmos de minerıa

de SCF que estan basados en crecimiento de patrones. En la minerıa de conjuntos fre-

cuentes, por ejemplo, es trivial asegurar que el mismo conjunto es verificado solo una

17

Page 31: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

vez. Sin embargo, en la minerıa de grafos este es un problema medular. La razon es que

el mismo subgrafo puede ser obtenido por crecimiento en diversas vıas, adicionando los

mismos vertices y aristas en diferentes ordenes.

La deteccion de duplicados puede hacerse manteniendo una estructura de datos que

almacene los grafos ya analizados y aplicando multiples comprobaciones sobre dicha

estructura. Esta variante garantiza validez en los resultados pero puede ser muy costosa

en tiempo de ejecucion y consumo de memoria. Es por eso que se ha preferido el uso de

las formas canonicas en el recorrido del espacio de busqueda.

Las formas canonicas vistas como secuencias pueden ser ordenadas lexicograficamente

de acuerdo con el valor numerico o etiqueta de cada sımbolo. El espacio de busqueda, en

los algoritmos de minerıa de SCF, es recorrido de acuerdo con este orden lexicografico.

Cuando aparece una secuencia en forma no-canonica durante el recorrido del espacio

de busqueda, es porque la forma canonica del mismo grafo candidato ya fue analizada

en un paso anterior. Serıa ideal que el algoritmo que se utilice para recorrer el espacio

de busqueda eliminara toda posibilidad de generar formas no-canonicas, pero no se ha

encontrado ninguna variante con estas bondades y por tanto ha sido necesario comprobar

para cada candidato si esta en forma canonica o no [Han et al., 2007a].

Comprobar que un grafo esta representado por su forma canonica puede ser una

operacion muy costosa en tiempo, ya que se requiere enumerar exhaustivamente todas

las posibles secuencias con el fin de seleccionar de entre ellas, aquella que es la secuen-

cia canonica. En algunos casos es posible disenar heurısticas que permiten reducir el

numero de comprobaciones [Borgelt, 2006]. Estas pruebas exhaustivas son conocidas co-

mo pruebas de forma canonicas o pruebas CF (por sus siglas en ingles Canonical Form

tests).

18

Page 32: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 2.3: Ejemplos de arboles DFS para el grafo G.

2.3.1. Codificacion DFS

Para representar un grafo etiquetado mediante una unica secuencia de aristas, se

diseno una forma canonica llamada codificacion DFS (por sus siglas en ingles Depth

First Search) [Yan & Han, 2002a]. Esta secuencia es conocida como codigo DFS mınimo.

Arboles DFS. Un arbol DFS T puede ser construido cuando se realiza un recorrido

en profundidad en un grafo G = 〈V,E, L, l〉. El grafo G puede tener varios arboles DFS

porque casi siempre existe mas de un recorrido en profundidad (ver figura 2.3). Cada

arbol define un orden entre todos los vertices del grafo; por tanto, se puede numerar

cada vertice de acuerdo a este orden DFS. La raız de T sera el vertice 0 ya que es el

primer vertice en el orden DFS. El ultimo vertice en dicho orden corresponde al vertice

mas a la derecha de T . Por ejemplo en la figura 2.3, los vertices enumerados con 0 y 4

constituyen la raız y el vertice mas a la derecha en cada uno de los arboles T0, T1, y T2.

El camino directo desde la raız hasta el vertice mas a la derecha es llamado la rama mas

a la derecha.

Las aristas hacia adelante de un arbol DFS T en un grafo G son aquellas aristas de

G que estan en T , y las aristas hacia atras son aquellas que no estan en T . Por ejemplo

19

Page 33: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

en la figura 2.3, las aristas hacia adelante estan representadas mediante lıneas solidas y

en las aristas hacia atras con lıneas punteadas.

Codigos DFS. Un codigo DFS es una secuencia de aristas construida a partir de un

arbol DFS. Esta secuencia es obtenida ordenando las aristas hacia adelante de acuerdo

con el orden DFS. Luego, las aristas hacia atras desde un vertice v son insertadas justo

delante de las aristas hacia adelante desde v; si v tiene varias aristas hacia atras, estas son

incluidas de acuerdo con el orden DFS de sus vertices terminales. La tabla 2.1 muestra

ejemplos de codigos DFS para los arboles DFS de la figura 2.3. Estas consideraciones para

construir la secuencia definen un orden lexicografico (≺e) entre dos aristas cualesquiera.

Cada arista es representada por una 5-tupla, (i, j, li, l(i,j), lj) donde i y j son los

ındices de los vertices (origen y destino respectivamente), li y lj son las etiquetas de

tales vertices, y l(i,j) es la etiqueta de la arista. Si i < j entonces se esta en presencia de

una arista hacia adelante; de otro modo es una arista hacia atras.

Orden lexicografico DFS. Si e1 = (i1, j1, li1, le1 , lj1) y e2 = (i2, j2, li2, le2 , lj2), la

relacion de orden e1 ≺e e2 se cumple si y solo si se cumple una de las siguientes condi-

ciones:

i1 < j1 ∧ i2 < j2 ∧ (j1 < j2 ∨ (j1 = j2 ∧ i1 > i2)) , (2.1)

i1 ≥ j1 ∧ i2 ≥ j2 ∧ (i1 < i2 ∨ (i1 = i2 ∧ j1 < j2)) , (2.2)

i1 ≥ j1 ∧ i2 < j2 ∧ i1 < j2, (2.3)

i1 < j1 ∧ i2 ≥ j2 ∧ j1 ≤ i2, (2.4)

i1 = i2 ∧ j1 = j2 ∧ e1 ≺l e2, (2.5)

donde ≺l se define de la siguiente manera.

El orden lexicografico considerando las etiquetas (≺l) compara las aristas e1 y e2

20

Page 34: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) e1 ≺e e2 segun la condi-cion 2.1 en el caso j1 < j2.

(b) e1 ≺e e2 segun la condi-cion 2.2 en el caso i1 < i2.

(c) e1 ≺e e2 segun la condi-cion 2.2 en el caso i1 = i2.

(d) e1 ≺e e2 segun la condi-cion 2.3.

(e) e1 ≺e e2 segun la condi-cion 2.4.

Figura 2.4: Ejemplos de diferentes casos del orden lexicografico DFS en aristas. En cadacaso se muestra un par de aristas e1 y e2 que cumplen con la relacion de orden ≺e.

respecto a las ultimas tres componentes de cada 5-tupla. Para determinar el orden entre

dos aristas, la etiqueta li tiene prioridad, luego l(i,j), y finalmente lj.

Hasta aquı se ha planteado la definicion formal del orden ≺e en lenguaje matematico.

No obstante, esta definicion puede explicarse de una manera mas intuitiva: se dice que

e1 ≺e e2 si la arista e1 queda delante de e2 en cualquier recorrido DFS que contenga las

dos aristas, asumiendo que las aristas hacia atras que parten desde un mismo vertice

son visitadas en los recorridos DFS, antes que las aristas hacia adelante que parten

desde dicho vertice. En la figura 2.4 se muestran diferentes casos del cumplimiento de

las condiciones antes mencionadas que ilustran esta idea intuitiva.

El orden ≺e puede ser extendido a un orden lexicografico (≺s) entre codigos DFS.

Sean s1 = a0, a1, . . . , am−1 y s2 = b0, b1, . . . , bn−1 dos codigos DFS. Se dice que s1 ≺s s2

si se cumple una de las condiciones 2.6 y 2.7.

∃t, ∀k < t, ak = bk,∧ at ≺e bt. (2.6)

21

Page 35: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 2.1: Ejemplos de codigos DFS para los arboles DFS de la figura 2.3.

Arbol DFS Codigo DFS

T0 s0 =(0,1,A,-,A)(1,2,A,-,C)(2,0,C,-,A)(2,3,C,-,D)(3,1,D,-,A)(3,4,D,-,C)

T1 s1 =(0,1,A,-,C)(1,2,C,-,D)(2,3,D,-,C)(2,4,D,-,A)(4,0,A,-,A)(4,1,A,-,C)

T2 s2 =(0,1,C,-,D)(1,2,D,-,C)(1,3,D,-,A)(3,0,A,-,C)(3,4,A,-,A)(4,0,A,-,C)

m < n ∧ ∀k ≤ m, ak = bk. (2.7)

Por ejemplo, entre los codigos DFS de la tabla 2.1 se tiene que: s0 ≺s s1 ≺s s2.

Codigo DFS mınimo. El codigo DFS mınimo de G es definido como el menor

codigo DFS, respecto al orden ≺s, entre todos los posibles codigos de G.

Para encontrar el codigo DFS mınimo de G es necesario generar todos los posibles

codigos DFS para G y seleccionar de entre ellos el menor posible. Es por eso que com-

probar que un codigo DFS es mınimo tiene un gran costo computacional. Por ejemplo,

para un grafo denso de n vertices esta comprobacion tiene complejidad computacional

O(n!).

Este tipo de forma canonica fue introducida por Yan & Han [2002a] y ha sido utilizada

en varios trabajos de minerıa de SCF [Wang et al., 2004; Worlein et al., 2006; Han et al.,

2007b].

2.3.2. Codificacion BFS

Otra codificacion basada en recorridos en amplitud, usada para caracterizar un grafo

etiquetado mediante una secuencia de sımbolos, es llamada codigo BFS mınimo (por sus

siglas en ingles Breadth First Search).

Arboles BFS. Un arbol BFS T es construido cuando se realiza un recorrido en

amplitud en un grafo G = 〈V,E, L, l〉. El grafo G puede tener varios arboles BFS porque

22

Page 36: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 2.5: Ejemplos de arboles BFS para el grafo G.

casi siempre existe mas de un recorrido en amplitud. Este arbol T define un orden para

los vertices de G, dado por el momento en que fueron visitados durante el recorrido.

Este orden es llamado orden BFS. A cada vertice se le puede asignar un ındice entre 0

y |V | − 1 de acuerdo con dicho orden. La raız de T tendra asignado el ındice 0.

De igual manera que en la codificacion DFS, las aristas hacia adelante de un arbol

DFS T en un grafo G son aquellas aristas de G que estan en T , y las aristas hacia atras

son aquellas que no estan en T .

Codigos BFS. El codigo BFS asociado con el arbol T es una secuencia de sımbolos

(ındices o etiquetas). El primer elemento de esta secuencia es la etiqueta del nodo raız

en T . Este codigo se va construyendo durante el recorrido en amplitud que origino a

T . Las aristas hacia atras desde cada vertice v son visitadas antes que las aristas hacia

adelante que parten de v. Toda vez que una arista es visitada, un fragmento de longitud

cuatro es anadido a la secuencia, este fragmento tiene la forma (i, le, lj, j) donde le es la

etiqueta de la arista, lj la etiqueta del vertice destino, i es el ındice del nodo origen e j

es el ındice del nodo destino (i < j). La tabla 2.2 muestra ejemplos de codigos BFS para

los arboles BFS de la figura 2.5. De manera resumida, un codigo BFS puede ser descrito

por la expresion regular v[(i, le, lj , j)]m, donde m = |E(G)|.

23

Page 37: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 2.2: Ejemplos de codigos BFS para los arboles BFS de la figura 2.5.

Arbol BFS Codigo BFS

T0 s0 =A(0,-,A,1)(0,-,C,2)(1,-,C,2)(1,-,D,3)(2,-,D,3)(3,-,D,4)

T1 s1 =A(0,-,C,1)(0,-,A,2)(1,-,A,2)(1,-,D,3)(2,-,D,3)(3,-,D,4)

T2 s2 =C(0,-,D,1)(1,-,C,2)(1,-,A,3)(2,-,A,3)(2,-,A,4)(3,-,A,4)

Codigo BFS mınimo. Todos los posibles codigos BFS del grafo G pueden ser

comparados entre sı lexicograficamente. El menor entre estos codigos es llamado el codigo

BFS mınimo.

Este tipo de forma canonica fue utilizada por el algoritmo MoFa [Borgelt & Berthold,

2002] y fue presentada formalmente por Borgelt [2006].

2.3.3. Codificacion CAM

La estructura de un grafo etiquetado puede ser expresada usando matrices de ad-

yacencia. A partir de esta representacion es posible definir una secuencia unica para

representar dicho grafo.

Definicion 2.9 (Matriz de adyacencia). Dado un grafo etiquetado G = 〈V,E, L, l〉 tal

que |V | = n y una permutacion de los vertices en V = {v0, v1, . . . , vn−1}, la matriz de

adyacencia de G respecto a dicha permutacion es X = (xi,j)n−1i,j=0 segun se expresa en la

ecuacion 2.8.

xi,j =

l(vi) si i = j

l(e) si e = {vi, vj} ∈ E

0 si {vi, vj} 6∈ E

. (2.8)

El codigo de G usando X ha sido definido de varias maneras [Inokuchi et al., 2000,

2002; Hong et al., 2003; Huan et al., 2003]. En esta seccion se explica la variante utilizada

24

Page 38: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) La CAM de G. (b) Una matriz de adya-cencia de G que no esCAM.

Figura 2.6: Matrices de adyacencia del grafo G.

por Huan et al. [2003] en el algoritmo FFSM el cual es uno de los algoritmos mas

referenciados dentro de la minerıa de SCF. En FFSM el codigo de una matriz X se

construye concatenando las filas de la submatriz triangular inferior (ver ecuacion 2.9).

code(X) = x0,0x1,0x1,1x2,0x2,1x2,2 . . . xn−1,n−1. (2.9)

Por ejemplo, la figura 2.6 muestra las matrices de adyacencias de un grafoG. Los codi-

gos de las matrices mostradas en las figuras 2.6(a) y 2.6(b) son b1a12a001a y a1a02a011b

respectivamente. Los codigos son cadenas de etiquetas L(G) ∪ {0}. Un orden entre las

etiquetas de L(G) es supuesto y la etiqueta 0 es considerada como la menor etiqueta de

dicho orden. De este modo, el orden lexicografico, que sera denotado por ≺, puede ser

usado para definir un orden total entre todos los codigos posibles. Por ejemplo, se tiene

que a1a02a011b ≺ b1a12a001a para los codigos de las matrices en la figura 2.6.

Un mismo grafo puede tener varias matrices de adyacencia ya que existe una depen-

dencia con el orden de los vertices que se utilizo durante la construccion de la matriz.

Caracterizar un grafo etiquetado requiere de una representacion que sea unica en dicho

grafo y en todos aquellos que son isomorfos con este. Es por eso que se define la matriz

de adyacencia canonica (CAM por sus siglas en ingles Canonical Adjacency Matriz ) a

partir del codigo de la matriz.

25

Page 39: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

La CAM de un grafo G se define como la matriz de adyacencia que da lugar al codigo

lexicograficamente mayor entre todos los posibles codigos de las matrices de adyacencia

asociadas con G. Por la forma en que fueron definidas estas secuencias, si dos codigos

que representan un mismo grafo son iguales entonces fueron construidos a partir de la

misma matriz de adyacencia. Por tanto, cuando ocurre un empate al encontrar el codigo

lexicograficamente mayor es porque se esta en presencia de la misma matriz CAM.

2.4. Estructuras de datos para indizar la coleccion

de grafos

El conteo de frecuencia es uno de los procesos fundamentales en los algoritmos de

minerıa de patrones frecuentes. En el caso de la minerıa de SCF, las pruebas de sub-

isomorfismo hacen que este proceso sea crıtico. Para este tipo de minerıa es practicamente

imprescindible el uso de estructuras de datos que indizen la coleccion de grafos; de este

modo, es posible acelerar algunos procesos dentro de la busqueda como el conteo de

frecuencia.

De no usarse tales estructuras se requerirıa de un proceso de busqueda exhaustiva.

Esta busqueda exhaustiva consistirıa en que dado un candidato g, serıa necesario recorrer

la coleccion de grafos D para encontrar cuantos grafos Gi contienen al menos un sub-

isomorfismo de g a Gi.

Las estructuras de datos que se utilizan para indizar la coleccion de grafos (en los

algoritmos para minar SCF) pueden clasificarse en tres tipos: las listas de identificadores,

las estructuras de correspondencias, y las estructuras hıbridas de las anteriores.

26

Page 40: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

2.4.1. Listas de identificadores

La lista de identificadores de un grafo candidato g sobre la coleccion de grafos D =

{G1, G2, . . . , Gm} se define segun la ecuacion 2.10.

LI(g,D) = {i|Gi ∈ D ∧ g ⊂s Gi}. (2.10)

Es decir, es una lista con los identificadores i de los grafos Gi que contienen al menos un

sub-isomorfismo de g a Gi.

Esta variante no elimina las pruebas de sub-isomorfismo pero reduce el numero de

estas notablemente ya que solo es necesario realizar dichas pruebas en los grafos que

contienen al grafo candidato. El proceso de mantener las listas en estado consistente

no requiere de gran poder de computo; la lista de un nuevo candidato puede obtenerse

facilmente a partir de las listas de los grafos que le dieron origen durante el proceso

de generacion. Para almacenar dichas listas se requiere de memoria adicional pero no

tanta como en las estructuras de correspondencias. Los algoritmos FSG [Kuramochi &

Karypis, 2001], Topology [Hong et al., 2003], y gSpan [Yan & Han, 2002a] usan este tipo

de estructuras.

Las listas de identificadores pueden ser calculadas durante el proceso de deteccion de

los candidatos. Sea g un SCF y sea Gi ∈ D, los hijos de g que ocurren en Gi se obtienen

segun el algoritmo 2.3. La lınea 6 muestra que cada vez que aparece un posible candidato

se puede actualizar o crear la lista de identificadores de dicho candidato.

Las costosas pruebas de sub-isomorfismo que se requieren para localizar a g dentro del

grafo Gi son realizadas en la lınea 1 del algoritmo 2.3. Una vez que se tienen localizadas

tales ocurrencias, se calculan los hijos de g que ocurren en Gi (ver lınea 3) y se actualiza

o crea su correspondiente lista de identificadores (ver lınea 6).

27

Page 41: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento Buscar-Candidatos-LI(g, Gi, C)

Input: g - un SCF, Gi - el i-esimo grafo de la coleccion DOutput: C - los hijos de g que ocurren en Gi

Local vars: Φ - Un conjunto de subgrafos de Gi, g′ - un subgrafo de Gi, ek - Una

arista, e - una extension para g.

Φ← el conjunto de todos los subgrafos de Gi que son isomorfos a g.1

foreach g′ ∈ Φ do2

forall ek ∈ E(Gi) \ E(g′) tal que ek puede ser una extension de g′ do3

Sea e la extension para g que se obtiene de ek ajustando sus vertices a los4

del grafo g mediante el sub-isomorfismo.Adicionar g � e a C;5

LI(g � e,D)← LI(g � e,D) ∪ {i};6

end7

end8

Algoritmo 2.3: Pseudo-codigo para encontrar los hijos de g que ocurren en Gi ∈ D.

2.4.2. Estructuras de correspondencias

Las estructuras de correspondencias consisten en mantener para cada grafo candidato

g, estructuras que indizen todas las ocurrencias de g en D, durante la minerıa. Notese

que g puede ocurrir mas de una vez en algunos Gi ∈ D. Las estructuras de correspon-

dencias requieren mucho mas espacio en memoria que las listas de identificadores, pero

eliminan por completo las pruebas exhaustivas de sub-isomorfismo. Este tipo de estruc-

turas se ha usado con exito en los algoritmos AcGM, FFSM, MoFa, Gaston y en algunas

modificaciones de gSpan como Edgar y ADI-Mine.

Las estructuras de correspondencias han sido usadas con mas exito en los algoritmos

basados en crecimiento de patrones que utilizan busqueda en profundidad para recorrer

el espacio de busqueda. La ventaja de realizar la busqueda en profundidad es que permite

mantener indizadas las ocurrencias solamente para los candidatos de la rama activa en la

busqueda y por tanto resulta factible mantener almacenada en memoria esta informacion

adicional.

28

Page 42: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Las estructuras de correspondencias se han definido de manera particular para cada

algoritmo, adaptadas a las condiciones especıficas del recorrido del espacio de busqueda

en cada caso. No obstante, el funcionamiento general de estas estructuras puede ser

modelado de la siguiente manera simplificada. Primero, todos los algoritmos que han

usado estas estructuras recorren el espacio de busqueda partiendo de los SCF que tienen

solamente un vertice. Se supondra que g0 = 〈{v}, ∅, {lv}, l〉 es un grafo con un solo vertice

v tal que l(v) = lv y sea Gi ∈ D el i-esimo grafo de la coleccion D tal que g0 ⊂s Gi.

Una correspondencia de g0 en Gi se define como un par ordenado (j, λ) donde j es un

numero entero tal que el j-esimo vertice (vj) de Gi tiene asignada la etiqueta lv y λ es

un puntero a null (esta componente solamente se usara para las correspondencias de

grafos con mas de un vertice). La lista de correspondencias de g0 en Gi = 〈Vi, Ei, Li, li〉

se define segun la ecuacion 2.11.

LC(g0, Gi) = {(j, λ)|vj ∈ Vi ∧ li(vj) = lv}. (2.11)

Las listas de correspondencias para grafos de mayor tamano se definen de manera

recurrente. Sea g un SCF y sea G ∈ D, los hijos de g que ocurren en G se obtienen usando

LC(g,G) segun el algoritmo 2.4. Este algoritmo utiliza las listas de correspondencias del

grafo g para obtener dichos candidatos y construye las listas de correspondencias de los

nuevos candidatos durante la busqueda.

Las listas de correspondencias de los candidatos obtenidos mediante el algoritmo 2.4

son listas de pares ordenados (j, p) donde j es un identificador de vertices o aristas en

el grafo G de la coleccion D, y p es un elemento de LC(g,G). La lista LC(g,G) ya ha

sido creada antes de invocar este metodo, ya sea porque g es un grafo con un solo vertice

usando la ecuacion 2.11, o mediante llamadas anteriores al metodo Buscar-Candidatos-

-EC. Recorriendo la lista LC(g,G) a traves de las segundas componentes p (ver lıneas

29

Page 43: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento Buscar-Candidatos-EC(g, G, L, C)

Input: g - Un SCF, G - Un grafo de la coleccion, L - La lista de correspondenciasLC(g,G).

Output: C - Los hijos de g que ocurren en G.Local vars: j - Un identificador de vertice o de arista, p, τ , τc - Apuntadores a

pares ordenados, V - Conjunto de vertices, E - Conjunto de aristas,vj - j-esimo vertice de G, ej - j-esima arista de G, g′ - Un subgrafode G, ek - k-esima arista de G, e - una extension para g.

Constants: λ - Un apuntador a null.

foreach par ordenado τ = (j, p) ∈ L do1

V ← ∅; E ← ∅;2

while p 6= λ do3

if j es un identificador de vertice then4

V ← V ∪ {vj};5

Adicionar a E la arista que anadio al vertice vj ;6

end7

else E ← E ∪ {ej};8

(j, p)← El par ordenado apuntado por el apuntador p;9

end10

V ← V ∪ {j};11

Sea g′ ⊆ G el subgrafo de G obtenido usando el conjunto de vertices V , el12

conjunto de aristas E, y que es isomorfo g;forall arista ek ∈ E(G) \ E tal que ek puede ser una extension de g′ do13

if ek anade un nuevo vertice vj a g′ then τc ← (j, τ);14

else τc ← (k, τ);15

Sea e la extension para g que se obtiene de ek ajustando sus vertices a los16

del grafo g mediante el sub-isomorfismo.Adicionar g � e a C;17

LC(g � e, G)← LC(g � e, G) ∪ {τc};18

end19

end20

Algoritmo 2.4: Pseudo-codigo para encontrar los hijos de g que ocurren en G ∈ Dutilizando LC(g,G).

30

Page 44: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

3-11) se obtiene el sub-isomorfismo entre g y G, y ası se determinan los hijos de g que

ocurren en G (ver lıneas 13-19). Cada vez que aparece un candidato g � e se aprovechan

los calculos realizados para ir construyendo LC(g � e, G) (ver lınea 18).

La estructura de correspondencias de un grafo g respecto a la coleccion D es una

estructura de datos que contiene todas las listas de correspondencias de g respecto a

cada uno de los grafos G ∈ D (ver la ecuacion 2.12).

EC(g,D) = {(i, L)|Gi ∈ D,L = LC(g,Gi),∧ L 6= ∅}. (2.12)

Los algoritmos 2.3 y 2.4 se encargan de localizar los hijos de un grafo g que ocurren

en un grafo G ∈ D. El primero de estos dos metodos usa las costosas pruebas de sub-

isomorfismo de manera exhaustiva mientras que el segundo usa los datos pre-calculados

en las estructuras de correspondencias para localizar dichos sub-isomorfismos.

2.4.3. Estructuras hıbridas

Los enfoques hıbridos consisten en utilizar listas de identificadores durante el pro-

cesamiento de los candidatos de menor tamano y a partir de cierto tamano empezar a

usar las estructuras de correspondencias. Las estructuras de correspondencias requieren

mucha mas memoria en los candidatos pequenos, ya que estos 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 tamano. Esto justifica el uso de las listas

de identificadores para empezar la busqueda y luego continuar con las estructuras de

correspondencias.

Para un mejor diseno de estas variantes surge la siguiente pregunta: ¿Como seleccio-

nar el tamano de los candidatos entre las dos variantes?; que es equivalente a la pregunta:

¿A partir de que momento las pruebas de sub-isomorfismo se hacen lo suficientemente

31

Page 45: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

costosas para que sea preferible mantener las estructuras de correspondencias en memo-

ria?.

En [Meinl & Berthold, 2004] se propone usar una variante de este tipo que permite

reducir los tiempos de ejecucion del algoritmo MoFa.

2.5. Sıntesis y conclusiones

En este capıtulo se ha definido formalmente los conceptos que son necesarios para

un mejor entendimiento del resto del documento. Primero se presentaron los conceptos

basicos de la teorıa de grafos que caracterizan el problema de la minerıa de SCF. Luego

se detallaron los aspectos escenciales que caracterizan tanto a los algoritmos del estado

del arte como a los propuestos en esta investigacion. Ademas, se definio un lenguaje

comun que sera utilizado en lo que resta del documento.

En particular se describieron las formas canonicas para la representacion de los grafos

etiquetados. Estas formas canonicas requieren ser estudiadas en profundidad como parte

del objetivo particular 1 de esta investigacion.

Por otro lado, los detalles de las estructuras de datos comunmente usadas para indizar

la coleccion de grafos son presentados como parte de este capıtulo. El estudio detallado

de estas estructuras de datos es requerido para dar cumplimiento al objetivo particular 2

de esta investigacion.

32

Page 46: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 3

Trabajo relacionado

Como se ha mencionado anteriormente, los algoritmos para la minerıa de SCF se

clasificaron, de acuerdo a la estrategia de generacion de candidatos, en dos grupos: los

basados en Apriori y los basados en crecimiento de patrones. No obstante, existen otros

aspectos que pueden incidir en la calidad de un algoritmo para la minerıa de SCF;

por ejemplo, las formas de representacion de los candidatos y las estructuras de datos

utilizadas para indizar la coleccion de grafos durante la minerıa, entre otras. De este modo

se tiene cuatro aspectos fundamentales en los algoritmos de minerıa de SCF segun:

1. La estrategia de generacion de candidatos.

2. La forma de representacion de los candidatos.

3. La estructura de datos utilizadas para indizar la coleccion de grafos.

4. El conjunto de SCF que devuelve luego de la minerıa.

En este capıtulo se presentaran los algoritmos mas importantes dentro de la minerıa

de SCF haciendo enfasis en la manera en que se han se implementado dichos aspectos.

Los algoritmos basados en crecimiento de patrones son presentados con mayor detalle,

33

Page 47: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

ya que estos algoritmos han sido los mas exitosos segun estudios comparativos recientes

[Worlein et al., 2005; Nijssen & Kok, 2006; Han et al., 2007a].

3.1. Algoritmos basados en Apriori

El primer algoritmo para la minerıa de todos los subgrafos frecuentes fue AGM [Inoku-

chi et al., 2000], el cual se diseno para buscar los subgrafos frecuentes sin tener en cuenta

la conexidad. Esto fue una limitante para las aplicaciones donde los SCF son de interes.

En respuesta a esta problematica surge el algoritmo FSG [Kuramochi & Karypis, 2001]

que encuentra todos los SCF dentro de una coleccion de grafos etiquetados. La estra-

tegia de generacion de candidatos en ambos algoritmos fue la basada en Apriori (ver

seccion 2.2.1).

En FSG el tamano de los grafos esta determinado por el numero de aristas. Dos

grafos de tamano k se pueden fusionar cuando comparten un mismo subgrafo de tamano

k − 1 llamado nucleo (en ingles core) y se diferencian en una sola arista. Esta fusion es

muy compleja para los candidatos de mayor tamano, aunque genera menos candidatos

que la variante del algoritmo AGM.

Tanto AGM como sus posteriores adaptaciones para la minerıa de SCF (AcGM

[Inokuchi et al., 2002], Topology [Hong et al., 2003], G-AcGM [Inokuchi, 2004]) mi-

den el tamano de los grafos contando el numero de vertices. Los grafos candidatos son

representados mediante su matriz de adyacencia canonica y esta representacion es usada

para la generacion de candidatos. Para que dos grafos de tamano k se puedan fusionar es

necesario que ambas matrices de adyacencia tengan igual submatriz principal de tamano

k−1, en otro caso el resultado de la fusion es el conjunto vacıo. Esto significa que ambos

grafos deben compartir un subgrafo de tamano k − 1 y diferenciarse en un solo vertice.

Los grafos de tamano k+1 resultantes de la fusion contienen el subgrafo comun y los dos

34

Page 48: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

vertices que diferencian los grafos. La arista que pudiera unir a estos dos vertices es la

que diferencia a los nuevos grafos generados y es el motivo del alto numero de candidatos

que hay que procesar.

Otra variante muy interesante para la generacion de candidatos basandose en caminos

disjuntos, es el algoritmo PATH-BASED [Vanetik et al., 2002]. En este algoritmo el

tamano de un grafo esta dado por la cantidad de caminos disjuntos que tiene. Un grafo

candidato de tamano k + 1 es generado a partir de dos grafos de tamano k que solo se

diferencian en uno de los caminos disjuntos.

3.2. Algoritmos basados en crecimiento de patrones

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 [Han

et al., 2000]. Estos algoritmos obtienen los subgrafos candidatos creciendo directamente

desde un solo subgrafo (ver seccion 2.2.2).

El primer algoritmo de minerıa de SCF basado en el crecimiento de patrones fue

gSpan [Yan & Han, 2002a]. La idea de este algoritmo ha sido utilizada como punto de

partida para disenar algoritmos mas eficientes o mejor adaptados a condiciones especıficas

de aplicacion. El algoritmo CloseGraph fue presentado como una adaptacion de gSpan

para la minerıa de los SCF cerrados [Yan & Han, 2003]. En otro trabajo conocido como

ADI-Mine, una estructura llamada ADI (por sus siglas en ingles Adjacency Index ) es

utilizada para incrementar la capacidad de procesamiento de gSpan [Wang et al., 2004].

Con esta estructura fue posible procesar conjuntos de datos que no podıan ser cargados

en memoria por los algoritmos conocidos hasta entonces. El algoritmo Edgar introduce

mejoras en gSpan mediante tecnicas de optimizacion de codigos y la incorporacion de una

estructura de correspondencias similares a las presentadas en la seccion 2.4.2 [Worlein

35

Page 49: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

et al., 2006]. En el algoritmo FSP se propusieron otras maneras de recorrer espacio de

busqueda sin reducir el numero de candidatos reportando leves mejoras sobre gSpan

[Han et al., 2007b].

Otros algoritmos desarrollados bajo el paradigma de crecimiento de patrones son

MoFa [Borgelt & Berthold, 2002], FFSM [Huan et al., 2003] y Gaston [Nijssen & Kok,

2004a]. Estos junto a gSpan pueden ser considerados como la base de todos los algoritmos

desarrollados para la minerıa de SCF mediante crecimiento de patrones. Por ejemplo, los

algoritmos MoFa(hybrid) [Meinl & Berthold, 2004] y MoFa(closed) [Borgelt et al., 2004]

pueden ser considerados como modificaciones de MoFa. Ademas, el algoritmo FSMA

[Wu & Chen, 2008], por su parte, es una modificacion de FFSM.

3.2.1. gSpan

El algoritmo gSpan introduce la codificacion DFS como una prometedora forma

canonica para representar grafos etiquetados en la minerıa de grafos [Yan & Han, 2002a].

La definicion 3.1 nos permite entender el espacio de busqueda en gSpan.

Definicion 3.1 (Extension mas a la derecha). Sea s un codigo DFS mınimo y e una

arista que no pertenece a s. Se dice que e es una extension mas a la derecha de s si

e conecta al vertice mas a la derecha con otro vertice en la rama mas a derecha de s

(extension hacia atras); o e introduce un nuevo vertice conectado desde algun vertice de

la rama mas a derecha de s (extension hacia adelante). En tales casos, el codigo s′ = s�e

denotara al codigo obtenido luego de extender a s con e; se dice que s′ es un hijo de s o

que s es el padre de s′.

El concepto de extension hacia atras se usa para referirse a las extensiones que no

anaden nuevos vertices a s. Las extensiones hacia adelante son aquellas que anaden

vertices.

36

Page 50: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

El espacio de busqueda en gSpan es definido como un arbol que en sus nodos con-

tiene codigos DFS y el concepto de padre-hijo esta dado por la definicion 3.1. Como la

codificacion DFS cumple la propiedad del prefijo (ver seccion 2.3) entonces cada codigo

DFS mınimo de longitud m, m > 1, es un hijo de algun otro codigo DFS mınimo de

longitud m − 1; es decir, recorriendo el espacio de busqueda para cada arista frecuente

(codigo de longitud 1) en D se logra completitud en la busqueda. En [Yan & Han, 2002b]

se ofrece una demostracion mas detallada de esta propiedad de completitud. El arbol

del espacio de busqueda tiene que ser podado a partir de cualquier nodo que contenga

un codigo DFS no-mınimo. Cada codigo no-mınimo representa un candidato duplicado

ya que el codigo DFS mınimo del grafo asociado debe haberse generado anteriormente,

pues los codigos DFS se generan ascendentemente en el orden lexicografico.

En el algoritmo 3.1 se muestra el pseudo-codigo de gSpan. El procedimiento gSpan

es el punto de entrada del algoritmo. Primero, se eliminan todos los vertices y aristas no

frecuentes para ası tener una representacion simplificada de la coleccion de grafos (ver

lıneas 1–3 del procedimiento gSpan). Luego, se recorre el espacio de busqueda a partir

de cada una de las aristas frecuentes o codigos DFS con una sola arista (ver lıneas 4

y 5 del procedimiento gSpan). Para cada arista frecuente e, el procedimiento gSpan-

-Crecimiento es el encargado de encontrar todos los SCF frecuentes que contienen a e.

Luego, la arista e es eliminada de cada uno de los grafos que componen la coleccion D;

por tanto, e no volvera a ser usada en las iteraciones siguientes.

Los detalles del procedimiento gSpan-Crecimiento tambien estan presentados en el

algoritmo 3.1. Este procedimiento es el encargado de realizar el crecimiento de patro-

nes (ver analogıa con el algoritmo 2.2). Este algoritmo genera recursivamente todos los

codigos DFS que forman el espacio de busqueda. La lista de identificadores LI(s,D) es

usada para determinar el conjunto de candidatos (s � e, e ∈ Cr(s)) y para calcular las

37

Page 51: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento gSpan(D, δ, S)

Input: D - Coleccion de grafos, δ - Umbral de frecuencia mınima.Output: S - Resultado de la minerıa.Local vars: S1 - Conjunto de aristas frecuentes, e - Una arista.

Eliminar vertices and aristas no frecuentes;1

S ← Conjunto de todos los vertices frecuentes;2

S1 ← Conjunto de todas las aristas (codigos DFS de tamano 1) frecuentes;3

forall e ∈ S1 do4

Inicializar la lista de identificadores LI(e,D);5

gSpan-Crecimiento(D,e,δ,S);6

Eliminar las aristas iguales a e de cada uno de los grafos de D;7

if |D| < δ then return;8

end9

Procedimiento gSpan-Crecimiento(D, s, δ, S)

Input: D - Coleccion de grafos, s - Un codigo DFS (un SCF), δ - Umbral defrecuencia mınima.

Output: S - Resultado de la minerıa.Local vars: Cr(s), - Conjuntos de extensiones para s, i - Un identificador de

grafo, Gi - El i-esimo grafo de D, e - una extension para s.

if not isMin-DFS(s) then return;1

S ← S ∪ {s}; Cr(s)← ∅;2

forall identificador i ∈ LI(s,D) do Buscar-Candidatos-LI (s, Gi, Cr(s));3

Eliminar de Cr(s) las extensiones infrecuentes segun δ;4

forall e ∈ Cr(s) do gSpan-Crecimiento(D, s � e, δ, S);5

Algoritmo 3.1: gSpan.

38

Page 52: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

listas LI(s � e,D) para cada uno de los candidatos (ver lınea 3 y la seccion 2.4.1 para

aclarar notaciones).

Todos los algoritmos basados en crecimiento de patrones generan duplicados durante

el recorrido del espacio de busqueda. En gSpan, los candidatos duplicados son aquellos

codigos DFS que son no-mınimos. Como se ha dicho anteriormente, para comprobar

la minimalidad o no-minimalidad de un codigo DFS se requieren pruebas exhaustivas

con un alto costo computacional. Para comprobar si un codigo DFS s es mınimo o no,

gSpan propone su propio algoritmo el cual es computacionalmente mas eficiente que la

prueba exhaustiva. Esta prueba se implementa dentro de la funcion isMin-DFS(s) del

algoritmo 3.1. Se generan aquellos prefijos de codigos DFS que son menores o iguales

que el correspondiente prefijo en s. Si algun prefijo de estos es menor estricto que s,

entonces s es un codigo no-mınimo y la prueba concluye. Como se puede ver esta prueba

de minimalidad sigue siendo exhaustiva y computacionalmente costosa; por ejemplo,

cuando este prefijo es encontrado tardıamente (es uno de los ultimos prefijos procesados

durante la prueba) o cuando el codigo s es realmente mınimo.

3.2.2. MoFa

El algoritmo MoFa introduce la codificacion BFS para representar los grafos candida-

tos durante la minerıa [Borgelt & Berthold, 2002]. Existen muchas analogıas entre MoFa

y gSpan respecto a los conceptos de teorıa de grafos que ambos utilizan [Borgelt, 2006].

La codificacion BFS usada por MoFa es similar a la codificacion DFS de gSpan (ver

seccion 2.3). En el algoritmo MoFa solamente se consideran las extensiones de maximo

origen mientras que en gSpan solamente se utilizan las extensiones mas a la derecha.

Para introducir este tipo de extensiones son necesarias las siguientes definiciones. Sea s

un codigo BFS mınimo y V (s) = {v0, v1, . . . , vn−1} los vertices de s ordenados de acuerdo

39

Page 53: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

al recorrido BFS (ver seccion 2.3.2).

Definicion 3.2 (Maximo origen). Si |s| = 1 (s representa un grafo con un solo vertice)

se dice que 0 es el maximo origen de s. En el caso de codigos con al menos una arista, el

maximo origen de s se define como el vertice origen de la ultima arista de s.

Por ejemplo, en la figura 2.5 el maximo origen del codigo BFS de T2 es 3.

Definicion 3.3 (Extensiones de maximo origen). Sean e una arista que no pertenece

a s, y h el maximo origen de s. Se dice que e es una extension de maximo origen de s

si e conecta a vh con un vertice vk tal que k > h (extension hacia atras); o e introduce

un nuevo vertice conectado a un vertice vl tal que l ≥ h (extension hacia adelante). En

tales casos, el codigo s′ = s � e denotara al codigo obtenido luego de extender a s con e;

se dice que s′ es un hijo de s o que s es el padre de s′.

El algoritmo MoFa puede ser definido utilizando los codigos BFS de una manera

muy parecida a gSpan (ver algoritmo 3.2). El espacio de busqueda de MoFa contiene

codigos BFS en una estructura de tipo arbol donde la relacion padre-hijo esta dada por la

definicion 3.3. Los duplicados en la version inicial no eran detectados utilizando las formas

canonicas en los codigos BFS [Borgelt & Berthold, 2002]. En dicha version se comprueba

la duplicidad de un candidato buscandole en el conjunto donde se va almacenando el

resultado de la minerıa (ver lınea 1 del procedimiento MoFa-Crecimiento).

Versiones posteriores de MoFa incorporaron las pruebas CF sobre los codigos BFS

para la deteccion de duplicados [Borgelt & Fiedler, 2007].

A diferencia de gSpan, el algoritmo MoFa utiliza estructuras de correspondencias

para indizar la coleccion de grafos durante la minerıa.

40

Page 54: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento MoFa(D, δ, S)

Input: D - Coleccion de grafos, δ - Umbral de frecuencia mınima.Output: S - Resultado de la minerıa.Local vars: S1 - Conjunto de vertices frecuentes, v - Un vertice frecuente.

Eliminar vertices and aristas no frecuentes;1

S ← S1 ← todos los vertices frecuentes;2

forall v ∈ S1 do3

Inicializar la lista de correspondencias EC(v,D);4

MoFa-Crecimiento(D,v,δ,S);5

end6

Procedimiento MoFa-Crecimiento(D, s, δ, S)

Input: D - Coleccion de grafos, s - Un codigo BFS (un SCF), δ - Umbral defrecuencia mınima.

Output: S - Resultado de la minerıa.Local vars: Cs(s) - Conjunto de extensiones para s, i - Un identificador de grafo,

Gi - El i-esimo grafo de D, L - La lista de correspondenciasLC(s,Gi), e - una extension para s.

if s 6∈ S then return;1

S ← S ∪ {s}; Cs(s)← ∅;2

forall (i, L) ∈ EC(s,D) do Buscar-Candidatos-EC (s, Gi, L, Cs(s));3

Eliminar de Cs(s) las extensiones infrecuentes segun δ;4

forall e ∈ Cs(s) do MoFa-Crecimiento(D, s � e, δ, S);5

Algoritmo 3.2: Primera version del algoritmo MoFa.

41

Page 55: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

3.2.3. FFSM

La codificacion CAM es un ejemplo de forma canonica que no cumple con la propiedad

del prefijo (ver seccion 2.3). Sin embargo, esta codificacion sı pudo ser usada para la

minerıa de SCF en el algoritmo FFSM definiendo un conjunto de operaciones basicas

sobre las matrices de adyacencias [Huan et al., 2003].

Se dice que una matriz de adyacencia X es una matriz interna (en ingles inner

matrix ) si tiene al menos dos celdas de aristas en su ultima fila. En otro caso, se dice que

X es una matriz externa (en ingles outer matrix ). Por ejemplo, las matrices mostradas

en las figuras 2.6(a) y 2.6(b) son externa e interna respectivamente.

La submatriz maximal propia (en ingles maximal proper submatrix ) de una matriz

interna X es definida como la matriz que se obtiene a partir deX mediante la eliminacion

de la ultima celda de arista poniendo 0 en la ultima celda de arista. Si X es una matriz

externa su submatriz maximal propia se construye a partir de X eliminando la ultima fila

y la ultima columna. La submatriz maximal propia de una matriz de 1 × 1 es la matriz

vacıa (la matriz degenerada de 0× 0).

De este modo, para cada matriz no-vacıa X existe una y solo una matrix Y tal que

Y es la submatriz maximal propia de X . Ademas, la submatriz maximal propia de una

CAM tambien es CAM de un grafo conexo [Huan et al., 2003]. Por tanto, es posible

construir un arbol enraizado cuyos nodos son las CAM de todos los subgrafos conexos de

los grafos de la coleccion D. Este arbol es llamado el arbol CAM de D. La raız del arbol

CAM es la matriz vacıa y la relacion padre-hijo esta dada por el concepto de submatriz

maximal propia. En efecto, Y es el padre de X si Y es la submatriz maximal propia de

X ; en este caso, X es un hijo de Y . Por ejemplo, el arbol de la figura 3.1 es el arbol CAM

de la coleccion de grafos mostrada en la figura 2.1; dicho arbol fue construido utilizando,

δ = 2, el 60% de la coleccion de grafos como umbral de frecuencia.

42

Page 56: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 3.1: Ejemplo de arbol CAM. Las lıneas solidas representan la relacion padre/hijoentre los nodos del arbol CAM y las lıneas punteadas muestran el segundo parametroen la operacion de fusion. Las marcas c.1, c.2, y e, significan que la matriz fue generadamediante la condicion 1 de la operacion fusion, mediante la condicion 2 de la operacionfusion, y mediante la operacion de extension, respectivamente.

Otro concepto importante es la definicion de CAM suboptimal. Una matriz X es una

CAM suboptimal si su submatriz maximal propia es una CAM. Segun esta definicion,

si X es una CAM entonces tambien es CAM suboptimal. Cuando una CAM suboptimal

X no es CAM, se dice que X es una CAM suboptimal propia. De este modo, las CAM

suboptimales de una coleccion de grafos D pudieran ser organizadas en un arbol de

manera similar a como se hizo con el arbol CAM. Este arbol es llamado arbol CAM

suboptimal.

El algoritmo FFSM [Huan et al., 2003] es el mas eficiente entre todos los algoritmos

43

Page 57: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

para la minerıa de SCF que usan CAM para representar los grafos [Nijssen & Kok, 2006].

FFSM encuentra todos los SCF de una coleccion D explorando el arbol CAM suboptimal

de D. Durante este recorrido, dicho arbol (espacio de busqueda) es construido usando

dos tipos de operaciones con matrices llamadas fusion y extension. Es por eso que se

suele decir que este algoritmo es un hıbrido que mezcla ideas de las dos variantes de

generacion de candidatos Apriori y crecimiento de patrones. Estas operaciones se definen

de la siguiente manera.

Las operacion de fusion produce uno o dos grafos partiendo de dos grafos cuyas

correspondientes matrices de adyacencias A = (ai,j)ni,j=1 y B = (bi,j)

mi,j=1 comparten la

misma submatriz maximal propia C. Esta operacion es denotada mediante join(A,B)

(utilizando el termino en ingles) y se define como sigue.

Sin perdida de generalidad, se supondra que m = n o que m = n + 1. Sean an,h y

bm,k las ultimas celdas de aristas en A y B, respectivamente. Las siguientes condicio-

nes plantean que join(A,B) es un conjunto de matrices tal que 0 ≤ |join(A,B)| ≤ 2

dependiendo de las caracterısticas de los grafos representados por A y B.

Condicion 1: Si n = m, an,h = bn,k y h 6= k, denotese D = (di,j)ni,j=1 como la

siguiente matriz

di,j =

bn,k i = n, j = k

ai,j en otro caso

.

En este caso, D ∈ join(A,B).

Condicion 2: Si B es una matriz externa, denotese E = (ei,j)n+1i,j=1 como la siguiente

44

Page 58: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

matriz

ei,j =

ai,j 1 ≤ i, j ≤ n

bm,k i = n + 1, j = k

bm,m i = j = n + 1

0 en otro caso

.

En este caso, E ∈ join(A,B).

Si las condiciones 1 y 2 son falsas join(A,B) = ∅. Si una sola de las condiciones

es verdadera join(A,B) tendra un solo elemento. Si las dos condiciones son verdaderas

entonces join(A,B) tendra dos elementos. En la figura 3.2 es posible apreciar ejemplos

de estos tres casos.

La operacion de extension obtiene candidatos a partir de un solo grafo introduciendo

una nueva arista. Las nuevas aristas seran introducidas conectadas al ultimo vertice

de una CAM y a un nuevo vertice anadiendo una nueva fila y columna a la CAM. El

conjunto extension(A) (utilizando el termino en ingles) de todas las extensiones de una

matriz A de n × n es un conjunto de matrices de (n + 1) × (n + 1) obtenidas desde A

adicionando una nueva arista.

Estas dos operaciones permiten enumerar todos los nodos del arbol CAM subopti-

mal [Huan et al., 2003].

Sea X una matriz CAM, C(X) denotara los hijos de X en el arbol CAM suboptimal

de una coleccion de grafos D, y sea Y ∈ C(X) una matriz de n× n. Si n = 1, entonces

C(Y ) = extension(Y ) ya que las matrices de 1 × 1 no se pueden fusionar segun la

definicion. Si n > 1, entonces:

C(Y ) =

B∈C(X)

join(Y,B)

∪ extension(Y ); (3.1)

los elementos de C(Y ) son obtenidos mediante las operaciones de fusion y extension. La

45

Page 59: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) La operacion de fusion no devuelveningun elemento.

(b) La operacion de fusion devuelve una matrizinterna.

(c) La operacion de fusion devuelve una matrizexterna.

(d) La operacion de fusion devuelve dos elementos.

Figura 3.2: Ejemplos de los resultados operacion de fusion en CAM suboptimales.

46

Page 60: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

descripcion general del algoritmo FFSM se basa en estas operaciones (ver algoritmo 3.3).

Procedimiento FFSM(D, δ, S)

Input: D - Coleccion de grafos, δ - Umbral de frecuencia mınima.Output: S - Resultado de la minerıa.Local vars: S2 - Conjunto de matrices de 2× 2.

S ← el conjunto de todas las CAM de los vertices frecuentes en D (matrices de1

1× 1);S2 ← el conjunto de todas las CAM de las aristas frecuentes en D (matrices de2

2× 2);FFSM-Crecimiento(D, δ, S2, S);3

Procedimiento FFSM-Crecimiento(D, δ, C, S)

Input: D - Coleccion de grafos, δ - Umbral de frecuencia mınima, C - Conjuntode CAM suboptimales.

Output: S - Resultado de la minerıa.Local vars: X - Una CAM suboptimal, C(X) - Conjunto de CAM suboptimales.

forall X ∈ C do1

if isCAMTest(X ) then2

S ← S ∪ {X};3

C(X)← el conjunto de hijos de X que son calculados mediante la4

ecuacion 3.1 usando C y D;Eliminar los candidatos no frecuentes de C(X);5

FFSM-Crecimiento(D, δ, C(X), S);6

end7

end8

Algoritmo 3.3: FFSM.

Primero, el procedimiento FFSM calcula los vertices y aristas frecuentes. Las aristas

frecuentes son tomadas como punto de partida para recorrer el arbol CAM suboptimal

de la coleccion D usando el procedimiento FFSM-Crecimiento.

El procedimiento FFSM-Crecimiento usa las operaciones de fusion y extension (ver

lınea 4) para enumerar los candidatos. Las CAM suboptimales propias son candidatos

duplicados pero ellos son requeridos por las operaciones de fusion para garantizar la

completitud de los resultados de la minerıa. Estos candidatos duplicados son ignorados

47

Page 61: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

luego de las correspondientes operaciones de fusion (ver lınea 2) mediante pruebas de

forma canonica (CF) (ver seccion 2.3).

Durante el recorrido del espacio de busqueda, FFSM mantiene estructuras de corres-

pondencias (ver seccion 2.4.2) para indizar la coleccion de grafos D. Tales estructuras

son usadas para optimizar las operaciones (extension y fusion) y ellas son usadas para

calcular el conjunto soporte y la frecuencia de los candidatos. Ası, los candidatos no

frecuentes son podados del arbol CAM suboptimal (ver lınea 5) ya que estos no podran

generar candidatos frecuentes.

3.2.4. Gaston

El algoritmo Gaston es considerado por muchos autores el mas eficiente entre los cua-

tro algoritmos de minerıa de SCF mas renombrados (gSpan, MoFa, FFSM y Gaston).

No obstante, estudios comparativos posteriores han mostrado que esta supremacıa no

es absoluta [Worlein et al., 2005; Nijssen & Kok, 2006]. En Gaston se utilizan ideas

anteriormente desarrolladas para la busqueda de subestructuras mas simples (caminos y

arboles) antes de buscar los subgrafos frecuentes con ciclos. Primero se detectan los sub-

caminos frecuentes, estos se usan para formar subarboles (grafos acıclicos) y finalmente

se generan los subgrafos cıclicos. Este algoritmo usa estructuras de correspondencia para

indizar la coleccion de grafos durante la minerıa. No obstante, existen versiones que eli-

minan tales estructuras y usan listas de identificadores para ahorrar recursos de memoria

[Nijssen & Kok, 2004c].

48

Page 62: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

3.3. Subconjuntos de los subgrafos conexos frecuen-

tes

En algunas aplicaciones, como las relacionadas con clasificacion basada en grafos

frecuentes, no es practico considerar todos los SCF debido a que pueden ser demasiados.

Existen soluciones para abordar este problema, estas permiten obtener directamente solo

una parte de los SCF. Una de ellas esta relacionada con los patrones frecuentes cerrados

[Zaky & Hsiao, 2002]. Se dice que un patron frecuente es cerrado si no existe un patron

que lo contiene con su misma frecuencia. En [Yan & Han, 2003; Borgelt et al., 2004] se

proponen algoritmos para la minerıa de SCF cerrados. Otro tipo de patrones frecuentes

son los patrones frecuentes maximales, los cuales no estan contenidos en ningun otro

patron frecuente. La minerıa de SCF maximales fue estudiada en [Huan et al., 2004b;

Thomas et al., 2006]. Por otra parte, los conceptos de minerıa de patrones frecuentes

con restricciones (en ingles Constraint-based frequent pattern mining) tambien han sido

adaptados a la minerıa de grafos [Zhu et al., 2007].

En esta seccion se ilustran diferentes variantes para reducir el volumen de patrones

encontrados. Los SCF cerrados son presentados con mayor detalle respecto al resto de

las variantes, ya que parte de los resultados de esta tesis se enfocan a la minerıa de los

SCF cerrados.

3.3.1. Subgrafos conexos frecuentes cerrados

De acuerdo con la propiedad de clausura descendente anteriormente mencionada y

con el hecho de que los patrones frecuentes basados en subgrafos cumplen con dicha

clausura, pueden definirse los SCF cerrados en una coleccion de grafos D de la siguiente

manera [Yan & Han, 2003].

49

Page 63: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Definicion 3.4 (SCF cerrado). Sea g un SCF en D. Se dice que g es SCF cerrado en D,

si no existe g′ tal que g ⊂s g′ y ∆(g,D) = ∆(g′, D) (la notacion ∆(g,D) fue previamente

definida en la seccion 2.1 para referirse al conjunto soporte de g en D).

Como puede verse no todos los SCF son cerrados. Por ejemplo, la coleccion PTE

[Srinivasan et al., 1997] posee 136981 SCF tomando como umbral de frecuencia δ = 2%,

y de estos solamente 3741 son cerrados (menos del 3%).

Si g es un SCF que no es cerrado, entonces existe al menos un g′ tal que g ⊂s g′

y ∆(g,D) = ∆(g′, D). Sea g′ el mayor de todos los que cumplen las condiciones antes

mencionadas. Se puede verificar facilmente que g′ sı es un SCF cerrado. De este modo,

las siguientes proposiciones 3.1 y 3.2 son validas.

Proposicion 3.1 (Completitud de los SCF cerrados). Sea g un SCF en D. Entonces, g

es cerrado o, de lo contrario, es un subgrafo de otro SCF que sı es cerrado.

Esta proposicion plantea que todos los SCF estan contenidos dentro de los SCF cerra-

dos. De este modo, los SCF cerrados constituyen una manera compacta de representar

a todos los SCF.

En las aplicaciones que ha tenido y tiene la minerıa de patrones frecuentes en general,

el conjunto soporte de los SCF juega un papel fundamental. No basta con conocer si un

patron es frecuente o no; en muchas ocasiones es necesario localizar los “lugares” dentro

de la coleccion de datos donde el patron ocurrio [de Graaf et al., 2007]. Relacionado con

el conjunto soporte y los SCF cerrados, es posible enunciar la siguiente proposicion.

Proposicion 3.2 (Completitud del conjunto soporte de los SCF cerrados). El conjunto

soporte de todo SCF se puede obtener a partir de los conjuntos soporte calculados para

los SCF cerrados.

50

Page 64: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Las proposiciones 3.1 y 3.2 son validas tambien para otros tipos de patrones frecuentes

cerrados como los conjuntos, las secuencias, y los subarboles.

El primer algoritmo para la minerıa de SCF cerrados fue CloseGraph [Yan & Han,

2003]; el cual esta basado en el ya mencionado gSpan [Yan & Han, 2002a]. En CloseGraph

se introdujo un tipo de poda llamada terminacion temprana (en ingles early termination)

que permite recorrer el espacio de busqueda descartando candidatos que, aunque son

frecuentes y validos (no duplicados), no tienen la posibilidad de ser cerrados ni de generar

patrones cerrados. Otro trabajo en donde se propusieron estrategias de podas similares

fue desarrollado por Borgelt et al. [2004] con la finalidad de adaptar el conocido algoritmo

MoFa para minar SCF cerrados. Esta version de MoFa es referida dentro del texto con el

nombre “MoFa(closed)”. A continuacion se explicara en que consisten estas estrategias

de poda.

Sean D = {G1, G2, . . . , Gm} la coleccion de grafos y g un grafo. Para cada grafo

Gi ∈ D, se denotara ϕ(g,Gi) al numero de subgrafos de Gi que son isomorfos a g. El

numero de correspondencias de g en D se define como I(g,D) =∑m

i=1 ϕ(g,Gi).

Sea g′ = g � e un hijo de g segun el crecimiento de patrones vistos en la seccion 2.2.2.

El numero de subgrafos de Gi que son isomorfos a g y que pueden ser extendidos usando

e al menos una vez sera denotado por ϕ(g, g′, Gi). Ası, el numero de correspondencias

extendidas de g′ en D con respecto a g se define como L(g, g′, D) =∑m

i=1 ϕ(g, g′, Gi).

Se dice que e es una extension equivalente de g en D si I(g,D) = L(g, g′, D).

Sea e una extension equivalente por vertice (que anade un nuevo vertice) de g que

da lugar al grafo g′ = g � e. Se dice que el grafo h tiene una situacion de cruce (en

ingles crossing situation) para e si g ⊆ h, g′ 6⊂ h, y e no es una extension equivalente

para h. En este caso se cumplen las siguientes dos condiciones: I(h,D) > L(h, h �c e,D)

(como extension cerrada para h no sera extension equivalente) y I(h,D) > L(h, h�ve,D)

51

Page 65: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) Ejemplo de una coleccionde solo dos grafos.

(b) El grafo g es un SCFde esta coleccion, la arista e

es una extension equivalentepara g, y g′ = g � e.

(c) El grafo h tiene una si-tuacion de cruce para e yaque e no es una extensionequivalente para h.

Figura 3.3: Ejemplo de una situacion de cruce.

(como extension por vertice tampoco sera extension equivalente). La figura 3.3 muestra

un ejemplo de situacion de cruce en una coleccion de solamente dos grafos.

Las extensiones equivalentes e, para las cuales no es posible encontrar situaciones

de cruce se conocen como extensiones libres de cruces. Estas extensiones son muy utiles

en la minerıa de SCF cerrados [Yan & Han, 2003]. Notese que, si e es una extension

equivalente y libre de cruce entonces g no sera un SCF cerrado y cualquier SCF cerrado

que contenga a g tambien va a contener a g′ = g � e. Por tanto, los restantes hijos de g

seran podados del espacio de busqueda y a esta poda se le nombra terminacion temprana

[Yan & Han, 2003].

Las situaciones de cruce pueden provocar incompletitud en los resultados de la mi-

nerıa. Por ejemplo, el grafo h de la figura 3.3(c) es un SCF cerrado de la coleccion de la

figura 3.3(a); este subgrafo no hubiera sido detectado si se realiza la poda de terminacion

temprana a partir de g.

Para detectar que una extension e es libre de cruce, segun la definicion, se requiere

enumerar todos los grafos h tales que g ⊆ h. Pero esta verificacion puede ser muy costosa

si se hace de manera independiente para cada extension equivalente. La mejor opcion

para hacer esta verificacion es enumerar todos los grafos h � e a partir de g′ verificando

52

Page 66: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

las situaciones de cruce. En caso de detectar una situacion de cruce, cuando se retorne

a g, durante el recorrido del espacio de busqueda, se procedera a extender cada uno de

sus hijos por separado y no tendra lugar la poda temprana.

En el algoritmo 3.4 se muestra la descripcion general de la minerıa de SCF cerrados

usando la poda de terminacion temprana. Esta idea es muy parecida al mecanismo de

crecimiento de patrones discutido en la seccion 2.2.2. En la lıneas 3 y 7 se incorporan los

aspectos relacionados con la poda de terminacion temprana.

Procedimiento SCFC-Crecimiento-TT(g, D, δ, S)

Input: g - Un grafo frecuente, D - Coleccion de grafos, δ - Umbral de frecuenciamınima.

Output: S - Conjunto de todos los subgrafos conexos frecuentes.Local vars: Eg - Conjunto de aristas, e - Una arista.

if g ∈ S then return;1

Eg ← Conjunto de aristas e tales que exista en D la extension g � e;2

Verificar las situaciones de cruce en g;3

if g es cerrado then S ← S ∪ {g};4

foreach e ∈ Eg do5

if σ(g � e,D) ≥ δ then SCFC-Crecimiento-TT(g � e, D, δ, S);6

if e es equivalente y libre de cruce then return;7

end8

Algoritmo 3.4: Algoritmo para la minerıa de SCF cerrados usando la poda de terminaciontemprana.

Para verificar que una extension es equivalente se recomienda mantener contadores

para las magnitudes I(g,D) y L(g, g � e,D) mientras se ejecuta el paso de la lınea 2.

Las situaciones de cruce son detectadas en la lınea 4, para eso se analiza cada una

de las extensiones de g; si se encuentra una situacion de cruce, se reporta la arista e que

la provoco hasta que por el retroceso de la recursividad se pueda llegar a g. En caso que

no exista ninguna situacion de cruce en e se realizara la poda de terminacion temprana

(ver lınea 7).

53

Page 67: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

El algoritmo CloseGraph es una adaptacion de la idea mostrada en el algoritmo 3.4

al mecanismo del algoritmo gSpan (ver algoritmo 3.1).

3.3.2. Subgrafos conexos frecuentes maximales

Otro tipo de patron frecuente comunmente usado son los patrones frecuentes maxi-

males [Paik et al., 2008]. Al igual que los patrones frecuentes cerrados, los maximales se

justifican por el cumplimiento de la clausura descendente. Los SCF maximales tambien

han sido estudiados como una importante variante que permite reducir el volumen de

patrones que surgen luego de la minerıa de SCF y son definidos de la siguiente manera

[Huan et al., 2004b; Thomas et al., 2006]. Se dice que un SCF g es maximal en D si no

existe otro SCF g′ tal que g ⊂ g′.

Los SCF maximales no cumplen la propiedad de completitud para el conjunto so-

porte. Este es un aspecto negativo que tiene este tipo de patron ya que no siempre

sera posible localizarlos dentro de la coleccion de datos (una accion que como se ha di-

cho anteriormente resulta de gran utilidad en las aplicaciones practicas [de Graaf et al.,

2007]).

El primer algoritmo para la minerıa de SCF maximales fue SPIN [Huan et al., 2004b];

en el cual se propuso, mas que un algoritmo, una metodologıa para realizar podas en el

espacio de busqueda para cualquier esquema de minerıa de SCF.

Otro trabajo, que no esta basado en crecimiento de patrones, es el algoritmo MARGIN

[Thomas et al., 2006]. Para este algoritmo se propone una estrategia que parte de los

grafos de la coleccion; luego, MARGIN calcula la frontera entre los grafos frecuentes

realizando “cortes” (eliminacion de aristas) en el espacio de busqueda y los grafos no-

frecuentes, y ası logra obtener todos los SCF maximales.

54

Page 68: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

3.3.3. Otros enfoques

Existen otras alternativas que permiten reducir el numero de patrones que surgen

luego de la minerıa de SCF. Hasta lo que se conoce, no se han utilizado otras variantes,

aparte de los cerrados y los maximales, en la cual se puedan enunciar propiedades de

completitud respecto a todos los SCF. Los tipos de patrones mencionados en esta seccion

no seran objeto de estudio de esta tesis.

Los patrones contrastantes entre dos colecciones de datos permiten predecir cambios

de tendencias en la evolucion de los datos [Borgelt & Berthold, 2002]. Dadas dos coleccio-

nes de grafos, se dice que un grafo g es contrastante en dichas colecciones si g es frecuente

en una de las colecciones (coleccion positiva de g) y no es frecuente en la otra (coleccion

negativa de g). Independiente de que los patrones contrastantes fueron estudiados por

primera vez utilizando el algoritmo MoFa [Borgelt & Berthold, 2002], estos pudieran ser

encontrados utilizando cualquiera de los algoritmos de minerıa de SCF mencionados en

esta tesis.

Los SCF coherentes constituyen una pequena parte dentro de todos los SCF [Huan

et al., 2004a]. Estos patrones se definen a partir del concepto de informacion mutua

entre dos SCF mediante un enfoque probabilıstico. Se dice que g es un SCF coherente

si la informacion mutua entre g y sus subgrafos supera un umbral predefinido. Estos

patrones fueron encontrados en una etapa de post-procesamiento aplicada a los SCF en-

contrados con el algoritmo FFSM; no obstante, cualquier otro algoritmo para la minerıa

de SCF pudo haber sido utilizado. Ademas, la aplicabilidad de los SCF coherentes fue

comprobada en tareas de clasificacion [Huan et al., 2004a].

En tareas de indizacion de colecciones de datos, los patrones discriminantes han per-

mitido hacer mas rapida la busqueda en determinadas consultas [Yan et al., 2004]. Un

SCF g es discriminante si su frecuencia difiere, de acuerdo a un umbral, de las frecuen-

55

Page 69: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

cias de sus subgrafos. Utilizando estos patrones, fue disenado un metodo de indizacion

llamado gIndex [Yan et al., 2004].

Los subgrafos densos frecuentes han sido utilizados con exito en el estudio de co-

lecciones de grafos que representan relaciones entre individuos o entidades [Zeng et al.,

2007]. En redes sociales, estos patrones identifican grupos personas que estan fuertemen-

te asociados entre sı. Yan et al. [2005] disenaron dos algoritmos, CloseCut y Splat, para

la minerıa de los subgrafos densos frecuentes segun ciertas restricciones de conectividad.

Otro algoritmo llamado CoDense fue disenado para encontrar los subgrafos densos fre-

cuentes coherentes en redes biologicas [Hu et al., 2005]. El algoritmo Cocain tambien

permite encontrar este tipo de subgrafos mostrando buenos resultados en colecciones

que contienen grafos densos [Zeng et al., 2007].

3.4. Sıntesis y conclusiones

En este capıtulo se ha presentado el trabajo relacionado con esta investigacion. En

modo de resumen, la tabla 3.1 muestra las caracterısticas fundamentales de los algoritmos

mas importantes del estado del arte.

Se ha hecho enfasis en los algoritmos basados en crecimiento de patrones ya que estos

algoritmos han demostrado ser los mas exitosos dentro de la minerıa de SCF. Ademas,

los algoritmos propuestos como parte de esta investigacion se basan en este paradigma.

Por otro lado, se presentaron los diferentes tipos de subconjuntos de SCF que se

han utilizado para reducir el numero de patrones encontrados por la minerıa. Dentro de

todas las variantes mencionadas, los SCF cerrados aparecen como el unico subconjunto

de SCF que permite describir completamente el conjunto de todos los SCF. De este modo

se logra el cumplimiento del objetivo particular 3 de esta investigacion.

56

Page 70: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 3.1: Resumen de las caracterısticas de los algoritmos de minerıa de SCF.

Algoritmo Estrategia de generacion

de candidatos

Forma de re-

presentacion

de los candida-

tos

Estructura de da-

tos para indizar la

coleccion de gra-

fos

Resultado de la

minerıa

AGM Apriori Matrices de Ad-yacencia

Listas de identifica-dores

Todos los subgrafosfrecuentes

AcGM Apriori Matrices de Ad-yacencia

Estructuras de co-rrespondencias

Todos los SCF

Topology Apriori Matrices de Ad-yacencia

Listas de identifica-dores

Todos los SCF

G-AcGM Apriori Matrices de Ad-yacencia

Estructuras de co-rrespondencias

Todos los SCF

FSG Apriori Matrices de Ad-yacencia

Listas de identifica-dores

Todos los SCF

gSpan Crecimiento de patrones Codigos DFS Listas de identifica-dores

Todos los SCF

CloseGraph Crecimiento de patrones Codigos DFS Listas de identifica-dores

Los SCF cerrados

ADI-Mine Crecimiento de patrones Codigos DFS ADI Todos los SCFEdgar Crecimiento de patrones Codigos DFS Estructuras de co-

rrespondenciasTodos los SCF

FSP Crecimiento de patrones (va-riacion leve al estilo Apriori)

Codigos DFS Listas de identifica-dores

Todos los SCF

MoFa Crecimiento de patrones Codigos BFS Listas de correspon-dencias

Todos los SCF

MoFa(hybrid) Crecimiento de patrones Codigos BFS Estructuras hıbridas Todos los SCFMoFa(closed) Crecimiento de patrones Codigos BFS Listas de correspon-

denciasLos SCF cerrados

FFSM Crecimiento de patrones (in-cluye aspectos de Apriori)

Matrices de Ad-yacencia

Listas de correspon-dencias

Todos los SCF

FSMA Crecimiento de patrones Matrices de Inci-dencia

Listas de correspon-dencias

Todos los SCF

Gaston Crecimiento de patrones Caminos / Arbo-les / Grafos

Listas de correspon-dencias

Todos los SCF

SPIN Crecimiento de patrones Matrices de Ad-yacencia

Listas de correspon-dencias

Los SCF maximales

MARGIN Cortes a la coleccion Listas de Adya-cencia

No usa Los SCF maximales

57

Page 71: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 4

Resultados teoricos y estructura de

datos propuesta

En este capıtulo se introducen y demuestran nuevas propiedades que cumplen las

formas canonicas para representar un grafo. Con el uso de estas propiedades es posi-

ble reducir el costo de la deteccion de grafos duplicados con respecto a los algoritmos

reportados en la literatura. Ademas se introduce una nueva estructura de corresponden-

cias para indizar la coleccion de grafos durante la minerıa, en algoritmos que usan la

codificacion DFS.

4.1. Nuevas propiedades de las formas canonicas

En esta seccion se introducen y demuestran nuevas propiedades que cumplen la co-

dificacion DFS y la codificacion CAM.

58

Page 72: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) El arbol DFS decierto codigo s.

(b) Particiones del conjunto de ex-tensiones hacia adelante.

(c) Particiones del conjuntode extensiones hacia atras.

Figura 4.1: Ejemplo de las particiones de un conjunto de extensiones. En este caso, setiene que RE(s) = B0(s) ∪B4(s) ∪ F0(s) ∪ F4(s) ∪ F6(s).

4.1.1. Propiedades para la codificacion DFS

Sea s = e0, e1, . . . , em−1 un codigo DFS mınimo que representa un grafo etiquetado

G = 〈V,E, L, l〉 donde |V | = n, y |E| = m. Se denotara mediante RE(s) el conjunto de

todas las extensiones mas a la derecha desde s. Este conjunto puede ser particionado en

varios subconjuntos:

RE(s) = B0(s) ∪ . . . ∪Bn−1(s) ∪ F0(s) ∪ . . . ∪ Fn−1(s),

donde Bi(s) contiene las extensiones hacia atras que tienen vertice destino con ındice i,

y Fi(s) es el conjunto de las extensiones hacia adelante desde el vertice con ındice i (ver

ejemplo en figura 4.1). Para cada vertice vi en la rama mas a la derecha (i, i 6= n−1, es el

ındice de vi en el recorrido DFS) la arista fi representa la arista hacia adelante que nace

en vi y que forma parte de la rama mas a la derecha. La notacion e−1 sera utilizada para

referirse a la arista e pero en el sentido inverso al que se le impuso en el codigo s. En la

figura 4.1 se muestra un ejemplo de subconjuntos que conforman dichas particiones; por

ejemplo, el conjunto F4(s) tiene dos extensiones hacia adelante (4,7,B,-,C) y (4,7,B,-,D),

que parten del vertice v4, y el conjunto B4(s) tiene una sola extension (6,4,C,-,B).

Los dos teoremas que se enuncian a continuacion constituyen condiciones suficien-

59

Page 73: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

s =(0,1,A,-,B)(1,2,A,-,C)(0,3,A,-,D)(3,4,D,-,C)(3,5,D,-,B)

(a) Ejemplo de un codigo DFS mınimo s.

(b) El arbol DFS de s. (c) El codigo s′ = s � e siendoe =(0,6,A,-,A).

(d) Otro arbol DFS T ′ del graforepresentado por s′.

s′1 =(0,1,A,-,B)(1,2,A,-,C)(0,3,A,-,A)(0,4,A,-,D)(4,5,D,-,C)(4,6,D,-,B)

(e) El codigo DFS s′1del arbol T ′ que cumple s′

1≺s s

Figura 4.2: Ejemplo que ilustra el cumplimiento del teorema 4.1.

tes de no-minimalidad para las extensiones de un codigo DFS mınimo.

Teorema 4.1. Sea s un codigo DFS mınimo y sea vi un vertice en la rama mas a la

derecha de s con ındice i y distinto del vertice mas a la derecha. Si e ∈ Fi(s) y e ≺l fi,

entonces s′ = s � e es un codigo DFS no-mınimo.

Demostracion. Sea h el numero entero tal que eh = fi. Las aristas eh y e parten del vertice

vi y ambas son aristas hacia adelante en s′. Por tanto, es posible alterar el recorrido DFS

que da origen a s visitando e antes que eh. Si e es visitada inmediatamente antes que eh,

el codigo DFS resultante tiene el siguiente formato s′1 = e0, . . . , eh−1, e, e′h, . . . , e

′m, donde

e′j es la misma arista ej pero con los nuevos ındices para cada j ≥ h. En la figura 4.2 se

muestra un ejemplo que ilustra los planteamientos anteriores.

Los codigos s′ y s′1 tienen el mismo prefijo e0, . . . , eh−1 y e ≺l eh; entonces, la condi-

cion 2.6 del orden lexicografico (ver seccion 2.3) asegura que s′1 ≺s s′. Ası, se concluye

que s′ es un codigo no-mınimo.

El teorema 4.1 permite asegurar la no-minimalidad de algunas de las extensiones hacia

adelante de un codigo DFS mınimo. Esta no-minimalidad es garantizada sin necesidad de

60

Page 74: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

s =(0,1,A,-,B)(1,2,B,-,C)(2,3,C,-,A)

(a) Ejemplo de un codigo DFS mınimo s.

(b) El arbol DFS de s. (c) El codigo s′ = s � esiendo e =(3,1,A,-,B).

(d) Otro arbol DFS T ′

del grafo representadopor s′.

s′1 =(0,1,A,-,B)(1,2,B,-,A)(2,3,A,-,C)(3,1,C,-,B)

(e) El codigo DFS s′1del arbol T ′ que cumple s′

1≺s s

Figura 4.3: Ejemplo que ilustra el cumplimiento del teorema 4.2.

realizar una prueba exhaustiva de minimalidad. Resultados similares para las extensiones

hacia atras son mostrados en el teorema 4.2.

Teorema 4.2. Sea s un codigo DFS mınimo y sea vi un vertice en la rama mas a la

derecha de s con ındice i. Si e ∈ Bi(s) y e−1 ≺l fi, entonces s′ = s � e es un codigo DFS

no-mınimo.

Demostracion. De manera similar a como se hizo en la demostracion del teorema 4.1, sea

h el numero entero tal que eh = fi. Es posible alterar el recorrido DFS que da origen a s

visitando e antes que eh. Si e−1 es visitada inmediatamente antes que eh, el codigo DFS

resultante tiene el siguiente formato s′1 = e0, . . . , eh−1, e−1, e′h, . . . , e

′m. En la figura 4.3 se

muestra un ejemplo que ilustra los planteamientos anteriores.

Los codigos s′ y s′1 tienen el mismo prefijo e0, . . . , eh−1 y e−1 ≺l eh; entonces, s′1 ≺s s

′.

Ası, se concluye que s′ es un codigo no-mınimo.

Con las condiciones mostradas en los teoremas 4.1 y 4.2 no es posible caracterizar a

todas las extensiones de s. Solamente la no-minimalidad de algunas de ellas podra ser

61

Page 75: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

detectada. Si se desea determinar la minimalidad de todas las extensiones de s se reque-

riran algunas pruebas exhaustivas. A continuacion se presenta un resultado que permite

reutilizar pruebas exhaustivas ya realizadas para predecir la minimalidad de otros hijos

de s a los cuales no se les ha realizado la prueba.

Teorema 4.3 (Propiedad de reutilizacion). Sean s un codigo DFS mınimo, vi un vertice

en la rama mas a la derecha de s con ındice i, y H uno de los conjuntos Fi(s) o Bi(s).

Si e ∈ H , y e′ ∈ H ; entonces, se cumple que:

1. si s � e es un codigo DFS no-mınimo y e′ �l e, entonces s � e′ tambien es un codigo

DFS no-mınimo.

2. si s � e es un codigo DFS mınimo y e �l e′, entonces s � e′ tambien es codigo DFS

mınimo;

Demostracion. Se demostrara cada caso por separado.

En el primer caso, se tiene que s�e es un codigo DFS no-mınimo y e′ �s e. Entonces,

existe al menos un codigo s1 = a0, a1, . . . , am tal que s1 ≺s s � e y s1 y s � e representan

el mismo grafo. La figura 4.4 contiene un ejemplo de un codigo s1 con las condiciones

antes mencionadas.

Sea t el entero tal que 0 ≤ t < m, ak = ek para todo k < t, y at ≺e et. Luego,

de la condicion 2.6 se obtiene que s1 ≺s s. Como e y e′ parten del mismo vertice, se

puede reemplazar la arista que representa a e en s1 por e′. El codigo DFS resultante,

que sera denotado por s′1, es valido para el grafo codificado por s � e′ y se tiene que

s′1 ≺s s1 ≺s s ≺s s � e′. Por tanto, s � e′ es un codigo no-mınimo lo que demuestra el

primer caso.

En el segundo caso, se tiene que s � e es un codigo DFS mınimo y e �s e′. Este caso

se puede demostrar facilmente por reduccion al absurdo a partir del primer caso. Supon-

62

Page 76: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

s =(0,1,A,-,B)(1,2,B,-,D)(1,3,B,-,D)(0,4,A,-,B)

(a) Ejemplo de un codigo DFS mınimo s.

(b) El arbol DFS de s. (c) El codigo s � e siendoe =(4,5,B,-,C).

(d) Otro arbol DFS T1 del graforepresentado por s � e.

s1 =(0,1,A,-,B)(1,2,B,-,C)(0,3,A,-,B)(3,4,B,-,D)(3,5,B,-,D)

(e) El codigo DFS s1 del arbol T1 que cumple s1 ≺s s � e

Figura 4.4: Ejemplo de un codigo DFS mınimo y un hijo que es un codigo DFS no-mınimo.

gamos que s � e′ es un codigo DFS no-mınimo. Luego, del cumplimiento del primer caso

se deduce que s� e tiene que ser un codigo DFS no-mınimo, lo cual es una contradiccion.

Por tanto, se concluye la demostracion de este teorema.

Los elementos de RE(s) (las extensiones mas a la derecha desde s) pueden ser or-

denados utilizando ≺e (ver seccion 2.3.1), de este modo los subconjuntos que definen la

particion antes descrita quedarıan dispuestos en el siguiente orden:

B0(s), . . . , Bn(s), F0(s), . . . , Fn(s),

y dentro de cada conjunto Bi(s) (o Fi(s)) los elementos quedaran ordenados segun el

orden de las etiquetas ≺l ya que todos comparten el mismo origen y el mismo destino.

En adelante se supondra que RE(s) y los conjuntos Bi(s) y Fi(s) estan ordenados.

Varios corolarios puede ser enunciados a partir del teorema 4.3 como se muestra a

continuacion. El siguiente corolario se llamara propiedad de corte ya que este establece

la manera en que los codigos DFS mınimos y no-mınimos estan distribuidos dentro de

cada Bi(s) (o Fi(s)).

63

Page 77: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Corolario 4.1 (Propiedad de corte). Sean s un codigo DFS mınimo, vi un vertice en

la rama mas a la derecha de s con ındice i, y H uno de los conjuntos Fi(s) o Bi(s). Se

supone que H esta ordenado segun ≺l. Si existen extensiones en H que producen codigos

DFS no-mınimos entonces tales extensiones se encuentran al principio de H . Ademas,

si existen extensiones que producen codigos DFS mınimos entonces tales extensiones se

encuentran al final de H .

Demostracion. Si todas las extensiones en H producen codigos DFS no-mınimos o todas

producen codigos DFS mınimos entonces esta clara la veracidad del corolario. Solo queda

el caso en que existan ambos tipos de extensiones en H . Sean e, e ∈ H dos extensiones

tales que e produce un codigo DFS no-mınimo y e produce un codigo DFS mınimo. Del

teorema 4.3 se deduce directamente que e ≺e e, porque en caso contrario s � e deberıa

ser no-mınimo, y esto contradice las hipotesis. Por tanto, las extensiones que producen

codigos DFS no-mınimos van primero, segun el orden ≺l, que aquellas que producen

codigos DFS mınimos.

De este corolario se deduce que cada conjunto H (Bi(s) o Fi(s)), puede ser parti-

cionado en dos subconjuntos H = H ∪ H tal que todas las extensiones en H producen

codigos DFS no-mınimos (particion duplicada), todas las extensiones en H producen

codigos DFS mınimos (particion util) y las extensiones de H son anteriores a las de H

segun la relacion de orden ≺l.

El mayor elemento, segun ≺l, del conjunto H es llamado corte no-canonico de H y

el menor elemento de H es llamado corte canonico de H . Notese que alguno de estos

cortes pudiera no existir ya que los conjuntos H o H pudieran ser vacıos.

Ası el subconjunto ME(s) ⊆ RE(s) que contiene solo aquellas extensiones que pro-

ducen codigos DFS mınimos esta dado por la ecuacion 4.1.

64

Page 78: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

ME(s) = B0(s) ∪ . . . ∪ Bn(s) ∪ F0(s) ∪ . . . ∪ Fn(s). (4.1)

Utilizando la propiedad de corte es posible ofrecer una cota inferior para el numero

de pruebas CF (pruebas de minimalidad en el caso de los codigos DFS) que se requieren

para separar cada conjunto H (Bi(s) o Fi(s)) en H y H .

Corolario 4.2 (Propiedad de localizacion del corte). Sean s un codigo DFS mınimo, vi

un vertice en la rama mas a la derecha de s con ındice i, y H uno de los conjuntos Fi(s)

o Bi(s). El numero de pruebas exhaustivas de minimalidad que se requiere para separar

H en H ∪ H es a lo sumo log2(|H|) + 1.

Demostracion. Si |H| = 1 se requiere una sola prueba exhaustiva de minimalidad, lo que

demuestra que el teorema es valido para este caso.

Denotese mediante N(f) el numero de pruebas exhaustivas de minimalidad que se

requiere para procesar un conjunto H con f elementos (f = |H|).

Sea e la mediana del conjunto H segun el orden ≺l y denotemos H< = {e′ ∈ H|e′ ≺l

e} y H> = {e′ ∈ H|e′ �l e}. Del teorema 4.3 se puede predecir la minimalidad o no-

-minimalidad de los codigos DFS que se obtienen a partir de las extensiones de uno

de los conjuntos H< o H> respectivamente. En efecto, si se comprueba que s � e es

mınimo, entonces las extensiones de H> generan codigos mınimos. En el otro caso, las

extensiones de H< generan codigos no-mınimos. En cualquiera de los dos casos, de uno

de los dos conjuntos H< o H> no se puede decir nada y por tanto se requeriran mas

pruebas exhaustivas de minimalidad. El tamano de dichos conjuntos no supera bf/2c.

Como se puede apreciar, se ha reducido el problema de tamano f a un sub-problema

de tamano a lo sumo bf/2c y solo se ha realizado una prueba exhaustiva de minimalidad

para la mediana del conjunto F . Por tanto, se puede plantear la siguiente desigualdad

65

Page 79: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

N(f) ≤ N(bf/2c) + 1 con N(1) = 1. Esta desigualdad puede ser facilmente resuelta

utilizando herramientas de analisis de algoritmos [Cormen et al., 2001]. Ası se concluye

la demostracion.

Supongase que |B0(s)| = b0, . . . , |Bn(s)| = bn, |F0(s)| = f0, . . . , |Fn(s)| = fn, enton-

ces:∑

i

bi +∑

i

fi = |RE(s)|, (4.2)

donde las sumatorias∑

i se realizan sobre los vertices de la rama mas a la derecha del

arbol DFS que origino a s.

Se denotara β(s) como el maximo numero de pruebas CF que se requiere para obtener

el conjunto ME(s) a partir de RE(s). Usando el corolario 4.2 se deduce la siguiente

desigualdad:

β(s) ≤∑

i

(log2(fi) + 1) +∑

i

(log2(bi) + 1), (4.3)

donde las sumatorias∑

i se realizan sobre los vertices de la rama mas a la derecha.

Denotese r(s) como el numero de vertices en la rama mas a la derecha de s. Por otra parte,

como la funcion log2(x) : [1,+∞)→ [0,+∞) es convexa [Rudin, 1976], la desigualdad 4.3

se transforma en:

β(s) ≤ 2r(s)log2

(

i fi +∑

i bi2r(s)

)

+ 2r(s).

El argumento del log2(·) puede ser simplificado mediante la ecuacion 4.2 y quedarıa

demostrado el siguiente corolario.

Corolario 4.3 (Propiedad de acotacion al numero de pruebas CF). Sea s un codigo

DFS mınimo. El numero maximo de pruebas CF que se requiere para obtener el conjunto

66

Page 80: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

ME(s) a partir de RE(s) es

β(s) ≤ 2r(s) log2

(

|RE(s)|

2r(s)

)

+ 2r(s). (4.4)

En la minerıa de SCF las extensiones que producen codigos DFS no-mınimos no

son de interes; por ello, en todos los casos son podadas del espacio de busqueda. Con

los resultado expuestos en esta seccion es posible localizar las extensiones que producen

codigos DFS no-mınimos de manera eficiente. En proximas secciones se ilustrara el modo

en que pueden ser utilizados dichos resultados en la minerıa de SCF.

4.1.2. Propiedades para la codificacion CAM

Los conceptos basicos de las matrices de adyacencia y CAM de las secciones 2.3.3

y 3.2.3 son requeridos para un mejor entendimiento de esta seccion. Sea X una CAM de

n × n. Los elementos de C(X) obtenidos por la condicion de fusion 1 son matrices de

n× n y los restantes elementos, obtenidos mediante la condicion 2 de fusion o mediante

la operacion de extension, son matrices de (n + 1)× (n + 1).

La primera propiedad interesante de las matrices de adyacencia, llamada propiedad

de no-utilidad, es mostrada en el teorema 4.4. Esta es un ejemplo de una condicion

suficiente para garantizar que una CAM suboptimal es una CAM suboptimal propia.

Teorema 4.4. Sean X = (xi,j)ni,j=1 una CAM (n > 1) y Y = (yi,j)

n+1i,j=1 una matriz de

adyacencia donde:

yi,j =

xi,j 1 ≤ i, j ≤ n

e i = n + 1, j = a

v i = j = n+ 1

0 en otro caso

67

Page 81: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

donde e > 0 y v > 0 son etiquetas. Si x1,1x2,1 ≺ ve entonces Y no es una CAM y

cualquier operacion de fusion o extension que involucre a Y no producira como resultado

matrices CAM.

Demostracion. Partiendo de una permutacion de los vertices de Y que comience con los

actuales vertices n+1 y a en ese orden, se obtendra una matriz de adyacencia Y ′ tal que

code(Y ′) > code(Y ). Es decir, Y no es una CAM. Finalmente, los mismos argumentos

aseguran que cualquier matriz obtenida a partir de Y no sera una CAM.

La propiedad de no-utilidad permite reducir el tamano del arbol CAM suboptimal

durante la minerıa de SCF.

Por otro lado, el conjunto C(X) puede ser particionado en dos conjuntos C(n)(X) y

C(n+1)(X) que contienen las matrices de n × n y (n + 1) × (n + 1) respectivamente; es

decir, C(X) = C(n)(X) ∪ C(n+1)(X).

El primero de estos conjuntos C(n)(X) puede ser particionado en varios subconjuntos:

C(n)(X) =n−1⋃

j=1

C(n)j (X), (4.5)

donde C(n)j (X) contiene los hijos de X cuya la ultima celda de arista esta en la j-esima

columna.

Por otro lado, C(n+1)(X) tambien puede ser particionado de la siguiente manera:

C(n+1)(X) =⋃

v∈L

n⋃

j=1

C(n+1)v,j (X), (4.6)

donde L es el conjunto de etiquetas de los ultimos vertices de las matrices de C(n+1)(X),

y C(n+1)v,j (X) contiene los hijos de X cuya etiqueta del ultimo vertice es igual a v y la

ultima celda de arista esta en la j-esima columna.

68

Page 82: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Por ejemplo, la figura 4.5 muestra elementos de C(n+1)a,1 (X), la figura 4.6 muestra

elementos de C(n+1)b,2 (X), y la figura 4.7 muestra algunos elementos en los conjuntos

C(n+1)a,2 (X), C

(n+1)b,2 (X), C

(n+1)c,2 (X), y C

(n+1)d,2 (X).

Las restantes propiedades presentadas en esta seccion son llamadas propiedades

de reutilizacion ya que estas permiten reutilizar resultados de pruebas anteriores para

predecir nuevos resultados sin realizar las pruebas exhaustivas. Los teoremas 4.5 y 4.6

son llamados propiedades de reutilizacion para la ultima celda de arista.

El teorema 4.5 se aplica cuando el resultado de la prueba CF para la matriz Y es

verdadero. Dicho teorema permite reutilizar este hecho para predecir el resultado de

pruebas CF en otras matrices que solo se diferencian de Y en una sola celda de arista.

Teorema 4.5. Sea Y = (yi,j)ni,j=1 una CAM cuya ultima celda de arista es yn,b (yn,b > 0).

Supongase que Z = (zi,j)ni,j=1 es una matriz de adyacencia donde zi,j = yi,j para todo

i 6= n y j 6= b. Si 0 < zn,b < yn,b entonces Z tambien es una CAM.

Demostracion. Supongase que Z no es CAM; entonces, existe una permutacion P entre

los vertices de Z tal que se logra una nueva matriz 1 P (Z) donde code(Z) ≺ code(P (Z)).

Se supondra que

code(P (Z)) = z′1z′2 . . . z

′t

code(Z) = z1z2 . . . zt

,

donde t = n(n + 1)/2. Sea h el menor entero 1 ≤ h ≤ t tal que z′h > zh, Sean k

y k′ las posiciones de la celda original zn,b en dichos codigos code(Z) y code(P (Z))

respectivamente. Ası, se tienen tres casos:

Si h < k′ entonces la celda zn,b de Z no determina que code(P (Z)) � code(Z). Por

tanto, code(P (Y )) � code(Y ) ya que Y y Z son practicamente la misma matriz

1En general, se utilizara la notacion P (A) para referirse a la matriz obtenida a partir de A realizandola permutacion P .

69

Page 83: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

salvo en la posicion de celda (n, b). Esto es una contradiccion con el hecho de que

Y es una CAM.

Si h > k′ entonces zk′ = z′k′ = zn,b < yn,b. En este caso, si se aplica P a Y

se obtendra que code(P (Y )) � code(Y ) ya que yk′ = zk′ < yn,b = y′k′ (donde

y1y2 . . . yt y y′1y′2 . . . y

′t son los codigos de Y y P (Y ) respectivamente). Esto es una

contradiccion con el hecho de que Y es una CAM.

Si h = k′ entonces zh < zn,b < yn,b. En este caso, si se aplica P a Y se obtendra que

code(P (Y )) � code(Y ) ya que yh = zh < yn,b = y′h. Esto es una contradiccion con

el hecho de que Y es una CAM.

Ası, queda demostrado por contradiccion que Z es una CAM.

Un resultado similar puede enunciarse en el teorema 4.6 el cual trabaja cuando el

resultado de una prueba CF en una matriz Y es falso.

Teorema 4.6. Sea Y = (yi,j)ni,j=1 una CAM suboptimal propia cuya ultima celda de

arista es yn,b (yn,b > 0). Supongase que Z = (zi,j)ni,j=1 es una matriz de adyacencia donde

zi,j = yi,j para todo i 6= n y j 6= b. Si zn,b > yn,b entonces Z no es una CAM.

Demostracion. Supongase que Z es una CAM; entonces, por el teorema 4.5 la matriz Y

es una CAM lo cual es una contradiccion. Por tanto, queda demostrado por contradiccion

que Z no es CAM.

Los teoremas 4.5 y 4.6 son aplicables a matrices Y y Z que pertenecen al mismo

conjunto de la particion C(n)j (X) o C

(n+1)v,j (X) donde X es la submatriz maximal propia

de Y y Z (ver figuras 4.5 y 4.6). En la figura 4.5, las lıneas solidas representan la relacion

padre/hijo entre los nodos de este arbol CAM suboptimal. Las lıneas punteadas entre

dos matrices son usadas para senalar el segundo parametro en la operacion de fusion.

70

Page 84: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 4.5: Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima celdade arista en hijos obtenidos mediante operaciones de fusion.

Figura 4.6: Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima celdade arista en hijos obtenidos mediante operaciones de extension.

Los teoremas 4.7 y 4.8 son llamados propiedades de reutilizacion para la ultima

celda de vertice. Estos permiten reutilizar resultados anteriores cuando las matrices

se diferencian solamente en la ultima celda de vertice.

Teorema 4.7. Sean Y = (yi,j)ni,j=1 una CAM y Z = (zi,j)

ni,j=1 una matriz de adyacencia

donde zi,j = yi,j para todo i 6= n y j 6= n. Si 0 < zn,n < yn,n entonces Z es tambien una

CAM.

Demostracion. Supongase que Z no es una CAM; entonces, existe una permutacion P

71

Page 85: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

entre los vertices de Z tal que code(Z) ≺ code(P (Z)). Se supondra que

code(P (Z)) = z′1z′2 . . . z

′t

code(Z) = z1z2 . . . zt

,

donde t = n(n + 1)/2. Sean h el menor entero 1 ≤ h ≤ t tal que z′h > zh, k′ la posicion

de zn,n en code(P (Z)) luego de las permutaciones. Ası, se tienen tres casos:

Si h < k′ entonces la celda zn,b en Z no determina que code(P (Z)) � code(Z). Por

tanto, code(P (Y )) � code(Y ) ya que Y y Z son practicamente la misma matriz

salvo en la posicion de celda (n, n). Esto es una contradiccion con el hecho de que

Y es una CAM.

Si h > k′ entonces zk′ = z′k′ = zn,n < yn,n. En este caso, si se aplica P a Y

se obtendra que code(P (Y )) � code(Y ) ya que yk′ = zk′ < yn,n = y′k′ (donde

y1y2 . . . yt y y′1y′2 . . . y

′t son los codigos de Y y P (Y ) respectivamente). Esto es una

contradiccion con el hecho de que Y es una CAM.

Si h = k′ entonces zh < zn,n < yn,n. En este caso, si se aplica P a Y se obtendra que

code(P (Y )) � code(Y ) ya que yh = zh < yn,n = y′h. Esto es una contradiccion con

el hecho de que Y es una CAM.

Ası, queda demostrado por contradiccion que Z es una CAM.

Teorema 4.8. Sea Y = (yi,j)ni,j=1 una CAM suboptimal propia. Supongase que Z =

(zi,j)ni,j=1 es una matriz de adyacencia donde zi,j = yi,j para todo i 6= n y j 6= n. Si

zn,n > yn,n entonces Z no es CAM.

Demostracion. Supongase que Z es una CAM; entonces, por el teorema 4.7 la matriz Y

es una CAM lo cual es una contradiccion. Por tanto, queda demostrado por contradiccion

que Z no es CAM.

72

Page 86: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 4.7: Ejemplo de la utilidad de las propiedades de reutilizacion para la ultima celdade vertice.

Los teoremas 4.7 y 4.8 son aplicables a matrices Y y Z que pertenecen a conjuntos

diferentes C(n+1)(yn,n),j

(X) y C(n+1)(zn,n),j

(X) con la misma posicion j de la ultima celda de arista,

siendo X la submatriz maximal propia de Y y Z (ver figura 4.7).

Las propiedades de reutilizacion dan lugar a los siguientes corolarios. El siguiente

corolario sera llamado propiedad de corte ya que este establece la manera en que las

CAM estan distribuidas dentro de cada conjunto C(n)j (X) o C

(n+1)v,j (X). Esta propiedad

se demuestra de una manera muy similar a como se hizo con los codigos DFS en la

seccion 4.1.1.

Corolario 4.4 (Propiedad de corte). Sean X = (xi,j)ni,j=1 una CAM y M uno de los

conjuntos C(n)j (X) o C

(n+1)v,j (X). Supongase que M esta ordenado de acuerdo al orden

lexicografico ≺ (ver seccion 2.3.3). Entonces, se cumplen los siguientes planteamientos:

1. Si existen CAM en M entonces estan al inicio de M ;

2. si existen no CAM en M entonces estan al final de M .

En proximas secciones se ilustrara el modo en que estas propiedades de las matrices

de adyacencia pueden ser utilizadas en la minerıa de SCF.

73

Page 87: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

4.2. La estructura DFSE

En esta seccion se introduce una nueva estructura de correspondencias, llamada es-

tructura DFSE (por sus siglas en ingles Depth First Search Embedding). Esta estructura

es muy similar a las reportadas en la literatura (ver seccion 2.4.2); no obstante, DFSE

se define de manera especıfica para la minerıa utilizando codigos DFS.

Sea D = {G1, G2, . . . , Gm} una coleccion de grafos donde los grafos Gi estan re-

presentados usando listas de adyacencias. Sean e una arista de un codigo DFS (ver sec-

cion 2.3.1),Gi un grafo de la coleccion D, y ek una arista de Gi donde k (0 ≤ k < |E(Gi)|)

es el identificador de la arista. Se considerara que cualquier arista en un codigo DFS y en

los grafos de D tienen una orientacion, aunque los grafos no sean dirigidos. Las aristas

de un codigo DFS tiene una orientacion explıcita dada por el arbol DFS; las aristas de

los grafos en D tienen la orientacion dada por la representacion en lista de adyacencia.

Se denotara mediante e.l1, e.le, y e.l2 la etiqueta del primer vertice, la etiqueta de la

arista, y la etiqueta del segundo vertice de e, respectivamente. Se dice que e y ek son la

misma arista de acuerdo con las etiquetas y es denotado como e =l ek, si (e.l1, e.le, e.l2) =

(ek.l1, ek.le, ek.l2) o (e.l1, e.le, e.l2) = (ek.l2, ek.le, ek.l1). En el primer caso, se dice que

sign(e, ek) = +1, y en el segundo caso sign(e, ek) = −1. Este valor es llamado el signo

de la correspondencia entre las aristas e y ek.

Si e es una arista no-simetrica (e.l1 6= e.l2), la lista de correspondencias de e en Gi

se denota como LC(e, Gi) y es definida como sigue:

LC(e, Gi) = {(ek, ε, λ) | ek ∈ E(Gi), e =l ek ∧ sign(e, ek) = ε} , (4.7)

donde la tercera componente en estas tripletas se relaciona con elementos asociados con

otras aristas en secuencias mayores; dado que, en este caso, la secuencia es de una unica

74

Page 88: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

(a) s1 (b) Una coleccioncon solo un grafoG1.

(c) Las estructuras de correspondencias de s1 y todossus ancestros.

Figura 4.8: Ejemplo de la estructura DFSE de un codigo s1.

arista, esta tercera componente toma el valor λ, indicando tal condicion.

Un ejemplo de listas de correspondencias para codigos DFS es ilustrado en la figu-

ra 4.8. Para simplificar la explicacion de este ejemplo, se supondra que cada arista no

dirigida, en los grafos de la coleccion, es representada de acuerdo al orden lexicografico

de las etiquetas de los vertices. Por ejemplo en el grafo G1, la arista e2 es almacenada

como (v1, v0). En la figura 4.8(c), la lista de correspondencias de s0 respecto a G1 es

LC(s0, G1) = {(e2,−1, λ), (e1,+1, λ)}.

Si e es una arista simetrica (e.l1 = e.l2), la funcion sign(e, ek) podra tomar ambos

valores +1 o −1. Ası, se considerara en L(e, G) las dos tripletas (ek,±1, λ) para cada

ek ∈ E(G) tal que e =l ek.

Sea s un codigo DFS mınimo. Si s tiene solamente una arista e, la lista de correspon-

dencias de s respecto a Gi es denotada por LC(s,Gi) = LC(e, Gi).

Las listas de correspondencias para codigos DFS con mayor tamano se definen de

manera recurrente como en la ecuacion 4.8.

LC(s � e, G) = {(ek, ε, p) | ek ∈ E(G), e =l ek,

sign(e, ek) = ε ∧ p ∈ LC(s,G)} .(4.8)

Los hijos de un codigo s que ocurren en un grafo Gi ∈ D se obtienen usando LC(s,Gi)

75

Page 89: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

segun el algoritmo 4.1. Este algoritmo utiliza las listas de correspondencias del codigo

s para recorrer todas las ocurrencias de s en los grafos de D, para obtener los nuevos

candidatos, y para construir las listas de correspondencias de dichos candidatos durante

la busqueda.

Procedimiento Buscar-Candidatos-DFSE(s, Gi, L, C)

Input: s - un codigo DFS, Gi - un grafo de la coleccion, L - la lista decorrespondencias LC(s,Gi).

Output: C - los hijos de s que ocurren en Gi.Local vars: τ , τc - Apuntadores a tripletas en L, Mapeo - Lista de pares

ordenados, g′ - subgrafo de Gi, ek - k-esima arista de Gi, e - unaextension para s, ε - el valor de un signo.

Constants: λ - Un apuntador a null.

foreach τ ∈ L do1

Mapeo ← {(τ.k, τ.ε)};2

τc ← τ ;3

while τc.p 6= λ do4

τc ← τc.p;5

Mapeo ← Mapeo ∪ {(τc.k, τc.ε)};6

end7

Sea g′ ⊆ Gi el subgrafo de Gi definido por Mapeo y que es isomorfo al grafo8

definido por s;forall arista ek ∈ E(Gi) \ E(g′) que sea extension mas a la derecha de s do9

Sea e la extension de s que se obtiene con ek ajustando sus vertices a los10

del codigo s mediante el sub-isomorfismo.ε→ sign(e, ek);11

C ← C ∪ {s � e};12

LC(s � e, Gi)← LC(s � e, Gi) ∪ {(e, ε, τ)};13

end14

end15

Algoritmo 4.1: Pseudo-codigo para encontrar los hijos de s que ocurren en Gi ∈ Dutilizando LC(s,Gi).

Las listas de correspondencias de los candidatos s � e obtenidos mediante el algorit-

mo 4.1 son listas de tripletas (ek, ε, p) donde k es un identificador de aristas en el grafo

Gi, ε identifica el sentido de la extension (sign(e, ek)) y p es un elemento de LC(s,G). La

76

Page 90: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

lista LC(s,Gi) ha sido creada antes de invocar este metodo, ya sea porque s representa

un grafo con una sola arista usando la ecuacion 4.7, o mediante llamadas anteriores al

metodo Buscar-Candidatos-DFSE. Recorriendo la lista LC(s,Gi) a traves de las terce-

ras componentes p (ver lıneas 3-7) se obtiene el sub-isomorfismo entre s y Gi y ası se

determinan los hijos de s que ocurren en Gi (ver lıneas 9-15). Cada vez que aparece un

candidato s � e, se aprovechan los calculos realizados para ir construyendo LC(s � e, G)

sobre la marcha (ver lınea 13).

En el ejemplo de la figura 4.8(c), la lista de correspondencias de s1 respecto a G1

es LC(s1, G1) = {(e4,+1, p1), (e5,+1, p2)}, donde p1 = p2 = (e2,−1, λ) ∈ LC(s0, G1) ya

que las aristas e4 y e5 son extensiones de e2 en G1.

La estructura de correspondencias de un codigo DFS s respecto a la coleccion D es

una estructura de datos que contiene todas las listas de correspondencias de s respecto

a cada uno de los grafos Gi ∈ D (ver ecuacion 4.9).

EC(s,D) = {(i, L)|Gi ∈ D,L = LC(s,Gi),∧ L 6= ∅}. (4.9)

En el ejemplo de la figura 4.8(c), la estructura DFSE de cada candidato si es ESi

para i = 0, 1, por simplicidad solamente un grafo G1 es considerado.

Como puede apreciarse, esta nueva estructura almacena los sub-isomorfismos de los

grafos a partir de las correspondencias de las aristas, facilitando ası el trabajo con los

codigos DFS. Hasta lo que se conoce, todas las estructuras de correspondencias repor-

tadas en la literatura (ver seccion 2.4.2) almacenan las correspondencias de los vertices.

Mas adelante en el documento, se presenta la manera en que DFSE es utilizada con exito

para reducir el costo de las pruebas las pruebas de sub-isomorfismo en nuevos algoritmos

para la minerıa de SCF.

77

Page 91: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

4.3. Sıntesis y conclusiones

Con las propiedades de las formas canonicas descritas en este capıtulo se logra cumplir

el objetivo particular 1 de esta investigacion. Las condiciones suficientes de no-mini-

malidad en la codificacion DFS permiten detectar si una forma es canonica en tiempo

constante para algunos casos. Lo mismo ocurre para la propiedad de no-utilidad en

la codificacion CAM. Por otro lado, las propiedades de reutilizacion y sus corolarios

permiten usar lo resultados de pruebas CF anteriores para predecir nuevos resultados

sin realizar las pruebas CF correspondientes. De manera general, todas estas propiedades

establecen un marco teorico para enfrentar el problema 1 mencionado en la seccion 1.1.

Por otra parte, la estructura DFSE presentada en este capıtulo podra ser utilizada

para dar cumplimiento al objetivo particular 2 de esta tesis. Mas adelante en el capıtu-

lo 5 se presentara un nuevo algoritmo llamado gdFil, donde se muestra una solucion al

problema 2 mencionado en la seccion 1.1, utilizando la estructura DFSE en combinacion

con las propiedades de la codificacion DFS.

78

Page 92: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 5

Algoritmos propuestos

Utilizando las propiedades de las formas canonicas mostradas en la seccion 4.1, es po-

sible reducir el costo de la deteccion de duplicados en la minerıa de SCF. En este capıtulo

se introducen cuatro nuevos algoritmos que usan tales propiedades para obtener mejor

desempeno en la minerıa de SCF. Los dos primeros algoritmos, gRed y gdFil, utilizan

codigos DFS mientras que grCAM, el tercer algoritmo, utiliza matrices de adyacencias

para representar los candidatos durante la minerıa. Ademas, se propone cuarto algoritmo

gdFil-closed basado en gdFil que permite obtener solamente los SCF cerrados.

5.1. gRed

El algoritmo gRed (por sus siglas en ingles graph Candidate Reduction Miner) utiliza

codigos DFS para representar los candidatos [Gago-Alonso et al., 2008]. Este algoritmo

se basa en el esquema de gSpan (ver seccion 3.2.1) para recorrer el espacio de busqueda

pero introduce un nuevo mecanismo para la deteccion de duplicados en dos fases: pre-

filtraje y pos-calculo. El proceso general de crecimiento de patrones en gRed se presenta

en el algoritmo 5.1.

79

Page 93: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Durante el pre-filtraje, las condiciones suficientes de no-minimalidad mostradas en

los teoremas 4.1 y 4.2 son utilizadas para eliminar candidatos que tempranamente se

identifican como duplicados (lınea 6 del algoritmo 5.1).

El pos-calculo es la fase en que se eliminan definitivamente todos los candidatos du-

plicados utilizando la propiedad de localizacion del corte, mostrada en el corolario 4.2,

como se muestra a continuacion. Notese que al pos-calculo llega un conjunto de posibles

extensiones Cf(s) que ya fue filtrado mediante la poda de los no frecuentes y median-

te el pre-filtraje. En resumen, durante esta etapa, se recorren los conjuntos H (Bi(s)

o Fi(s)) que particionan a Cf(s) y para cada conjunto H se determina H utilizando

busqueda binaria. La union de todos los conjuntos H conforma al conjunto ME(s) (ver

ecuacion 4.1).

Procedimiento gRed-Crecimiento(D, s, δ, S)

Input: D - Coleccion de grafos, s - Un codigo DFS, δ - Umbral de frecuenciamınima.

Output: S - Resultado de la minerıa.Local vars: Cr(s), Cf(s), ME(s) - Conjuntos de extensiones para s, i - Un

identificador de grafo, Gi - El i-esimo grafo de D, e - una extensionpara s.

S ← S ∪ {s};1

Cf (s)← ∅;2

forall i ∈ LI(s,D) do3

Cr(s)← ∅;4

Buscar-Candidatos-LI (s, Gi, Cr(s));5

Anadir a Cf(s) los elementos de Cr(s) que no son filtrados por las condiciones6

suficientes de no-minimalidad (pre-filtraje);end7

Eliminar de Cf(s) las extensiones no frecuentes segun δ;8

Obtener el conjunto ME(s) (ver ecuacion 4.1) a partir de Cf(s) utilizando el9

principio de corte y mediante busquedas binarias (pos-calculo);forall extension e ∈ ME(s) do gRed-Crecimiento(D, s � e, δ, S);10

Algoritmo 5.1: gRed.

80

Page 94: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Para resaltar las diferencias fundamentales entre gRed y gSpan, se realizara el si-

guiente analisis. Se denotara α(s) al numero de candidatos que quedan en Cr(s) luego

de filtrar los no frecuentes (ver lınea 3 de gSpan-Crecimiento en el algoritmo 3.1). El

algoritmo gSpan realizara α(s) pruebas CF para eliminar los candidatos; recuerdese que

gSpan realiza una prueba CF para cada candidato.

En el caso de gRed, cada conjunto Cr(s) es filtrado para ir conformando el conjunto

Cf(s) durante la fase de pre-filtraje. Entonces, el numero de candidatos que quedan en

Cf(s) luego de filtrar los no frecuentes (ver lınea 8 del algoritmo 5.1) es menor o igual

que α(s); es decir, |Cf(s)| ≤ α(s). Utilizando la propiedad de acotacion al numero de

pruebas CF mostrada en el corolario 4.3, se obtiene que

β(s) ≤ 2r(s)log2

(

α(s)

2r(s)

)

+ 2r(s). (5.1)

La desigualdad 5.1 ofrece una comparacion entre el numero de pruebas CF que se

realizan en gSpan (α(s)) y en gRed (β(s)). Esto es una demostracion teorica de que es

posible reducir el numero de pruebas CF respecto a las que se realizan en el algoritmo

gSpan.

Al igual que gSpan, la implementacion original de gRed utiliza lista de identificadores

para indizar la coleccion de grafos [Gago-Alonso et al., 2008]. No obstante, no existe

ningun impedimento para adaptar la estructura DFSE (ver seccion 4.2) en sustitucion

de las listas de identificadores.

5.2. gdFil

El algoritmo gdFil (por sus siglas en ingles graph duplicate-filtering miner), al igual

que gRed, utiliza codigos DFS para representar los candidatos [Gago-Alonso et al., 2009].

81

Page 95: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

En este algoritmo se propone eliminar todos los candidatos duplicados antes de enumerar

los candidatos. Dicho con la notacion de gRed (ver seccion 5.1), la idea consiste en

eliminar todos los duplicados en la etapa de pre-filtraje; es decir, gdFil no tiene fase de

pos-calculo.

Como se ha dicho anteriormente, las condiciones suficientes de no-minimalidad, mos-

tradas en los teoremas 4.1 y 4.2, no garantizan la eliminacion total de los duplicados.

Por otro lado, realizar las pruebas CF para todos los candidatos, antes de filtar los no

frecuentes, tiene un costo computacional sumamente alto debido a que la complejidad

computacional de cada prueba CF es O(n!), siendo n el numero de vertices del grafo

[Yan & Han, 2002b]. En gdFil se propone un mecanismo para realizar las pruebas CF

antes de filtar los candidatos no frecuentes, pero solamente para algunos candidatos; es

decir, evitando las pruebas CF segun la propiedad de localizacion del corte mostrada en

corolario 4.2. El algoritmo 5.2 muestra una descripcion general de gdFil.

La idea central de este algoritmo consiste en ir calculando los cortes canonicos y

no-canonicos mientras se enumeran los candidatos. La enumeracion de candidatos se

realiza en las lıneas 4–6 del algoritmo 5.2 utilizando estructuras de correspondencias

(ver seccion 2.4.2). Una vez calculados los candidatos que ocurren en cada grafo Gi ∈ D,

se filtran aquellos que no cumplen con las condiciones suficientes de no-minimalidad

(lınea 7). Luego se utilizan los cortes para filtrar los duplicados que quedan.

En gdFil se introduce el concepto de corte global muy ligado a la generacion de

candidatos. Los cortes globales (canonicos y no-canonicos) son inicializados en null para

indicar que se iniciara la busqueda de candidatos. En la lınea 6, se calcula el conjunto

Cr(s) para cada grafo Gi ∈ D. El conjunto Cr(s) es un subconjunto de RE(s) que

representa el conjunto que contiene todas las posibles extensiones de s. Los cortes que se

calculen para Cr(s) no necesariamente seran cortes en RE(s), es por eso que los cortes

82

Page 96: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento gdFil-Crecimiento(D, s, δ, S)

Input: D - Coleccion de grafos, s - Un codigo DFS (un SCF), δ - Umbral defrecuencia mınima.

Output: S - Resultado de la minerıa.Local vars: Cr(s), ME(s) - Conjuntos de extensiones para s, i - Un identificador

de grafo, Gi - El i-esimo grafo de D, L - La lista de correspondenciasLC(s,Gi), e - una extension para s.

S ← S ∪ {s};1

ME(s)← ∅;2

Inicializar los cortes globales en null.3

forall par ordenado (i, L) ∈ EC(s,D) do4

Cr(s)← ∅;5

Buscar-Candidatos-DFSE (s, Gi, L, Cr(s));6

Eliminar de Cr(s) los elementos que son filtrados por las condiciones7

suficientes de no-minimalidad;Eliminar de Cr(s) los elementos que son filtrados por los cortes globales;8

Calcular los cortes locales de Cr(s) mediante las busquedas binarias y eliminar9

de Cr(s) los duplicados que quedan utilizando los cortes locales;Actualizar los cortes globales a partir de los cortes locales;10

Anadir a ME(s) los elementos de Cr(s);11

end12

Eliminar de ME(s) las extensiones no frecuentes segun δ;13

forall e ∈ME(s) do gdFil-Crecimiento(D, s � e, δ, S);14

Algoritmo 5.2: gdFil.

83

Page 97: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

de Cr(s) seran llamados cortes locales. Los cortes globales se definen como los cortes de

RE(s).

En la primera iteracion del ciclo de las lıneas 4–12, el filtrado de la lınea 8 no tiene

ningun efecto ya que los cortes globales estan inicializados a null. No obstante, en las

siguientes iteraciones de dicho ciclo, algunos candidatos seran filtrados segun los cortes

globales. Luego en la lınea 9, se calcularan los cortes locales utilizando las busquedas

binarias como el procedimiento descrito en la propiedad de localizacion del corte (ver

corolario 4.2). Los cortes locales permitiran eliminar los duplicados que quedan en Cr(s).

Una vez calculados los cortes locales se procede a actualizar los cortes globales en

la lınea 10 siguiendo el siguiente principio. Sean H ′ y H dos conjuntos de extensiones

tales que H ′ ⊆ H y H es uno de los conjuntos Bi(s) o Fi(s) de un codigo s (como en la

seccion 4.1.1). Dicho de esta forma H es uno de los subcojuntos de la particion que se

realizo para RE(s); por tanto, el corte no-canonico (e) y canonico (e) de H serıa uno de

los cortes globales. Sean e′ y e′ los cortes locales no-canonico y canonico respectivamente;

es decir, e′ y e′ son los cortes de H ′. En caso de existir estos cortes e, e, e′, y e′, se tiene

el siguiente orden e′ ≤ e < e ≤ e′. Por tanto, el corte global e es el maximo de todos los

posibles cortes locales no-canonicos y e es el mınimo de todos los posibles cortes locales

canonicos.

Esta manera de proceder, entre los cortes locales y globales, es utilizada en la lınea 10

para actualizar los cortes globales. El valor real de los cortes globales solo se alcanzara con

seguridad al final de las iteraciones del ciclo antes mencionado (ver lıneas 4–12); no

obstante, pudiera ocurrir que desde la primera iteracion ya estos cortes alcancen su valor

definitivo. Ası, mientras se van ejecutando las iteraciones, los cortes globales van a ir

convergiendo hacia su valor real y puede llegar un momento en que ya no sea necesario

realizar ninguna prueba CF para localizar los cortes locales.

84

Page 98: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

De este modo, gdFil garantiza la total eliminacion de los duplicados durante la enu-

meracion de los candidatos evitando al maximo las pruebas CF.

En la version original de gdFil se utilizo la estructura DFSE (ver seccion 4.2) para

indizar la coleccion de grafos [Gago-Alonso et al., 2009]. El uso de esta estructura permite

reducir el costo de las pruebas de sub-isomorphismo, que son inevitables cuando se

usan las listas de identificadores. Vale resaltar que en gdFil, esta estrutura solamente es

mantenida en memoria para los candidatos utiles ya que los duplicados son eliminados

durante el mismo proceso que va creando dichas estructuras.

Adicionalmente, se tiene una version de gdFil que utiliza listas de identificadores pero

esta logra peores tiempos de respuesta que gRed llegando a ser un 35% mas tardado.

Mas adelante en el documento, se presentara una comparacion experimental entre estos

algoritmos (gRed y gdFil) y sus diferentes versiones.

5.3. grCAM

El algoritmo grCAM (por sus siglas en ingles graph mining by reducing CAM tests)

utiliza matrices de adyacencia para representar los candidatos. Este algoritmo se basa

en el esquema de FFSM (ver seccion 3.2.3) para recorrer el espacio de busqueda pero

introduce un mecanismo parecido al de gRed, para la deteccion de duplicados en dos fases:

pre-filtraje y pos-calculo. El esquema general de crecimiento de patrones en grCAM se

presenta en el algoritmo 5.3.

Durante el pre-filtraje, la propiedad de no-utilidad mostrada en el teorema 4.4 es

utilizada para eliminar candidatos que desde ese momento se puede determinar que son

duplicados y que no seran utiles durante la minerıa (ver lınea 4 del algoritmo 5.3). En

grCAM, al igual que en FFSM [Huan et al., 2003], los candidatos duplicados son necesa-

rios para el correcto funcionamiento de las operaciones de fusion, independientemente de

85

Page 99: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

que estos candidatos redundantes no son tenidos en cuenta en los resultados finales de

la minerıa. No obstante, la propiedad de no-utilidad permite filtrar algunos duplicados

que ni siquiera seran utiles para las operaciones de fusion.

El pos-calculo es la fase en que se eliminan definitivamente todos los candidatos

duplicados utilizando la propiedad de corte (ver corolario 4.4) como se muestra a con-

tinuacion. La frontera entre las CAM y las no CAM puede ser detectada utilizando

busquedas binarias dentro de los conjuntos M (C(n)j (X) o C

(n+1)v,j (X)) que particionan

al conjunto C(X) (ver lınea 6). Por tanto, el numero de pruebas CF requeridas para

detectar dicha frontera es menor que log2(|M |) + 1. Este proceso, de reducir el numero

de pruebas CF, es llamado proceso de reutilizacion interna ya que permite reutilizar el

resultado de pruebas CF anteriores dentro de cada conjunto M . En grCAM la etapa

de pos-calculo incluye ademas otro proceso llamado proceso de reutilizacion externa que

sera descrito a continuacion.

Sea j un numero entero tal que 1 ≤ j ≤ n. Se consideraran los siguientes conjuntos

C(n+1)v1,j

(X), C(n+1)v2,j

(X), . . . , C(n+1)vh,j

(X)

los cuales son usados para particionar C(X) (ver lınea 6 del algoritmo 5.3). Estos con-

juntos estan definidos para el mismo valor j en ultima celda de arista y valores diferentes

v1 < v2 < . . . < vh en la ultima celda de vertice.

Primero, el proceso de reutilizacion interna es ejecutado para C(n+1)v1,j

(X) y C(n+1)vh,j

(X)

(el primero y el ultimo entre los conjuntos). Sea α1 el mayor valor de la ultima celda de

arista en C(n+1)v1,j

(X) tal que su correspondiente matriz es una CAM y sea βh el menor

valor de la ultima celda de arista en C(n+1)vh,j

(X) tal que su correspondiente matrix no es

una CAM. El teorema 4.7 asegura que cualquier matriz de los conjuntos considerados

cuya ultima celda de arista sea menor o igual que α1 es una CAM. El teorema 4.8 asegura

86

Page 100: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

que cualquier matriz de los conjuntos considerados cuya ultima celda de arista sea mayor

o igual que βh no es una CAM. Ası, las propiedades de reutilizacion para la ultima celda

de vertice pueden ser usadas para reducir el numero de pruebas CF.

Luego, el proceso de reutilizacion interna es ejecutado para C(n+1)v2,j

(X) y C(n+1)vh−1,j

(X)

(el segundo y el penultimo entre los conjuntos) pero considerando solamente las matrices

cuya ultima celda de arista es mayor que α1 y menor que βh. Ası, nuevos valores α2 y βh−1

son calculados de una manera similar al paso anterior. Estos pasos son repetidos hasta

que cada uno de los conjuntos considerados sean analizados. Este proceso es llamado

proceso de reutilizacion externa ya que permite reutilizar el resultado de pruebas CF

anteriores entre conjuntos diferentes C(n+1)v,j (X). Este proceso es ejecutado para cada

1 ≤ j ≤ n.

Los procesos de reutilizacion interna y externa integran la fase de pos-calculo en

grCAM.

El resto de los pasos de grCAM se realizan de una manera similar al algoritmo FFSM

(ver seccion 3.2.3).

Para un mejor entendimiento de las diferencias entre los algoritmos grCAM y FFSM

se realizara el siguiente analisis. Sean N y N el numero de candidatos en la lista C(X)

durante la ejecucion de los procedimientos FFSM-Crecimiento y grCAM-Crecimiento

respectivamente. Esta claro que N ≤ N ya que la fase de pre-filtraje en grCAM puede

ayudar a reducir el numero de candidatos.

Considerar el proceso de reutilizacion interna ignorando el efecto del proceso de re-

utilizacion externa serıa el peor caso del algoritmo grCAM. Suponiendo el peor caso, se

calculara el valor esperado para el numero de pruebas CF que tendran lugar en grCAM

al procesar la lista C(X). En otras palabras, se supondra que el proceso de reutilizacion

externa no reduce el numero de pruebas CF. Ası, el numero de pruebas CF es menor

87

Page 101: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento grCAM-Crecimiento(D, δ, C, S)

Input: D - coleccion de grafos, δ - umbral de frecuencia mınima, C - lista deCAM suboptimales

Output: S - Resultado de la minerıaLocal vars: X , Z - Dos CAM suboptimales, C(X) - Conjunto de CAM

suboptimales.

forall X ∈ C do1

if X.isCAM then2

S ← S ∪ {X};3

C(X)← los hijos de X los cuales son calculados mediante la ecuacion 3.14

usando C y D y que no son filtrados por propiedad de no-utilidad(pre-filtraje);Eliminar de C(X) las CAM no frecuentes;5

Aplicar la fase de pos-calculo para calcular valor Z.isCAM de cada6

Z ∈ C(X);grCAM-Crecimiento(D, δ, C(X), S);7

end8

end9

Algoritmo 5.3: grCAM.

que:

K =n−1∑

j=1

(log2 |C(n)j (X)|+ 1) +

v∈L

n∑

j=1

(log2 |C(n+1)v,j (X)|+ 1). (5.2)

Como log2(x) : [1,+∞)→ [0,+∞) es una funcion convexa [Rudin, 1976], la ecuacion 5.2

puede ser transformada en:

K ≤ P log2

n−1∑

j=1

|C(n)j (X)|+

v∈L

n∑

j=1

|C(n+1)v,j (X)|

/P

+ P . (5.3)

donde P = n − 1 + n|L|. Como la suma de las cardinalidades de estos conjuntos es la

cardinalidad de C(X), entonces la desigualdad 5.3 se transforma en:

K ≤ P log2(N/P ) + P . (5.4)

88

Page 102: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

En el mejor caso de grCAM, el proceso de reutilizacion externa permitira eliminar

todas las pruebas CF luego del primer paso. Como en el primer paso solamente dos

conjuntos son verificados, se concluye que el numero de pruebas CF es menor que:

K =n−1∑

j=1

(log2 |C(n)j (X)|+ 1) +

n∑

j=1

(log2 |C(n+1)v1,j

(X)|+ log2 |C(n+1)vl,j

(X)|+ 2).

De manera similar, se obtiene:

K ≤ P log2(N/P ) + P . (5.5)

donde P = 3n− 1.

Las desigualdades 5.4 y 5.5 ofrecen cotas superiores para el numero de pruebas CF

requeridas por grCAM para procesar la lista C(X) en el caso peor y el caso mejor

respectivamente. En el caso peor, esta cota depende de tres parametros: el numero de

candidatos N (este numero depende de las caracterısticas de la coleccion de grafos tales

como densidad de aristas, numero de etiquetas, etc.), n el tamano de la matriz X , y |L|

(este numero depende la distribucion de las etiquetas en los vertices). En el caso mejor,

dicha cota solamente depende de N y n.

Este analisis es una demostracion teorica de que es posible reducir el numero de

pruebas CF respecto a las que se realizan en el algoritmo FFSM. Notese que FFSM

realiza siempre N pruebas CF y como se dijo anteriormente N ≤ N . Mas adelante en el

documento se muestran resultados experimentales que corroboran esta reduccion.

89

Page 103: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

5.4. gdFil-closed

Como se pudo apreciar en la seccion 3.3, existen diversas formas para reducir el

numero de patrones encontrados en la minerıa de SCF. Entre dichas variantes, sobresale

la propiedad de completitud del conjunto soporte para los SCF cerrados ya que esta

propiedad hace de los SCF cerrados un conjunto con menor cardinalidad que los SCF y

que ademas permite describir a todos los SCF. El resto de las variantes conocidas, para

reducir el numero de patrones, no logra ofrecer una descripcion de todos los SCF como

la de los SCF cerrados.

En esta seccion se propone un nuevo algoritmo para la minerıa de todos los SCF

cerrados. Este nuevo algoritmo es una adaptacion de gdFil para encontrar todos los SCF

cerrados y por eso sera llamado gdFil-closed. En gdFil-closed el espacio de busqueda

esta libre de candidatos duplicados, a diferencia de los otros algoritmos reportados en el

estado del arte (CloseGraph y MoFa(closed)). El algoritmo 5.4 muestra una descripcion

general de gdFil-closed.

El algoritmo gdFil-closed utiliza las mismas podas que gdFil para filtrar los candida-

tos duplicados (ver lıneas 6–10) durante la generacion de candidatos. Ademas, la poda

de terminacion temprana (ver sec 3.3.1) es incorporada para orientar el recorrido del

espacio de busqueda hacia los SCF cerrados (ver lıneas 12 y 17).

Las las lıneas 12, 13, y 17 son las mas relacionadas con la busqueda de los SCF

cerrados. Para el correcto funcionamiento de estas lıneas es necesario hacer algunas mo-

dificaciones al procedimiento Buscar-Candidatos-DFSE. Recuerdese que gdFil se limita

a considerar las extensiones mas a la derecha. En gdFil-closed el conjunto de candida-

tos ME(s) solamente contiene extensiones mas a la derecha que no producen candidatos

duplicados. No obstante, es necesario mantener un conjunto con todas las posibles exten-

siones e (no solo las extensiones mas a la derecha) y para cada una de estas extensiones

90

Page 104: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Procedimiento gdFil-closed-Crecimiento(D, s, δ, S)

Input: D - coleccion de grafos, s - un codigo DFS, δ - umbral de frecuenciamınima

Output: S - Resultado de la minerıaLocal vars: Cr(s), ME(s) - Conjuntos de extensiones para s, i - Un identificador

de grafo, Gi - El i-esimo grafo de D, L - La lista de correspondenciasLC(s,Gi), e - una extension para s.

ME(s)← ∅;1

Inicializar los cortes globales en null.2

forall par ordenado (i, L) ∈ EC(s,D) do3

Cr(s)← ∅;4

Buscar-Candidatos-DFSE (s, Gi, L, Cr(s));5

Eliminar de Cr(s) los elementos que son filtrados por las condiciones6

suficientes de no-minimalidad;Eliminar de Cr(s) los elementos que son filtrados por los cortes globales;7

Calcular los cortes locales de Cr(s) mediante las busquedas binarias y eliminar8

de Cr(s) los duplicados que quedan utilizando los cortes locales;Actualizar los cortes globales a partir de los cortes locales;9

Anadir a ME(s) los elementos de Cr(s);10

end11

Verificar las situaciones de cruce en s;12

if s es cerrado then S ← S ∪ {s};13

Eliminar de ME(s) las extensiones no frecuentes segun δ;14

forall e ∈ME(s) do15

gdFil-closed-Crecimiento(D, s � e, δ, S);16

if e es equivalente y libre de cruce then return;17

end18

Algoritmo 5.4: gdFil-closed.

91

Page 105: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

mantener dos contadores. El primer contador representa la magnitud L(s, s � e,D) (ver

sec 3.3.1 para aclarar notaciones) y es usado en la lınea 17 para saber si e es equivalente.

El segundo contador es la frecuencia del candidato s � e y permite determinar si s es

cerrado en la lınea 13. Por otra parte, el conjunto de todas las posibles extensiones es

usado para verificar las situaciones de cruce en s (ver lınea 12). El mantener esta infor-

macion adicional no incrementa mucho los requerimientos de memoria de gdFil-closed

ya que toda esta informacion puede ser liberada antes de realizar cada llamado recursivo

al procedimiento gdFil-closed-Crecimiento.

5.5. Sıntesis y conclusiones

El objetivo general de esta tesis plantea la necesidad de encontrar dos algoritmos para

la minerıa de SCF: un algoritmo para la minerıa de todos SCF y otro para la minerıa

del subconjunto de SCF determinado en el objetivo particular 3. En el capıtulo 3 se

determino que este subconjunto serıa el que esta compuesto por los SCF cerrados.

En este capıtulo se introdujeron tres nuevos algoritmos para la minerıa de todos SCF

y un algoritmo para la minerıa de los SCF cerrados. En modo de resumen, la tabla 5.1

muestra las caracterısticas fundamentales de los algoritmos propuestos en este capıtulo.

Con estos nuevos algoritmos se logra el cumplimiento de los objetivos particulares 2

y 4 y del objetivo general de la tesis. Mas adelante en el capıtulo 6 se corrobora el

buen desempeno de estos algoritmos con respecto a los algoritmos del estado del arte.

Ademas, en dicho capıtulo se muestra una caracterizacion de los algoritmos propuestos,

que permite elegir cual algoritmo utilizar segun el dominio.

92

Page 106: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 5.1: Resumen de las caracterısticas de los algoritmos de minerıa de SCF.

Algoritmo Estrategia de generacion

de candidatos

Forma de re-

presentacion

de los candida-

tos

Estructura de da-

tos para indizar la

coleccion de gra-

fos

Resultado de la

minerıa

gRed Crecimiento de patrones Codigos DFS Listas de identifica-dores

Todos los SCF

gdFil Crecimiento de patrones Codigos DFS Estructuras de co-rrespondencias

Todos los SCF

gdFil-closed Crecimiento de patrones Codigos DFS Estructuras de co-rrespondencias

Los SCF cerrados

grCAM Crecimiento de patrones (in-cluye aspectos de Apriori)

Matrices de Ad-yacencia

Estructuras de co-rrespondencias

Todos los SCF

93

Page 107: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 6

Resultados experimentales

En este capıtulo se presentan los resultados experimentales obtenidos al aplicar los

algoritmos propuestos en esta tesis sobre distintas colecciones de grafos y se presenta una

comparacion entre los metodos propuestos y otros algoritmos reportados en la literatura.

6.1. Colecciones de grafos utilizadas en la

experimentacion

Las bases de datos bioquımicas, en especial los conjuntos de moleculas, constituyen

uno de los principales campos de aplicacion de la minerıa de SCF sobre grafos etique-

tados. Estas colecciones de grafos han sido usadas para evaluar el desempeno de los

algoritmos de minerıa de SCF. En la tabla 6.1 se describen las caracterısticas de algu-

nas de las colecciones mas citadas dentro de esta tematica. A estas colecciones se les

llamara colecciones de grafos reales.

La coleccion PTE [Srinivasan et al., 1997] es la base de datos mas pequena que se usa

en este trabajo. Esta contiene solamente 337 grafos que representan moleculas utilizadas

94

Page 108: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

en competencias internacionales de verificacion toxicologica predictiva [Srinivasan et al.,

1997]. Esta coleccion se caracteriza por tener una enorme cantidad de SCF a pesar de su

pequeno tamano; por ejemplo, posee 136981 patrones frecuentes (SCF) tomando como

umbral de frecuencia el 2% del tamano de la coleccion.

Dos colecciones de mediano tamano son CAN2DA991 y HIV2. La coleccion CAN2DA99

contiene la representacion en forma de grafo de 32557 moleculas presentes en tumores

cancerıgenos mientras que en HIV se incluye la informacion referente a 42689 estructuras

moleculares del Virus de Inmunodeficiencia Humana.

Para el estudio del desempeno de los algoritmos de minerıa de grafos se han utilizado

partes de la coleccion HIV que contienen las moleculas moderadamente activas (HIV-

CM) y las moleculas activas (HIV-CA). Como puede apreciarse en la tabla 6.1, estas

dos colecciones son pequenas en cuanto a la cantidad de grafos pero, al igual que PTE,

poseen una gran cantidad de SCF.

La coleccion NCI3 es la mas grande de las bases de datos que tradicionalmente se

utilizan en comparaciones de algoritmos de minerıa de grafos. Esta coleccion contie-

ne la representacion en forma de grafo de 237771 moleculas que provienen de diversos

repositorios de datos.

Ademas de estas colecciones de grafos reales se han usado colecciones artificiales pro-

ducidas por generadores automaticos. Utilizar este tipo de colecciones artificiales permite

estudiar el comportamiento de los algoritmos manteniendo o variando algunas propie-

dades de la coleccion de grafos. Uno de los generadores automaticos de grafos sinteticos

mas usado es el propuesto por Kuramochi & Karypis [2001]. Este generador permite

construir colecciones de grafos artificiales especificando los siguientes parametros:

1http://dtp.nci.nih.gov/docs/cancer/cancer data.html2http://dtp.nci.nih.gov/docs/aids/aids data.html3http://cactus.nci.nih.gov/ncidb2/download.html

95

Page 109: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

PD cantidad de grafos en la coleccion,

PT tamano promedio de los grafos de la coleccion dado en numero de aristas,

PV numero de etiquetas para asignar a los vertices de los grafos,

PE numero de etiquetas para asignar a las aristas de los grafos,

PL numero de posibles de subgrafos frecuentes usados en el conjunto semilla,

Pi tamano promedio de los subgrafos frecuentes en el conjunto semilla.

Los parametros PL e Pi son utilizados para generar un conjunto con PL grafos conexos

conocido como conjunto semilla, cuyos tamanos se determinan segun una distribucion

de Poisson con media Pi. Estos grafos se generan teniendo en cuenta los parametros

PV y PE para no provocar incompatibilidades. Luego, los PD grafos que conforman la

coleccion artificial son generados de la siguiente manera. El tamano de los grafos de la

coleccion se determina segun una distribucion de Poisson con media PT . Cada grafo g

del conjunto semilla es insertado como subgrafo en al menos la mitad de los grafos de la

coleccion para de este modo lograr los subgrafos frecuentes. El proceso de construccion

de estas colecciones artificiales es explicado con mayor profundidad en [Kuramochi &

Karypis, 2001].

De este modo, dada una coleccion de grafos (artificial o real), es posible conocer los

parametros PD, PT , PV , y PE que la caracterizan. Sin embargo, los parametros relacio-

nados con el conjunto semilla (PL e Pi) no pueden ser determinados a partir de una

coleccion dada. Notese que una coleccion real, por ejemplo, no fue generada a partir de

un conjunto semilla. Ademas, en el caso de una coleccion artificial no es posible deter-

minar si un subgrafo pertenece o no al conjunto semilla que se utilizo para construirla,

96

Page 110: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

incluso si fue generada con el mismo generador automatico. La tabla 6.1 muestra los

parametros PD, PT , PV , y PE de las colecciones de grafos reales usadas en esta tesis.

Tabla 6.1: Parametros PD, PT , PV , y PE en colecciones de grafos reales.

PD PT PV PE

PTE 340 27 66 4CAN2DA99 32 557 28 69 4HIV-CA 423 42 21 4HIV-CM 1 081 34 27 3HIV 42 689 28 63 3NCI 237 771 22 78 4

En estudios comparativos anteriores, el parametro PL fue fijado en PL = 200 para

construir las colecciones artificiales [Yan & Han, 2003, 2002a; Kuramochi & Karypis,

2001]. Los valores del parametro Pi han sido asignados segun diversos propositos casi

siempre 3 ≤ Pi ≤ 15; los valores cercanos a 3 se han usado para construir colecciones

cuyos SCF tienen un tamano promedio relativamente pequeno (entre 3 y 6 aristas por

grafo), mientras que los valores por encima de 10 dan lugar a colecciones artificiales con

mayor tamano promedio en los SCF (entre 10 y 20 aristas por grafo) [Kuramochi &

Karypis, 2001]. En esta tesis, se usara de igual manera que PL = 200 y se utilizaran dos

valores para el parametro Pi ∈ {3, 11} para representar los dos casos antes mencionados.

Se supondra por omision que PV = 40, PE = 4, y PT = 30 ya que estos valores son

representativos de las colecciones reales (ver tabla 6.1); no obstante, estos valores pue-

den ser variados si algun experimento lo requiere. El parametro PD sera fijado en 200

para representar colecciones pequenas, 20000 para colecciones medianas, y 200000 para

colecciones grandes.

97

Page 111: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

6.2. Descripcion general de los experimentos

En la experimentacion se comparan los algoritmos propuestos en esta tesis (gRed,

gdFil, y grCAM) y los cuatro algoritmos de minerıa de SCF que mas se han citado recien-

temente (gSpan, MoFa, FFSM, y Gaston). Estos ultimos, ademas de ser los algoritmos

mas referidos, describen las ideas que mas exito han tenido en los estudios comparativos

mas recientes [Worlein et al., 2005; Nijssen & Kok, 2006]. Los algoritmos cuya estrategia

de busqueda es en amplitud, entre ellos los basados en Apriori, no se incluyen en esta

experimentacion ya que han mostrado ser menos eficientes que aquellos disenados con

busqueda en profundidad [Nijssen & Kok, 2006; Han et al., 2007a].

Los algoritmos gSpan, MoFa, FFSM, y Gaston fueron implementados en el paquete

ParMol [Meinl et al., 2006] con el fin de realizar un estudio comparativo [Worlein et al.,

2005]. Uno de los aspectos mas criticados de esta comparacion fue el hecho de que el

paquete ParMol fue implementado en el lenguaje de programacion Java y por tanto

numerosas optimizaciones, alcanzables en los lenguajes de mas bajo nivel como ANSI

C, no pudieron ser utilizadas. No obstante, fue la primera vez que estos algoritmos

fueron comparados en igualdad de condiciones; por ejemplo, todos los algoritmos usan

las mismas bibliotecas para el manejo de los grafos. El paquete ParMol es distribuido

gratuitamente bajo licencia GNU.

Los algoritmos propuestos en esta tesis (gRed, gdFil, y grCAM) fueron implementados

tambien en Java, utilizando las mismas bibliotecas para el manejo de grafos del paquete

ParMol. Con el fin de complementar el estudio comparativo realizado por Worlein et al.

[2005] se repitieron los experimentos sobre bases de datos reales incluyendo los nuevos

algoritmos.

Todos los experimentos fueron ejecutados en una PC con procesador Intel Core 2 Duo

de 2.2 GHz con 4 GB de RAM usando Linux-Debian a 64-bits. Se utilizo la maquina

98

Page 112: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

virtual de Java de IBM Version 6. El espacio de memoria disponible fue fijado en 4 GB

para eliminar la influencia de las operaciones de paginado durante las ejecuciones.

Tabla 6.2: Cantidad y tamano de los SCF encontrados en la coleccion HIV-CA usandoumbrales de frecuencia altos y bajos.

Umbrales altos Umbrales bajosUmbral Cantidad de SCF Tamano del mayor

SCFUmbral Cantidad de SCF Tamano del mayor

SCF30% 277 9 3% 8 838 698 4440% 105 7 4% 1 230 027 3750% 61 7 5% 272 943 33

En los experimentos de esta tesis se utilizan umbrales bajos de frecuencia (inferiores

al 10% del tamano de la coleccion) para evaluar el desempeno de los algoritmos. Estos

umbrales son muy importantes en aplicaciones de minerıa de datos [Hossain & Angryk,

2007]. Por ejemplo, existen aplicaciones como clasificacion y agrupamiento donde los

grafos frecuentes con estructuras complejas son necesarios [Hossain & Angryk, 2007],

y las estructuras complejas solamente pueden ser encontradas para umbrales bajos de

frecuencia. Adicionalmente, los umbrales altos casi siempre dan lugar a SCF con pe-

queno tamano respecto al numero de vertices, aristas, o ciclos. La tabla 6.2 muestra una

comparacion entre cantidad y tamano de los SCF encontrados en la coleccion HIV-CA

usando umbrales de frecuencia altos y bajos. Los umbrales altos solamente producen

pocos SCF a diferencia de los umbrales bajos que producen muchos SCF con mayor ta-

mano. Ademas, todos los algoritmos recientes en el estado del arte logran buenos tiempos

de respuesta para umbrales altos; por tanto, es mas importante proponer algoritmos mas

rapidos para umbrales bajos de frecuencia. Finalmente, es importante resaltar que, al

igual que en estudios comparativos anteriores [Worlein et al., 2005; Nijssen & Kok, 2006],

en la experimentacion de esta tesis, los umbrales de frecuencia estan definidos como un

porcentaje del tamano de la coleccion.

99

Page 113: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

6.3. Comparacion entre gRed y gSpan

El principal aporte de gRed es la optimizacion que introduce en la deteccion y poda

de los elementos duplicados durante el recorrido del espacio de busqueda. Esta deteccion

se realiza en dos fases: pre-filtraje y pos-calculo. Ambas fases justificadas desde un punto

de vista teorico por las propiedades de la seccion 4.1.1; no obstante, en esta seccion se

muestra experimentalmente el impacto de estas propiedades.

Los algoritmos gSpan y gRed son comparados respecto al numero de pruebas CF

realizadas. Ası, se ofrece una medida del ahorro en pruebas CF que se logra en gRed

al anadir las etapas de pre-filtraje y pos-calculo. No obstante, para ilustrar mejor el

impacto que tuvo cada etapa, se muestra como es el desempeno de cada una de las

etapas por separado incluyendo dos modificaciones de gSpan anteriores a gRed: usando

solamente pre-filtraje (gSpan+(pre)) y usando solamente pos-calculo (gSpan+(pos)). En

la tabla 6.3 se muestra el numero de pruebas CF que se realizaron en cada uno de los

algoritmos (gSpan, gSpan+(pre), gSpan+(pos), y gRed) sobre las colecciones de grafos

PTE, CAN2DA99, HIV, y NCI, variando los umbrales de frecuencia.

Como puede apreciarse en la tabla 6.3, las dos fases evaluadas por separado muestran

mejor desempeno que gSpan y peor desempeno que gRed. Puede concluirse que las dos

fases tienen un impacto positivo en la reduccion del numero de pruebas CF. No obstante,

los mejores resultados son obtenidos por gRed integrando las dos fases (pre-filtraje y pos-

calculo) en una sola solucion.

6.4. Experimentos con gdFil

El aporte principal de gdFil radica en la capacidad de eliminar todos los duplicados

en la etapa de enumeracion de candidatos. Este hecho, sin dudas, reduce el costo en

100

Page 114: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 6.3: Numero de pruebas CF realizadas por los algoritmos gSpan, gSpan+(pre),gSpan+(pos), y gRed.

Algoritmo\umbral 2% 3% 4% 5% 6% 7%

PTEgSpan 326 559 46 445 15 709 9 176 5 239 4 281gSpan+(pre) 175 384 24 629 8 136 4 886 2 846 2 351gSpan+(pos) 281 622 35 482 14 464 7 306 3 661 2 993gRed 161 202 21 947 7 123 4 227 2 433 2 007

CAN2DA99gSpan 36 808 13 085 7 216 4 720 3 185 2 290gSpan+(pre) 32 669 11 695 6 421 4 210 2 865 2 067gSpan+(pos) 33 081 11 776 6 458 4 193 2 806 2 023gRed 29 765 10 442 5 699 3 704 2 499 1 808

HIVgSpan 47 235 21 495 12 488 8 374 6 030 4 610gSpan+(pre) 39 394 17 853 10 338 6 948 4 983 3 807gSpan+(pos) 40 973 18 752 10 826 7 279 5 213 3 957gRed 33 974 15 253 8 770 5 919 4 216 3 199

NCIgSpan 14 023 5 230 2 977 1 941 1 437 1 048gSpan+(pre) 12 476 4 624 2 639 1 734 1 290 936gSpan+(pos) 12 217 4 405 2 514 1 521 1 193 884gRed 11 395 4 034 2 288 1 478 1 098 781

memoria de esta solucion.

La primera version de gdFil que se usara en esta comparacion sera utilizando listas

de identificadores, la cual sera nombrada gdFil(LI). Recuerdese que la definicion del

algoritmo gdFil (ver seccion 5.2) usa la estructura DFSE que es un tipo de estructuras

de correspondencias. La version gdFil(LI) solamente se utilizara para ilustrar el ahorro de

recursos de memoria que se logra al eliminar los duplicados desde la etapa de enumeracion

de candidatos. La figura 6.1 muestra los registros de consumo de memoria de gdFil(LI),

gRed, y gSpan utilizando la coleccion HIV.

El consumo de memoria, para los algoritmos comparados en la figura 6.1, se comporta

estable para los diferentes umbrales de frecuencia evaluados. Notese que se selecciono un

intervalo amplio entre el 2% y el 20% del tamano de la coleccion. Este comportamiento

estable se debe al uso de las listas de identificadores en estos tres algoritmos. Los algorit-

mos gdFil(LI) y gRed logran ahorrar alrededor de un 45% y un 25%, respectivamente,

101

Page 115: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.1: Uso de la memoria en los algoritmos que utilizan listas de identificadores(gdFil(LI), gRed, y gSpan) en la coleccion HIV.

de la memoria utilizada por gSpan. La mejora obtenida por gdFil(LI) sobre gRed en

cuanto al uso de memoria tambien es apreciable (alrededor de un 25%). Sin embargo,

gdFil(LI) alcanza en casi todos los casos evaluados peores tiempos de ejecucion que gRed

(ver figura 6.2).

El algoritmo gdFil(LI), al igual que la version original de gdFil, elimina todos los

candidatos duplicados durante la etapa de enumeracion; es decir, realiza las podas de los

duplicados antes de filtrar los candidatos infrecuentes. Por tanto, el numero de pruebas

CF puede ser mayor que las realizadas en gRed e incluso que gSpan (ver tabla 6.4). La

estrategia de pre-filtraje en gdFil sı tiene un gran impacto en la reduccion de numero

de pruebas CF. En efecto, la ultima fila de la tabla 6.4 muestra el numero de pruebas

CF que se hubieran requerido realizar para podar los duplicados, antes de la poda de

los infrecuentes, si no se implementa el pre-filtraje. Notese que al comparar las ultimas

dos filas de la tabla, en gdFil fue posible reducir en un 75% el numero de pruebas CF

gracias al pre-filtraje.

La version original de gdFil incorpora el recurso de las estructuras de correspon-

dencias para reducir el costo de las pruebas de sub-isomorfismo. La estructura DFSE y

la eliminacion de los duplicados durante la etapa de enumeracion son dos factores que

unidos logran muy buenos resultados. Notese que al eliminar los duplicados a tiempo

102

Page 116: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 6.4: Numero de pruebas CF realizadas por los algoritmos gSpan, gRed, y gdFilutilizando la coleccion PTE para varios umbrales de frecuencia. La ultima fila muestrael numero de pruebas CF que se hubieran requerido realizar si no se implementa elpre-filtraje en gdFil.

Algoritmo\umbral 2% 3% 4% 5% 6% 7%

gSpan 326 559 46 445 15 709 9 176 5 239 4 281gRed 161 202 21 947 7 123 4 227 2 433 2 007gdFil 412 767 50 374 16 105 10 398 5 757 4 321Sin pre-filtraje 1 499 743 256 762 107 567 66 330 38 172 31 071

se reduce el costo de mantener la estructura DFSE tanto en tiempo de ejecucion como

en memoria. La figura 6.2 muestra la ventaja que logra gdFil sobre los demas algorit-

mos y esto es gracias a la combinacion de los dos factores antes mencionados. En este

experimento se incluyeron versiones de gRed y gSpan usando estructuras de correspon-

dencias (adaptando la estructura DFSE). Estas versiones gRed(EC) y gSpan(EC) logran

un mejor desempeno que sus correspondientes versiones originales gRed y gSpan en las

colecciones con mayor tamano (CAN2DA99, HIV, y NCI); sin embargo, en PTE (una

coleccion pequena pero con muchos SCF) el uso de tales estructuras no implico mejoras

sobre las versiones originales. En las colecciones de mayor cantidad de grafos es mayor el

numero de pruebas de sub-isomorfismo a realizar; por tanto, el uso de la estructura DFSE

logra reducir los tiempos de ejecucion. En las colecciones pequenas el costo de mantener

la estructura DFSE para todos los posibles candidatos (duplicados y utiles) puede ser

comparable con el costo de las pocas pruebas de sub-isomorfismo que se realizan, sobre

todo cuando es una coleccion como PTE que tiene muchos SCF. En gdFil, como se men-

ciono anteriormente, solamente se mantiene la estructura DFSE para candidatos utiles;

logrando ası los mejores tiempos de ejecucion.

En cuanto al uso de la memoria, es conocido que los algoritmos que usan estructuras

de correspondencias consumen mas memoria que los que no usan tal recurso [Worlein

et al., 2005]. Si se comparan las figuras 6.1 y 6.3 puede apreciarse el aumento del uso de

103

Page 117: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.2: Tiempos de ejecucion de gdFil, gdFil(LI), gRed, y gSpan.

Figura 6.3: Uso de la memoria en los algoritmos que utilizan estructuras de correspon-dencias (gdFil, gRed(EC), gSpan(EC), y Gaston) en la coleccion HIV.

memoria al utilizar estructuras de correspondencias. La figura 6.3 muestra el consumo de

memoria de gdFil con respecto a otros algoritmos que usan estructuras de corresponden-

cias; se incluyo el algoritmo Gaston que tambien usa estructuras de correspondencias.

Mas adelante en el documento se incluiran otros experimentos usando a Gaston. Como

puede apreciarse, gdFil consume menos memoria que otras soluciones que usan estruc-

turas de correspondencias y esto es gracias a la eliminacion temprana de los candidatos

duplicados.

104

Page 118: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

6.5. Experimentos con grCAM

El algoritmo grCAM es una mejora al algoritmo FFSM que dedica menos tiempo

a detectar los candidatos duplicados. En grCAM se filtran candidatos, inutiles para la

minerıa, en la fase de pre-filtraje y luego se determina la duplicidad (o no) de cada

candidato en la fase pos-calculo.

Primero, se evaluara el impacto de la fase de pre-filtraje en grCAM. Esta fase esta en-

cargada de aplicar la propiedad de no-utilidad para filtrar candidatos que desde ese mo-

mento se puede determinar que son duplicados y que no seran utiles durante la minerıa.

La tabla 6.5 muestra el numero de candidatos duplicados que fueron encontrados por

ambos algoritmos utilizando las colecciones de grafos (PTE, CAN2DA99, HIV, y NCI) y

variando los umbrales de frecuencia. En todos los casos, grCAM logra reducir el numero

de duplicados. Por ejemplo, en CAN2DA99 para los umbrales de frecuencia 5% y 7%,

grCAM reduce hasta el 25% de los candidatos respecto a FFSM.

Luego, el impacto de la fase de pos-calculo en grCAM puede ser constatado al com-

parar el numero de pruebas CF que realiza cada algoritmo (ver tabla 6.6). La tabla 6.6

muestra el numero de pruebas CF realizadas por los algoritmos grCAM y FFSM utili-

zando las colecciones de grafos (PTE, CAN2DA99, HIV, y NCI) y variando los umbrales

de frecuencia. El numero de pruebas CF realizadas por grCAM es siempre menor que

en FFSM; por ejemplo NCI para los umbrales de frecuencia 5% y 7%, grCAM reduce

hasta el 30% de las pruebas CF respecto a FFSM.

En esta comparacion, independientemente de que grCAM posee los mejores registros,

la mejora alcanzada por grCAM en PTE para los soportes evaluados es pequena. Notese

que la reduccion alcanzada es menor que el 10%. Este hecho tuvo lugar debido a la

distribucion de las etiquetas en esta coleccion de grafos. En PTE usando el 2% como

umbral de frecuencia, los SCF contienen solamente tres etiquetas de aristas y una sola

105

Page 119: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 6.5: Numero de candidatos duplicados que pasaron a la etapa de deteccion deduplicados en algoritmos grCAM y FFSM.

Algoritmo\umbral 2% 3% 4% 5% 6% 7%

PTE

grCAM 521 014 56 023 15 217 8 236 4 290 3 451

FFSM 575 302 62 216 16 866 9 652 5 462 4 516

HIV

grCAM 49 175 20 206 10 950 6 965 4 754 3 463

FFSM 59 550 25 024 13 706 8 822 6 122 4 537

CAN2DA99

grCAM 37 918 11 523 5 835 3 660 2 302 1 632

FFSM 45 924 14 545 7 548 4 839 3 157 2 237

NCI

grCAM 12 818 6 266 4 168 1 408 940 627

FFSM 15 331 7 586 5 073 1 911 1 198 788

Tabla 6.6: Numero de pruebas CF realizadas por los algoritmos grCAM y FFSM.

Algoritmo\umbral 2% 3% 4% 5% 6% 7%

PTE

grCAM 643 121 77 156 20 746 11 624 6 344 5 165

FFSM 712 283 80 362 22 821 13 279 7 600 6 302

HIV

grCAM 69 266 29 425 16 360 10 625 7 388 5 457

FFSM 84 677 36 515 20 349 13 244 9 272 6 904

CAN2DA99

grCAM 52 754 16 891 8 822 5 651 3 631 2 577

FFSM 63 015 20 822 11 055 7 175 4 728 3 365

NCI

grCAM 28 121 12 831 6 371 2 338 1 641 1 111

FFSM 33 105 16 114 7 720 3 140 2 231 1 761

de estas etiquetas prevalece, en cuando al numero de apariciones, con respecto a las

otras dos. Por tanto, el desempeno de la fase de pre-filtraje se ve afectado ya que no

es posible filtrar muchos candidatos. Lo mismo ocurre con el pos-calculo ya que no es

posible reutilizar muchos resultados previos.

106

Page 120: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.4: Tiempos de ejecucion de grCAM, FFSM, Gaston, y MoFa.

Respecto a los tiempos de ejecucion, se realizara una comparacion entre grCAM,

FFSM, y otros algoritmos que de igual manera usan estructuras de correspondencias

(Gaston y MoFa). La figura 6.4 muestra los tiempos de ejecucion de estos cuatro al-

goritmos en las colecciones PTE, CAN2DA99, HIV, y NCI variando los umbrales de

frecuencia. Puede apreciarse que los mejores registros para las tres colecciones con ma-

yor tamano (CAN2DA99, HIV, y NCI) son alcanzados por grCAM. Los algoritmos FFSM

y MoFa logran siempre los peores resultados. En algunos casos el tiempo de ejecucion de

MoFa fue truncado en los graficos de la figura 6.4 para resaltar los valores de los otros

algoritmos. Gaston, por su parte, logra los mejores registros en la coleccion de menor

tamano (PTE); sin embargo, Gaston no pudo completar la ejecucion para los umbrales

mas bajos en NCI debido a sus altos requerimientos de memoria.

Los requerimientos de memoria de grCAM son ligeramente menores (ver figura 6.6)

a los alcanzados por FFSM y Gaston.

107

Page 121: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

6.6. Comparacion de los mejores algoritmos

Los mejores tiempos de ejecucion para umbrales bajos de frecuencia, segun los resul-

tados reportados en las secciones 6.4 y 6.5, son alcanzados por gdFil, grCAM, y Gaston.

Por otro lado, los consumos de memoria mas bajos se logran por los algoritmos basados

en listas de identificadores; entre estos se destaca gRed porque logra buenos tiempos de

ejecucion, en algunos casos, comparables con los alcanzados por gdFil, a pesar de usar

listas de identificadores. En esta seccion se realizara una comparacion mas completa

entre los desempenos de estos cuatro algoritmos (gdFil, grCAM, Gaston, y gRed).

La figura 6.5 muestra un resumen de los tiempos de respuesta para los cuatro al-

goritmos involucrados en esta comparacion en las colecciones de grafos reales (PTE,

CAN2DA99, HIV, y NCI) variando los umbrales de frecuencia. El desempeno de los al-

goritmos en la coleccion PTE difiere un poco de los resultados alcanzados en las otras

colecciones, por ejemplo:

1. Gaston es el mas rapido en la coleccion PTE pero no lo es en las otras colecciones,

2. grCAM es el mas lento en la coleccion PTE y es el segundo mas rapido en las otras

colecciones,

3. gdFil no es mas rapido en la coleccion PTE (se comporta parecido a gRed en PTE)

y es el mas rapido en las otras colecciones,

4. gRed, a pesar de utilizar listas de identificadores, logra resultados comparables con

los demas algoritmos que utilizan estructuras de correspondencias.

En la seccion 6.5 se explicaron algunas cuestiones que justificaban el mal desempeno

de grCAM en la coleccion PTE. El tamano de la coleccion de grafos, la topologıa de los

grafos (tamano, densidad de aristas, etc.), y el conjunto de etiquetas, son aspectos que

108

Page 122: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.5: Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed.

inciden en el desempeno de los algoritmos. Por tanto, una buena solucion para hacer

un analisis mas detallado de los algoritmos consistirıa en utilizar colecciones de grafos

artificiales construidas utilizando el generador sintetico desarrollado por Kuramochi &

Karypis [2001]. Los parametros que requiere este generador (PD, PT , PV , PE, Pi, y

PL) fueron explicados en la seccion 6.1. El parametro PD es variado entre los valores

{200, 20000, 200000} para incluir colecciones de diversos tamanos, de igual manera los

parametros PT , PV , y PE, son asignados segun lo explicado en la seccion 6.1. Como

el parametro Pi ofrece un estimado de la complejidad estructural de los grafos de la

coleccion (ver seccion 6.1), se incluyen los valores 3 y 11 para contrastar los desempenos

de los algoritmos.

La tabla 6.7 muestra los tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed

en algunas colecciones de grafos artificiales variando los parametros PD e Pi. En estos

experimentos se utilizo 3% como umbral de frecuencia. Como se ha dicho anteriormente,

Gaston es un algoritmo que logra su mejor desempeno en la etapa de generar los candida-

109

Page 123: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

tos con menor complejidad estructural (ver seccion 3.2.4). Este hecho puede constatarse

en este experimento. En efecto, Gaston logra siempre los mejores tiempos de ejecucion

cuando el parametro Pi = 3; sin embargo, esto no ocurre para Pi = 11. Notese, que para

Pi = 11 Gaston nunca es el mejor y el resto de los algoritmos gana segun sea el caso.

En las colecciones de grafos de pequeno tamano (PD = 200) puede apreciarse el buen

desempeno de gRed. Notese que para Pi = 3 y PD = 200 gRed fue el segundo mejor

algoritmo aventajado solamente por Gaston, mientras que para Pi = 11 y PD = 200

gRed logro el mejor resultado manteniendo una ventaja mayor de 3 minutos sobre el

segundo mejor algoritmo.

Tabla 6.7: Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones arti-ficiales variando los parametros PD e Pi.

Parametros de la coleccion Tiempos de ejecucion en min.

PD PT PV PE Pi gdFil grCAM Gaston gRed

200 30 40 4 3 0.102 0.112 0.076 0.10120000 30 40 4 3 29.65 31.48 28.54 42.27200000 30 40 4 3 123.5 134.6 110.8 215.4

200 30 40 4 11 29.31 22.5 42.12 19.2420000 30 40 4 11 113.9 104.4 176.8 183.3200000 30 40 4 11 332.6 361.8 423.2 454.7

La tabla 6.8 muestra los tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed,

al variar los parametros PD e PE en las colecciones artificiales. De igual manera, se

utilizo 3% como umbral de frecuencia. En estos experimentos se utilizo como valor fijo

Pi = 11 para considerar solamente colecciones de grafos con una alta complejidad estruc-

tural. Puede apreciarse la mejora en el desempeno de grCAM al aumentar el parametro

PE desde 2 hasta 8. Notese que para PE = 8 los mejores tiempos son alcanzados por

grCAM. Respecto a los demas algoritmos, gRed confirma su validez para procesar co-

lecciones pequenas (PD = 200), logrando el mejor desempeno en casi todos los casos

110

Page 124: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

excepto para PV = 8 donde logra un resultado muy parecido a grCAM.

Tabla 6.8: Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones arti-ficiales variando los parametros PD y PE .

Parametros de la coleccion Tiempos de ejecucion en min.

PD PT PV PE Pi gdFil grCAM Gaston gRed

200 30 40 2 11 37.75 41.22 38.45 34.6220000 30 40 2 11 182.4 201.3 198.4 245.5200000 30 40 2 11 412.7 487.4 443.5 501.4

200 30 40 4 11 29.31 22.5 42.12 19.2420000 30 40 4 11 113.9 104.4 176.8 183.3200000 30 40 4 11 332.6 361.8 423.2 454.7

200 30 40 8 11 14.72 11.01 16.38 11.8720000 30 40 8 11 89.62 81.55 102.7 119.3200000 30 40 8 11 276.3 243.3 342.5 422.8

La tabla 6.9 muestra los tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed,

al variar los parametros PD e PV en las colecciones artificiales. De igual manera, se

utilizo 3% como umbral de frecuencia e Pi = 11. Puede apreciarse como los tiempos

de ejecucion de todos los algoritmos disminuyen al aumentar el parametro PV desde 20

hasta 60. En particular, notese que gdFil va escalando en las primeras posiciones en

la medida que aumenta PV ; inclusive, para PV = 60 y PD = 200 alcanza la segunda

posicion pero con un resultado muy parecido a gRed.

La figura 6.6 muestra el uso de memoria para estos cuatro algoritmos utilizando 3%

como umbral de frecuencia. En este experimento se construyeron colecciones artificiales

usando los valores por omision para los parametros PV = 40, PE = 4, y PT = 30. El

parametro PD fue variado utilizando valores superiores a 200000 para ilustrar como se

incrementa el uso de la memoria cuando aumenta la cantidad de grafos en la coleccion,

sobre todo en los algoritmos gdFil, grCAM, y Gaston que utilizan estructuras de co-

rrespondencias. Ademas, se incluyeron los resultados para los dos valores del parametro

Pi utilizados (Pi = 3 y Pi = 11). Notese que el parametro Pi tiene gran influencia en

111

Page 125: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Tabla 6.9: Tiempos de ejecucion de gdFil, grCAM, Gaston, y gRed en colecciones arti-ficiales variando los parametros PD y PV .

Parametros de la coleccion Tiempos de ejecucion en min.

PD PT PV PE Pi gdFil grCAM Gaston gRed

200 30 20 4 11 44.23 49.88 51.93 41.6620000 30 20 4 11 190.4 184.8 195.3 233.1200000 30 20 4 11 376.5 387.5 397.8 401.2

200 30 40 4 11 29.31 22.5 42.12 19.2420000 30 40 4 11 113.9 104.4 176.8 183.3200000 30 40 4 11 332.6 361.8 423.2 454.7

200 30 60 4 11 0.98 1.64 1.23 0.9120000 30 60 4 11 65.87 78.65 81.32 76.4200000 30 60 4 11 143.3 176.3 183.5 179.4

el desempeno de los algoritmos. Por ejemplo, para Pi = 3 gdFil puede procesar hasta

colecciones con un millon de grafos; sin embargo, para Pi = 11 este algoritmo solo puede

procesar colecciones con alrededor de medio millon de grafos.

En el caso de los algoritmos que utilizan estructuras de correspondencias, fue posible

determinar valores de PD a partir de los cuales no fue posible continuar la ejecucion

debido a requerimientos de memoria superiores a 4 GB (se especifican utilizando pun-

tos suspensivos en la figura 6.6). Como puede verse, el algoritmo gRed es el que posee

los menores requerimientos de memoria ya que usa listas de identificadores en lugar de

estructuras de correspondencias. Con respecto a los que utilizan estructuras de corres-

pondencias, gdFil siempre utiliza menos memoria que grCAM y Gaston lo cual le permite

procesar colecciones mas grandes.

Gaston es un algoritmo que logra buenos tiempos de ejecucion cuando los SCF

tienen poco tamano promedio (Pi = 3). En cuanto al consumo de memoria, Gaston

es el algoritmo que demanda mas recursos.

gRed, segun los experimentos, posee buen desempeno en colecciones con pocos gra-

112

Page 126: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.6: Uso de la memoria para gdFil, grCAM, Gaston, y gRed.

fos (PD < 1000), debido a que en estas colecciones las pruebas de sub-isomorfismo

consumen generalmente poco tiempo. No obstante, este algoritmo tambien pudie-

ra ser recomendable en colecciones de mayor tamano ya que mantiene tiempos de

ejecucion aceptables en comparacion con los demas algoritmos, y es uno de los

algoritmos que menos recursos de memoria demanda.

grCAM logra buenos tiempos de ejecucion cuando la coleccion de grafos posee

muchas etiquetas de aristas (PE ≥ 8, ver tabla 6.8). Este algoritmo no es reco-

mendable para procesar colecciones de grafos con pocas etiquetas (PE < 4). Por

sus requerimientos de memoria, aunque es ligeramente mejor que Gaston, pue-

den ocurrir problemas al procesarse colecciones de grafos muy grandes (Pi = 11 y

PD ≥ 700000).

gdFil es un algoritmo que casi siempre logro entre el primer y el segundo me-

jor resultado en los experimentos realizados. En los resultados de la tabla 6.9 se

constato que cuando la coleccion posee muchas etiquetas de vertices (PV > 40) el

algoritmo logra los mejores tiempos. No obstante, en los demas experimentos gdFil

muestra un buen desempeno, sobre todo en las colecciones con mayor numero de

grafos (ver los resultados con NCI y en las colecciones artificiales con PD ≥ 20000).

113

Page 127: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Los requerimientos de memoria de gdFil son menores en comparacion con otros

algoritmos que usan estructuras de correspondencias, aunque siempre fue aventa-

jado por los algoritmos que usan listas de identificadores en lugar de estructuras

de correspondencias.

6.7. Experimentos con gdFil-closed

Los algoritmos para la minerıa de SCF cerrados que se han reportado hasta ahora

son CloseGraph y MoFa(closed) (ver seccion 3.3.1). Estos algoritmos seran comparados

con gdFil-closed respecto a los tiempos de ejecucion.

La figura 6.7 muestra los tiempos de ejecucion de gdFil-closed, CloseGraph, y MoFa(clo-

sed) en las colecciones PTE, CAN2DA99, HIV, y NCI variando los umbrales de frecuen-

cia. Como puede verse el algoritmo gdFil-closed logra siempre los mejores tiempos de

ejecucion. Comprobando ası que la estrategia de poda propuesta por el gdFil original en

combinacion con la poda de terminacion temprana permite obtener mejores tiempos de

respuesta.

6.8. Sıntesis y conclusiones

En este capıtulo se presento una comparacion de los algoritmos propuestos en esta

tesis con respecto a los algoritmos del estado del arte. Se utilizaron colecciones de datos

reales de diversos tamanos las cuales han sido previamente utilizadas, en la literatura,

para hacer este tipo de comparaciones. Ademas, se realizaron experimentos en colecciones

de datos artificiales que permitieron una mejor caracterizacion de los algoritmos con

mejor desempeno.

En los primeros experimentos se pudo constatar el efecto positivo que tuvieron las

114

Page 128: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Figura 6.7: Tiempos de ejecucion de gdFil-closed, CloseGraph, y MoFa(closed).

nuevas propiedades al reducir el numero de pruebas CF. De este modo se comprobo,

en la practica, la validez de los resultados teoricos que dan cumplimiento al objetivo

particular 1 de esta investigacion.

Luego, se comprobo el buen desempeno del algoritmo gdFil para la minerıa de todos

los SCF. Este algoritmo logro mejores tiempos de ejecucion que los algoritmos reportados

en la literatura, en casi todos los experimentos. Solamente fue aventajado por Gaston

cuando los SCF tienen tamano promedio pequeno (Pi = 3). Por tanto, con el algoritmo

gdFil se logro el cumplimiento del objetivo particular 2. Adicionalmente se propusieron

otros dos algoritmos gRed y grCAM los cuales logran superar a gdFil en algunos casos.

Finalmente, se pudo comprobar la superioridad del algoritmo gdFil-closed con res-

pecto a los algoritmos reportados para la minerıa de SCF cerrados. Con estos resultados

se pudo corroborar el cumplimiento del objetivo particular 4. De este modo, el objetivo

general de esta tesis fue cumplido.

115

Page 129: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Capıtulo 7

Conclusiones, aportaciones y trabajo

futuro

Encontrar algoritmos eficientes para la minerıa de SCF sigue siendo una lınea de in-

vestigacion abierta. Es cierto que en los ultimos anos esta tematica ha tenido un notable

avance; no obstante, quedan problemas que no han sido estudiados con suficiente pro-

fundidad. Los algoritmos disenados bajo el paradigma de crecimiento de patrones han

mostrado su supremacıa respecto a aquellas soluciones propuestas bajo el paradigma

Apriori, sobre todo cuando es necesario procesar colecciones con mas de 200000 grafos y

para bajos umbrales de frecuencia, inferiores al 10% del tamano de la coleccion. Reco-

rrer el espacio de busqueda en profundidad, mediante el crecimiento de patrones, permite

obtener buenos tiempos de respuestas y ahorrar notablemente los recursos de memoria.

Todos los algoritmos desarrollados bajo el paradigma de crecimiento de patrones

necesitan comprobar, mediante pruebas CF, si cada candidato es duplicado o no. Por lo

tanto, algunos resultados de esta tesis se han enfocado en acelerar este proceso dentro de

dicho paradigma. Para esto, nuevas propiedades de la codificacion DFS y la codificacion

CAM fueron propuestas y demostradas matematicamente como parte de los resultados

116

Page 130: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

de esta tesis. Adicionalmente, estas propiedades fueron utilizadas para disenar cuatro

algoritmos (gRed, gdFil, grCAM, y gdFil-closed) que dedican menos tiempo a detectar

duplicados, en comparacion con los existentes. Los algoritmos gRed, gdFil, y grCAM

fueron disenados para la minerıa de todos los SCF, mientras que gdFil-closed es una

adaptacion de gdFil para la minerıa de los SCF cerrados.

Por otro lado, las pruebas de sub-isomorfismo constituyen la tarea que mas tiempo

demanda en la minerıa de SCF. Por tanto, en esta tesis se propone un nuevo tipo de

estructura de correspondencias llamada DFSE que permite reducir el costo de tales

pruebas en los algoritmos que utilizan la codificacion DFS. Esta estructura de datos fue

utilizada en el algoritmo gdFil, pero considerando solamente los candidatos utiles (no

duplicados) para la minerıa.

7.1. Conclusiones

Los algoritmos para la minerıa de todos los SCF fueron comparados entre sı y respecto

a los mejores algoritmos reportados en la literatura. Teniendo en cuenta los experimentos

reportados se pudo llegar a las siguientes conclusiones:

Se recomienda usar el algoritmo gRed para procesar colecciones con pocos grafos,

y para procesar cualquier coleccion de grafos cuando se desea ahorrar los recursos

de memoria.

Si se cuenta con recursos de memoria suficientes y se quiere procesar una coleccion

con muchos grafos (a partir de 20 000 grafos segun los resultados experimentales),

en general, se recomienda utilizar gdFil.

No obstante, si se cumplen las condiciones anteriores y la coleccion de grafos posee

muchas etiquetas de aristas (segun los experimentos a partir de 8 etiquetas de

117

Page 131: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

aristas) es recomendable utilizar grCAM.

Por otra parte, en muchas aplicaciones no es practico minar todos los SCF presentes

en una coleccion de grafos; por ejemplo, la coleccion PTE contiene 136981 patrones fre-

cuentes si se toma como umbral de frecuencia en el 2%. Como parte de esta investigacion

se abordo el problema de la minerıa de SCF cerrados. Los SCF cerrados constituyen un

subconjunto de los SCF que permite ademas describir el conjunto de todos los SCF y

a sus correspondientes conjuntos soporte. El algoritmo gdFil-closed constituye una solu-

cion que integra los tres aspectos abordados en esta tesis: reducir el tiempo dedicado a

detectar duplicados, reducir el costo de las pruebas de sub-isomorfismo, y encontrar to-

dos los SCF cerrados. Este algoritmo mostro mejor desempeno que todos los algoritmos

reportados para este tipo de minerıa.

7.2. Aportaciones del trabajo de investigacion

Las aportaciones de este trabajo de investigacion son las siguientes:

1. Nuevas propiedades para la codificacion DFS que demostraron su utilidad en la

minerıa de SCF.

a) Dos condiciones suficientes de no-minimalidad para los codigos DFS. Estas

condiciones son verificables con complejidad computacional en tiempo O(1)

durante la ejecucion de los algoritmos.

b) Una propiedad de reutilizacion para los codigos DFS. Esta propiedad permite

utilizar el resultado de una prueba de forma canonica (prueba CF, sus siglas

en ingles, Canonical Form) que tuvo lugar para un codigo para predecir en

algunos casos, la minimalidad o no de otros codigos sin necesidad de realizar

118

Page 132: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

sus correspondientes pruebas CF. A partir de esta propiedad es posible inferir

otras propiedades muy utiles para la minerıa de SCF. Como corolarios de esta

propiedad se obtuvieron los siguientes resultados:

Una propiedad de corte para los codigos DFS que permite conocer como

se distribuyen los codigos mınimos y los no-mınimos segun el orden lexi-

cografico DFS.

Una propiedad de localizacion de corte que ofrece un metodo eficiente

basado en busquedas binarias para localizar las fronteras entre los codigos

mınimos y los no-mınimos.

Una propiedad de acotacion al numero de pruebas CF que constituye una

demostracion teorica de cuanto es posible reducir el numero de pruebas

CF utilizando la propiedad de reutilizacion.

2. Nuevas propiedades para la codificacion CAM que demostraron su utilidad en la

minerıa de SCF.

a) Una propiedad de no-utilidad para las matrices de adyacencia. Esta propie-

dad ofrece condiciones bajo las cuales una CAM suboptimal es una CAM

suboptimal propia. Esta propiedad es verificable en tiempo O(1).

b) Cuatro propiedades de reutilizacion para las matrices de adyacencia. Estas

propiedades permiten utilizar el resultado de una prueba CF que tuvo lugar

en una matriz X , para predecir en algunos casos, el resultado de la prueba

CF en otra matriz Y sin necesidad de realizar dicha prueba.

3. El algoritmo gRed que utiliza las propiedades de la codificacion DFS para reducir

el tiempo dedicado a detectar duplicados.

119

Page 133: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

4. La estructura DFSE que es un nuevo tipo de estructura de correspondencia adap-

tada particularmente para la minerıa de SCF usando codigos DFS.

5. El algoritmo gdFil que utiliza las propiedades de la codificacion DFS para eliminar

todos los duplicados durante el proceso de enumeracion de candidatos y reduce

el costo de las pruebas de sub-isomorfismo mediante el empleo de la estructura

DFSE. En gdFil, se construye la estructura DFS solo para los candidatos utiles

(no duplicados).

6. El algoritmo grCAM que utiliza las propiedades de la codificacion CAM para re-

ducir el numero de candidatos y el numero de pruebas CF.

7. El algoritmo gdFil-closed para la minerıa de SCF cerrados.

7.3. Trabajo futuro

Dos de los algoritmos propuestos en esta investigacion reducen el costo de las prue-

bas de sub-isomorfismo utilizando estructuras de correspondencias y uno de ellos (gRed)

utiliza listas de identificadores. En el caso del algoritmo gdFil, las estructuras de co-

rrespondencias fueron utilizadas con exito al considerar solamente los candidatos utiles.

No obstante, el costo en memoria de gdFil sigue siendo alto. Este costo pudiera ser re-

ducido si se utilizaran estrategias hıbridas como las planteadas en la seccion 2.4.3. Por

tanto, como trabajo futuro, se propone disenar nuevas estructuras de datos hıbridas que

permitan reducir el costo en memoria de mantener indizada la coleccion de grafos.

En esta tesis se propusieron varias propiedades para la codificacion DFS. Estas pro-

piedades permiten reducir el tiempo dedicado a la deteccion de duplicados durante la

minerıa. Por ejemplo, el algoritmo gdFil-closed utiliza estas propiedades para mejorar

los tiempos de respuesta en la minerıa de SCF cerrados. No obstante, aun no se han

120

Page 134: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

estudiado propiedades de las formas de representacion que sean especıficas para la mi-

nerıa de SCF cerrados. Por tanto, como trabajo futuro tambien se propone estudiar la

codificacion DFS con el fin de perfeccionar las estrategias de poda especıficas para la

minerıa de SCF cerrados.

121

Page 135: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Anexos

Notaciones

〈V,E, L, l〉 Grafo etiquetado con sus cuatro componentes

V Conjunto de vertices de un grafo

E Conjunto de aristas de un grafo

L Conjunto de etiquetas de un grafo

l Funcion que asigna etiquetas a los vertices y aristas de un grafo

u, v, v1, v2, . . . , vk Vertices de un grafo

{u, v} Arista de un grafo (Si u y v son vertices de un grafo)

{A,B,C,. . . } Conjunto especificando cuales son sus elementos A,B,C, . . .

G, G1, G2 Grafos etiquetados

V (G) Conjunto de vertices del grafo G

E(G) Conjunto de aristas del grafo G

L(G) Conjunto de etiquetas del grafo G

A ⊆ B A es subconjunto de B (Si A y B son conjuntos)

G1 ⊆ G2 G1 es subgrafo de G2 (Si G1 y G2 son grafos)

i, j, k, t, h Subındices (numeros enteros no negativos)

O(·) Notacion asintotica para la complejidad de algoritmos (Big O)

n! Factorial del numero n

122

Page 136: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

f : A→ B f es una funcion con dominio A y co-dominio es B

f(x) Valor que toma la funcion f al ser evaluada en x

∈ Pertenencia

6∈ No pertenencia

∪ Union de conjuntos

\ Diferencia de conjuntos

∅ Conjunto vacıo

∀ Cuantificador universal

∃ Cuantificador existencial

∧ Operador logico de conjuncion

∨ Operador logico de disyuncion

G1 ⊂s G2 Existe un sub-isomorfismo de G1 a G2

D Coleccion de grafos sin especificar sus elementos

{G1, G2, . . . , Gm} Coleccion de grafos especificando sus elementos

Gi Grafo de una coleccion

g, g′, gi, gj Subgrafos de algun grafo en una coleccion

∆(g,D) Conjunto soporte de g en D

σ(g,D) Frecuencia de g en D

δ Umbral de frecuencia

Sk Conjunto de SCF de tamano k

S Resultado de la minerıa (Conjunto de todos los SCF)

← Asignacion en los pseudo-codigos

� Operador de extension en el paradigma crecimiento de patrones

�c Operador para extensiones que no anaden un nuevo vertice

�v Operador para extensiones que si anaden un nuevo vertice

123

Page 137: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

| · | Operador de cardinalidad

T, T0, T1, T2 Subarboles de ciertos grafos (Arboles DFS o Arboles BFS)

≺e Orden lexicografico entre aristas de codigos DFS

≺l Orden lexicografico entre aristas de codigos DFS que

comparten los mismos vertices de origen y de destino

≺s Orden lexicografico entre codigos DFS

≺ Orden lexicografico entre codigos de matrices

e, e1, e2 Aristas de codigos DFS

e0, e1, . . . , em−1 Un codigo DFS de tamano m especificando sus aristas

li, lj Etiquetas de vertices

l(i,j) Etiqueta de la arista que conecta los vertices i-esimo y j-esimo

le1 , le2 , le Etiquetas de arista

s, s′, s0, s1, s2, . . . Codigos DFS o BFS

(xi,j)ni,j=0 Matriz de n× n donde cada celda (i, j) es xi,j

LI(g,D) Lista de identificadores de g respecto a D

LI(s,D) Lista de identificadores de s respecto a D

λ Apuntador a null

LC(g,Gi) Lista de correspondencias de g respecto a Gi

LC(s,Gi) Lista de correspondencias de s respecto a Gi

EC(g,D) Estructura de correspondencias de g respecto a D

EC(s,D) Estructura de correspondencias de s respecto a D

RE(s) Conjunto de todas las extensiones mas a la derecha para s

r(s) Numero de vertices en la rama mas a la derecha de s

Bi(s) Conjunto de las extensiones hacia atras para s que tienen vertice

destino con ındice i

124

Page 138: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Fi(s) Conjunto de las extensiones hacia adelante para s que tienen vertice

origen con ındice i

H Uno de los conjuntos Fi(s) o Bi(s)

H Particion duplicada de H

H Particion util de H

e Corte no-canonico de H

e Corte canonico de H

fi Arista hacia adelante en la rama mas a la derecha que tiene vertice

origen con ındice i

e−1 Arista tomada en sentido inverso

ME(s) Conjunto de extensiones para s que producen codigos DFS mınimos

ϕ(g,Gi) Numero de subgrafos de Gi que son isomorfos a g

I(g,D) Numero de correspondencias de g en D

ϕ(g, g � e, Gi) Numero de subgrafos de Gi que son isomorfos a g y que pueden ser

extendidos usando e

L(g, g′, D) Numero de correspondencias extendidas de g′ en D con respecto a g

X, Y, Z Matrices de adyacencia

code(X) Codigo de la matrix X

join(X, Y ) Operacion de fusion en el algoritmo FFSM

extension(X) Operacion de extension en el algoritmo FFSM

C(X) Hijos de X en el algoritmo FFSM

C(n)(X) Subconjunto de C(X) que contiene las matrices de n× n

C(n+1)(X) Subconjunto de C(X) que contiene las matrices de (n + 1)× (n+ 1)

C(n)j (X) Subconjunto de C(n)(X) que contiene las matrices cuyas ultimas celdas

de aristas estan en la j-esima columna

125

Page 139: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

C(n+1)v,j (X) Subconjunto de C(n+1)(X) que contiene las matrices cuyas etiquetas

del ultimo vertice es igual a v y cuyas ultimas celdas de aristas estan

en la j-esima columna

M Uno de los conjuntos C(n+1)v,j (X) o C

(n)j (X)

P (A) La matriz obtenida a partir de A realizando la permutacion P

α(s) Numero de pruebas CF que realiza gSpan al procesar a s

β(s) Numero de pruebas CF que realiza gRed al procesar a s

PD Parametro: Cantidad de grafos en una coleccion

PT Parametro: Tamano promedio de los grafos en una coleccion

PV Parametro: Numero de etiquetas de vertices en una coleccion

PE Parametro: Numero de etiquetas de aristas en una coleccion

PL Parametro: Cantidad de SCF

Pi Parametro: Tamano promedio de los SCF

126

Page 140: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Acronimos

ADI ADjacency Index

ANSI American National Standards Institute

BFS Breadth First Search

CAM Canonical Adjacency Matrix

CF Canonical Form

DFS Depth First Search

SCF Subgrafo Conexo Frecuente

DFSE Depth First Search Embedding (usada para nombrar a la estructura

DFSE propuesta como resultado de esta tesis)

FCS Frequent connected subgraph

GB Giga Byte

GHz Giga Hertz

GNU GNU is Not Unix

IBM International Business Machines

PC Personal Computer

RAM Random Access Memory

XML eXtensible Markup Language

127

Page 141: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Trabajos publicados o aceptados

Los artıculos publicados derivados de este trabajo de investigacion son los siguientes:

Congresos:

1. A. Gago-Alonso, J.A. Carrasco-Ochoa, J.E. Medina-Pagola, and J.F. Martınez-

Trinidad. Duplicate Candidate Elimination and Fast Support Calculation

for Frequent Subgraph Mining. In Proceedings of IDEAL 2009, LNCS 5788,

pp. 292–299, c© Springer-Verlag Berlin Heidelberg, 2009.

2. A. Gago-Alonso, J. Medina-Pagola, J. A. Carrasco-Ochoa and J. F. Martınez-

Trinidad. Mining Frequent Connected Subgraphs Reducing the Number

of Candidates. In Proceeding of ECML-PKDD 2008, LNAI 5211, pp. 365–376,

c© Springer-Verlag Berlin Heidelberg, 2008.

Revistas JCR (Journal Citation Reports):

3. A. Gago-Alonso, A. Puentes-Luberta, J.A. Carrasco-Ochoa, J.E. Medina-Pagola,

and J.F. Martınez-Trinidad. A New Algorithm for Mining Frequent Con-

nected Subgraphs based on Adjacency Matrices. Accepted to appear in the

Journal Intelligent Data Analysis, Vol. 14, Number. 3, 2010.

128

Page 142: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

Referencias

R. Agrawal, T. Imielinski, & A.N. Swami. Mining Association Rules Between Sets ofItems in Large Databases. In Proceedings of the 1993 ACM SIGMOD InternationalConference on Management of Data, Washington, DC, paginas 207–216, 1993.

R. Agrawal & R. Srikant. Fast Algorithms for Mining Association Rules. In Proceedingsof the 1994 International Conference on Very Large Data Bases (VLDB’94), Santiago,Chile, paginas 487–499, 1994.

R. Agrawal & R. Srikant. Mining Sequential Patterns. In Proceedings of the InternationalConference on Data Engineering (ICDE’95), Taipei, Taiwan, paginas 3–14, 1995.

T. Assai, K. Abe, S. Kawasoe, H. Arimura, H. Sakamoto, & S. Arikawa. Efficient Subs-tructure Discovery from Large Semi-structured Data. In Proceedings of the 2002 SIAMInternational Conference on Data Mining (SDM’02), Arlington, VA, paginas 158–174,2002.

J.L. Balcazar, A. Bifet, & A. Lozano. Mining Frequent Closed Unordered Trees Th-rough Natural Representations. In Proceedings of the 15th International Conferenceon Conceptual Structures (ICCS 2007), paginas 347–359, 2007.

C. Borgelt. Canonical Forms for Frequent Graph Mining. In Proceedings of the 30th An-nual Conference of the Gesellschaft fur Klassifikation e.V., Freie Universitat, Berlin,paginas 8–10, 2006.

C. Borgelt & M.R. Berthold. Mining Molecular Fragments: Finding Relevant Substructu-res of Molecules. In Proceedings of the 2002 International Conference on Data Mining(ICDM’02), Maebashi, Japan, paginas 211–218, 2002.

C. Borgelt & M. Fiedler. Graph mining: Repository vs. Canonical Form. In Data Analy-sis, Machine Learning and Applications: Proceedings of the 31st Annual Conference ofthe Gesellschaft fur Klassifikation, paginas 229–236, 2007.

C. Borgelt, T. Meinl, & M.R. Berthold. Advanced Pruning Strategies to Speed UpMining Closed Molecular Fragments. In Proceedings of the 2004 IEEE InternationalConference on Systems, Man and Cybernetics, 5:4535–4570, 2004.

129

Page 143: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

D. Burdick, M. Calimlim, & J. Gehrke. Mafia: A Maximal Frequent Itemset Algorithmfor Transactional Databases. In Proceedings of the International Conference on DataEngineering (ICDE’01), Heidelberg, Germany, paginas 443–452, 2001.

D. Cook & L. Holder. Substructure Discovery using Minimum Description Length andBackground Knowledge. Journal of Artificial Intelligence Research, 1:231–255, 1994.

D. Cook & L. Holder. Graph-based Data Mining. IEEE Intelligent Systems, 15(2):32–41,1998.

T.H. Cormen, C.E. Leiserson, R.L. Rivest, & C. Stein. Introduction to Algorithms. MITPress, Segunda edicion, 2001.

E.H. de Graaf, J. Kazius, J.N. Kok, & W.A. Kosters. Visualization and Grouping ofGraph Patterns in Molecular Databases. In Proceedings of the Twenty-seventh SGAIInternational Conference on Artificial Intelligence, paginas 267–280, 2007.

M. Deshpande, M. Kuramochi, N. Wale, & G. Karypis. Frequent Substructure-BasedApproaches for Classifying Chemical Compounds. IEEE Transaction on Knowledgeand Data Engineering, 17(8):1036–1050, 2005.

D. Eppstein. Subgraph Isomorphism in Planar Graphs and Related Problems. In Pro-ceedings of the 6th Symposium on Discrete Algorithms (SODA’95), paginas 632–640,1995.

P. Foggia, C. Sansone, & M. Vento. A Performance Comparison of Five Algorithms forGraph Isomorphism. In Proceedings of the 3rd IAPR TC-15 Workshop on Graph-basedRepresentations in Pattern Recognition, paginas 188–199, 2001.

A. Gago-Alonso, J.A. Carrasco-Ochoa, J.E. Medina-Pagola, & J.F. Martınez-Trinidad.Duplicate Candidate Elimination and Fast Support Calculation for Frequent SubgraphMining. In Proceedings of the 10th International Conference on Intelligent Data En-gineering and Automated Learning (IDEAL’09), paginas 292–299, 2009.

A. Gago-Alonso, J.E. Medina-Pagola, J.A. Carrasco-Ochoa, & J.F. Martınez-Trinidad.Mining Frequent Connected Subgraphs Reducing the Number of Candidates. In Pro-ceedings of the European Conference on Machine Learning and Principles and Practiceof Knowledge Discovery in Databases (ECML-PKDD’08), paginas 365–376, 2008.

J. Han, H. Cheng, D. Xin, & X. Yan. Frequent Pattern Mining: Current Status andFuture Directions. Data Mining and Knowledge Discovery, 10th Anniversary Issue,15(1):55–86, 2007a.

J. Han, J. Pei, & Y. Yin. Mining Frequent Patterns without Candidate Generation. InProceedings of the 2000 ACM-SIGMOD International Conference on Management ofData (SIGMOD’2000), Dallas, TX, paginas 1–12, 2000.

130

Page 144: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

S. Han, W.K. Ng, & Y. Yu. FSP: Frequent Substructure Pattern Mining. In Procee-dings of the 6th International Conference on Information, Communications and SignalProcessing, paginas 1–5, 2007b.

M. Hong, H. Zhou, W. Wang, & B. Shi. An Efficient Algorithm of Frequent ConnectedSubgraph Extraction. In Proceedings of the 7th Pacific-Asia Conference on KnowledgeDiscovery and Data Mining (PAKDD’03), paginas 40–51, 2003.

M.S. Hossain & R.A. Angryk. GDClust: A Graph-Based Document Clustering Tech-nique. In Proceedings of the 7th IEEE International Conference on Data MiningWorkshops, paginas 417–422, 2007.

H. Hu, X. Yan, H. Yu, J. Han, & X.J. Zhou. Mining coherent dense subgraphs acrossmassive biological networks for functional discovery. In Proceedings of the 2005 Inter-national Conference on Intelligent Systems for Molecular Biology (ISMB’2005), AnnArbor, MI, paginas 213–221, 2005.

J. Huan, W. Wang, D. Bandyopadhyay, J. Snoeyink, J. Prins, & A. Tropsha. MiningSpatial Motifs from Protein Structure Graphs. In Proceedings of 8th InternationalConference on Research in Computational Molecular Biology, San Diego, CA, paginas308–315, 2004a.

J. Huan, W. Wang, & J. Prins. Efficient Mining of Frequent Subgraph in the Presenceof Isomorphism. In Proceedings of the 2003 International Conference on Data Mining(ICDM’03), Melbourne, FL, paginas 549–552, 2003.

J. Huan, W. Wang, J. Prins, & J. Yang. SPIN: Mining Maximal Frequent Subgraphs fromGraph Databases. In Proceedings of the 2004 ACM SIGKDD International Conferen-ce on Knowledge Discovery in Databases (KDD’04), Seattle, WA, paginas 581–586,2004b.

A. Inokuchi. Mining Generalized Substructures from a Set of Labeled Graphs. In Pro-ceedings of the 4th IEEE International Conference on Data Mining (ICDM’04), LosAlamitos, CA, paginas 415–418, 2004.

A. Inokuchi, T. Washio, & H. Motoda. An Apriori-based Algorithm for Mining FrequentSubstructures from Graph Data. In Proceedings of the 2000 European Symposium onthe Principle of Data Mining and Knowledge Discovery (PKDD’00), Lyon, France,paginas 13–23, 2000.

A. Inokuchi, T. Washio, K. Nishimura, & H. Motoda. A Fast Algorithm for MiningFrequent Connected Subgraphs. Technical Report RT0448, In IBM Research, TokyoResearch Laboratory, 2002.

131

Page 145: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

M. Koyuturk, A. Grama, & W. Szpankowski. An Efficient Algorithm for DetectingFrequent Subgraphs in Biological Networks. Bioinformatics, 20(1):i200–i207, 2004.

M. Kuramochi & G. Karypis. Frequent Subgraph Discovery. In Proceedings of the 2001International Conference on Data Mining (ICDM’01), San Jose, CA, paginas 313–320,2001.

M. Kuramochi & G. Karypis. Finding Frequent Patterns in a Large Sparse Graph. DataMining and Knowledge Discovery, 11(3):243–271, 2005.

M. Kuramochi & G. Karypis. Discovering Frequent Geometric Subgraphs. InformationSystems, 32:1101–1120, 2007.

T. Matsuda, T. Horiuchi, H. Motoda, & T. Washio. Extension of Graph-based Inductionfor General Graph Structured Data. In Proceedings of the 4th Pacific-Asia Conferenceon Knowledge Discovery and Data Mining, paginas 420–431, 2000.

B.D. Mckay. Practical Graph Isomorphism. Congressus Numerantium, 30:45–87, 1981.

T. Meinl & M.R. Berthold. Hybrid Fragment Mining with MoFa and FSG. In Proceedingsof the 2004 IEEE International Conference on Systems, Man and Cybernetics, 5:4559–4564, 2004.

T. Meinl, M. Worlein, O. Urzova, I. Fischer, & M. Philippsen. The ParMol Package forFrequent Subgraph Mining. In Proceedings of the Third International Workshop onGraph Based Tools (GraBaTs’06), paginas 94–105, 2006.

H. Motoda. Pattern Discovery from Graph-Structured Data: A Data Mining Perspective.In Proceedings of the 20th International Conference on Industrial, Engineering andOther Applications of Applied Intelligent Systems, paginas 12–22, 2007.

S. Nijssen & J. Kok. A Quickstart in Frequent Structure Mining can Make a Differen-ce. In Proceedings of the 2004 ACM SIGKDD International Conference on KowledgeDiscovery in Databases (KDD’04), Seattle, WA, paginas 647–652, 2004a.

S. Nijssen & J. Kok. Frequent Graph Mining and its Application to Molecular Databa-ses. In Proceedings of the 2004 IEEE Conference on Systems, Man and Cybernetics(ICSMC2004), 5:4571–4577, 2004b.

S. Nijssen & J. Kok. The Gaston Tool for Frequent Subgraph Mining. In Proceedingsof the International Workshop on Graph-Based Tools (GraBaTs’04), paginas 77–87,2004c.

S. Nijssen & J. Kok. Frequent Subgraph Miners: Runtimes Don’t Say Everything. In Pro-ceedings Mining and Learning with Graphs (MLG 2006), workshop held with ECML-PKDD’06, Berlin, Germany, paginas 173–180, 2006.

132

Page 146: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

J. Paik, J. Nam, J. Hwang, & U.M. Kim. Mining Maximal Frequent Subtrees withLists-Based Pattern-Growth Method. In Proceedings of the 10th Asia Pacific WebConference (APWeb’08), paginas 93–98, 2008.

J. Pei, J. Han, B. Mortazavi-Asl, H. Pinto, Q. Chen, U. Dayal, & M.C. Hsu. PrefixSpan:Mining Sequential Patterns Efficiently by Prefix-projected Pattern Growth. In Pro-ceedings of the International Conference on Data Engineering (ICDE’01), Heidelberg,Germany, paginas 215–224, 2001.

J.R. Punin, M.S. Krishnamoorthy, & M.J. Zaki. Web Usage Mining: Languages andAlgorithms. In O. Opitz, M. Schwaiger (editores), Explanatory Data Analysis inEmpirical Research (series Studies in Classification, Data Analysis, and KnowledgeOrganization), paginas 266–281, 2002.

R.C. Read & D.G. Corneil. The Graph Isomorphism Disease. Journal of Graph Theory,1:339–334, 1977.

W. Rudin. Principles of Mathematical Analysis. McGraw-Hill, New York, Tercera edi-cion, 1976.

A. Srinivasan, R.D. King, S.H. Muggleton, & M. Sternberg. The Predictive ToxicologyEvaluation Challenge. In Proceedings of the 15th International Joint Conference onArtificial Intelligence (IJCAI’1997), Nagoya, Japan, paginas 1–6, 1997.

L. Thomas, S. Valluri, & K. Karlapalem. MARGIN: Maximal Frequent Subgraph Mining.In Proceedings of the 6th International Conference on Data Mining (ICDM’06), HongKong, paginas 1097–1101, 2006.

K. Tsuda & T. Kudo. Clustering Graphs by Weighted Substructure Mining. In Procee-dings of the 23rd International Conference on Machine Learning, Pittsburgh, Pennsyl-vania, paginas 953–960, 2006.

J.R. Ullmann. An Algorithm for Subgraph Isomorphism. Journal of the Association forComputing Machinery (ACM), 23(1):31–42, 1976.

N. Vanetik, E. Gudes, & S.E. Shimony. Computing Frequent Graph Patterns fromSemistructured Data. In Proceedings of the 2002 International Conference on DataMining (ICDM’02), Maebashi, Japan, paginas 458–465, 2002.

N. Vanetik, S.E. Shimony, & E. Gudes. Support Measures for Graph Data. Data Miningand Knowledge Discovery, 13(2):243–260, 2006.

C. Wang, W. Wang, J. Pei, Y. Zhu, & B. Chi. Scalable Mining of Large Disk-basedGraph Databases. In Proceedings of the 2004 ACM SIGKDD international conferenceon knowledge discovery in databases (KDD’04), Seattle, WA, paginas 316–325, 2004.

133

Page 147: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

M. Worlein, A. Dreweke, T. Meinl, I. Fischer, & M. Philippsen. Edgar: the Embedding-based Graph Miner. In Proceedings of the International Workshop on Mining andLearning with Graphs, Berlin, Germany, paginas 221–228, 2006.

M. Worlein, T. Meinl, I. Fischer, & M. Philippsen. A Quantitative Comparison ofthe Subgraph Miners MoFa, gSpan, FFSM, and Gaston. In Proceedings of the 9thEuropean Conference on Principles and Practice of Knowledge Discovery in Databases(PKDD’05), Porto, Portugal, paginas 392–403, 2005.

J. Wu & L. Chen. Mining Frequent Subgraph by Incidence Matrix Normalization. Jour-nal of Computers, 3(10):109–115, October 2008.

T. Yamamoto, T. Ozaki, & T. Ohkawa. Discovery of Frequent Graph Patterns thatConsist of the Vertices with the Complex Structures. In Post Proceedings of theThird International Workshop on Mining Complex Data (MCD’07), Warsaw, Poland,Revised Selected Papers, LNCS 4944, paginas 143–156, 2008.

X. Yan & J. Han. gSpan: Graph-based Substructure Pattern Mining. In Proceedingsof the 2002 International Conference on Data Mining (ICDM’02), Maebashi, Japan,paginas 721–724, 2002a.

X. Yan & J. Han. gSpan: Graph-based Substructure Pattern Mining. UIUC TechnicalReport, UIUCDCS-R-2002-2296, 2002b.

X. Yan & J. Han. CloseGraph: Mining Closed Frequent Graph Patterns. In Proceedingsof the 9th ACM SIGKDD International Conference on Knowledge Discovery and DataMining, Washington, DC, paginas 286–295, 2003.

X. Yan, P.S. Yu, & J. Han. Graph indexing: A Frequent Structure-based Approach. InProceedings of the 2004 ACM-SIGMOD International Conference on Management ofData (SIGMOD’2004), Chicago, IL, paginas 335–346, 2004.

X. Yan, X.J. Zhou, & J. Han. Mining Closed Relational Graphs with Connectivity Cons-traints. In Proceedings of 2005 ACM SIGKDD International Conference on KnowledgeDiscovery in Databases (KDD’2005), Chicago, IL, paginas 324–333, 2005.

C. You, L. Holder, & D. Cook. Substructure Analysis of Metabolic Pathways by Graph-based Relational Learning. In A. Sidhu and T. Dillon (Editors) Biomedical Data andApplications, Springer, paginas 237–261, 2009.

M. Zaky. Efficiently Mining Frequent Trees in a Forest: Algorithms and Applications.In IEEE Transactions on Knowledge and Data Engineering, 17(8):1021–1035, 2005.

M. Zaky & C.J. Hsiao. CHARM: An Efficient Algorithm for Closed Itemset Mining. InProceedings of the 2003 SIAM International Conference on Data Mining, Arlington,VA, paginas 457–473, 2002.

134

Page 148: Miner´ıa de subgrafos conexos frecuentes en colecciones de … · 2017-09-28 · Resumen La miner´ıa de subgrafos conexos frecuentes (SCF) en colecciones de grafosetiquetados

M. Zaky, S. Parthasarathy, M. Ogihara, & W. Li. New Algorithm for fast Discovery ofAssociation Rules. In Proceedings of the 3rd International Conference on KnowledgeDiscovery and Data Mining (KDD’97), AAAI Press, Menlo, CA, paginas 283–296,1997.

Z. Zeng, J. Wang, & L. Zhou. Efficient Mining of Minimal Distinguishing SubgraphPatterns from Graph Databases. In Proceedings of the 2008 Pacific-Asia Conferenceon Knowledge Discovery and Data Mining (PAKDD’08), paginas 1062–1068, 2008.

Z. Zeng, J. Wang, L. Zhou, & G. Karypis. Out-of-Core coherent closed quasi-cliquemining from large dense graph databases. ACM Transactions on Database Systems,32(2):40, 2007. Artıculo # 13.

F. Zhu, X. Yan, J. Han, & P.S. Yu. gPrune: A Constraint Pushing Framework for GraphPattern Mining. In Proceedings of the 2007 Pacific-Asia Conference on KnowledgeDiscovery and Data Mining (PAKDD’07), paginas 388–400, 2007.

135