departamento de lenguajes y sistemas informaticos e ingenier´ ´ia...

174
DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORM ´ ATICOS E INGENIER ´ IA DEL SOFTWARE Facultad de Inform´ atica Universidad Polit´ ecnica de Madrid TESIS DOCTORAL INTEGRACI ´ ON DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACI ´ ON MATEM ´ ATICA DE LA FASE DE AN ´ ALISIS Autora Ernestina Menasalvas Ruiz Licenciada en Inform´ atica Directoras Covadonga Fern´ andez Baiz´ an Doctora en Inform´ atica Anita Wasilewska Doctora en Matem´ aticas no: 1998

Upload: others

Post on 04-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

DEPARTAMENTO DE LENGUAJES Y SISTEMASINFORMATICOS E INGENIERIA DEL SOFTWARE

Facultad de InformaticaUniversidad Politecnica de Madrid

TESIS DOCTORAL

INTEGRACION DEL PROCESO DE INFERENCIA DECONOCIMIENTO CON LOS SISTEMAS DE BASES DE

DATOS RELACIONALES: FORMALIZACIONMATEMATICA DE LA FASE DE ANALISIS

AutoraErnestina Menasalvas RuizLicenciada en Informatica

DirectorasCovadonga Fernandez Baizan

Doctora en Informatica

Anita WasilewskaDoctora en Matematicas

Ano: 1998

Page 2: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

A mis padres, a mis hermanos y a Javier.

Page 3: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

AgradecimientosPara empezar, deseo expresar mi mas sincero agradecimiento a cuantas personas me han

apoyado y alentado durante el periodo de realizacion de este trabajo. Familia, amigos, com-

paneros y entranables maestros que han sabido darme su paciencia, estımulo y consejo en los

momentos mas difıciles y sin cuyas recomendaciones y sugerencias, no hubiera sido posible

la terminacion de la presente Tesis Doctoral.

Aunque el personalizar es siempre sinonimo de injustos olvidos, entre los cuales sin duda se

encontraran estos agradecimientos; sin embargo, no quisiera dejar escapar la oportunidad de

mostrar mi especial gratitud a las siguientes personas:

En particular, a mis directoras de Tesis: Covadonga Fernandez Baizan y Anita Wasilewska,

por su interes, disponibilidad y supervision y, sobre todo, por la confianza que depositaron

en mı cuando creyeron que serıa capaz de desarrollar este trabajo.

Asimismo, al Dr. W Ziarko de la Universidad de Regina, al profesor Pawlak de la Academia

polaca de Ciencias, y al profesor Skowron de la Universidad de Matematicas de Varsovia

por haber despertado en mı el interes por la investigacion. Tambien, por haber puesto todo

sus conocimientos a mi alcance durante el tiempo que pase en aquellas universidades y, so-

bretodo, por sus animos y alientos. Tambien, a Mike y Soco por toda la ayuda prestada y por

sus inestimables comentarios.

No puedo olvidarme de Coro y su imprescindible ayuda en esas ingratas pero ineludibles

tareas de confeccion de la correspondiente documentacion previa a la defensa de esta Tesis.

Un agradecimiento muy especial a Chema y a Borja por todo el soporte prestado. Tambien a

todos los alumnos del laboratorio por haber soportado mis altibajos de humor y, sobre todo,

por haberme animado en mis peores momentos. En este apartado, una especial mencion

merecen Salva e ”Indu”.

Gracias especialmente a Genoveva por su apoyo y animos constantes. Tambien, por que no,

a Javier por haber contribuido a la renovacion constante de mis niveles de adrenalina. Por

otra parte, siempre mantendre una deuda de gratitud con muchos otros profesores y amigos

de esta Facultad de Informatica.

Por ultimo, a mis padres y hermanos. En especial a Juan Vicente por haberme dejado tantas

veces su mesa con vistas “al paseo”, en donde teclee la mayorıa de las lıneas de este trabajo.

“Gracias a Gracia” por haberme soportado de cerca y a Ana por haberlo hecho desde lejos,

pero siempre tan proxima a mı. Nunca podre agradecer lo bastante la ayudas, apoyo incon-

dicional, aliento y, sobre todo, paciencia de toda mi familia.

Aunque se que pueda parecer pedante, redundante, etc., gracias y mas gracias. Sin la ayuda

de todos nunca hubiera podido escribir estas lineas y tal vez ninguna otra.

Page 4: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´
Page 5: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

ResumenLa rapida extension de la computacion en la ciencia, gobierno y negocios de todo tipo, ha

hecho que sea esencial el descubrimiento efectivo y eficaz del conocimiento oculto en las

grandes cantidades de datos que han sido recogidas en los ultimos anos.

El descubrimiento en las bases de datos (KDD) o Data Mining ha surgido como una solu-

cion para el problema del analisis de datos al que se estan enfrentando, actualmente, gran

cantidad de diferentes organizaciones. En este contexto, Data Mining no es sino un nuevo

nombre para el viejo proceso de busqueda de patrones en datos. Ası, los estudios previos

que se han realizado desde la aparicion del termino, se centran en el diseno y programacion

de algoritmos eficientes para la fase de Data Mining.

Sin embargo, hasta el momento, no se ha realizado ningun estudio que intente formalizar

el proceso y en concreto la fase de Data Mining de una manera uniforme. Tampoco se ha

abordado el proceso del descubrimiento del conocimiento desde la perspectiva de bases de

datos, esto es, para intentar que la proxima generacion de sistemas de gestion de bases de

datos proporcionen consultas que permitan el analisis de los mismos.

En este trabajo, en primer lugar, se realizara un estudio detallado de las distintas operacio-

nes que se llevan a cabo a lo largo del proceso del descubrimiento del conocimiento. Como

consecuencia de este estudio, dichas operaciones se clasifican en un nuevo ciclo en sus fases

correspondientes. El ciclo propuesto, permite establecer ciertos requisitos para las operacio-

nes que se realicen en cada fase, lo que desemboca en una definicion de los distintos perfiles

de los usuarios.

El estudio en profundidad de las caracterısticas de la fase de Data Mining lleva al descubri-

miento de una estructura matematica capaz de modelizar aquellas consultas de Data Mining

que se puedan traducir al modelo sintactico que se propone. Esta estructura matematica es

un retıculo y por consiguiente, las propiedades del mismo se pueden tener en cuenta en fu-

turas implementaciones de consultas.

De esta manera los resultados de esta Tesis han servido como fundamento teorico en la im-

plementacion del sistema RSDM. Las consultas mas representativas se han expresado como

funciones matematicas del modelo. Por consiguiente, se demuestra que, efectivamente, la

ejecucion de las mismas forma un retıculo con lo que sus resultados son susceptibles de ser

ordenados en el orden establecido por dicho modelo.

Finalmente, se analizan los resultados obtenidos y se conforman las bases para una futura

investigacion en este campo.

Page 6: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

AbstractDue to the rapid extension of computation in all areas such as science, goverment and all

kind of business, the efficient dicovery of hidden knowledge in the huge amounts of data

that have been collected over the last decade has become a need.

The process of Knowledge discovery in data bases (KDD) or Data Mining has emerged as a

solution to face the problem of data analysis in organizations. In this context, Data Mining

is just another name for the process of pattern search in data. The previous studies since the

term appeared, were focused in the design and programming of efficient algorithms for the

Data Mining step of the KDD process.

Nevertheless, up to the present moment, there is no study to mathematically formalize the

Data Mining step of the KDD process. The problem of knowledge discovery in databases

has not been approached from database perspective either, such an approach would lead to

the design and implementation of Data Base Systems that would give support toDataMining

queries.

This situation has motivated the present work in which firstly the KDD process is deeply

studied from Databases perspective. As a consequence, the different tasks of the process

have been classified and new user roles have been identified. The Data Mining phase of the

process has been decomposed into basic operations.

The deep study of the features of these operations has lead to the definition of a syntactical

structure that allows to modelize queries. The mathematical structure has shown to be a

lattice so that, properties of lattices can be taken into account when implementing Data

Mining systems.

To validate the theoretical results of this thesis a prototype, called RSDM, has been designed

and implemented resting on those results. To conclude, the results are analyzed and the

future work on this field is established.

Page 7: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Indice General

Indice de Figuras iv

Indice de Tablas vi

Capıtulo 1 Introduccion 1

1.1 Situacion y Planteamiento del Problema . . . . . . . . . . . . . . . . . . . 1

1.2 Objetivos y aportaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Organizacion y estructura . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

I Estado de la cuestion 6

Capıtulo 2 El proceso de KDD 7

2.1 Evolucion de los sistemas de informacion . . . . . . . . . . . . . . . . . . 8

2.2 El proceso de descubrimiento en bases de datos . . . . . . . . . . . . . . . 8

2.3 Definiciones basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.4 El proceso de KDD: fases . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.5 Data Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.6 Enfoques para resolver las tareas de Data Mining . . . . . . . . . . . . . . 22

2.7 Algoritmos representativos . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.8 Sistemas representativos . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.9 Retos del proceso y de su aplicacion . . . . . . . . . . . . . . . . . . . . . 44

2.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

II Planteamiento y resolucion del problema 50

Capıtulo 3 El proceso de KDD desde la perspectiva de las bases de datos 51

3.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3.2 Escenario del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3.3 Definicion de las operaciones necesarias a realizar a lo largo del proceso KDD 56

i

Page 8: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4 Definicion del proceso en base a operaciones basicas . . . . . . . . . . . . 61

3.5 Resumen contextual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Capıtulo 4 El retıculo de las operaciones de Data Mining 81

4.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

4.2 Modelo semantico de Data Mining . . . . . . . . . . . . . . . . . . . . . . 82

4.3 Modelo Sintactico de Data Mining . . . . . . . . . . . . . . . . . . . . . . 93

4.4 Poset de Generalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

4.5 Modelo Sintactico de Data Mining . . . . . . . . . . . . . . . . . . . . . . 97

4.6 Interpretacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

4.7 Construccion dinamica del retıculo . . . . . . . . . . . . . . . . . . . . . . 100

4.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Capıtulo 5 Validacion de las operaciones del retıculo de las operaciones de Data

Mining 104

5.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.2 Traduccion de las operaciones basicas de la teorıa de Rough Sets a operado-

res del modelo semantico . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

5.3 Generalizacion de atributos . . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.4 Algoritmo Apriori expresado como operadores de Data Mining . . . . . . . 112

5.5 Discusion de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

5.6 Estudio de la interpretacion del modelo . . . . . . . . . . . . . . . . . . . 115

5.7 Ejemplos ilustrativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

5.8 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.9 Aplicacion Practica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.10 Implementacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Capıtulo 6 Rough Set Data Miner 137

6.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

6.2 Descripcion General de RSDM . . . . . . . . . . . . . . . . . . . . . . . . 137

III Conclusiones y lıneas futuras 144

Capıtulo 7 Conclusiones 145

7.1 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

7.2 Lıneas futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Page 9: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Bibliografıa 148

Apendice A Conceptos basicos de la teorıa de conjuntos parcialmente ordenados

y retıculos 158

A.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

A.2 Conjuntos parcialmente ordenados . . . . . . . . . . . . . . . . . . . . . . 159

A.3 Cadenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

A.4 Retıculos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

A.5 Retıculos completos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

A.6 Retıculos distribuidos y modulares . . . . . . . . . . . . . . . . . . . . . . 161

A.7 Retıculos complementados . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Page 10: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Indice de Figuras

2.1 Fases del Proceso KDD [Frawley96] . . . . . . . . . . . . . . . . . . . . . 12

2.2 Nuevo ciclo y su relacion con los usuarios . . . . . . . . . . . . . . . . . . 16

2.3 Representacion de reglas caracterısticas . . . . . . . . . . . . . . . . . . . 19

2.4 Representacion de reglas de discriminacion . . . . . . . . . . . . . . . . . 20

2.5 Aproximaciones lower y upper de un concepto . . . . . . . . . . . . . . . 25

2.6 VPRSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.7 Calculo de reglas discriminantes por medio de la region lower . . . . . . . 34

2.8 Calculo de reglas caracterısticas por medio de la region upper . . . . . . . 34

2.9 Arquitectura del sistema Quest . . . . . . . . . . . . . . . . . . . . . . . . 42

2.10 Arquitectura del sistema DBMiner . . . . . . . . . . . . . . . . . . . . . . 43

3.1 Comparacion entre los enfoques tradicionales y el expuesto en esta tesis . . 53

3.2 Nuevos sistemas de gestion y analisis de bases de datos . . . . . . . . . . . 60

3.3 Ciclo de vida del proceso de KDD segun los perfiles de los usuarios . . . . 60

3.4 Estructura del funcionamiento del operador de eliminacion de claves . . . . 63

3.5 Funcionamiento de los operadores de discretizacion . . . . . . . . . . . . . 64

3.6 Funcionamiento de los operadores de generalizacion . . . . . . . . . . . . 65

3.7 Funcionamiento de los operadores de binarizacion . . . . . . . . . . . . . . 66

3.8 Descomposicion en operaciones basicas de una consulta de Data Mining . . 70

3.9 Proceso de traduccion de una consulta de usuario a operaciones elementales 74

3.10 Estructura basica de los operadores de Data Mining . . . . . . . . . . . . . 75

3.11 Estructura basica de una operacion de KDD en una base de datos . . . . . . 79

4.1 Esquema de la fase del proceso KDD . . . . . . . . . . . . . . . . . . . . . 83

4.2 Definicion de la funcion r . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

4.3 Definicion de la funcion � . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

4.4 Ejemplo de retıculo etiquetado . . . . . . . . . . . . . . . . . . . . . . . . 101

4.5 Proceso de construccion del retıculo . . . . . . . . . . . . . . . . . . . . . 102

5.1 Ejemplo de Rough Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

iv

Page 11: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2 Tabla relacional a la que se ha anadido un atributo generalizado . . . . . . . 118

5.3 Eliminacion de claves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

5.4 Calculo de un conjunto reducido de atributos . . . . . . . . . . . . . . . . 120

5.5 Resultado de aplicar lower a la tabla de la figura anterior . . . . . . . . . . 121

5.6 Cadena generada en una ejecucion . . . . . . . . . . . . . . . . . . . . . . 122

5.7 Ejemplo de generalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . 123

5.8 Region lower sobre tabla generalizada . . . . . . . . . . . . . . . . . . . . 124

5.9 Ejecucion de una consulta . . . . . . . . . . . . . . . . . . . . . . . . . . 125

5.10 Region lower sobre tabla generalizada . . . . . . . . . . . . . . . . . . . . 125

5.11 Ejemplo del retıculo que se genera durante el proceso de Data Mining . . . 126

5.12 Paso de Apriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

5.13 Paso de Apriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

5.14 Obtencion de las estructuras auxiliares . . . . . . . . . . . . . . . . . . . . 129

5.15 Paso de Apriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

5.16 Obtencion de las estructuras auxiliares (2) . . . . . . . . . . . . . . . . . . 130

5.17 Paso de Apriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

5.18 Cadena producto de una ejecucion de Apriori . . . . . . . . . . . . . . . . 132

5.19 Obtencion de las estructuras auxiliares II . . . . . . . . . . . . . . . . . . . 132

5.20 Ejemplo de retıculo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

6.1 Descomposicion de la arquitectura de RSDM en tres niveles . . . . . . . . . 139

Page 12: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Indice de Tablas

3.1 Requisitos de operadores de Data Mining . . . . . . . . . . . . . . . . . . 76

4.1 Tabla de Empleados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

4.2 Ejemplo de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

4.3 Tabla de Empleados y Sueldos . . . . . . . . . . . . . . . . . . . . . . . . 90

4.4 Tabla de Empleados (proyeccion sobre Nivel y Edad) . . . . . . . . . . . . 92

5.1 Tabla de ejemplo para los operadores de Rough Sets . . . . . . . . . . . . . 107

5.2 Ejemplo de una posible tabla de Empleados . . . . . . . . . . . . . . . . . 111

5.3 Tabla con valores continuos . . . . . . . . . . . . . . . . . . . . . . . . . . 112

vi

Page 13: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 1

Introduccion

Indice General

1.1 Situacion y Planteamiento del Problema . . . . . . . . . . . . . . . . . 1

1.2 Objetivos y aportaciones . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Organizacion y estructura . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1 Situacion y Planteamiento del Problema

La decada de los 90 ha venido acompanada de un crecimiento desbordante de datos en cam-

pos tan diferentes como el mundo de los negocios y de la administracion. La facultad para

almacenar y recoger datos ha superado a la capacidad para analizar, resumir y extraer cono-

cimiento de los mismos. Los metodos tradicionales de tratamiento manual, se han quedado

obsoletos por el gran volumen de datos a tratar. Si bien la tecnologıa de bases de datos ha

proporcionado las herramientas basicas para el almacenamiento y consulta de estos, no ha

proporcionado hasta la decada de los 90 herramientas que le ayuden a comprender y analizar

estos datos.

El interes de cientıficos de diversas areas de investigacion en este problema dio lugar a una

serie de reuniones de las cuales surgio el termino KDD (“Knowledge Discovery in Data-

bases”). KDD se ha definido como “el proceso no trivial de descubrimiento de patrones

novedosos, validos, potencialmente utiles y comprensibles en grandes volumenes de datos”

[Piatesky94].

Este es un proceso complejo porque la busqueda de los patrones no se realiza de manera

directa, sino que necesita de procedimientos de alguna complejidad. Esto ha llevado a iden-

tificar estos procedimientos y agruparlos en fases dependiendo de su funcion.

En [Piatesky94], el proceso se considera dividido en las etapas de: seleccion, preprocesa-

miento, transformacion, Data Mining, interpretacion y evaluacion de los resultados. Una

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 14: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

1.1. SITUACION Y PLANTEAMIENTO DEL PROBLEMA 2

caracterıstica del proceso es que es interactivo e iterativo, en la medida en que el usuario

puede decidir volver a cualquiera de las etapas del mismo.

En [John97b] se describe el proceso como iteracion de las fases de extraccion de datos, lim-

pieza, ingenierıa de datos, y de algoritmos, ejecucion del algoritmo de descubrimiento y

analisis de resultados. De acuerdo con el autor, este proceso difiere del anterior mas en la

organizacion que en el contenido de las etapas.

El proceso, sin embargo, no ha sido abordado desde la perspectiva de bases de datos para

tratar de estudiar el proceso KDD como una serie de consultas a las bases de datos, cuyo

resultado son datos y adicionalmente conocimiento extraıdo de los mismos. Tal estudio,

permitirıa implementaciones de gestores de bases de datos capaces de gestionar datos y con-

sultas para el proceso de descubrimiento.

No obstante, el desarrollo de tales sistemas necesita de un estudio en profundidad de las ca-

racterısticas, tanto de los datos como de las operaciones a realizar sobre ellos. Esto permitira

adaptar los modulos del sistema de gestion (analizador de consulta, optimizador, traductor,

� � � ) para dotar al sistema total de las capacidades deseadas. Ello ha motivado el presente

trabajo por lo que el proposito del mismo es analizar la integracion del proceso en el contexto

de las bases de datos relacionales, con el fin de ofrecer a los potenciales usuarios operacio-

nes adicionales que les permitan extraer patrones (consultas de Data Mining a partir de este

momento).

Como consecuencia, el trabajo que se ha realizado consta de:

� Estudio del problema de KDD desde la perspectiva de bases de datos lo que permite

identificar las operaciones y clasificarlas segun funcionalidades. El proceso se divide

en cuatro etapas basicas: creacion de la base de datos de explotacion, adaptacion de

la base de datos de explotacion de acuerdo a los distintos usuarios, ejecucion de los

algoritmos de extraccion de patrones y evaluacion. Para cada etapa se estudian las

operaciones que se realizan, haciendo especial hincapie en la fase de Data Mining con

el proposito de identificar operaciones elementales a partir de las cuales se puedan

expresar los algoritmos de descubrimiento. Se clasifican las diferentes operaciones en

terminos de su funcionalidad con respecto a la etapa del proceso en la que se apliquen,

y se definen permisos para poder ejecutar cada tipo de operaciones. Como conse-

cuencia, se definen perfiles de usuario que sirven para identificar a que datos puede

acceder y con que permisos. Este estudio permite clasificar las operaciones en fases y

en perfiles de usuario

� Formalizacion matematica de las funciones de Data Mining. De cara a la eficiente

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 15: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

1.2. OBJETIVOS Y APORTACIONES 3

modelizacion, se estudian las operaciones basicas identificadas en el apartado anterior

y se modelizan matematicamente para extraer propiedades de utilidad en la futuras

implementaciones. Se demuestra que la secuencia de operaciones elementales realiza-

das, en una consulta de Data Mining se puede formalizar de manera matematica como

un retıculo.

� Validacion de la estructura matematica obtenida. La estructura matematica obtenida

se valida mediante dos algoritmos representativos. Asimismo, se expone RSDM como

sistema de Data Mining implementado con el fundamento teorico del presente trabajo.

� Conclusiones. El trabajo termina presentando las conclusiones y las lıneas futuras de

investigacion.

1.2 Objetivos y aportaciones

La Tesis Doctoral propuesta tiene como finalidad la formalizacion matematica del proceso

de KDD de cara a su integracion con la tecnologıa de bases de datos relacionales. Por

consiguiente, el proceso se estudia en detalle desde la perspectiva de las bases de datos para

descomponer las operaciones en funciones basicas que puedan ser formalizadas de manera

uniforme. Como consecuencia del estudio, las operaciones basicas se clasifican en tres fases:

� Operaciones de preparacion de los datos. Se consideran dentro de este apartado las

operaciones de integracion y limpieza de los datos ası como todas las operaciones de

preprocesado que son necesarias ejecutar antes de la aplicacion de un algoritmo a unos

determinados datos

� Operaciones de Data Mining. Se agrupan bajo esta denominacion las operaciones

basicas en que son susceptibles de ser divididos los algoritmos de Data Mining para la

obtencion de patrones. Estas operaciones tratan directamente con los datos de la base

de datos y son, por ello, las operaciones que se formalizan matematicamente.

� Operaciones de postprocesado o de presentacion de resultados. Agrupa las operacio-

nes que es necesario llevar a cabo despues de las operaciones de obtencion de patrones.

Consecuentemente, las aportaciones de esta Tesis se centran en la obtencion de una modeli-

zacion matematica de las operaciones de Data Mining que permita la futura integracion de

estas operaciones con el nucleo de los actuales gestores de bases de datos.

Por consiguiente, todo lo comentado anteriormente se puede desglosar en los siguientes ob-

jetivos parciales:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 16: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

1.3. ORGANIZACION Y ESTRUCTURA 4

� Estudio detallado del proceso de KDD desde la perspectiva de las bases de datos

� Desglose de los algoritmos en operaciones basicas

� Modelizacion matematica de las funciones de Data Mining

� Validacion de la modelizacion mediante algoritmos representativos de Data Mining.

� Implementacion de RSDM como prototipo representativo del modelo

� Experimentacion mediante RSDM.

1.3 Organizacion y estructura

Este trabajo se estructura de la siguiente manera: En el capıtulo 2 se presenta y analiza el

proceso de descubrimiento en bases de datos. Asimismo, y teniendo en cuenta que el proce-

so de descubrimiento en grandes volumenes de datos es un proceso complejo que requiere

de multiples etapas, se analizan en detalle cada una estas, se estudian las tareas de descubri-

miento mas frecuentes y se presentan los algoritmos mas representativos para resolverlas. Se

termina el capıtulo presentando un resumen de las tecnologıas que han hecho posible que el

proceso de descubrimiento tenga mas auge y, entre ellas, se destacan los almacenes de datos

para procesos de toma de decisiones, mas comunmente conocidos como Data Warehouse.

En el capıtulo 3, primeramente, se analiza la evolucion de los sistemas que ha llevado a

que la manera de construir bases de datos se tenga que adaptar para las nuevas necesidades.

A continuacion, se describe y analiza el proceso de descubrimiento de conocimiento desde

la perspectiva de las bases de datos de cara a identificar operaciones elementales que son

necesarias anadir a los actuales sistemas de gestion de bases de datos para satisfacer las ne-

cesidades de los usuarios. En el capıtulo 4 se sube un peldano mas y se presenta un modelo

matematico de las operaciones de la etapa deData Mining. En el capıtulo 5 la formalizacion

anterior se valida mediante el algoritmo “Apriori” para el calculo de reglas de asociacion y

mediante los algoritmos de la teorıa de los conjuntos aproximados (Rough Sets). En el si-

guiente capıtulo, se expone el prototipo 1 desarrollado con el fin de evaluar la funcionalidad

de los resultados expuestos. Finalmente, en el capıtulo 7 se establecen las conclusiones des-

pues del establecimiento y validacion de la estructura matematica. Asimismo, se muestran

las posibles lıneas de continuacion del presente trabajo.

1El prototipo se denomina RSDM y lleva en desarrollo tres anos bajo la financiacion del proyecto PB95-0301.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 17: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

1.3. ORGANIZACION Y ESTRUCTURA 5

En el apendice A se exponen los conceptos matematicos necesarios para comprender la mo-

delizacion matematica llevada a cabo en esta Tesis.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 18: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Parte I

Estado de la cuestion

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 19: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 2

El proceso de KDD

Indice General

2.1 Evolucion de los sistemas de informacion . . . . . . . . . . . . . . . . 8

2.2 El proceso de descubrimiento en bases de datos . . . . . . . . . . . . . 8

2.3 Definiciones basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.4 El proceso de KDD: fases . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.5 Data Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.5.1 Tareas de Data Mining . . . . . . . . . . . . . . . . . . . . . . . 18

2.6 Enfoques para resolver las tareas de Data Mining . . . . . . . . . . . 22

2.6.1 Enfoques matematicos . . . . . . . . . . . . . . . . . . . . . . . 23

2.6.2 Machine Learning . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.6.3 Enfoques orientados a bases de datos . . . . . . . . . . . . . . . 29

2.6.4 Enfoques integrados . . . . . . . . . . . . . . . . . . . . . . . . 29

2.6.5 Componentes de los algoritmos de Data Mining . . . . . . . . . . 30

2.7 Algoritmos representativos . . . . . . . . . . . . . . . . . . . . . . . . 31

2.7.1 Rough Sets como metodologıa para extraer conocimiento de basesde datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.7.2 Calculo de reglas discriminantes utilizando Rough Sets . . . . . . 32

2.7.3 Calculo de reglas caracterısticas . . . . . . . . . . . . . . . . . . 33

2.7.4 Reglas de Asociacion: Algoritmo Apriori . . . . . . . . . . . . . 34

2.7.5 Obtencion de reglas de clasificacion: Algoritmos ID3 y C4.5 . . . 37

2.7.6 Generalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.8 Sistemas representativos . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.9 Retos del proceso y de su aplicacion . . . . . . . . . . . . . . . . . . . 44

2.9.1 Tecnologıas que han ayudado al proceso de Data Mining: DataWarehousing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

2.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 20: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.1. EVOLUCION DE LOS SISTEMAS DE INFORMACION 8

2.1 Evolucion de los sistemas de informacion

En 1960, el mundo de la computacion consistıa en crear aplicaciones que ejecutaban sobre

ficheros maestros. Pronto los ficheros maestros se extendieron y vinieron los problemas de

redundancia de datos. Por otra parte, en aquellos tiempos la forma de almacenamiento era

secuencial, principalmente debido a los soportes de almacenamientos existentes. Con el ad-

venimiento de los discos duros, en 1970 surge una nueva etapa puesto que se puede acceder

a los datos directamente. Con el nacimiento de esta nueva tecnologıa surge la nocion de sis-

temas de gestion de bases de datos como fuente comun del procesamiento de informacion.

Pero la evolucion no quedo ahı, y a mediados de los anos 70 empiezan a tener lugar las tran-

sacciones online, con las que el ordenador se podıa utilizar para tareas que previamente eran

impensables. Alrededor de 1980, aparecen mas tecnologıas como son los PC’s y los lengua-

jes de cuarta generacion. Con la aparicion de estas tecnologıas el usuario se empezo a dar

cuenta que se podıa hacer muchas mas cosas con los datos que no el simple procesamiento

de transacciones online, empezaba a pensar que los datos podıan servir para dirigir decisio-

nes de la alta direccion, lo que ayudarıa a mantener a las empresas en entornos competitivos

mientras que hasta el momento se estaban usando para las decisiones operacionales. Enton-

ces, aparecio la nocion de que una base de datos se podıa utilizar tanto para el procesamiento

de transacciones como para analizar los datos ya almacenados, para buscar informacion en

ellos. Con el tiempo, la cantidad de datos que se fue almacenando en las bases de datos em-

pezo a crecer y, si bien, el soporte y las herramientas para realizar la gestion de los datos eran

los adecuados, los datos empezaron a sobrepasar las capacidades humanas para el analisis.

Al mismo tiempo, los sistemas de bases de datos habıan comenzado a descentralizarse con

lo que las decisiones tenıan falta de credibilidad, ineficiencia y falta de productividad. Como

respuesta al caos surgieron por un lado la necesidad de herramientas de analisis de grandes

cantidades de datos y, por otro lado, surge el concepto de Data Warehouse como almacen

integrado de datos no volatiles para dar soporte al proceso de toma de decision.

2.2 El proceso de descubrimiento en bases de datos

El termino KDD (Knowledge Discovery in Databases), fue acunado en el primer “work-

shop” de KDD en 1989 [Piatesky91] para enfatizar que el conocimiento es el producto de un

descubrimiento guiado por los datos.

El proceso de descubrimiento de conocimiento en Bases de Datos en adelante KDD, descri-

be el conjunto de acciones que se desarrollan para analizar las grandes cantidades de datos

almacenadas por las organizaciones, con el fin de obtener informacion de interes para mejo-

rar el funcionamiento y rendimiento de las mismas.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 21: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.2. EL PROCESO DE DESCUBRIMIENTO EN BASES DE DATOS 9

En el nucleo de este proceso destaca la aplicacion de los metodos denominados de Data Mi-

ning para el descubrimiento de patrones de distintos tipos, entre los que se pueden destacar,

por mencionar algunos, clasificacion, caracterizacion, asociacion, “clustering” y discrimina-

cion.

Historicamente, a la nocion de encontrar patrones de utilidad en los datos se le ha dado dis-

tintos nombres dependiendo del area (estadıstica, aprendizaje automatico, bases de datos,

redes neuronales, � � � ) al que pertenecieran los investigadores implicados. Se podrıa indicar

pues, que Data Mining es el nuevo nombre para el viejo proceso de busqueda de patrones

en los datos. Antes de hacerse tan popular, diferentes lıneas de investigacion estaban siendo

desarrolladas en este campo. Sin embargo, sin un nombre que les sirviera de union, la inves-

tigacion sufrıa problemas de fragmentacion.

Data Mining unifica todos estos enfoques bajo la premisa de que existe muchısimo conoci-

miento potencialmente util oculto en las bases de datos, y que, debido al gran tamano de las

mismas, la unica manera de analizarlo es mediante el uso de algoritmos avanzados que se

ejecuten en potentes computadoras.

Las comunidades academicas utilizan el termino KDD para referirse al proceso global de

descubrimiento, dejando el termino Data Mining para una etapa concreta dentro del proce-

so. El mundo empresarial, por otra parte, prefiere referirse a Data Mining como proceso

global. Esto es lo que ha provocado que a menudo ambos terminos aparezcan en la litera-

tura con significados cambiados. A lo largo del presente trabajo se asume el criterio de la

comunidad academica con lo que se utilizara Data Mining tan solo para hacer referencia a

la fase del proceso global en que los datos se analizan con el fin de obtener patrones. Los

pasos restantes del proceso de KDD incluyen la preparacion, preprocesado y transformacion

de los datos, ası como la visualizacion y analisis de los patrones obtenidos.

Los pasos anteriores a la aplicacion de las tecnicas y metodos de Data Mining son tan im-

portantes como ese paso en particular. El aplicar a ciegas los algoritmos de Data Mining es

una actividad peligrosa que puede conducir al descubrimiento de patrones falsos o carentes

por completo de sentido.

KDD ha evolucionado desde sus comienzos y continua evolucionando como interseccion de

campos de conocimiento como Machine Learning, Inteligencia Artificial, Estadıstica, Bases

de Datos, Visualizacion del conocimiento y redes neuronales, entre otras. La meta comun de

todos ellos es la extraccion de conocimiento de alto nivel a partir de los datos de mas bajo

nivel en el contexto de grandes volumenes de datos. KDD centra su atencion en la busqueda

de patrones relevantes de conjuntos de datos reales, lo que hoy en dıa supone trabajar con

bases de datos de gran tamano.

KDD tiene relacion con Machine Learning y con el reconocimiento de patrones en algunos

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 22: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.3. DEFINICIONES BASICAS 10

algoritmos de Data Mining, como los de modelizacion de datos y extraccion de patrones. Es

de interes fundamental la adaptacion de los algoritmos existentes para tratar con conjuntos

de datos grandes.

KDD tiene tambien mucho en comun con la estadıstica, en particular con los metodos de

exploracion de datos. El enfoque estadıstico ofrece metodos precisos para cuantificar el gra-

do de probabilidad inherente que resulta cuando se intenta inferir patrones de una poblacion

particular. Este enfoque ofrece procedimientos para muestreo, evaluacion de hipotesis y ma-

nejo del ruido dentro del contexto de descubrimiento de conocimiento.

Ademas de la fuerte relacion con el campo de bases de datos en general, otra area relacio-

nada es la de Data Warehousing, que se refiere a la tecnica de agrupacion y limpieza de

datos transaccionales para hacerlos disponibles para el analisis “on-line” y soporte a la de-

cision. Uno de los enfoques de analisis de datos en Data Warehousing se denomina OLAP

(On Line Analytical Processing) [Codd90]. Las herramientas de OLAP se utilizan para pro-

veer analisis multidimensional de los datos. Estas herramientas se utilizan para simplificar el

analisis interactivo de los datos, mientras que las herramientas de KDD tiene como objetivo

automatizar, tanto como sea posible, el proceso. De hecho, la necesidad de contar con he-

rramientas de Data Mining en relacion al uso de herramientas de OLAP ha crecido a raız de

la popularidad alcanzada por la utilizacion de tecnicas de Data Warehousing, que permiten

almacenar enormes cantidades de datos que crecen continuamente. De acuerdo con algunas

estimaciones, la cantidad de datos en el mundo se duplica cada veinte meses [Frawley91].

Sin embargo, el conocimiento potencialmente oculto en estos datos es inaccesible debido

a la gran cantidad de los mismos existentes, que hace difıcil su tratamiento. En la misma

medida que los datos crecen, crece la necesidad de encontrar herramientas para analizarlos.

Es importante entonces, contar con mecanismos para el manejo eficiente de estas grandes

cantidades de datos, que son requeridos por una comunidad de usuarios que necesitan estas

nuevas herramientas para encontrar patrones que les ayuden en su trabajo. Por citar algu-

nas aplicaciones, los patrones obtenidos se podran utilizar para mejorar los procesos del

negocio, analizar resultados de experimentos y ayudar a comprender mejor los efectos de un

determinado tratamiento.

2.3 Definiciones basicas

El proceso de KDD (Descubrimiento de conocimiento en Bases de Datos) [Fayyad96b] se

define como “El proceso no trivial de identificacion de patrones validos, nuevos, potencial-

mente utiles y compresibles en los datos”.

Los datos hacen referencia a un conjunto de hechos (casos de una base de datos). En este

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 23: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.3. DEFINICIONES BASICAS 11

trabajo se restringira la forma de los datos a tablas de bases de datos relacionales en donde

cada fila o registro describe una ocurrencia de una entidad, y cada columna o campo un atri-

buto que servira para describir la citada entidad.

Un patron hace referencia a una expresion en algun lenguaje que sirve para describir un

subconjunto de los datos o a un modelo aplicable a esos datos. Es decir, un patron es una

instanciacion de un determinado modelo. Por ello, se entiende la extraccion de patrones co-

mo la extraccion de un modelo para unos datos, esto es, cualquier descripcion de alto nivel

de los datos.

El termino proceso implica queKDD es la conjuncion de muchos pasos repetidos en multiples

iteraciones. Se dice por otra parte que es no trivial, porque se supone que hay que realizar

algun tipo de proceso complejo. Los patrones deben ser validos, con algun grado de certi-

dumbre, y novedosos, por lo menos para el sistema y, preferiblemente, para el usuario, al

que deberan reportar alguna clase de beneficio (util). Por ultimo, esta claro que los patrones

deben ser comprensibles, si no de manera inmediata, sı despues de alguna clase de prepro-

cesado.

Todo lo indicado con anterioridad implica que se pueden definir medidas cuantitativas para

evaluar los patrones obtenidos. Estas medidas pueden servir, por ejemplo, para evaluar la

bondad, utilidad, simplicidad y certidumbre de los patrones. Las medidas de interes se pue-

den definir para ordenar los patrones obtenidos por un cierto sistema de KDD.

Proceso de KDD , que segun lo expuesto anteriormente, es el proceso de aplicar a una de-

terminada base de datos las operaciones requeridas de seleccion, preprocesado, muestreo,

transformacion y metodos de Data Mining para extraer los patrones y posteriormente eva-

luarlos para identificar el conjunto de ellos que representaran al conocimiento. La fase de

Data Mining del proceso de KDD tiene que ver tan solo con la aplicacion de los algoritmos

de extraccion de patrones. El proceso total incluye, tanto la preparacion previa, como las

posibles fases de interpretacion de los patrones obtenidos.

Data Mining es una etapa en el proceso de KDD que consiste en la aplicacion de algoritmos

de descubrimiento y de analisis de datos que bajo una ciertas limitaciones de eficiencia com-

putacional, produce una serie de patrones de los datos sobre los que actuo. Es importante

resaltar que el espacio de posibles patrones es a menudo infinito, y que la enumeracion de

los mismos incluye alguna forma de busqueda en ese espacio. Las restricciones computacio-

nales en la practica imponen lımites severos en el subespacio de busqueda a ser explorado

por un cierto algoritmo de Data Mining.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 24: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.4. EL PROCESO DE KDD: FASES 12

2.4 El proceso de KDD: fases

KDD es un proceso interactivo e iterativo que incluye numerosos pasos en los que el usuario

tiene que tomar varias decisiones. Iterativo porque puede ser necesario acceder desde una

fase a cualquiera de las anteriores, e interactivo porque el proceso es supervisado y contro-

lado por el usuario de forma directa. El proceso comienza con la definicion y comprension

de un determinado problema y termina con el analisis de los resultados. Existe numerosa

literatura con respecto a las fases en las que se divide el proceso. Una de las propuestas mas

ampliamente extendida se presenta en [Frawley96], y en ella el proceso se divide en las fases

de: comprension del problema, seleccion de la base de datos objetivo del proceso de descu-

brimiento, limpieza y preprocesado de dicha base de datos, reduccion, eleccion del metodo

que se va a usar para resolver el problema, eleccion del algoritmo, ejecucion del algoritmo

de Data Mining elegido, interpretacion de los patrones obtenidos y consolidacion del cono-

cimiento obtenido. En la figura 2.1 se puede observar la division en fases y la interaccion

entre cada una de ellas.

En [John97a], [John97b] el proceso se concibe como la iteracion de las fases de: extraccion

DatosObjetivo

DatosProcesados

DatosTransformados

Datos

Selección

EvaluaciónInterpretación y

Limpieza

Codificación

Data MiningConocimiento

Modelos

Figura 2.1: Fases del Proceso KDD [Frawley96]

de datos, limpieza, ingenierıa de datos, ingenierıa de algoritmos, ejecucion del algoritmo de

descubrimiento y analisis de los resultados. De acuerdo con el autor, esta division difiere de

la anterior mas en la organizacion que en el contenido de las etapas.

Como combinacion de ambas propuestas, el proceso se puede considerar formado por las

fases que se exponen y explican a continuacion:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 25: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.4. EL PROCESO DE KDD: FASES 13

� Establecimiento del dominio de aplicacion: Requiere estudiar el problema y deci-

dir cual es la meta del proceso. Puede parecer extrano el paso del establecimiento y

compresion del problema, pero sin embargo es una fase importante y que puede, en

ocasiones, llevar una gran cantidad de tiempo. Los procesos de KDD difieren de otros

procesos de analisis en que si bien es relativamente facil aplicar el algoritmo escogi-

do y obtener los resultados, sin una clara comprension del problema, los resultados

pueden ser inservibles.

� Creacion del conjunto de datos: Una vez que el problema ha sido definido, se tiene que

seleccionar el conjunto de objetos que se van a estudiar. En la mayorıa de los casos,

los datos relevantes se extraen de bases de datos ya existentes, o de unDataWarehouse

[Inmon96] creado para servir a distintas necesidades del negocio u organizacion. El

resultado es que no existe una unica fuente de donde tomar los datos. Generalmente,

los algoritmos no se pueden ejecutar directamente contra bases de datos con multiples

tablas. Por ello, los datos se deben extraer de las bases de datos relacionales y alma-

cenar en tablas a las que puedan acceder los algoritmos de Data Mining. En cualquier

caso, el elegir los datos supone elegir las bases de datos de las que estos se tomaran

ası como los atributos que seran tenidos en cuenta. Esta eleccion suele llevar mucho

tiempo hasta que se identifican cuales son los atributos que mejor describen los datos

que se van a analizar. Como consecuencia, la mejor solucion pasa por almacenar los

datos en un Data Warehouse manejado por el gestor que contenga los datos que se

seleccionen. Esta es una fase larga y tediosa y la tendencia general suele ser conse-

guir la mayor cantidad de datos que sea posible, de manera que esta fase no se tenga

que volver a ejecutar. Como consecuencia, el resultado final de esta fase es una base

de datos descendiente de las bases de datos corporativas y que generalmente contiene

mas ocurrencias y atributos que los que se necesitaran para cualquier consulta.

� Limpieza y preprocesado de los datos: Una vez que los datos relevantes han sido al-

macenados, es importante pasar algun tiempo explorando los datos fundamentalmente

por dos razones. En primer lugar, para entender no solo los nombres de los atributos

sino lo que estos significan y cual es su contenido en la base de datos. En segundo

lugar, existen muchas fuentes de error cuando se integran datos de multiples bases de

datos en una sola. Si los datos se estan integrando en un Data Warehouse, esta lim-

pieza es parte de la integracion de los datos en el mismo. En esta fase se tendran que

llevar a cabo tambien operaciones de eliminacion de valores nulos, registros repetidos

o posibles codificaciones de atributos que en distintas bases de datos tenıan distintos

valores.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 26: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.4. EL PROCESO DE KDD: FASES 14

� Seleccion de la base de datos personalizada: De acuerdo con los tipos de usuarios

existentes en la organizacion, a los datos a los que pueden tener acceso y teniendo en

cuenta las posibles consultas, se generaran distintas bases de datos, que denominare-

mos personalizadas, sobre las que los usuarios finales realizaran sus consultas (estas

bases de datos pueden considerarse como vistas). Sobre estas bases de datos se ejecu-

taran los algoritmos necesarios para resolver las consultas permitidas a un determinado

perfil de usuario.

En los pasos previos se ha creado, limpiado y preprocesado la base de datos que se

denominara de explotacion1. Esta base de datos contiene, en principio, toda la infor-

macion que alguna vez se podrıa necesitar cuando cada uno de los distintos perfiles de

usuarios ejecuten consultas deData Mining. Por eso, en este paso se generara la deno-

minada base de datos personalizada, que contendra las ocurrencias y atributos que se

deseen para un determinado perfil. Al contrario de la base de datos de explotacion, que

normalmente se genera una vez, es posible que se generen muchas bases de datos per-

sonalizadas durante el ciclo de vida de una base de datos de explotacion, atendiendo a

las necesidades de los distintos usuarios del sistema. Las bases de datos personalizadas

utilizaran distintas cantidades de objetos y exploraran el uso de distintos atributos.

� Eleccion del tipo de consulta de Data Mining que se va a realizar: Se entiende en este

trabajo como consulta deData Mining cualquier acceso a la base de datos que suponga

analizar los datos mediante algun algoritmo disponible con el fin de extraer informa-

cion (patrones) que no se puede obtener por medio de consultas tradicionales en SQL.

Este tipo de consultas, seran usadas para obtener clasificaciones, asociaciones, ca-

racterizaciones o discriminaciones, por nombrar algunas. Las consultas disponibles

dependeran de las posibilidades del sistema y del tipo de usuario que este ejecutando

la consulta.

� Seleccion del algoritmo de Data Mining apropiado: Incluye la eleccion del metodo

mas adecuado, ası como los parametros del mismo. Nuevamente atendiendo a su

perfil, el usuario elegira entre los algoritmos disponibles para resolver un determinado

tipo de consulta. Observese que para usuarios inexpertos este paso lo podrıa realizar de

manera automatica el sistema eligiendo en cada caso el algoritmo que mas se adaptara

a sus necesidades en funcion de las opciones definidas por el administrador.

� Limpieza y preprocesado de la base de datos personalizada: Es posible que el usuario

quiera aplicar un determinado algoritmo solo a cierto subconjunto de la base de datos

1del ingles mining database [John97b],[John97a]

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 27: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.4. EL PROCESO DE KDD: FASES 15

que contempla, o elegir tan solo ciertas propiedades para el analisis de esos individuos.

Es en esta fase es cuando se aplican los procedimientos para preparar la base de datos

de cada usuario para la ejecucion de los algoritmos necesarios para la resolucion de

un problema. Por ello, es posible que en esta fase se tengan que aplicar operaciones

de preprocesado de datos, de manera que los datos tomen la forma que requiere la

aplicacion de un determinado algoritmo de Data Mining.

� Ejecucion del algoritmo de Data Mining: Una vez que el algoritmo ha sido elegido ya

sea por el usuario o por el sistema, y que los datos han sido preparados, el algoritmo

se ejecuta para buscar los patrones que se representaran en la forma elegida: arboles,

reglas, o cualquier otra representacion del conocimiento.

� Interpretacion de los patrones encontrados: La correcta evaluacion de los patrones

descubiertos depende del problema que se haya resuelto. Una evaluacion tan solo de

la precision del modelo es generalmente inutil. Aparte de evaluar numericamente el

rendimiento del modelo, existen otras medidas menos objetivas que son muy impor-

tantes. Una de la medidas mas importantes, como se comentaba al principio de esta

exposicion, es que los resultados sean utiles y comprensibles. Una vez obtenido el

modelo y comprendido por el usuario correspondiente, puede ocurrir una de las si-

guientes tres cosas: el usuario esta de acuerdo con los resultados pero siente que no

le ha desvelado nada nuevo; el usuario esta de acuerdo y comprueba que los patrones

obtenidos son novedosos y de interes para el negocio, con lo que decide explorar mas

para encontrar mas patrones; el usuario esta descontento con el modelo. En cualquiera

de los dos ultimos casos sera necesario la ejecucion de nuevas consultas para refinar

el problema.

� Refinado: Una respuesta muy frecuente del usuario ante una solucion suele ser que

desea ahondar mas en los patrones. Esta es la principal fuente de iteraciones en el

proceso de extraccion de conocimiento.

A veces puede ocurrir que los patrones extraıdos desvelen fallos en la definicion del

problema. En otros casos, simplemente ocurrira que el usuario no esta satisfecho con

los resultados sin que exista ningun error en la definicion del problema. Si los resulta-

dos no son lo suficientemente buenos, puede suponer anadir nuevos atributos, nuevas

ocurrencias a la base de datos personalizada o incluso en algunas ocasiones podrıa

suponer tener que anadir atributos a la base de datos de explotacion. Despues de pasar

varias veces por esta etapa, si el rendimiento del modelo es suficientemente bueno y el

usuario esta satisfecho con los patrones descubiertos, se estara en disposicion de poner

los resultados en uso.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 28: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 16

� Consolidacion del conocimiento descubierto: Tras el proceso anterior es posible la

incorporacion del conocimiento en otro sistema para acciones futuras o, simplemente,

como documentacion e informe de los resultados a las partes interesadas. En cier-

tos casos, si se dispone de conocimiento anterior, puede suponer la comprobacion y

resolucion de posibles conflictos con dicho conocimiento.

���

���

����

���

���

MiningData

de Explotación

Creación de lade acuerdo alBase de Datos

perfil del usuarioArregloLimpieza y

Personalización

RefinadoPersonalProceso

Figura 2.2: Nuevo ciclo y su relacion con los usuarios

En la figura 2.2, se puede observar el flujo basico del proceso propuesto que se acaba de

exponer. El estudio detallado de las operaciones de cada fase se presenta en el capıtulo 3.

Es importante resaltar una vez mas que, aunque la mayorıa de la bibliografıa se centra en la

etapa de Data Mining, todas las fases aquı expuestas son igualmente importantes de cara a

la exitosa extraccion de conocimientos.

2.5 Data Mining

Hasta hace poco tiempo Data Mining era un campo oscuro y exotico que era discutido por

cientıficos teoricos y de inteligencia artificial. Hoy en dıa, la tecnologıa mas avanzada de

bases de datos, en particular los Data Warehouse, almacenan enormes cantidades de datos

donde la aplicacion de tecnicas de Data Mining es la meta final, con el fin de descubrir las

posibles tendencias escondidas en los datos.

La definicion mas generalmente aceptada describeDataMining como el proceso de busqueda

de patrones, tendencias o relaciones, en definitiva conocimientos, en datos detallados. Los

metodos basados en la busqueda de un hecho especıfico en grandes bases de datos no es,

por tanto, el objetivo de Data Mining. Hoy en dıa, no se le pide a un determinado lenguaje

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 29: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 17

de consulta por hechos especıficos, sino mas bien se le dan todos los hechos para que en-

cuentre (buscando exhaustivamente) los posibles patrones. Esto ha supuesto el desarrollo de

metodos de busqueda ası como de extensiones a los lenguajes de consultas y el desarrollo de

nuevas herramientas. Por ello, los productos para hacer labores de Data Mining son o bien

productos especializados en un metodo determinado, o extensiones a SQL que permiten a

los usuarios realizar procesos de Data Mining.

Como consecuencia de aplicar algoritmos de Data Mining se extraen patrones. Los patrones

pueden ser de distintos tipos y dependiendo del tipo ası seran las acciones que se tomaran

despues de su obtencion. En general, se pueden distinguir dos tipos de patrones: predictivos

y descriptivos. Los patrones predictivos se descubren para predecir el valor de uno o mas

atributos conociendo el valor del resto de atributos. No necesariamente tienen que ver estos

patrones con predecir datos en un futuro, aunque su nombre pueda llevar a confusion. La

funcion de los patrones descriptivos, al contrario que los anteriores, no es resolver un pro-

blema especıfico, sino mas bien, presentar patrones que no se conocıan de antemano.

Todos los algoritmos de Data Mining incorporan alguna medida de bondad o de interes para

evaluar los patrones obtenidos. Estas medidas se usan asimismo en el proceso de busqueda

de los patrones y ayudan a decidir que patrones elegir y cuales rechazar. En cuanto a los

patrones predictivos es muy facil evaluar su bondad de la manera mas obvia, simplemente

juzgando como realizan su labor, dado que tanto el valor a predecir como el de los restantes

atributos existe previamente en la base de datos. En cambio, con los patrones descriptivos

no se puede calcular su bondad viendo como se comportan en los datos que se tienen puesto

que su labor es dar una pista de un comportamiento que no se conoce de antemano. Por ello,

se tiene que utilizar alguna funcion matematica que ayude a decidir que patrones tomar y

cuales descartar.

El componente de Data Mining del proceso KDD a menudo requiere la aplicacion iterativa

de metodos particulares de Data Mining. A lo largo de este capıtulo se estan usando los

terminos modelo y patron de manera informal. Se esta utilizando patron como instancia-

cion de un modelo. Segun esto, Data Mining consiste en encontrar patrones en los datos

o en ajustar modelos a los datos. Los modelos que han sido ajustados juegan el papel del

conocimiento inferido. El decidir si ese modelo refleja un conocimiento util o interesante es

parte del proceso global de descubrimiento, donde el juicio del usuario juega un papel muy

importante.

Muchos de los metodos de Data Mining se basan en conceptos de aprendizaje automatico,

reconocimiento de patrones y estadıstica. La gama de distintos algoritmos para resolver ca-

da problema es sorprendente, tanto para usuarios nuevos como experimentados. En lo que

sigue, se ofrece un resumen de los metodos teniendo en cuenta que la mayorıa de ellos (si

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 30: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 18

no todos), se pueden ver como extensiones o hıbridos de unas cuantas tecnicas y principios.

Lo primero que se presenta en la siguiente seccion son las tareas o consultas mas frecuentes

de Data Mining y despues se estudia como para solventar estas tareas los algoritmos tienen

que tener tres componentes definidos, que son la representacion del modelo, la evaluacion

del mismo y la tecnica de busqueda. Se termina exponiendo algoritmos particulares dentro

de cada enfoque que ayudan a resolver las consultas mas frecuentes de Data Mining.

2.5.1 Tareas de Data Mining

Las dos metas primordiales de Data Mining en la practica son la prediccion y la descripcion.

La prediccion supone el uso de determinadas variables o campos de la base de datos para

predecir valores futuros o desconocidos de otras variables de interes. La descripcion tiene

como meta encontrar patrones entendibles por los usuarios para describir los datos. La im-

portancia relativa de una y otra puede variar dependiendo de las aplicaciones. Sin embargo,

en el contexto de KDD, la descripcion tiende a ser mas importante que la prediccion. En

cambio, en las aplicaciones de reconocimiento de patrones y de aprendizaje automatico, la

prediccion suele ser la primera meta. Los objetivos de una y otra se logran utilizando las ta-

reas primarias que se enumeran a continuacion. Se ha hecho mas hincapie en las descriptivas

por ser estas el objetivo primordial del presente trabajo.

� Caracterizacion: Se conoce ası al proceso de encontrar reglas o patrones que des-

criben propiedades del conjunto de datos estudiado. Ejemplos de este tipo de reglas,

denominadas reglas caracterısticas, son extraer perfiles de clientes en una base de da-

tos de ventas, patrones de llamadas en una base de datos de telecomunicaciones, o

distribuciones de becas en una base de datos con informacion de becas de investiga-

cion.

Una regla caracterıstica generalmente tiene en el lado izquierdo la descripcion del con-

junto de datos a caracterizar y, en el lado derecho, una conjuncion de pares atributo-

valor que sirve para describir las caracterısticas del concepto especificado en el lado

izquierdo de la regla. Se conoce como valor de soporte de una regla de este tipo al

numero de objetos que la cumplen en la base de datos de la que fue extraıda. Esta

medida se utiliza cuando se estan extrayendo reglas de este tipo para rechazar todas

aquellas reglas con valores de soporte inferiores a los requeridos en una determinada

consulta.

Las reglas caracterısticas se pueden expresar entre otras, como formulas logicas o co-

mo tablas en las que, como el antecedente de todas las reglas es el mismo, se podrıa

omitir y tan solo aparecerıan como tuplas de la tabla las partes derechas de las reglas

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 31: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 19

que sirven para describir las caracterısticas y, adicionalmente, un atributo contador es-

tableciendo el soporte de cada regla. En la figura 2.3 se puede observar un ejemplo de

reglas caracterısticas y su representacion como tabla.

En cuanto a los metodos para resolver este tipo de consultas destacan la tecnica de

1 3 25%

D=1D=1D=1 A B Soporte

0 2 16%1 4 17%

25%17%16%

A=1 y B=4A=0 y B=2

A=1 y B=3

(a) Caracterización

Figura 2.3: Representacion de reglas caracterısticas

induccion orientada a atributos [Han92] y la aplicacion de la teorıa de Rough Sets

[Pawlak82, Pawlak86, Pawlak91] que sera estudiada mas en detalle a lo largo de este

trabajo.

� Discriminacion: Las reglas discriminantes presentan propiedades que hacen a un con-

junto de datos, denominado concepto, distinguible del resto de objetos, denominados

clases de contraste. Para poder medir por tanto el interes de una regla discriminante

se necesita, ademas del soporte, otra medida que ayude a establecer el poder discrimi-

nante de la regla (confianza). De esta manera, se utilizara una medida que calcule el

numero de objetos de la clase que cumplen una determinada regla, ası como otra me-

dida que diga el numero de objetos que cumplen esa misma regla fuera de la clase. En

cuanto a la forma que toman estas reglas, al contrario de las que se veıan con anterio-

ridad, tienen como lado izquierdo la conjuncion de pares atributo valor que identifican

las propiedades discriminantes de un concepto y como lado derecho la descripcion

del concepto. Se pueden representar igual que las reglas anteriores como formulas

logicas o como tablas relacionales (con distinta semantica), y las tecnicas que se es-

tudiaran para su obtencion en este trabajo son las mismas que las utilizadas para la

obtencion de reglas caracterısticas. En la figura 2.4 se puede observar un ejemplo de

reglas discriminantes y su representacion como tabla.

� Clasificacion: El resultado de la clasificacion es asignar un objeto a una clase perte-

neciente a un conjunto de clases disjuntas. Ejemplos de clasificacion son establecer

el diagnostico medico a partir de los sıntomas, donde las clases podrıan ser las dis-

tintas enfermedades o las distintas terapias; o el decidir a partir de las condiciones

atmosfericas si sera un dıa soleado. El problema de la clasificacion esta en el tiempo

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 32: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 20

(b) Discriminación

A B Soporte

1 1 12%2 0 27%A=2 y B=0

A=0 y B=1

A=1 y B=1D=1D=1

D=1 83%80%/6%

33%27%12%

Confianza

0 1 33% 83%80%76%

Figura 2.4: Representacion de reglas de discriminacion

requerido para encontrar las reglas que identifiquen a la clase (descripcion). El pro-

ceso de encontrar las reglas puede convertirse en muy complejo en una base de datos

con muchas tablas cada una de ellas con cientos de atributos que deberan ser exami-

nadas para identificar la clase. Los algoritmos mas significativos de clasificacion se

caracterizan por representar el conocimiento como arboles de decision. A parte de los

sistemas de obtencion de arboles de decision [Quinlan86]. Los clasificadores baye-

sianos [Cheeseman96a, Agrawal98a, Han98, Koperski98] tambien se pueden utilizar

para la clasificacion. Se estudiaran en detalle los arboles de decision, otras tecnicas

han sido propuestas en [Manganaris97] y [Ziarko96]

� Asociacion: Supone una busqueda en una base de datos para buscar los patrones o

asociaciones que aparecen juntas con mayor probabilidad. Generalmente, las tablas

de estas bases de datos contienen como atributos los nombres de los objetos que se

pueden obtener en una transaccion y cada fila representa una transaccion. Como con-

secuencia, los valores que cada atributo puede tomar son cero y uno respectivamente.

El valor cero representa que ese objeto no participa en esa transaccion, y un valor uno,

al contrario, representara que el objeto estaba presente. Este tipo de bases de datos

se denomina bases de datos transaccionales y, aunque habitualmente los algoritmos

de extraccion de reglas de asociacion se ejecutan sobre este tipo de bases de datos,

tambien pueden actuar sobre cualquier tipo de bases de datos. No obstante, ha sido el

problema conocido como “analisis de la cesta de la compra” [Shepard90], [DMA96]

el que ha motivado la proliferacion de algoritmos para el calculo de asociaciones en

bases de datos.

Ejemplos tıpicos de este tipo de consultas se dan en el sector del consumo y se obtienen

resultados tales como: ”el p� de los compradores de pan de molde compran tambien

mantequilla”. A continuacion se presenta formalmente el problema de calculo de re-

glas de asociacion [Agrawal93a]:

Sea I � fi�� i�� � � � � img un conjunto de literales que representan a un conjunto de ob-

jetos. Sea D un conjunto de transacciones, donde cada transaccion T es un conjunto

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 33: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.5. DATA MINING 21

de objetos de tal manera que T � I . Con cada transaccion se le asocia un identificador

unico, que se denomina TID. Se dice que una transaccion T contiene a X siendo X

un conjunto de objetos de I si X � T .

Una regla de asociacion es una implicacion de la forma X �� Y 2, donde X � I

Y � I y X � Y � �. Como medidas para ayudar a calcular la bondad de este tipo de

reglas destacan la confianza y el soporte.

La regla X �� Y tiene un soporte s en la base de datos D is el s� de las transac-

ciones de D contienen X � Y . Por otra parte se dice que la confianza de esa regla

es c, si el c� de las transacciones que contienen X contiene tambien Y . Entonces

dada una base de datos D el problema de encontrar reglas de asociacion consiste en la

generacion de todas aquellas reglas de asociacion con un soporte y una confianza por

encima de las marcadas por el usuario.

Un primer algoritmo para encontrar reglas de asociacion denominado AIS fue presen-

tado en [Agrawal93a]. El algoritmo SETM fue propuesto en [Houtsma93]. En este

trabajo se presentara el algoritmo Apriori [Agrawal94] y se muestran algunas mejoras

y variaciones del mismo por ser el algoritmo de calculo de reglas de asociacion que

mayor interes ha suscitado en la comunidad cientıfica. Los algoritmos para el calculo

de este tipo de reglas deberıan ser dinamicos y adaptables, lo que quiere decir que no

se tendran que recalcular todas la reglas en el caso que los conjuntos de datos variaran

mınimamente. Una innovacion de estos algoritmos que puede ser mas eficiente es la

de calcularlos sobre bases de datos previamente generalizadas [Skrinkant96]. Se ob-

tendran resultados mas generales que, aunque seran reflejo de tendencias mas fuertes,

se tendra que tener cuidado por no tener la precision requerida para practicas compe-

titivas.

Las reglas de asociacion son de las consultas mas novedosas en Data Mining, con

lo que es posible que tengan muchas aplicaciones que aun no se hayan descubier-

to. Aunque los patrones descubiertos son muy simples, su valor puede llegar a ser

importantısimo y es por lo que en los ultimos tiempos se estan desarrollando y refi-

nando los algoritmos de busqueda de reglas de asociacion [Agrawal93c, Agrawal95,

Agrawal96a, Agrawal96b, Agrawal97, Bayardo98].

� Clustering: Otra tecnica de obtencion de patrones descriptivos es el clustering, deno-

minado tambien modelos de segmentacion. La meta de estas consultas es tomar un

conjunto de entidades representadas por registros de una base de datos y dividirlas en

grupos o clusters de manera tal que los elementos dentro de cada grupo sean simila-

res. Una vez mas, puesto que los patrones que da son informativos, su valor esta en

2En sentido general se permite que el consecuente de las reglas de asociacion sea mas de un elemento

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 34: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 22

su capacidad de proporcionar o no un conocimiento potencial al analista que realizo

la consulta. En [Ketterling97] y [Agrawal98a] se han descrito metodos eficientes para

encontrar este tipo de conocimientos.

� Patrones secuenciales:[Berndt96, Han98] Utilizan los mismos datos que en el caso

de las asociaciones, pero en este caso, los datos se han recogido sobre un perıodo de

tiempo, con lo que se tiene una base de datos historica en la que buscar los patrones

que mas se han repetido. Por ejemplo, la clase de reglas obtenidas son del tipo: “el

p� de pacientes que sufrieron una determinada enfermedad, sufrieron otra a los n

meses”. Este tipo de consultas pueden actuar sobre bases de datos relacionales y se

beneficiarıan de extensiones de SQL.

Hay otro enfoque dentro de este que se denomina secuencias similares. En las secuen-

cias anteriores, el resultado es una serie de patrones en el tiempo, con las secuencias

similares una base de datos historica ordenada en el tiempo se examina para encontrar

secuencias similares a otra. Por ejemplo, encontrar un departamento con corrientes de

ventas similares.

2.6 Enfoques para resolver las tareas de Data Mining

Ha habido numerosos enfoques hacia la investigacion en KDD, especialmente en los ultimos

anos. En esta seccion se tratara de exponer los enfoques mas significativos. Una posible

clasificacion puede ser:

� Enfoques matematicos y estadısticos: Generalmente, en estos enfoques lo que se

hace es construir un modelo matematico para posteriormente extraer reglas, regu-

laridades y patrones del modelo. A este enfoque pertenecen las reglas bayesianas

[Heckerman96] y los Rough Sets [Pawlak82] entre otros.

� Machine Learning : Se utiliza un modelo cognitivo para simular el proceso de apren-

dizaje humano. Por ejemplo, en el paradigma de aprendizaje a partir de ejemplos se

utiliza un conjunto de ejemplos positivos y otro de negativos para aprender el concepto

que mejor describe cada clase.

� Enfoques orientados a las bases de datos: En este caso se utilizan tecnicas y heurısticas

especıficas de bases de datos para explotar las caracterısticas de los datos que se ten-

gan. Por ejemplo, las bases de datos transaccionales son recorridas iterativamente para

descubrir patrones en bases de datos de grandes superficies comerciales.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 35: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 23

� Enfoques integrados: Recientemente, la tendencia es a integrar enfoques en un marco

unificado para poder explotar las ventajas de cada enfoque [Simoudis96], [Agrawal98c].

La integracion que se destaca aquı como mas importante es la integracion de cualquier

enfoque con las bases de datos relacionales para aprovechar los metodos de manejo de

datos que estas proporcionan para dar eficiencia a los algoritmos utilizados de analisis

de datos.

� Otros enfoques: Se incluyen en este grupo a las tecnicas de visualizacion y de repre-

sentacion del conocimiento ası como las redes neuronales.

A continuacion se detallan mas en profundidad cada uno de estos enfoques:

2.6.1 Enfoques matematicos

Dentro de los enfoques matematicos se destaca aquı la teorıa de Rough Sets por haber esta-

do explorando sus capacidades para el analisis de datos durante los tres ultimos anos fruto

de lo cual se esta desarrollando el sistema RSDM 3. Esta teorıa fue propuesta por Pawlak

[Pawlak86], [Pawlak88], [Pawlak93], [Pawlak91], [Pawlak92] y posteriormente extendida

por Ziarko [Ziarko93a], [Ziarko96]. Las tecnicas de Rough Sets se han usado para el descu-

brimiento de conocimiento en bases de datos, como herramienta para encontrar dependencias

en los datos y para derivar tablas de decision de las que se pueden obtener las reglas de deci-

sion. Un problema interesante que se ha resuelto tambien mediante esta teorıa es el calculo

de reductos de una tabla de decision, que consiste en la eliminacion de todos aquellos atri-

butos o propiedades que sean dependientes o redundantes en dicha tabla de decision. Han

y Cercone [Han92], [Han93] integraron Rough Sets con el metodo de induccion orientada

a atributos para encontrar reglas generalizadas. En este enfoque, el conjunto de objetos se

generaliza utilizando induccion orientada a atributos y, posteriormente, se aplica la teorıa de

Rough Sets para extraer reglas generales de los datos. Las tecnicas basadas en Rough Sets

proporcionan una muy buena herramienta para KDD con un fundamento matematico muy

robusto. El peor problema que se plantea es que el coste de calculo del reducto mınimo crece

de manera exponencial con el numero de atributos.

2.6.1.1 Rough Sets

Sea U un conjunto no vacıo denominado universo y sea A�B � U , B � A; IND�B� deriva

una relacion de equivalencia sobre el universo U , a la que se denomina relacion de indiscer-

nibilidad. Esta relacion representa una clasificacion del universo U en clases de objetos que

3Rough Set Data Miner. Proyecto PB 95-003- 01 financiado por la CYCIT

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 36: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 24

son indiscernibles o identicos con respecto al conocimiento suministrado por los atributos

de B. Al par ordenado AS � �U� IND�B�� se le denomina espacio de aproximacion.

Las clases de equivalencia de IND�B� se denominan tambien conjuntos elementales. Cual-

quier union de conjuntos elementales se denomina conjunto definible.

Sea X � U representante de un determinado concepto. A menudo ocurre queX no se puede

definir como union de conjuntos elementales. Para solucionar esta situacion, se definen dos

nuevos conjuntos:

XB � fo OB��o� � Xg (2.1)

se denominara lower approximation o aproximacion lower del conjunto X con respecto a

los atributos del conjunto B (ver figura 2.5).

La aproximacion lower de un concepto se puede definir como la union de aquellos conjuntos

elementales que estan completamente incluidos en el concepto. Por ello, a la aproximacion

lower pertenecen todos aquellos objetos que se pueden clasificar con seguridad como perte-

necientes al concepto teniendo en cuenta la informacion suministrada por los atributos que

se tienen en consideracion.

Por otra parte:

XB � fo OB��o� �X � �g (2.2)

se define como upper approximation o aproximacion upper (ver figura 2.5). La aproxima-

cion upper es la union de todos aquellos conjuntos elementales que tienen interseccion no

nula con el concepto. Por ello, esta region contiene aquellos elementos de los que no se pue-

de decir con seguridad de acuerdo a la informacion suministrada por los atributos condicion

si pertenecen o no al concepto.

Cualquier conjunto definido por medio de sus aproximaciones lower y upper respectivamen-

te se denomina Rough Set.

La region de aquellos objetos para los que no se puede decir si pertenecen al concepto o al

complementario del mismo y se le denomina region frontera.

La region frontera se define como:

Bnd�X�B � XB �XB (2.3)

A la union de las regiones (aproximaciones) lower se le denomina region positiva por ser la

union de todos los elementos que se pueden clasificar como pertenecientes al concepto o a su

complementario. La region positiva denotada como POSB�D� incluye pues todos aquellos

objetos del universo U que se pueden clasificar como las clases de equivalencia definidas

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 37: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 25

por D:

POSB�D� � �fX � X IND�D�g (2.4)

Aproximación

LowerAproximación

UpperAproximación

Región Frontera

Lower

Región Frontera

Concepto

Figura 2.5: Aproximaciones lower y upper de un concepto

2.6.1.2 Modelo de Rough Sets precision de variable (VPRSM)

Sean X , Y subconjuntos no vacıos de un universo U . Se dice que X esta incluido en Y

(X � Y ) si �x x X� x Y . De acuerdo con esta definicion no existe posibilidad de

que algun elemento quede no clasificado. Si se introduce una nueva medida c�X� Y � para

permitir algun grado de error en las clasificaciones de la siguiente manera:

c�X� Y � �

�� si card�X� � ��

� card�X � Y ��card�X� si card�X� � ��(2.5)

Admitiendo este grado de error en la relacion de clasificacion, las definiciones de las apro-

ximaciones lower y upper se pueden modificar de la siguiente manera: (ver figura 2.6):

R� � f�fE R� � X � Egg (2.6)

R� � f�fE R� � c�E�X� � � �g (2.7)

De acuerdo a esta definicion es posible clasificar mayor numero de elementos del universo

debido a la inexactitud inherente en los elementos del universo real. Observese en la figura

2.6 como clases de equivalencia que se quedaban fuera de la region lower por tener un

pequeno solapamiento con el complementario del concepto, posiblemente debido a alguna

excepcion quedan clasificadas en la modificacion del modelo si se define con un umbral

adecuado. Esto permite dar clasificaciones mas reales de los objetos a estudio.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 38: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 26

Lower

de la AproximaciónLower

Aproximación

Nuevos Objetos

Figura 2.6: VPRSM

2.6.1.3 Calculo de un conjunto reducido de atributos

Es frecuente que existan dependencias entre los atributos de una base de datos de manera tal

que, para establecer reglas de clasificacion, los atributos dependientes pueden ser eliminados

por no suministrar informacion de cara a la clasificacion y tan solo hacen mas incompresibles

a las reglas resultantes.

Un atributo a B se dice que es superfluo con respecto a un concepto D si:

POSB�D� � POSB�a�D� (2.8)

en cualquier otro caso se dira que el atributo a es indispensable en B con respecto a D. Si

un atributo es superfluo, se puede eliminar sin cambiar el poder de clasificacion del resto de

los atributos. Esto nos lleva a la definicion de reducto.

B � C se dice que es un reducto si cada atributo de B es indispensable con respecto a D y

por tanto POSC�D� � POSB�D�.

El reducto de C es un subconjunto no redundante de atributos mediante el cual todos los

objetos que son discernibles por medio del conjunto original de atributos permanecen indis-

cernibles. El calculo de un conjunto reducido de atributos o “reducto” tiene un amplio reflejo

[Skowron91], [Skowron92] en la bibliografıa puesto que permite eliminar de antemano aque-

llos atributos que son irrelevantes en tareas posteriores de descubrimiento de conocimiento.

El problema del calculo de reductos es la complejidad de los algoritmos para calcularlos

que se ha demostrado ser O�n�� [Skowron91]. Como consecuencia, numerosos algoritmos

se han expuesto para el calculo eficiente de reductos de una base de datos [Fernandez97a],

[Lin96].

2.6.1.4 Enfoques estadısticos

La estadıstica ha sido una herramienta util para el analisis de datos. La inferencia baye-

siana es quiza el metodo mas estudiado como herramienta de extraccion de conocimien-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 39: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 27

to. AUTOCLASS es un sistema de clasificacion bayesiana desarrollado por Cheeseman

[Cheeseman96a], [Cheeseman96b]. Dado un conjunto de objetos o evidencias que no se

sabe a que clase pertenecen, AUTOCLASS intenta encontrar clusters para representar las

clases de manera que sea capaz de asignar cada objeto a una de las clases. Aunque AUTO-

CLASS es capaz de encontrar clusters jerarquicos, donde los maximos locales son suficien-

tes, generalmente solo puede tratar con valores simples. El uso de redes bayesianas para el

descubrimiento de relaciones causales entre objetos fue propuesto para KDD por Buntine

[Buntine91] y Heckerman [Heckerman96]. Los nodos de la red bayesiana representan va-

riables o estados y los arcos representan las dependencias entre los nodos dirigidos desde la

causa hacia el efecto. Las redes bayesianas son herramientas muy utiles para analizar rela-

ciones causales en bases de datos. Sin embargo, la complejidad del modelo que se obtiene

crece de manera exponencial con el numero de nodos de la red. Generalmente, se encuen-

tran optimos locales cuya bondad depende en alto grado de la heurıstica y del dominio de

aplicacion. Para resumir, los enfoques estadısticos tienen un fundamento teorico muy fuerte,

su rendimiento es muy bueno cuando se aplican a datos cuantitativos y son robustos incluso

cuando hay ruido. Sin embargo, la mayorıa de ellos dependen de algun supuesto estadıstico

que no se cumple con todos los datos reales.

2.6.2 Machine Learning

Dentro de este enfoque existen numerosas tecnicas se destacan aquı las siguientes:

� Induccion mediante arboles de decision: Es una familia de sistemas de aprendizaje

que se caracterizan por que si bien el dominio de aplicacion no esta limitado a un area

determinada, las aplicaciones a las que se dirigen tienen que ver con clasificacion. Co-

mo resultado, el producto que obtienen es una pieza de conocimiento que sirve para

asignar a un objeto en un conjunto de clases disjuntas. Los algoritmos de esta fami-

lia se caracterizan ademas porque el conocimiento que obtienen lo representan como

arboles de decision. A pesar de la sencillez de este lenguaje de representacion del co-

nocimiento, sirven para resolver problemas complejos. Un arbol de decision es aquel

cuyas hojas son etiquetas de clases. La ramas de un nodo padre a su hijo estan mar-

cadas por los posibles valores de los atributos correspondientes en el nodo padre. Un

objeto queda representado por un vector de valores sobre un conjunto de atributos y se

clasifica trazando el camino desde la raız del arbol hasta las hojas, tomando aquellas

ramas o arcos de acuerdo a sus valores. La estrategia de aprendizaje es aprendizaje no

incremental desde ejemplos. Un sistema muy representativo de esta familia de siste-

mas es CLS [Hunt66] (Concept Learning System). CLS construye un arbol que intenta

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 40: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 28

minimizar el coste de clasificacion de un objeto. Utiliza para ello una estrategia pare-

cida a la de minimax.

ID3 [Quinlan86] es uno de los sistemas desarrollados desde CLS. Este algoritmo cons-

truye el arbol de decision de manera iterativa y abandona la funcion de calculo de

coste de CLS por una funcion de evaluacion que se guıa por la cantidad de informa-

cion. Quinlan utiliza la entropıa para inducir arboles de decision en el algoritmo ID3

[Quinlan79]. La induccion mediante arboles de decision es el metodo mas utilizado

para descubrimiento de reglas de clasificacion. ACLS [Paterson83] es una genera-

lizacion de ID3 que gracias a la capacidad que tiene para tratar valores enteros sin

restricciones ha permitido ser utilizado en tareas como reconocimiento de imagenes.

ASSISTANT [Konokenko84] tambien tiene a ID3 como antecesor pero difiere de este

en muchos aspectos entre otras permite el tratamiento de atributos con valores conti-

nuos y no genera el arbol de decision de manera continua. ASSISTANT se ha utilizado

con exito en dominios medicos. En resumen, los arboles de decision proporcionan una

clasificacion natural de los datos y por tanto son faciles de entender por los humanos.

Sin embargo, los arboles pueden crecer hacia tamanos muy grandes lo que hace que la

derivacion de reglas de clasificacion sea cara desde el punto de vista computacional.

� Aprendizaje por ejemplos: En este enfoque, dado un conjunto de ejemplos positi-

vos (objetos que pertenecen a una clase), y un conjunto de ejemplos negativos (que

no pertenecen a la clase), se busca una descripcion de la clase (concepto) que cubra

todos los ejemplos positivos y excluya a los negativos. El espacio de busqueda queda

definido por los atributos de los objetos. El algoritmo AQ propuesto por Michalski

[Michalski83] utiliza generalizacion bottom-up para la busqueda de la descripcion.

Los metodos de aprendizajes a partir de ejemplos imitan el proceso de aprendiza-

je humano. Son mejores para manejo de datos cualitativos antes que cuantitativos o

numericos. La mayorıa de los metodos asumen que el conjunto de datos puede ser

almacenado en memoria principal con lo que admiten numerosas pasadas sobre la ba-

se de datos (gran inconveniente si nos enfrentamos con las bases de datos actuales de

tamanos del orden de los Gigabytes).

� Clustering conceptual: Dado un conjunto de objetos, se busca encontrar clusters ba-

sados en la cercanıa conceptual entre objetos. Un objeto es una tupla n-aria represen-

tada por un vector de valores sobre un conjunto de atributos. Un cluster se representa

por una conjuncion de predicados definidos sobre los atributos y sus valores. Se puede

decir que los clusters que se generan de esta manera son mas comprensibles que los

clusters generados mediante los enfoques estadısticos. Aunque su rendimiento es bue-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 41: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 29

no sobre datos cualitativos, no es ası con datos numericos, donde el rendimiento baja.

De igual forma que pasa con el aprendizaje por ejemplos, este metodo asume que el

conjunto de datos puede ser almacenado ıntegramente en memoria principal, lo que es

a menudo imposible para grandes bases de datos.

Para resumir, la mayorıa de los metodos de Machine Learning generan modelos cognitivos

faciles de entender por los humanos, sin embargo tienden a asumir que el conjunto de datos

es pequeno, lo que supone una gran restriccion cuando hablamos de grandes volumenes de

datos.

2.6.3 Enfoques orientados a bases de datos

En estos metodos, se trata de utilizar y explotar la tecnologıa de los gestores y tecnicas de

bases de datos relacionales para extraer reglas de dichas bases de datos.

� Un metodo muy interesante dentro de este enfoque es el desarrollado por Han [Han91b]

[Han96b]. El metodo utiliza generalizacion y jerarquıas conceptuales para extraer las

reglas. El metodo de induccion orientada a atributos tiene la ventaja de que es efectivo

y eficiente cuando se aplica a grandes volumenes de datos. Mediante este metodo,

se calculan reglas generalizadas de bases de datos pero tiene el inconveniente de que

requiere que el usuario suministre al sistema las jerarquıas de conceptos.

� Apriori: Este es el nombre de un algoritmo propuesto por Agrawal [Agrawal94] para

la extraccion de reglas de asociacion de grandes bases de datos transaccionales, esto

es, que contienen transacciones de clientes. Cada transaccion esta compuesta por un

conjunto de objetos o items. Se trata de establecer, mediante las reglas de asociacion,

los patrones de compra de un determinado sector. Este algoritmo trabaja en dos fases:

En una primera fase encuentra los patrones de compra mas frecuentes y en la segunda

fase deriva las reglas de estos patrones. Aunque este algoritmo tiene la ventaja de ser

eficiente y escalable con respecto al tamano de la base de datos, tiene el problema de

que el unico tipo de reglas que extrae es de asociacion. Existen implementadas versio-

nes fuerte y debilmente acopladas a bases de datos de este algoritmo [Agrawal95] en

concreto utilizando DB2 donde se puede ver la eficiencia de tal integracion.

2.6.4 Enfoques integrados

Bajo esta clasificacion se integran varios enfoques para obtener una mayor eficiencia. Exis-

ten en la bibliografıa numerosos enfoques pertenecientes a esta aproximacion [Han91a,

Han96a]. No obstante, hay que resaltar aquı que la tendencia actual es a integrar todos

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 42: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.6. ENFOQUES PARA RESOLVER LAS TAREAS DE DATA MINING 30

los enfoques de manera que se proporcionen sistemas de descubrimiento de conocimiento

mas eficientes y eficaces. Por otra parte, todos los enfoques que se han estudiado, tienden a

integrarse con Sistemas de Gestion de Bases de Datos para aprovechar las ventajas de estos

al tratar los grandes volumenes de datos.

2.6.5 Componentes de los algoritmos de Data Mining

Habiendo perfilado las principales tareas deDataMining, el siguiente paso es la construccion

de algoritmos para solucionarlas. Se pueden identificar tres componentes en cualquier algo-

ritmo de Data Mining: la representacion del modelo, la evaluacion del mismo y la busqueda

[Piatesky94]. Segun los autores, si bien esto es una vision reduccionista y no completa, re-

presenta una manera muy adecuada de expresar los componentes claves de los algoritmos de

una manera unificada y compacta.

� Representacion del modelo: Se refiere al lenguaje usado para describir los patrones

que se descubran, podrıa ser inherente al metodo de Data Mining utilizado y es de

suma importancia que sea comprensible. Si la representacion es muy limitada, enton-

ces por muchos datos que se tengan no se conseguira producir un modelo adecuado.

Por eso, es de suma importancia que el usuario comprenda todas las suposiciones de

la representacion inherente de un determinado metodo. Es tambien importante que el

disenador del algoritmo establezca la representacion que presupone un determinado

algoritmo. Es importante resaltar que cuanto mas potente es la representacion, aumen-

ta el peligro de que el conjunto de datos se ajuste con lo que los resultados podrıan

ser peores. Ademas, la busqueda se hace mas compleja y la interpretacion tambien

se dificulta. Las representaciones de conocimiento mas habituales incluyen arboles de

decision y reglas, regresion no lineal, clasificacion y modelos de aprendizaje relacio-

nal. Un punto importante a destacar es que cada representacion tıpicamente sirve para

unos problemas mejor que para otros. Ası, por ejemplo, los clasificadores basados en

arboles de decision son muy utiles para la busqueda de estructuras en espacios mul-

tidimensionales. De esta manera se puede decir que no hay un metodo universal de

Data Mining y que gran parte del trabajo y del posterior exito de las tareas de Data

Mining estriba en la correcta eleccion del algoritmo y del metodo de representacion.

� Criterios de evaluacion del modelo: Son funciones o medidas cuantitativas que ayu-

den a determinar la manera en que los patrones obtenidos se ajustan a las metas que

se querıan obtener. La evaluacion de la exactitud predictiva de un modelo se realiza

mediante validacion cruzada. La evaluacion de la calidad descriptiva por otra parte

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 43: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 31

incluye la novedad de los patrones, su utilidad y comprension, entre otros aspectos.

Criterios tanto logicos como estadısticos se pueden utilizar para tal evaluacion.

� Metodos de busqueda: Se compone de dos elementos: la busqueda del modelo y

la busqueda de los parametros. Para algunos problemas de baja complejidad, no hay

busqueda de los segundos dado que los parametros optimos son faciles de obtener.

Para cada representacion de un modelo se instancian los parametros para evaluar la

calidad de un modelo en particular. Las implementaciones de la busqueda de modelo

tienden a ser heurısticas dado que el espacio de busqueda es prohibitivo y de otra

manera no serıan faciles de obtener.

2.7 Algoritmos representativos

Se estudian en esta seccion algoritmos representativos de las consultas citadas anteriormente

� Reglas caracterısticas y discriminantes: Metodologıa de Rough Sets.

� Reglas de asociacion: Algoritmo Apriori.

� Clasificacion: Algoritmos de induccion en arboles de decision: ID3, C4.5.

� Generalizacion y discretizacion: Induccion sobre atributos.

2.7.1 Rough Sets como metodologıa para extraer conocimiento de basesde datos

Una vez que las nociones basicas de la teorıa de Rough Sets han sido establecidas, es nece-

sario explicar como se puede aplicar esta teorıa para la extraccion de conocimiento de bases

de datos.

Se estudia la manera en que la aproximacion lower se puede utilizar para extraer reglas dis-

criminantes de un concepto, mientras la aproximacion upper se puede utilizar para dar reglas

caracterısticas de un conjunto de objetos.

Cuando se este tratando con el VPRSM, el usuario tendra que suministrar los umbrales de-

seados de solapamiento. En el caso de no suministrar estos umbrales se calcularan reglas con

��� de precision que, como se veıa, puede traer como consecuencia la perdida de algunos

patrones dada la imprecision inherente en los datos reales.

Una vez que las reglas se han calculado podrıan ser anadidas al sistema para clasificar nue-

vos conjuntos de objetos.

Por otra parte se ha estudiado en la definicion de KDD que los patrones obtenidos deben

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 44: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 32

ser entendibles por el usuario final [Fayyad96b]. Cuando se trata con bases de datos que

contienen gran cantidad de datos ocurre a menudo que el numero de variables a tratar es

tambien grande. Esto dificulta tanto la obtencion de los patrones como la posterior inter-

pretacion. Por eso es necesaria la reduccion del numero de atributos que se estan tratando.

El algoritmo de calculo de reductos [Skowron91] sirve para reducir el numero de atributos

basandose en el calculo de dependencias entre los atributos. Sin embargo, la complejidad

de este algoritmo es exponencial lo que lo convierte en inaplicable cuando se trata con bases

de datos de gran tamano. Algunas propuestas de mejoras a ese algoritmo se proponen en

[Fernandez97a] [Lin96].

En lo que sigue se estudia en detalle la aplicacion de los Rough Sets para tareas de descubri-

miento.

2.7.2 Calculo de reglas discriminantes utilizando Rough Sets

Dada una tabla de una base de datos relacional que contiene las ocurrencias de objetos a

tratar, las acciones a seguir para extraer reglas caracterısticas son las siguientes:

1. Eliminacion de los atributos que conforman la clave: Estos atributos hacen distingui-

bles a todos los objetos de la base de datos, y si el objetivo es encontrar conjuntos de

atributos que agrupen a los objetos, los atributos clave, ası como las claves candidatas

deberan ser eliminadas.

2. Reagrupacion: Una vez las claves se han eliminado, aquellas filas que sean identicas

seran reagrupadas y se anadira un atributo que sera el encargado de contar, para cada

fila el numero de individuos que la cumplen de la base de datos original.

3. Obtencion de un reducto: Las reglas con mas de un determinado numero de atributos

en la parte izquierda no son comprensibles para los usuarios. Por eso antes de ex-

traer cualquier tipo de reglas conviene ejecutar un algoritmo que elimine los atributos

irrelevantes.

4. Eliminacion de clases con pocos representantes: Este es un paso opcional que se puede

ejecutar para tratar de disminuir el tamano de la base de datos. Si el usuario ha su-

ministrado un umbral de confianza de las reglas, todos aquellas filas cuyos contadores

sean muy bajos se pueden eliminar.

5. Ejecucion del algoritmo de calculo de la region lower de acuerdo al umbral suminis-

trado por el usuario.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 45: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 33

6. Interpretacion de las reglas obtenidas: La tabla resultante de la aplicacion del algorit-

mo de calculo de region lower contendra una tupla por cada regla discriminante y el

valor del contador servira para calcular la confianza y soporte de la regla.

En la figura 2.7 se observa un ejemplo de aplicacion de las operaciones expuestas a un

conjunto de objetos.

2.7.2.1 Expresion del calculo de la region lower en SQL

Se ha comentado con anterioridad, que la tendencia actual es la integracion de los enfoques

de Data Mining con los gestores de bases de datos para sacar con ello el maximo rendimien-

to. Las operaciones basicas de la teorıa de los Rough Sets ha sido traducida en terminos

de los lenguajes de consulta relacionales [Fernandez96b] y en concreto han sido traducida

a SQL [Fernandez98a]. La obtencion de la region lower supone el calculo de las clases de

equivalencia inducidas tanto por el conjunto de atributos condicion como las inducidas por

los atributos decision. Una vez calculadas estas tan solo queda iterar para calcular cuales

caen dentro de la region lower y cuales no. Por ello, el calculo de la region lower se puede

dividir en dos fases:

� Calculo de clases de equivalencia. Esta operacion se puede modelizar de la siguiente

manera:

SELECT C1, C2,..., Cn, D, count(*) AS cnt

FROM R

GROUP BY C1, C2,..., Cn, D

ORDER BY C1, C2,..., Cn, cnt DESC

� Lectura de la tabla ordenada para elegir aquellas clases de equivalencia inducidas por

los atributos condicion completamente incluidas en el concepto.

La fase crıtica es en la que se lee la base de datos para obtener las clases de equivalencia y

es por tanto, es la fase que se debe tratar de optimizar con mayor empeno.

2.7.3 Calculo de reglas caracterısticas

Para la obtencion de reglas caracterısticas mediante la metodologıa de los Rough Sets, es

necesario aplicar la misma secuencia de pasos que se ha visto para la obtencion de reglas

discriminantes cambiando el paso en que se aplica la region lower y aplicar la region upper.

En este caso la base de datos se lee y se ordena para la obtencion de las clases de equivalencia

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 46: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 34

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

��������������������������������������������������

��������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

EB FD B ED B EIF B=b AND E=e THEN D=d

...............

B C D E FKEY

Cálculo delReducto Lower

Extracciónde Reglas

αUmbral= AtributoDecisión=D

Clavede AtributosEliminación

Figura 2.7: Calculo de reglas discriminantes por medio de la region lower

utilizando la misma consulta SQL que se ha visto en el apartado anterior pero eligiendo todas

las clases de equivalencia que tengan interseccion no nula con el concepto a caracterizar.

En la figura 2.8 se observa un ejemplo de aplicacion de tal secuencia de operaciones a un

conjunto de datos.

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

B C D E FKEY EB D B ED B EFIF B=b AND E=e THEN D=d

...............

AtributoDecisión=D

Eliminaciónde Atributos

Clave

Cálculo delReducto

Extracciónde Reglas

Umbral= α

Upper

Figura 2.8: Calculo de reglas caracterısticas por medio de la region upper

2.7.4 Reglas de Asociacion: Algoritmo Apriori

El algoritmo Apriori se utiliza para la extraccion de reglas de asociacion [Agrawal93a]. El

problema de calculo de reglas de asociacion se puede dividir en tres subproblemas:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 47: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 35

� Generacion de la tabla que contiene las transacciones: Se genera una tabla relacional

en la que cada atributo representa un objeto y en que cada fila representa una tran-

saccion. Es importante destacar que esta representacion es la mas habitual y resulta

eficiente. Por otra parte, cualquier tabla es susceptible de ser transformada en este tipo

de tabla.

� Encontrar el conjunto de objetos (items) mas frecuentes (cuyo soporte es mayor que

el mınimo requerido por el usuario) en la tabla que contiene transacciones.

� Utilizar los conjuntos de objetos mas frecuentes para generar las reglas deseadas.

2.7.4.1 Fase de busqueda de agrupaciones frecuentes: Algoritmo Apriori

Los algoritmos para el descubrimiento de agrupaciones frecuentes utilizan multiples lecturas

de la base de datos. En la primera pasada, se cuenta el soporte de los objetos por separado se

determinan aquellos objetos con soporte mayor que el requerido. En cada pasada posterior

de la base de datos se empieza con una semilla de agrupaciones que demostraron en la

pasada anterior tener el soporte mınimo pedido y se utilizan para generar el conjunto de

agrupaciones candidatas del siguiente nivel. A continuacion, la base de datos se vuelve a leer

para establecer los soportes de las agrupaciones candidatas, se eliminan todas aquellas con

soportes inferiores al mınimo solicitado y el resto se convierten en la semilla de la siguiente

pasada. El proceso continua hasta que no se obtienen mas agrupaciones. A continuacion,

se describe el codigo de los algoritmos Apriori y AprioriTID, estos dos algoritmos difieren

de los primeros propuestos SETM [Houtsma93] y AIS [Agrawal93a] en la manera en que se

eligen las agrupaciones. El algoritmo AprioriTID [Agrawal93c] tiene la ventaja adicional de

que la base de datos solo se lee en la primera pasada.

A continuacion, se estudia en detalle el algoritmo Apriori. Se asume que los objetos de cada

transaccion estan almacenados en orden alfabetico y se utiliza la siguiente notacion para

establecer el pseudocodigo del algoritmo:

� Lk se utiliza para designar al conjunto de agrupaciones de tamano k

� Ck designa al conjunto de agrupaciones candidatas de tamano k

� agrupacion-k: agrupacion de tamano k y se supone compuesta por los elementos:

c��� c��� � � � � c�k�

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 48: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 36

Algoritmo Apriori

L�

FOR (k=2; Lk�� � �; k++) DO

Ck � apriorigen�Lk��);

FOR toda transaccion t D DO

Ct=subset(Ck, t)

FOR todo candidato c Ct DO

c.cont++;

END

Lk � fc Ck� c�cont minsoporteg

END

END

Solucion �T

k Lk

Generacion de candidatos

En el pseudocodigo que se acaba de exponer, la funcion (apriorigen) se utiliza para la ge-

neracion de candidatos. La funcion se puede expresar en SQL de la siguiente manera:

INSERT INTO Ck

SELECT p�i�� p�i�� � � � � p�ik��

FROM Lk��p, Lk��q

WHERE p�i� � q�i���p�i� � q��� � � � � p�ik�� � q�ik��;

Esta consulta genera agrupaciones con elementos que han podido ser eliminados en pasos

anteriores. Por ello, de cara a la obtencion del conjunto de candidatos, todas aquellas agru-

paciones que sean superconjunto de agrupaciones eliminadas en pasos anteriores deben ser

eliminadas, pues es seguro que no cuentan con el mınimo soporte en la base de datos.

Algoritmo AprioriTID

Este algoritmo utiliza tambien la funcion apriorigen que se acaba de exponer para el calculo

de los candidatos. La caracterıstica que lo diferencia de Apriori es que despues de la primera

pasada la base de datos no se utiliza para el calculo de los soportes de las agrupaciones. En

su lugar, los candidatos presentes en cada transaccion se codifican y se utilizan en pasadas

posteriores para el calculo de agrupaciones del siguiente nivel. El problema de este algoritmo

es que la codificacion en las primeras pasadas ocupa mucho espacio (es la base de datos

en la primera pasada). Como consecuencia, un hıbrido de los algoritmos expuestos es la

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 49: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 37

mejor opcion. Este hıbrido [Agrawal94], aplica Apriori en las primeras pasadas y cuando se

estima que la codificacion tiene un tamano aceptable, se pasa a aplicar el AprioriTID. Se ha

demostrado que en la mayorıa de los casos el hıbrido de ambos algoritmos es el que mejor

resultados esta dando.

2.7.4.2 Extraccion de reglas de asociacion a partir de las asociaciones

Para la generacion de las reglas se utilizan todos los posibles subconjuntos de cada agrupa-

cion frecuente obtenida con anterioridad de la siguiente manera: supongase que l es una

agrupacion frecuente. Para cada subconjunto a de l se calcula la confianza de la regla

a � �l � a�; si la confianza es mayor que la mınima requerida entonces se da como re-

sultado la regla. Un posible algoritmo para la obtencion de las reglas se lista a continuacion:

Para todas las agrupaciones lk con k � llamar a genreglas�lk� lk��

Procedure genreglas (lk� am)

A � f�m� �� agupacionesam���am�� � amg

FOR todo am�� A DO

conf � soporte�lk��soporte�am��);

IF (conf minconf ) THEN

Extraer la regla am�� � �lk � am���

IF �m� � � THEN

Llamar a genreglas�lk� am��)

END

2.7.5 Obtencion de reglas de clasificacion: Algoritmos ID3 y C4.5

Un posible enfoque de la tarea de induccion podrıa ser generar todos los posibles arboles

de decision que clasifican correctamente el conjunto de entrenamiento y elegir el mejor de

todos ellos. La cantidad de arboles que se generarıan es finito pero grande, con lo que, esta

posibilidad solo es aceptable cuando se trata con conjuntos pequenos de datos. El algoritmo

ID3 fue pensado justo para los casos en los que se tiene gran cantidad de objetos y de atri-

butos y se requiere la construccion de un arbol de clasificacion sin mucha computacion. La

estructura basica del algoritmo es iterativa. Un subconjunto del conjunto de entrenamiento

que se denomina ventana se elige de manera aleatoria y se utiliza para la construccion del

arbol. Si como resultado se obtiene un arbol capaz de clasificar todos los elementos del

conjunto de entrenamiento entonces el proceso termina, en caso contrario, se anaden los

objetos no clasificados a la ventana y el proceso continua. El problema por tanto radica en

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 50: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 38

los criterios para el calculo del arbol para una cantidad C arbitraria de objetos. El punto

crucial en el calculo del arbol esta en la eleccion del mejor atributo por el que establecer la

siguiente ramificacion en el arbol. ID3 utiliza la entropıa de Shannon para esta decision y se

demuestra que el coste computacional por cada iteracion en ID3 es proporcional al producto

del tamano del conjunto de entrenamiento, el numero de atributos y el numero de nodos que

no son hoja en el arbol.

C4.5 es otro sistema de aprendizaje que obtiene reglas de clasificacion y que utiliza arboles

de decision como modelo de representacion. El algoritmo se aplica al conjunto de entrena-

miento que puede encontrarse como un fichero plano en el que se suministran los atributos

que se estan utilizando para describir el conjunto de entrenamiento.

El nucleo del algoritmo C4.5 es el proceso de construccion del arbol de decision. La cons-

truccion de este arbol se puede hacer de manera recursiva. Los pasos basicos del algoritmo

son:

� Calcular la ganancia de informacion de cada atributo.

� Seleccionar el atributo que da la mayor ganancia de informacion y utilizarlo como el

elemento de decision en el nodo en el que se encuentre del arbol.

� Si el atributo seleccionado es discreto, ramificar el nodo con todos sus posibles valores.

Si el atributo es continuo, el algoritmo tiene que encontrar el punto de corte que da la

mayor ganancia de informacion y despues se tiene que ramificar igualmente el nodo

por los puntos de corte encontrados.

� Reagrupar los datos en las ramas correspondientes.

� Repetir el proceso para cada rama del arbol.

El algoritmo finaliza cuando todos los objetos en cada nodo pertenecen a la misma clase.

Los detalles precisos de la construccion del arbol varıan segun las distintas implementacio-

nes. Dos caracterısticas que se deben tener en cuenta son el esquema que se utiliza para

almacenar los objetos y la tecnica utilizada para manejar datos continuos.

Es importante resaltar que si los datos son gestionados por un gestor relacional muchas de

la operaciones que se tienen que realizar a lo largo del proceso de construccion del arbol se

pueden realizar de manera automatica por el mencionado gestor.

2.7.6 Generalizacion

Los datos pueden ser estudiados a diferentes niveles de conceptualizacion. Se dice que los

datos puros tal y como aparecen en la base de datos estan en el nivel primitivo. La mayorıa

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 51: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 39

de los estudios de algoritmos de descubrimiento de conocimiento en datos lo hacen a nivel

primitivo de conceptualizacion.

El abstraer los datos a un nivel mas alto de conceptualizacion, buscar y expresar en ese nivel

el conocimiento encontrado, puede tener ventajas sobre el descubrimiento a nivel primitivo.

Evidentemente, las reglas en nivel primitivo son mucho mas concisas que en otros niveles,

pero de alguna manera encierran mas conocimiento. Por ejemplo, a nivel primitivo sobre

una base de datos transaccional podrıa ocurrir que a nivel primitivo no se obtuvieran reglas

con el suficiente soporte en la base de datos y en cambio si se calcularan las reglas a un nivel

de generalizacion superior se obtendrıan reglas significativas:

El problema de generalizar suele ser el contar con jerarquıas de conceptos para los atributos

a generalizar. Si se dispone de dichas jerarquıas, se pueden aplicar de distintas maneras y

aplicar despues los algoritmos deseados de calculo de reglas a distintos niveles de generali-

zacion [Han91a], [Fu96].

Jerarquıas de conceptos

Una jerarquıa de conceptos consiste de un conjunto de nodos organizados en forma de arbol,

donde los nodos del arbol representan valores de un atributo que se denomina concepto.

El uso de jerarquıas de conceptos en Data Mining se justifica, entre otros, por los siguientes

motivos:

� Una jerarquıa de conceptos proporciona conocimiento acerca del dominio de los datos.

Este conocimiento puede resultar de utilidad durante el proceso de descubrimiento.

� Sirven para organizar los conceptos en forma de arbol que es una manera facil de

entender por el ser humano, con lo que facilita el entendimiento de los patrones obte-

nidos.

� Definen los conceptos a distintos niveles de generalizacion de una manera elegante

y concisa lo que resulta de utilidad si se quieren extraer reglas a distintos niveles de

generalizacion.

Dado que para las labores de Data Mining que involucran generalizaciones es necesario

contar con las jerarquıas de los atributos, se muestran a continuacion distintas fuentes de

obtencion de las jerarquıas (para mas informacion consultar [Lu96].):

� Los usuarios o expertos en diferentes temas pueden proporcionar las jerarquıas.

� Las jerarquıas tambien se pueden derivar del esquema de las relaciones entre los datos.

� Para atributos numericos es posible generar las jerarquıas de manera automatica [Lu96].

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 52: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.7. ALGORITMOS REPRESENTATIVOS 40

Dados un conjunto de datos y una jerarquıa de conceptos es posible realizar dos operaciones

con los datos:

Generalizacion: Consiste en generar a partir del concepto o atributo y de la jerarquıa dispo-

nible el concepto generalizado que se obtiene reemplazando los valores del atributo original

por los antecesores en el arbol de la jerarquıa.

Especializacion: Consiste en la generacion de un atributo a partir de uno mas general que

se obtiene cambiando los valores del atributo generalizado por los descendientes en el arbol

de jerarquıas.

Observese que para un mismo atributo se pueden obtener distintas generalizaciones depen-

diendo de cuantas veces se aplique el procedimiento de generalizacion. El problema de

generalizacion puede ser divido en dos fases:

� Aplicar las distintas jerarquıas de conceptos disponibles sobre el atributo o conjunto

de atributos para el conjunto de datos a generalizar.

� Proyectar sobre la generalizacion de atributo que resulte mejor para el problema en

cuestion.

Despues de elegir para cada atributo el nivel de abstraccion deseado se aplicaran los distintos

algoritmos de descubrimiento de patrones. Para un problema normal de descubrimiento las

tareas a aplicar seran:

� Eleccion de los objetos a tratar.

� Generalizacion de los datos a distintos niveles de abstraccion.

� Ejecucion del algoritmo de Data Mining eligiendo entre los distintos niveles de gene-

ralizacion disponibles.

� Interpretacion de los resultados.

2.7.6.1 Obtencion de reglas a distintos niveles de generalizacion: Metodo de induccionsobre atributos

El metodo de induccion sobre valores de atributos para obtencion de reglas a distintos niveles

de abstraccion [Han92, Han91b] se puede resumir en los siguientes pasos:

� Obtencion del conjunto de datos objetivo.

� Obtencion del plan de generalizacion para cada atributo. Si en la tabla original ob-

tenida con anterioridad existen muchos valores distintos para cada atributo, entonces

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 53: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.8. SISTEMAS REPRESENTATIVOS 41

esos atributos se deberıan generalizar. Si no existe posibilidad de generalizacion para

algun atributo con muchos valores distintos entonces se procede a la eliminacion de

ese atributo. En caso contrario, se procede al calculo de las generalizaciones de los

atributos

� Obtencion de la relacion generalizada: Se obtiene la tabla generalizada sustituyendo

cada valor de atributo por la correspondiente generalizacion. Como consecuencia,

se obtendran tuplas repetidas que habra que fusionar y los contadores de cada tupla

se actualizan. Observese que la operacion descrita corresponde a una proyeccion en

SQL.

� Si el nivel de generalizacion es el deseado se presentan las reglas al usuario y si no se

procede a volver a generalizar la tabla previamente generalizada.

Observese que con este metodo es posible la obtencion de reglas. No obstante integrando

este metodo con los metodos estudiados para obtencion de reglas de asociacion, caracteri-

zacion y/o discriminacion, es posible la obtencion eficiente de reglas a multiples niveles de

generalizacion.

2.8 Sistemas representativos

Como consecuencia de la gran cantidad de investigacion realizada en los ultimos anos en

KDD, han surgido numerosos sistemas que implementan las distintas tecnicas vistas ante-

riormente. Se destacan a continuacion un resumen de aquellos sistemas mas representativos

desde el enfoque de integracion con bases de datos relacionales.

� Quest [Agrawal96c]: Desarrollado por Agrawal en el centro de investigacion de IBM

en Almaden, es un sistema que puede encontrar reglas de asociacion, clasificacion y

patrones secuenciales en bases de datos de gran tamano. La arquitectura del sistema

Quest es la que aparece en la figura 2.9.

El sistema admite datos tanto de ficheros planos como de bases de datos DB2. A las

bases de datos se accede de manera debilmente acoplada mediante SQL aunque para

dar mas eficiencia algunos algoritmos han sido programados de manera fuertemen-

te acoplada. Para el descubrimiento de las reglas de asociacion utiliza el algoritmo

Apriori [Agrawal93b, Agrawal93c], y las reglas de clasificacion las encuentra utili-

zando arboles de decision. Por ultimo, los patrones secuenciales los halla mediante

una variante del algoritmo Apriori previamente mencionado.

Una caracterıstica interesante de este sistema es que los algoritmos son escalables y

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 54: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.8. SISTEMAS REPRESENTATIVOS 42

Definición de Datos Mining Exportar

Soluciones Interfaz Gráfico ExportaciónHerramientas de

Bases deDatos

Resultadosde Mining

ClienteServidor

Meta Data

Mining

FicherosPlanos

Mining Kernels

API de Acceso de Datos

Figura 2.9: Arquitectura del sistema Quest

han sido paralelizados para que su rendimiento sea alto con base de datos del orden de

gigabytes.

� IBM Intelligent Miner [www4] [Hall96]: Desarrollado por IBM como version co-

mercial del producto anterior. Amplıa las capacidades proporcionadas por Quest, posi-

bilitando la identificacion de relaciones ocultas en los datos mediante el uso de tecnicas

variadas de Data Mining tales como:

– Clustering: Permite dividir las ocurrencias de una base de datos en grupos de

caracterısticas similares.

– Clasificacion: Intelligent Miner utiliza arboles de induccion y redes neuronales

para descubrir las reglas caracterısticas que posteriormente emplea en la clasifi-

cacion.

– Descubrimiento: Extrae asociaciones, secuencia de patrones y secuencias tem-

porales similares.

Ademas de todo este amplio conjunto de tecnicas, el sistema permite automatizar mu-

chas de las funciones relacionadas con la preparacion de los datos para la fase deData

Mining, tales como la integracion de datos de distintas bases de datos, discretizacion

de valores, eliminacion de informacion nula entre otras.

� DBMiner [Han96a, www3, Han97]: Sistema desarrollado en la Universidad de Simon

Fraser (Canada). El sistema esta construido sobre un gestor de base de datos relacional

siendo independiente del mismo, esto es, se pueden utilizar distintos gestores de bases

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 55: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.8. SISTEMAS REPRESENTATIVOS 43

de datos.

En cuanto a las capacidades que el sistema suministra, cabe destacar que es capaz de

descubrir, entre otras, reglas de asociacion, caracterizacion, discriminacion, clasifica-

cion y generalizacion. Destaca sobre todo la capacidad del sistema para implementar

jerarquıas de conceptos, metodo que utiliza en la mayorıa de los algoritmos de descu-

brimiento.

JerarqíaMódulo de

de ComandosInterprete Módulos de

Descubrimiento

MotorDBMiner

Interfaz Gráfico de Usuario

Módulo de Comunicación de Datos

Bases de Datos JerarquíasConceptuales

Figura 2.10: Arquitectura del sistema DBMiner

En la figura 2.10, se puede observar la arquitectura del sistema. Como se puede ob-

servar integra el gestor de bases de datos con los modulos de jerarquıas conceptuales

y de descubrimiento. Los modulos de descubrimiento incluyen un caracterizador, un

discriminador, un clasificador y un buscador de reglas de asociacion entre otros. Gra-

cias al modulo de jerarquıas es posible, el descubrimiento de reglas a distintos niveles

conceptuales. Las jerarquıas son almacenadas como tablas relacionales en la misma

base de datos.

Por ultimo, es de destacar que DBMINER presenta un lenguaje de acceso denomina-

do DMSQL, muy parecido a SQL, que lo convierte en un sistema interactivo de alto

rendimiento.

� Data Mine [Imielinski96, www2]: El objetivo principal de este sistema es proporcio-

nar un interfaz de desarrollo de aplicaciones para la futura implementacion de aplica-

ciones Data Mining que ejecuten sobre bases de datos relacionales.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 56: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.9. RETOS DEL PROCESO Y DE SU APLICACION 44

� Mineset [Kohavi97, www5]: Es la ultima version de herramienta de la companıa SGI.

Combina el uso de algoritmos inteligentes de Data Mining con tecnicas de analisis

multidimensional para proporcionar capacidades muy potentes de analisis de datos.

Destaca por las excepcionales capacidades de visualizacion de datos, capacidades que

a su vez se encuentran integradas entre sı. Es capaz de obtener reglas de asociacion y

de clasificacion.

� Rosetta [Komorowski97, www6]: Es una herramienta que sirve para el descubrimien-

to de patrones usando la metodologıa de los Rough Sets, y ha sido construido usando

diseno orientado a objetos teniendo como meta proporcionar un sistema modular de

gran flexibilidad, extensible y de facil uso. El sistema esta compuesto de una librerıa

desarrollada en C++ y de un interfaz de usuario grafico ejecutando sobre Windows

NT.

� KDD-R [Ziarko94]: ’Knowledge Discovery in DataBases using Rough Sets’. Se tra-

ta de un sistema experimental para el descubrimiento de conocimiento que utiliza el

modelo de precision variable (VPRSM). Su objetivo es proporcionar una coleccion de

herramientas basadas en la teorıa de Rough Sets. Es facilmente extensible. Ha sido

desarrollado en lenguaje C bajo UNIX. El sistema dispone de las siguientes unidades

funcionales:

– Unidad de preprocesado de datos: Es la unidad responsable de las discretizacio-

nes de los datos ya sea mediante algoritmos suministrados por el usuario o por

aplicacion de algoritmos automaticos de discretizacion.

– Unidad de analisis de dependencias entre atributos: Utilizada para eliminar los

atributos irrelevantes de cara a la clasificacion de objetos.

– Unidad de computo de reglas: Genera reglas exactas y aproximadas dependiendo

de los umbrales suministrados por los usuarios.

– Unidad de decision: Este modulo se utiliza en situaciones que el usuario requiera

consejo del sistema de cara a la obtencion de los mejores resultados.

2.9 Retos del proceso y de su aplicacion

Los criterios tecnicos de aplicacion de un proceso de KDD incluyen consideraciones sobre

la disponibilidad de casos suficientes. En general, cuantos mas atributos se tengan en consi-

deracion, mas datos seran necesarios y mas difıcil sera encontrar los patrones. Sin embargo,

el disponer de antemano de cierto conocimiento acerca de los datos podrıa reducir en gran

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 57: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.9. RETOS DEL PROCESO Y DE SU APLICACION 45

parte el numero de casos necesarios.

El disponer de cierto conocimiento acerca del dominio de los datos puede resultar muy bene-

ficioso, pues puede ayudar a establecer cuales son los atributos o valores de los mismos mas

importantes, cuales son las posibles dependencias entre ellos ası como patrones conocidos

con anterioridad.

Otra consideracion muy importante tiene que ver con los atributos a tener en cuenta y su rele-

vancia. Es muy importante que los atributos sean relevantes para la tarea de descubrimiento.

Por muchos datos que se tengan, si los atributos no son relevantes no se podra obtener ningun

conocimiento.

El ruido es otra variable a tener en cuenta, a menos que se tenga una gran cantidad de datos

que mitiguen el ruido y que clarifique los patrones, el conocimiento obtenido no sera signi-

ficativo.

Se estudian a continuacion los principales retos con los que se encuentran los disenadores de

sistemas con capacidades de extraccion de conocimiento en bases de datos:

� Bases de datos muy grandes: Es comun hoy en dıa la situacion de manejar bases de

datos con cientos de tablas donde cada una tiene cientos de campos y millones de tu-

plas. Por ello los metodos de Data Mining tienen que ser concebidos para tratar con

estas cantidades de datos lo que supone la busqueda de algoritmos mas eficientes, po-

sibles muestreos, y procesamiento masivamente paralelo. Asimismo, la construccion

de Data Warehouse especıficos de Data Mining y en los que ciertas estructuras y va-

lores acerca de los datos que contiene han sido almacenados puede ayudar en alguna

medida al exito de los sistemas de descubrimiento de conocimiento.

� Alto numero de variables o atributos: Como se ha indicado antes no es grande tan

solo el numero de registros en las bases de datos a explorar sino tambien el numero de

atributos a tener en cuenta. Esto presenta problemas para la eficiente computacion de

los algoritmos, puesto que agranda el espacio de busqueda en explosion combinatoria.

Por otra parte, aumenta el riesgo de que el algoritmo encuentre patrones que no son

validos en general. Para solucionar este problema estan los metodos de reduccion del

numero de atributos y la utilizacion del conocimiento del dominio para desechar las

variables que no son relevantes.

� Datos cambiantes: Cuando se trata con bases de datos en continua evolucion, se corre

el riesgo de que los patrones descubiertos dejen de ser validos una vez transcurrido

un determinado tiempo. Por otra parte, puede ocurrir incluso que las variables sig-

nificativas dejen de serlo con el tiempo, que se modifiquen o incluso se borren. Una

posible solucion son los algoritmos incrementales para actualizacion de patrones. De

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 58: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.9. RETOS DEL PROCESO Y DE SU APLICACION 46

todos modos una de las premisas fundamentales cuando se aplican algoritmos de Da-

ta Mining pasa por suponer que los datos son estables y los patrones resultado seran

aplicables mientras los datos no cambien. Cuando se haga una actualizacion de los

datos que contiene el Data Warehouse sera cuando se tendran que aplicar las tecnicas

de algoritmos incrementales para evitar tener que recalcular todas las estructuras al

realizar una consulta de Data Mining.

� Bases de datos con gran cantidad de valores nulos y/o ruido: Este problema se da

sobre todo en bases de datos de negocios. Si la base de datos no se creo y diseno

con las tareas de descubrimiento en mente puede ocurrir que campos muy relevantes

contengan gran cantidad de valores nulos. Para solucionarlo se puede optar por dese-

char los registros donde hay valores nulos si estos no son muy abundantes, o intentar

identificar los valores nulos teniendo en cuenta las posibles dependencias existentes

entre las variables. La aplicacion de algoritmos de tratamiento de nulos e informacion

desconocida se realiza en la fase de preprocesado de manera que cuando se tiene que

aplicar un determinado algoritmo de Data Mining los datos ya no tienen este tipo de

impurezas.

� Relaciones complejas en los datos: Los primeros algoritmos fueron disenados para

valores de atributos simples, sin embargo, con el paso del tiempo se hace necesario

el desarrollo de nuevas tecnicas capaces de tratar con estructuras como jerarquıas de

conceptos y otras mas sofisticadas.

� Comprension de los patrones: En muchas aplicaciones ocurre que es crucial la ma-

nera de presentar los resultados a los usuarios. Esto ha dado lugar al desarrollo de

representaciones graficas, estructurado de las reglas, y tecnicas para la visualizacion

de los datos y el conocimiento. Es muy importante tambien cuando se van a presentar

reglas a los usuarios el eliminar todas aquellas que sean implıcita o explıcitamente

redundantes.

� Interaccion con el usuario: Los primeros metodos y herramientas no eran realmen-

te interactivo y no dejaban incorporan conocimiento del dominio. La posibilidad de

incorporar conocimiento es importantısima en todos los pasos del proceso.

� Integracion con otros sistemas: Un sistema autonomo cuya mision sea tan solo el

descubrimiento de conocimiento puede que no sea de interes. La integracion mas im-

portante (pero no la unica), es integrarlo con un gestor de bases de datos relacional

que es el enfoque que se esta defendiendo a lo largo de este trabajo. Se puede igual-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 59: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.9. RETOS DEL PROCESO Y DE SU APLICACION 47

mente integrar y resulta muy util para el soporte a la decision el integrarlo con hojas

de calculo y herramientas de visualizacion.

2.9.1 Tecnologıas que han ayudado al proceso de Data Mining: DataWarehousing

Hay varias tecnologıas que se han unido para favorecer la funcion de Data Mining.

En primer lugar y posiblemente una de las mas importantes es la implementacion de Data

Warehouse. Los metodos deData Mining tienen que ser capaces de examinar todos los datos

en un almacen coherente que los contenga. Las bases de datos que han sido implementadas

como Data Warehouse son las unicas que son coherentes en cuanto a formatos de los datos

que contienen.

Se tendra que estudiar cuando se este formando la base de datos de explotacion que datos

de cada base de datos se tiene que integrar en el Data Warehouse y establecer las polıticas

de actualizacion y de integracion de datos en el Data Warehouse. En segundo lugar, deberıa

haber un repositorio que almacene la informacion de la empresa. Esto se hace necesario para

permitir a los usuarios y a las herramientas localizar las fuentes de informacion deseadas. Pa-

ra permitir a los analistas localizar las “minas de datos” es muy importante el sistema donde

residen esos datos. El extraer patrones de solo una parte de la empresa puede llevar a extraer

patrones contradictorios o no validos. Las herramientas y procedimientos de Data Mining

deben ser capaces de buscar en los datos del Data Warehouse, en los datos de operaciones,

y en general en todos los datos sin importar su distribucion por los distintos servidores. Para

que el proceso sea efectivo se necesitara pues que todos los datos sean conocidos y esten

disponibles.

En tercer lugar, deben existir herramientas disponibles que implementen la tecnologıa. Estas

herramientas caen en distintas categorıas. Las hay que son extension a SQL, otras en cambio

son productos de proposito especifico concebidas y disenadas para un tipo de problemas de-

terminado. Algunas incluso, han sido concebidas para determinados sectores de la empresa.

Herramientas generales estan empezando a aparecer y como resultado de la investigacion,

los metodos y las consultas han sido clasificados en categorıas estandares.

Data Mining se puede realizar mas facilmente en datos que se han movido o procesado en

un Data Warehouse. “Mining” no significa analizar los datos solamente. El analisis de pa-

trones lleva asociadas como se ha visto toda una serie de operaciones previas a los datos para

hacerlo mas eficiente y eficaz. Sobre todo en mercados financieros, el analisis de patrones

es crıtico cuando se realiza sobre datos transformados o ligeramente resumidos.

Lo que se diferencia fundamentalmente unData Warehouse concebido paraData Mining del

que no lo ha sido para ese fin, es que en el caso de los primeros se necesita acceso a todos

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 60: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.10. CONCLUSION 48

los datos de la empresa.

Tanto las bases de datos primeras como los posteriores Data Warehouse posiblemente no se

construyeron pensando en que con posterioridad se iban a realizar estas tareas. Lo que es

peor, los datos pueden estar dispersos en la empresa pudiendo tener distintos nombres para

los mismos atributos, distintas representaciones y dominios.

Por todo ello, previa a la fase de Data Mining son necesarias operaciones de limpiado y

transformacion y la consiguiente elaboracion de estructuras nuevas que posiblemente se

guardaran en el catalogo del Data Warehouse que haran que la fase de busqueda de pa-

trones sea mucho mas eficiente.

Sin embargo, puede ocurrir que el almacenamiento de todos los datos en un almacen comun

haga que ciertas consultas de determinados departamentos sean menos eficientes debido al

acceso comun de todos los clientes a la misma base de datos. Esto ha dado lugar al sur-

gimiento de los denominados Data Marts que son almacenes construidos a partir del Data

Warehouse y que permitira un mas rapido acceso a los datos en el almacenados. Como con-

secuencia en los ultimos tiempos el numero de Data Marts participando en Data Mining es

mayor que el de Data Warehouse en sentido estricto, pues estos ultimos participan como

fuente de datos de los primeros.

A medida que el procesamiento de informacion continue, los almacenes de datos, Data

Warehouse, Data Marts e incluso las bases de datos orientadas a objetos cambiaran en su

estructura y en su uso. Lo que esta claro es que de momento, la competitividad ha hecho que

los estandares de construccion de Data Warehouses se reescriban para que se puedan utilizar

de manera eficiente por las consultas de Data Mining.

2.10 Conclusion

El descubrimiento de conocimiento es un nuevo area de investigacion que combina la es-

tadıstica, elementos de Inteligencia Artificial, aprendizaje automatico, tecnologıas de bases

de datos ası como metodos avanzados de visualizacion para identificar y extraer informacion

previamente desconocida y util de grandes volumenes de datos.

Se ha visto aquı como existen numerosos metodos disponibles para la extraccion del cono-

cimiento siendo populares la estadıstica, los arboles de decision las redes neuronales y la

teorıa de los Rough Sets.

El interes comercial en Data Mining se puede considerar consecuencia natural del interes

creciente en Data Warehousing. Durante anos las organizaciones han acumulado cantida-

des ingentes de datos con la esperanza de que algun dıa se desarrollarıan herramientas para

entender y sacar provecho de los mismos. Ese dıa ha llegado y como se ha intentado de-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 61: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

2.10. CONCLUSION 49

mostrar a lo largo de este capıtulo, existen numerosas tecnicas y herramientas ya disponibles

para aplicar en numerosos dominios. La investigacion sigue avanzando para tratar de definir

sistemas de bases de datos que integren capacidades de descubrimiento de informacion.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 62: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Parte II

Planteamiento y resolucion del problema

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 63: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 3

El proceso de KDD desde la perspectivade las bases de datos

Indice General

3.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3.2 Escenario del problema . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3.3 Definicion de las operaciones necesarias a realizar a lo largo del pro-ceso KDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.3.1 Perfiles de usuario . . . . . . . . . . . . . . . . . . . . . . . . . 58

3.3.2 Comparacion de las bases de datos tradicionales con las bases dedatos de consulta y analisis . . . . . . . . . . . . . . . . . . . . . 59

3.3.3 Representacion grafica del ciclo teniendo en cuenta los perfiles deusuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.4 Definicion del proceso en base a operaciones basicas . . . . . . . . . . 61

3.4.1 Operadores para la creacion de la base de datos de explotacion . . 62

3.4.2 Operadores para la creacion de las bases de datos personalizadas . 68

3.4.3 Fase de ejecucion de consultas de Data Mining . . . . . . . . . . 69

3.4.4 Definicion de consulta de Data Mining . . . . . . . . . . . . . . 73

3.4.5 Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

3.4.6 Presentacion de los resultados . . . . . . . . . . . . . . . . . . . 76

3.5 Resumen contextual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

3.1 Introduccion

La teorıa de bases de datos ha estado en continua evolucion desde su aparicion. Desde sus

comienzos basicamente estaba centrada en bases de datos operacionales esto es, bases de

datos que sirven para dar soporte a las aplicaciones de gestion del dıa a dıa de la empresa.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 64: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.1. INTRODUCCION 52

En anos recientes ha aparecido una nocion mas sofisticada, consistente en bases de datos que

han de servir no solo para los procesos de gestion de la empresa sino que han de dar soporte

a las decisiones a tomar en la misma. La division entre bases de datos operacionales y bases

de datos de decision ocurre por varias razones entre las que se destaca:

� Los datos que sirven a necesidades operacionales son fısicamente distintos de los que

sirven para analisis.

� La tecnologıa subyacente necesaria para el procesamiento operacional es completa-

mente diferente de la necesaria para las operaciones de analisis, como ha quedado

claro despues de la exposicion del capıtulo anterior.

� Los usuarios de cada tipo de informacion son tambien diferentes.

� En definitiva, las caracterısticas de procesamiento en ambos entornos difieren por com-

pleto.

Por estos y por otros muchos mas motivos, la manera de construir sistemas de bases de datos

se tiene que adaptar a las nuevas necesidades. Estas nuevas necesidades requieren la integra-

cion de los distintos tipos de consultas de Data Mining posibles con los gestores de bases de

datos relacionales actuales, por ser estos los que estan, mayoritariamente, gestionando los

grandes volumenes de datos a tratar.

Desde la aparicion del termino KDD, toda la investigacion ha estado centrada en el estudio

del proceso y de sus fases. Los distintos enfoques que se analizaban en el capıtulo anterior

han tenido como objetivo encontrar o adaptar algoritmos para el descubrimiento eficiente,

de patrones en los datos.

El objetivo fundamental de este trabajo es estudiar el proceso desde la perspectiva de las

bases de datos, teniendo en cuenta que el problema fundamental que se esta afrontando en

el proceso, es el gran volumen de los datos a tratar [Frawley96].

La gran mayorıa de estos datos han sido almacenados y estan siendo gestionados por gesto-

res relacionales. Toda la investigacion realizada en torno al descubrimiento de conocimiento

en bases de datos ha dado lugar a la aparicion de numerosos sistemas. En los ultimos anos,

la tendencia ha sido integrar estos sistemas con gestores de bases de datos. La integracion

consiste en construir una capa de software que implementa algoritmos de descubrimiento

haciendo uso de la capacidades del gestor que este por debajo para el eficiente manejo de

los datos. Sin embargo, estas herramientas para la busqueda de patrones en los datos no

se integran en el codigo del gestor de la base de datos por lo que disminuye notablemente

la eficiencia. Por eso se puede afirmar que los sistemas utilizan las capacidades del gestor,

pero no se integran en el mismo. Esto es debido a que se ha visto a las bases de datos como

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 65: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.1. INTRODUCCION 53

soporte de los datos que van a ser sometidos a tareas de descubrimiento pero no se ha tenido

en cuenta el proceso global de descubrimiento desde el punto de vista de las bases de datos

(ver figura 3.1).

De la misma manera que la adicion de restricciones de integridad al modelo relacional hizo

��������������������������������������������������������

��������������������������������������������������������

���������������������������������������������������������������

���������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������

������������������������������������������������������

������������������������������������������������

������������������������������������������������

������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

Tradicionales

Sistemas KDD

SGBD

Datos

Datos

Arquitecturas Arquitecturas Integradas

SGBD concapacidades KDD

Figura 3.1: Comparacion entre los enfoques tradicionales y el expuesto en esta tesis

que los vendedores de sistemas de gestion de bases de datos tuvieran que plantearse como in-

tegrar estas capacidades para el manejo consistente de los datos, las nuevas consultas pueden

verse como un nuevo reto para los disenadores de bases de datos, que deben proporcionar el

soporte para un nuevo proceso con los mismos. El progreso por parte de los vendedores sera

mucho mas lento de lo que los usuarios querrıan, de la misma manera que, todavıa hoy, dos

decadas despues de que el modelo relacional fuera propuesto, los sistemas relacionales, en

general. no integran todas la capacidades del mismo. Si bien se tendra que esperar tiempo

para que los sistemas integren estas capacidades, la investigacion sı que puede avanzar en

la direccion del diseno de sistemas integrados de gestion y descubrimiento de informacion

en los datos. Se intentara a lo largo de este capıtulo mostrar una vision del proceso desde la

perspectiva de las bases de datos relacionales. El problema radica entonces en tratar de dotar

a los sistemas de gestion de datos de capacidad de descubrimiento. La solucion no se basa

tan solo en la programacion de algoritmos de extraccion de patrones, pues tal y como ha sido

expuesto en el capıtulo anterior, el proceso es complejo y requiere de la eficaz realizacion de

muchas tareas para encontrar patrones potencialmente utiles para el usuario.

Integrar las capacidades de descubrimiento en el nucleo de los gestores de bases de datos

relacionales supondra, realizar un estudio en profundidad de cada una de las operaciones

que se pretenda integrar para detectar que funcionalidades es necesario anadir a cada uno

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 66: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.2. ESCENARIO DEL PROBLEMA 54

de los modulos del gestor y los posibles perfiles de usuario que puedan surgir de las nuevas

operaciones.

3.2 Escenario del problema

Piensese por un momento en el surgimiento de las bases de datos. Fueron necesarios muchos

anos de investigacion hasta llegar al modelo relacional, que vino a solventar gran parte de

los problemas que tenıa la gestion de bases de datos.

En 1976 el comite SPARC del Instituto Americano de Estandarizacion (ANSI) presento

lo que denomino la arquitectura en tres niveles. Las definiciones de estos tres niveles

[ANSI/X3/SPARC] eran extremadamente imprecisas y por tanto se podıan interpretar de

numerosas maneras. Con posterioridad, las ideas fueron integradas y publicadas como parte

del modelo relacional, donde, aunque habıa variado la terminologıa, las definiciones eran

mucho mas precisas. En cualquier caso, lo importante es que se trataba de dotar de inde-

pendencia a tres niveles a los sistemas que se construyeran, para que cualquier cambio en la

estructura fuera transparente a los usuarios finales. De esta manera, en el modelo relacional

existen:

� Relaciones base (esquema conceptual), que son las representadas directamente por

datos almacenados (no por formulas o comandos relacionales).

� Vistas (esquema externo), que son relaciones virtuales definidas en terminos de rela-

ciones base y posiblemente otras vistas. Son las definiciones las que se almacenan en

el catalogo.

� Representacion de la informacion almacenada (esquema interno), que es la represen-

tacion en espacio de almacenamiento para la informacion contenida en las relaciones

base.

El dar soporte a esta arquitectura, supone la implementacion de modulos para el mecanismo

de vistas, consistencia de los datos, dominios � � � Anadir nuevas consultas a los sistemas

gestores de bases de datos supondra entonces adaptarlas a esta arquitectura.

Gracias al modelo relacional, se estudian los requisitos que han de tener los datos de cara

a la consistencia e integridad para la obtencion de los datos adecuados cuando se realicen

accesos a la base de datos. Como consecuencia, de toda la investigacion en torno a las bases

de datos, se establecen tambien distintos tipos de perfiles (roles), para acceder a los datos y

se establecen mecanismos de manera que cada usuario pueda ver y acceder a los datos que

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 67: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.2. ESCENARIO DEL PROBLEMA 55

le corresponden con los permisos adecuados. Toda esta investigacion ha dado lugar a que

los usuarios confıen en los datos que se almacenan, en que cuando consulten estas bases de

datos los resultados seran ıntegros y consistentes.

Es importante resaltar que, toda la investigacion ha estado marcada por las necesidades de

los usuarios que a medida que vieron mecanizado el proceso de la gestion de los datos, han

demandado nuevas prestaciones. KDD responde a nuevas necesidades de los usuarios que

se dan cuenta de que, si bien la gestion de los datos es la adecuada, requieren nuevas capaci-

dades para analizar en profundidad los datos que han sido almacenados hasta el momento.

Luego la resolucion del problema pasa por estudiar el proceso en detalle para tratar de dar-

le una solucion desde las bases de datos, lo que permitira que las siguientes generaciones

de sistemas de gestion de bases de datos puedan ser denominados Sistemas de Gestion y

Analisis de Bases de Datos, por integrar capacidades de analisis de datos junto con las ca-

pacidades de gestion tradicionales.

Del estudio detallado del problema de la gestion de los datos hace anos surgieron modelos

para disenar las bases de datos [Olle73], [Codd90] donde se especificaba, entre otras co-

sas, la estructura en que los datos debıan ser almacenados para su posterior manejo. Los

refinamientos y distintos modelos que surgieron a lo largo de la investigacion, dieron como

resultado que la eficiente consulta y gestion de los datos dependıa del eficiente almacena-

miento de los mismos.

Con KDD se abre un nuevo reto para los disenadores de bases de datos. Se tiene que estudiar

la mejor manera en que los datos han de ser almacenados y como adaptar las estructuras y

modulos de los sistemas actuales para proporcionar las nuevas capacidades. Para abordar

el problema desde la perspectiva de bases de datos, el proceso de descubrimiento va a ser

considerado como el proceso de crear una base de datos a la que se accedera posteriormente

para descubrir la informacion potencialmente oculta en los datos que contiene. A las con-

sultas que se realicen para analizar datos, se les denominara de ahora en adelante consultas

de Data Mining.

Ahora bien, para que un usuario de una determinada base de datos pueda realizar consultas

tradicionales, es necesario que exista la base de datos, que el citado usuario exista y tenga

acceso a los datos y consultas a los que quiere acceder, que el gestor este preparado para

resolver la consulta, esto es, disponga del mecanismo de traduccion de la consulta a opera-

ciones elementales (compilador de consulta) y disponga de los mecanismos para la correcta

ejecucion de la misma (motor de consulta). Es mas, si se desea que el proceso sea eficiente,

el gestor de la base de datos dispondra de un modulo optimizador para que la secuencia de

operaciones a realizar se ejecute en el menor tiempo posible.

Del mismo modo, si se trata de integrar las consultas de Data Mining, sera necesario estu-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 68: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.3. DEFINICION DE LAS OPERACIONES NECESARIAS A REALIZAR A LO LARGODEL PROCESO KDD 56

diar las operaciones en que estas consultas se descomponen y estudiar posteriormente como

modificar o adaptar los modulos del gestor para que estas consultas se puedan realizar. En

primer lugar, sera necesario que la base de datos exista y que este preparada de manera ade-

cuada para que las consultas se puedan realizar, esto es, que el catalogo de la base de datos

contenga toda la informacion que puede precisar el motor de consulta en un determinado

momento. De la misma manera que al definir las bases de datos se definen restricciones de

integridad e ındices, seran necesarias operaciones para que las nuevas consultas se realicen

de manera exitosa. Se tendran que definir las porciones de datos sobre las que los usuarios

podran ejecutar las consultas de Data Mining, de la misma manera que los usuarios acceden

a traves de vistas a las bases de datos.

En lo que sigue, se presenta la descripcion del proceso tomando como base la realizada en

[Frawley96, John97a] desde la perspectiva de las bases de datos.

3.3 Definicion de las operaciones necesarias a realizar a lolargo del proceso KDD

El objetivo fundamental es pues la definicion del proceso de KDD por medio de operaciones

basicas, a partir de las cuales se pueda expresar cualquier consulta de cara a una modeliza-

cion del proceso global, que siente las bases de implementaciones de sistemas de gestion y

analisis de bases de datos eficientes e integrados.

Si se definieran de manera uniforme las operaciones y se extrajeran caracterısticas comunes

a ellas, se estarıa proporcionando un lenguaje comun en el que expresar las nuevas consul-

tas. Teniendo en cuenta las operaciones estudiadas en el capıtulo anterior se analizaran y

agruparan estas operaciones desde el prisma de las bases de datos. Bajo este punto de vista

se tiene la siguiente vision del proceso de descubrimiento:

1. Definicion y diseno de la base de datos de explotacion: Se decide en esta fase los datos

que van a ser sometidos a consultas de analisis.

2. Creacion de la base de datos de explotacion: Consiste en la integracion en una base

de datos relacional de todas aquellas ocurrencias de entidades (objetos) que se quiera

tener en cuenta de cara a extraer conocimiento y cuya estructura fue definida en el

paso anterior. Por ello, se agrupan en esta fase todas las operaciones de integracion,

limpieza, codificacion de valores y tratamiento de informacion incompleta y valores

nulos, entre otras. El proceso de creacion de esta base de datos es arduo y costoso.

Por ello, se intenta integrar gran cantidad de informacion de principio para tener que

realizar estas operaciones el mınimo numero de veces, de la misma manera que se

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 69: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.3. DEFINICION DE LAS OPERACIONES NECESARIAS A REALIZAR A LO LARGODEL PROCESO KDD 57

intenta que una vez que una base de datos tradicional se ha creado y se ha puesto en

funcionamiento, la estructura no se tenga que cambiar o, si lo hace, sea de manera

transparente al usuario. Estas operaciones no solo tienen como fin la integracion, sino

que tambien tienen que ver con la preparacion de los datos para el posterior analisis.

Por consiguiente, estas operaciones entre otras codifican valores, anaden atributos que

contienen los valores generalizados de algun atributo para el que esta disponible una

jerarquıa de conceptos y discretizan atributos existentes en la base de datos con gran

numero de valores distintos. Por ello, se podrıan agrupar estas operaciones a su vez

en:

� Creacion de la base de datos propiamente dicha: Esto es, creacion de las distintas

tablas de que se componga.

� Insercion de los datos en las tablas de la base.

� Integracion de datos para formar la base de explotacion a partir de las distintas

fuentes: Son las operaciones de integracion en una base de datos que contenga las

ocurrencias de entidades que a lo largo del tiempo han sido almacenadas y que

van a ser consultadas ahora en busca del conocimiento potencialmente oculto.

� Limpieza: Se agrupan en este epıgrafe las labores de eliminacion de inconsisten-

cias y del ruido que se haya podido producir al integrar datos de distintas bases.

� Preprocesado de la base de datos de explotacion: Dentro de este apartado es

conveniente distinguir dos tipos de preprocesado: El que es independiente de las

consultas que se ejecuten con posterioridad y el que se realiza en los datos depen-

diendo de las consultas que se vayan a ejecutar para dotar de eficiencia al proceso

o incluso hacerlo posible. Dentro de las labores de preprocesado independientes

de las consultas, esta la eliminacion de valores nulos en la base de datos que es

necesaria independientemente de las operaciones de consulta posteriores. Como

preprocesado dependiente de las consultas, se pueden destacar las operaciones

de calculo de intervalos que seran necesarios para que las operaciones de discre-

tizacion se realicen mas eficientemente.

3. Consulta: Se entiende aquı por consulta al acceso de un usuario autorizado para inte-

rrogar al sistema acerca de un cierto conjunto de datos. Como consecuencia de esta

consulta, se tendran que realizar una serie de operaciones sobre los datos que, como

resultado, devolveran la informacion pedida. En vista de los resultados, el usuario

decidira si esta satisfecho con los resultados obtenidos o si, por el contrario, quiere

realizar nuevas consultas de analisis.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 70: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.3. DEFINICION DE LAS OPERACIONES NECESARIAS A REALIZAR A LO LARGODEL PROCESO KDD 58

3.3.1 Perfiles de usuario

Como consecuencia de las operaciones que se han estudiado en la seccion anterior, surgen

los siguientes perfiles de usuarios:

� Creador-Administrador: Es el perfil de usuario con derechos de creacion y modifi-

cacion de bases de datos de explotacion, limpieza y preprocesado de bases de datos,

creacion de bases de datos personalizadas, creacion de usuarios y asignacion de per-

misos a estos.

� Usuario: Es el usuario que accede a la base de datos que le haya sido asignada. Dentro

de los usuarios, destacamos dos perfiles atendiendo a los permisos que tengan asigna-

dos:

– Usuario con derechos de administracion: Podra aplicar operaciones de preproce-

sado y limpieza sobre los datos de su base y podra asignar permisos a los usuarios

de la misma.

– Usuario de consulta: Es el usuario que accede a la base de datos teniendo como

unico permiso el de ejecutar consultas, ya sean estas de Data Mining o tradicio-

nales.

Ahora se puede facilmente observar el caracter iterativo del proceso: El usuario puede rea-

lizar tantas consultas como quiera sobre sus datos o subconjuntos de ellos para obtener los

patrones que desee. Tambien se debe observar que los usuarios con derechos de creacion

y modificacion sobre la base de datos de explotacion, de acuerdo con estadısticas sobre las

consultas mas frecuentemente realizadas, decidiran modificar las bases de datos a las que

tienen acceso ciertos usuarios, realizar mas operaciones de preprocesado o cualquier otra

operacion para aumentar la eficacia y eficiencia del proceso.

Observese tambien, el caracter interactivo del proceso y observese como el mismo no se ve

como un proceso propiamente dicho, sino mas bien como el ciclo de vida de una base de

datos que ha sido concebida para realizar sobre ella consultas de Data Mining, ademas de

consultas tradicionales.

En lo que sigue se realizara menos hincapie en la fase de integracion de los datos en la base,

por considerarse operaciones de integracion de datos en un Data Warehouse que se salen del

ambito del presente trabajo. El resto de operaciones se estudiaran en detalle.

En otro aspecto del problema es facil observar que, segun la exposicion que se acaba de

realizar en la seccion anterior, se tiene la definicion de una base de datos (esquema concep-

tual) que estara almacenada de una determinada manera, en la que no se va a profundizar

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 71: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.3. DEFINICION DE LAS OPERACIONES NECESARIAS A REALIZAR A LO LARGODEL PROCESO KDD 59

(esquema interno). Es evidente que los usuarios no acceden al esquema conceptual directa-

mente, sino que habra definidas porciones de bases de datos a las que los usuarios acceden

(esquema externo). De ahora en adelante, se denominara a la porcion de la base de datos a

la que tiene acceso un determinado usuario base de datos personalizada y su definicion se

tendra igualmente que almacenar en el catalogo de la base de datos. No se le denominara de

momento vista hasta que no se compruebe si las caracterısticas de unas y otras son asimila-

bles al mismo concepto.

Ası las cosas, se puede dividir el ciclo de vida del proceso de KDD en las siguientes fases:

� Diseno y definicion de la base de datos de explotacion.

� Creacion de la base de datos de explotacion.

� Limpieza.

� Preprocesado.

� Definicion de las bases de datos personalizadas y asignacion de usuarios a las mismas.

� Consulta de los usuarios sobre las bases de datos personalizadas.

Observese que, dependiendo de los derechos con los que sean creados los usuarios que se

asignaran a las bases de datos, estos a su vez podran realizar operaciones de preprocesado

sobre la porcion de bases de datos asignada o tan solo podran acceder en consulta.

3.3.2 Comparacion de las bases de datos tradicionales con las bases dedatos de consulta y analisis

Como resultado de la integracion de operaciones deData Mining en el nucleo de los gestores

tradicionales se tendran, sistemas capaces tanto de almacenar informacion y gestionarla,

como de analizarla. En la figura 3.2 se puede observar tal diferencia.

Conviene no obstante destacar, que si bien dichos gestores tendran tanto capacidad para

gestionar operaciones transaccionales del dıa a dıa de la empresa como consultas de analisis

de datos, sera muy difıcil optimizar una misma base de datos para ambos tipos de consultas

por la diferencias que presentan en sus respectivos tratamientos.

3.3.3 Representacion grafica del ciclo teniendo en cuenta los perfiles deusuario

En la figura 3.3 se puede observar la representacion grafica del ciclo de vida de la base de

datos en la que se realizan consultas de analisis (un Data Warehouse en el que se realizan

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 72: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.3. DEFINICION DE LAS OPERACIONES NECESARIAS A REALIZAR A LO LARGODEL PROCESO KDD 60

Dat

os

Co

nsu

ltas

SQ

LSGBD

Co

nsu

ltas

SQ

L

Dat

os

SGBDA

Co

nsu

ltas

DM

Co

no

cim

ien

to

Figura 3.2: Nuevos sistemas de gestion y analisis de bases de datos

consultas de Data Mining). En dicha figura se observan los perfiles de usuario que se acaban

de exponer. Se va a descomponer cada fase en operaciones basicas para estudiar los resul-

Lim

pie

za

AdministraciónUsuarios de

de

DM

Co

nsu

lta

Pre

par

ació

nL

imp

ieza

y��

����

de

Dat

os

de

Exp

lota

ció

nC

reac

ión

de

la B

ase �

���

��������

��������

��������

�������������

�����

Cre

ació

n d

e la

Bas

ed

e D

ato

s P

erso

nal

izad

a

Inte

rpre

tació

n

Usuarios deConsulta?

Creador/Administrador de KDD

Figura 3.3: Ciclo de vida del proceso de KDD segun los perfiles de los usuarios

tados de aplicar estas operaciones a distintos conjuntos de datos, analizando los requisitos

de cada operacion y la complejidad, de cara a la futura integracion de las operaciones con el

resto de operaciones de un gestor de bases de datos. Este estudio permitira, a su vez, detectar

las modificaciones y adaptaciones que tendran que sufrir el motor de consulta, ası como el

optimizador, para ejecutar las nuevas consultas anadidas. Para poder interpretar los resulta-

dos, se estudiara el significado de obtener los mismos resultados con distintas operaciones

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 73: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 61

sobre el mismo conjunto de datos, lo que ayudara tambien a la construccion del optimizador

que podra decidir el mejor orden de ejecucion de operaciones. Podra ocurrir que la aplica-

cion de consultas distintas sobre la misma base de datos de lugar a los mismos resultados lo

que se tendra que tener en cuenta en la fase de interpretacion de los mismos para comparar

los resultados obtenidos por distintas consultas sobre los mismos datos iniciales.

A continuacion, se presenta un estudio, que no pretende ser exhaustivo, de algunas de la ope-

raciones que se tendran que anadir a los gestores para dar cabida al nuevo tipo de consultas.

3.4 Definicion del proceso en base a operaciones basicas

El estudio del problema de descubrimiento desde la perspectiva de las bases de datos permite

identificar operaciones basicas a realizar como consecuencia de una determinada consulta de

usuario. Alguna de estas operaciones ocurriran de manera transparente al usuario de consulta

e incluso es posible que alguna de las operaciones en la que se descomponga una determi-

nada consulta sea una simple lectura de tablas del sistema por encontrarse el resultado ya

precomputado 1.

Ası las cosas, se puede dar otra definicion complementarıa del proceso KDD.

Definicion: El proceso de descubrimiento de conocimiento en bases de datos (KDD), puede

ser expresado como “El conjunto de las distintas secuencias de operaciones que, tomando

como entrada una base de datos relacional, da como resultado distintos conjuntos de pa-

trones que expresan el conocimiento buscado en cada posible consulta de Data Mining que

se haya podido realizar sobre las multiples bases de datos personalizadas, derivadas de la

base de datos de explotacion”.

En este trabajo, se va a centrar la atencion en el proceso, una vez que los datos de las distin-

tas bases de datos corporativas han sido integrados en la base de explotacion. Se consideran

fuera del ambito de este trabajo las labores de integracion en una base de datos (Data Wa-

rehouse) de los datos de distintas bases de una organizacion. Por ello, se supondra a partir

de este momento que, tal base de datos existe y se estudiaran los operadores desde la fase de

preprocesado de la base de explotacion.

Observese tambien que, cuando un usuario realiza una consulta, muchas de las operaciones

que se van a estudiar ocurren de manera transparente a el, de igual manera que al realizar

una consulta tradicional, como puede ser pedir unos datos ordenados de una determinada

tabla relacional, el usuario no sabe si hay o no ındices definidos y en todo caso tan solo se

da cuenta de la mayor o menor rapidez con que se ejecutan las operaciones.

1De igual manera que un SELECT ordenado de una base de datos puede acceder a ficheros ındices sin queel usuario lo perciba

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 74: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 62

3.4.1 Operadores para la creacion de la base de datos de explotacion

Antes de realizar las consultas que se han denominado de Data Mining es necesario definir,

disenar, insertar y preparar los datos. Se supone a partir de este momento que la base de

datos ya ha sido creada y los datos han sido integrados, con lo que se centra la atencion en

las operaciones de preprocesado que son necesarias para la ejecucion de consultas (bien sean

de preprocesado suscitados por los algoritmos que se van a ejecutar con posterioridad o por

motivo de los datos a tratar).

Antes de continuar, y para centrar un poco la atencion, es conveniente, pararse a pensar en

el conjunto de operaciones que son necesarias en una base de datos tradicional para asegurar

la consistencia e integridad de la informacion que contiene. Es necesario definir toda una

serie de restricciones sobre los datos para que durante el ciclo de vida de la base se garantice

la consistencia de los datos que contiene. Algunas de estas restricciones son dependientes

de los datos y otras son intrınsecas al modelo de diseno. Por otra parte, ocurre que depen-

diendo de ciertas consultas (por ejemplo agrupaciones u ordenaciones), es necesario realizar

operaciones (definir un ındice), para que la consulta se ejecute con mas eficiencia. Estas son

operaciones de preprocesado de los datos que ocurren de manera transparente al usuario en

una base de datos tradicional.

Si se dispone ahora a integrar nuevas consultas, sera necesario estudiar el tipo de restric-

ciones y operaciones que se deberıan llevar a cabo y son ese tipo de operaciones las que se

estudian a continuacion.

Por ejemplo, si se quieren discretizar o generalizar valores de atributos de objetos sera nece-

sario previamente el calculo de los intervalos y de los datos a distintos niveles conceptuales.

Si la misma discretizacion se va a realizar sobre los mismos datos con gran frecuencia, serıa

conveniente tener los intervalos calculados y almacenados de alguna manera, de modo se-

mejante a como se realizaba la construccion de los ındices para ordenaciones frecuentes.

Se definen entonces, en este apartado operaciones que sera necesario aplicar a las tablas de

una base de datos con el fin de que las consultas de Data Mining se puedan realizar.

Se supondra, por simplicidad en la explicacion, que todos los datos estan contenidos en la

misma tabla relacional. Esto no supone perdida alguna de generalidad, puesto que de no ser

ası, siempre podrıa realizarse una operacion de join sobre las tablas implicadas para obtener

una unica tabla de entrada a las operaciones.

En lo que sigue, se estudian algunas operaciones para ilustrar las ideas. La lista no pretende

ser exhaustiva. A pesar de que algunos de estos operadores se puedan aplicar en fases poste-

riores (limpieza de la base de datos personalizada), se estudian aquı por ser la primera fase

en la que se podrıan aplicar y se estudiara mas tarde como aplicarlos en otras fases del ciclo

de vida de la base de datos.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 75: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 63

3.4.1.1 Tratamiento de la informacion incompleta y/o nulos

Esta operacion tomara como entrada la tabla relacional que se este tratando y devolvera

como salida una tabla en que los valores nulos no aparecen. No se estudian aquı los distintos

metodos de tratamiento de informacion incompleta que aparecen en la bibliografıa. Lo que

es interesante resaltar es que, sea cual sea la logica de la operacion, su comportamiento es el

que se ha detallado. Es posible que esta operacion interactue con las tablas del sistema para

guardar informacion referente a los valores por los que ha sido sustituida cada ocurrencia de

nulo en la base de datos.

3.4.1.2 Eliminacion de claves

Las claves deben ser eliminadas antes de empezar cualquier tarea de descubrimiento. Las

claves son aquellos atributos que hacen distinguibles a todos los elementos de la base de

datos. Para la obtencion de patrones, se tienen que encontrar atributos que hacen similares

a los objetos y que por tanto no deben ser tenidos en cuenta en el proceso de extraccion de

patrones. La operacion de eliminacion de claves toma una tabla como entrada y devuelve

otra tabla en que las claves no aparecen y las ocurrencias repetidas se han eliminado (se

asignara una nueva clave a cada ocurrencia distinta de los atributos de la tabla para que el

gestor pueda manejarla). Ademas, esta operacion deberıa anadir un atributo contador a la

tabla resultado que almacenara la cuenta de ocurrencias de cada combinacion de la tabla

resultado. Observese que, la eliminacion de las claves ocurrira siempre sin que el usuario

tenga nocion de ello. Se puede observar en la figura 3.4 una ilustracion del proceso llevado

por este tipo de operadores.

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

1 32

2 35 2 2

B C

13 3

3

...

34

21

K A A ... cnt

1 13 25 2

B C

121

332

eliminaciónOperador

de claves

Figura 3.4: Estructura del funcionamiento del operador de eliminacion de claves

3.4.1.3 Obtencion de intervalos discretos de un atributo con valores continuos

La operacion de discretizacion de un determinado atributo se puede descomponer en dos

fases:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 76: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 64

� Obtencion de los intervalos de discretizacion que forman el dominio del atributo dis-

cretizado.

� Sustitucion del atributo original por el discretizado.

Caso de que una determinada discretizacion fuera muy frecuente en un tipo de consultas,

podrıa pensarse en tener los intervalos de discretizacion precalculados y almacenados de al-

guna manera (caen fuera del ambito de este trabajo las posibles implementaciones). En fase

de preprocesado, se realizara entonces la ejecucion del algoritmo de discretizacion de cara a

la obtencion de los intervalos y sera en fase de consulta cuando se proyectara sobre la discre-

tizacion deseada por el usuario. Notese por otra parte que la complejidad de la discretizacion

radica en la obtencion de los intervalos por eso esta operacion siempre debera realizarse en

preprocesado de cara a la eficiencia de consultas que requieran valores de atributos discretos.

Por consiguiente, la operacion de calculo de intervalos que aquı se trata toma como entrada

una tabla indicando el atributo a discretizar y el metodo por el que se obtendran los intervalos

y posibles parametros para guiar el funcionamiento de la discretizacion.

La salida podrıa ser una nueva tabla a la que se ha anadido un nuevo atributo (el que resulta

de la discretizacion), o podrıa suponer actualizacion de las tablas del sistema para guardar

la informacion referente a la discretizacion de manera que pudiera ser utilizada cuando se

necesitara. La figura 3.5 ilustra el comportamiento de este operador.

������������������������

������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

1.12

0.7 12

B

11

...A

0.3 4

31

C

3

0.1

0.3

0.70.1

32

12

B

3

1

33

D

34

31

CD

3

1.13

A

1

Parámetrosattr = Aint = 3

OperadorA

20

1

...d

0

discretización

Figura 3.5: Funcionamiento de los operadores de discretizacion

3.4.1.4 Abstraccion a niveles superiores de generalizacion

Los valores de todo atributo pueden ser generalizados a niveles superiores de abstraccion si

existe una jerarquıa disponible para el mencionado atributo o atributos.

El resultado de cualquier consulta de Data Mining puede ser diferente dependiendo del gra-

do de detalle de los datos sobre los que se aplique. Las jerarquıas de conceptos pueden estar

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 77: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 65

definidas sobre un atributo o sobre un conjunto de atributos. En cualquier caso, la jerarquıa

define una generalizacion en los valores del atributo desde los valores mas particulares hasta

los mas generales. Cuando se va a proceder a generalizar, habra que especificar, aparte de

la jerarquıa a aplicar, el grado de generalizacion deseado, que puede venir especificado por

medio de un umbral (numero de individuos en cada valor del atributo) o especificando un

determinado nivel en la jerarquıa. Nuevamente, el proceso se puede dividir en dos operacio-

nes que son la obtencion del nuevo dominio del atributo, y la obtencion del atributo en sı.

Como consecuencia, el resultado de generalizar los valores de un atributo supone anadir un

atributo mas a la tabla que contiene los datos que tendra el valor generado por la aplicacion

del algoritmo de generalizacion.

Tal y como se estudiaba en el caso de la discretizacion, la obtencion del atributo generalizado

es una operacion costosa que puede hacer bajar el rendimiento de un determinado algoritmo

que precise de datos generalizados. Por consiguiente, en fase de preprocesado se deberıan

obtener las generalizaciones mas frecuentes para cada atributo o conjunto de ellos. En la

figura 3.6 se puede observar el comportamiento de tales operadores de preprocesado. Tal

estructura se compone de:

� Entrada: Una tabla relacional.

� Salida: Una nueva tabla relacional en la que se ha anadido un nuevo atributo, que para

cada tupla, contiene el valor generalizado.

� Parametros: Umbral que indique hasta que grado se debe generalizar y la jerarquıa.

������������������������

������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

33

D

34

31

11

B C

21

23

Parámetrosattr = Alvl = 1

OperadorA

21

0

...g

1

...A

6 310 2

7 13 2

B

11

33

D

34

31

C A

610

73

generalización

Figura 3.6: Funcionamiento de los operadores de generalizacion

Esta operacion, de igual manera que la de discretizacion, podrıa almacenar la informacion

correspondiente a la generalizacion en las tablas del sistema para poderse utilizar en futuras

generalizaciones; en cualquier caso, estos son aspectos de implementacion que se escapan

del ambito de esta exposicion.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 78: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 66

3.4.1.5 Cuenta de las ocurrencias de cada valor de un determinado atributo o combi-nacion de atributos de una tabla

Este operador tiene como mision calcular el numero de ocurrencias que hay en la base de

datos para cada combinacion de valores del conjunto de atributos pasados como parametro.

Como consecuencia, acepta como entrada una tabla y una estructura en la que se especifica

para que atributo tiene que calcularse la cuenta de ocurrencias.

Observese que, para evitar una lectura de la base de datos para calcular el dominio de cada

atributo, serıa deseable que el catalogo tuviera informacion referente, no solo a los tipos de

cada atributo, sino tambien de los distintos valores almacenados, con lo que esta operacion

podrıa suponer una interaccion con las tablas del sistema para almacenar informacion de las

ocurrencias de los dominios de cada atributo en la base de datos.

3.4.1.6 Binarizacion de los atributos de la tabla

Esta operacion convierte una tabla cuyos atributos pueden tomar mas de un valor en otro

cuyos atributos tan solo toman dos valores: � o . El procedimiento que se tiene que llevar

a cabo, consiste en generar un nuevo atributo por cada valor de cada atributo original. Para

cada objeto de la tabla, toda la tupla esta compuesta por ceros y unos. Cada combinacion

atributo-valor de la tabla original se traducira en un en el correspondiente atributo de la

nueva tabla y � para el resto de atributos correspondientes a los otros valores del atributo

original.

Esta operacion de preprocesado es de la que se comentaba que no siempre es necesaria su

ejecucion. Sera en el caso de que algun algoritmo de Data Mining acepte solo como entrada

una tabla binarizada. Es el administrador el que decidira de acuerdo con las estadısticas

de las consultas si la binarizacion existe de manera transparente al usuario (caso de que las

consultas que la requieren sean muy frecuentes), o si se realiza en cada consulta. La figura

3.7 ilustra el comportamiento de tales operadores.

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������

1

1

A

101

binarizaciónOperador

A

1 11 2

2 31 2

B ...........

010

A

0

2

100

B

0

1

00

B

1

2

1

010

B

0

3

Figura 3.7: Funcionamiento de los operadores de binarizacion

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 79: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 67

3.4.1.7 Cuenta del numero de unos por filas

Esta operacion esta asociada al caso de tratar con tablas binarias. Consiste en anadir a la

tabla de entrada un atributo en el que se cuenta el numero de unos por filas.

Es un operador auxiliar que podrıa aumentar la eficiencia de algun paso del algoritmoApriori

para disminuir el numero de tuplas a tratar en cada iteracion.

3.4.1.8 Eliminacion de atributos redundantes

El gran volumen de datos a tratar es grande tanto por el numero de ocurrencias de objetos

(filas de las tablas), como por el numero de atributos a tratar (columnas de las tablas). En

ocasiones ocurre que la informacion suministrada por algunos de estos atributos puede ser

redundante con lo que es conveniente eliminar aquellos atributos redundantes antes de reali-

zar cualquier otra operacion.

Otras veces sin embargo, la situacion es que, dependiendo de ciertas consultas, puede ocu-

rrir que algunas combinaciones de atributos dependan de otras, con lo que, de aparecer en

los resultados, no suministran informacion alguna y tan solo ruido. La dependencia que se

menciona puede ser total (al ���) o depender en un grado menor. De cara a la resolu-

cion de esas consultas, es conveniente previamente ejecutar alguna operacion que detecte la

posibles redundancias. Por tanto, la operacion de eliminacion de redundancia toma como

entrada una tabla relacional y como parametros el grado de redundancia que es aceptable y

como salida la tabla en la que se han eliminado los atributos redundantes. Observese que,

como consecuencia de la eliminacion de algunos atributos, podra ocurrir que existan algunas

combinaciones de valores de atributos repetidas que deberıan ser reagrupadas.

3.4.1.9 Adicion del atributo de cuenta de objetos para cada combinacion de valoresde los atributos de una determinada tabla

De cara a algunas operaciones (generalizacion, patrones), es necesario calcular el numero

de objetos que cumplen ciertas combinaciones. En el caso de que se vaya a necesitar este

tipo de calculos, resulta interesante que se anada a la tabla que sera objeto de las consultas

de Data Mining un atributo de cuenta que inicialmente contendra como valor para todas las

filas un . Hay que hacer notar una vez mas que este atributo tendra existencia de manera

transparente al usuario y que se considerara informacion del sistema y no de la base de datos.

3.4.1.10 Eliminacion de atributos

Puede ocurrir que sea necesario eliminar algun atributo por distintas causas. Puede ser in-

teresante eliminar ciertos atributos porque se considere que de cara al problema de descu-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 80: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 68

brimiento que se esta tratando resultan perjudiciales o simplemente irrelevantes. Tal es el

caso de atributos clave o candidatos a clave que sera necesario eliminar de cara a una futura

extraccion de patrones. Sea cual sea el motivo y/o el proceso llevado a cabo para descubrir

que atributos se han de eliminar, al final llevara asociada una operacion de proyeccion sobre

los atributos restantes, operacion que se llevara a cabo de manera transparente al usuario.

3.4.1.11 Eliminacion de atributos con valores atıpicos

Los valores atıpicos (aparecen en muy pocas ocurrencias de la base de datos), aportan infor-

macion no util en el proceso de descubrimiento. Esta operacion tomara como entrada una

tabla relacional y como parametros un umbral que le indicara al procedimiento cual es el

mayor grado de dispersion permitido en los valores de un atributo. Como salida, se tendra la

tabla en la que los atributos con gran dispersion han sido eliminados.

3.4.1.12 Reagrupacion de combinaciones de atributos

Se ha observado que, como consecuencia de aplicar algunas operaciones, puede ocurrir que

haya combinaciones de valores de atributos repetidas. Debido a que el fin de las consultas

de Data Mining es la obtencion de patrones, las combinaciones iguales deben ser fusionadas

y los contadores de cada combinacion deben ser convenientemente actualizados. Por eso,

la entrada de esta operacion es una tabla en la que hay ocurrencias repetidas y la salida es

una tabla con la misma estructura que la primera en la que las ocurrencias repetidas han

desaparecido y los contadores de cada ocurrencia se han actualizado. Nuevamente, esta

operacion la ejecutara el sistema de manera transparente al usuario.

3.4.2 Operadores para la creacion de las bases de datos personalizadas

Siguiendo el esquema de la arquitectura a tres niveles de las bases de datos relacionales, se

ha visto que los usuarios acceden a bases de datos personalizadas. Las definiciones de dichas

bases de datos se guardaran en el catalogo. No es del ambito de esta exposicion la definicion

e implementacion de estas bases de datos. Basicamente las operaciones de esta fase son

operaciones de seleccion y proyeccion de bases de datos para conseguir crear la porcion de

la base de datos a la que tendra derecho a acceder cada usuario. Es de destacar aquı tambien

que, para mantener la consistencia, las consultas de los usuarios se tendran que traducir a la

porcion de bases de datos que ellos perciben, con lo que el motor de consulta se tendra que

adaptar para mantener la consistencia.

A cada base de datos personalizada accederan usuarios que podran tener distintos permisos.

Si un determinado usuario tiene derechos de administracion, entonces podra modificar la

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 81: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 69

base de datos con operaciones de preprocesado que encuentre necesarias de cara a la eficiente

resolucion de las consultas de los usuarios que acceden a la misma con permisos de tan solo

consulta.

3.4.2.1 Preprocesado de la base de datos personalizada

Si el administrador ha dado permisos de preprocesado de datos a alguno de los usuarios de

una determinada base de datos personalizada, entonces le habra dado derechos para poder

ejecutar los operadores que se veıan en la fase de creacion de la base de datos de explotacion.

Dependiendo de las consultas de Data Mining que tengan permitidas los usuarios y de los

algoritmos con los que se resuelvan, el administrador sera responsable de ejecutar todos las

operaciones de preprocesado de datos que dichos algoritmos requieran de cara a la eficiente

ejecucion de las consultas. Asi, por ejemplo, si se permite la ejecucion del algoritmo Apriori

que toma como entrada una tabla binarizada, la binarizacion de la tabla estara disponible

de manera transparente y no tendra que ejecutarse en fase de consulta del usuario. De la

misma manera, si un usuario quiere ejecutar un algoritmo de reglas de caracterizacion a un

determinado nivel de generalizacion distinto del nivel primitivo en que estan los datos, el

administrador es responsable de que tal generalizacion este disponible de manera transpa-

rente y que en fase de consulta la operacion de generalizacion se convierta en una simple

proyeccion sobre el atributo que la contenga.

Esta division de operaciones hara que con el uso en un sistema que tenga implementado el

proceso de esta manera, las consultas sean cada vez mas eficientes, pues todas las operacio-

nes de preprocesado se habran realizado con anterioridad.

Por otra parte, esta vision del proceso lo acerca mas al de consulta tradicional en bases de

datos, donde tambien con el tiempo y el uso de los sistemas, las consultas son cada vez mas

eficientes, pues el administrador ejecutara operaciones de manera transparente a los usuarios,

lo que hara que las consultas mas frecuentes se ejecuten mas eficientemente.

3.4.3 Fase de ejecucion de consultas de Data Mining

Se denomina ası a la secuencia de operaciones que actuaran sobre tablas de las bases de datos

personalizadas y preprocesadas en pasos anteriores para extraer finalmente el conocimiento.

Si se han realizado en la fase de limpieza y preprocesado de la base de datos todas la opera-

ciones que se veıan en apartados anteriores, solo queda aplicar los algoritmos deDataMining

que correspondan, dependiendo de la consulta del usuario. Observese que, es posible que

un determinado algoritmo de Data Mining necesite de pasos que ya han sido realizados en

fases anteriores con lo que puede ocurrir que tan solo se realicen ciertos pasos por hallarse

el resto ejecutados con anterioridad.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 82: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 70

La figura 3.8 ilustra este comportamiento. Es importante ver que todas y cada una de las

fases del proceso tal y como fue expuesto en [Fayyad96b] se estan realizando, con la unica

diferencia de que bajo este enfoque hay fases que se han podido realizar en momentos del

tiempo diferentes. En cualquier caso, el problema de la extraccion de conocimiento es que

Pre Pre Pre DM DM

Consulta DM

Fase de DM

Figura 3.8: Descomposicion en operaciones basicas de una consulta de Data Mining

las bases de datos contienen enormes cantidades de datos que, hablando en terminos relacio-

nales, son tablas con gran numero, tanto de filas (objetos), como de columnas (atributos).

Por eso, todos los algoritmos de extraccion de conocimiento tratan de reducir el tamano de

los datos bien disminuyendo el numero de propiedades a tratar (atributos), lo que supone

proyectar sobre los atributos de interes o bien tratando subconjuntos de los datos originales

que cumplen ciertas propiedades, esto es, seleccionando objetos de la base.

Para estudiar las operaciones que restan aplicar para terminar la consulta de Data Mining,

tal y como se esta estudiando en el presente trabajo, se tiene que observar que:

� Las tablas de entrada contienen todos los objetos a tratar y como atributos, y tanto los

atributos originales como los que han sido anadidos por los operadores en la fase de

preparacion. Esto es, una tabla valida podrıa ser la que tiene como atributos la edad co-

mo valor continuo y la edad como valor discretizado (posiblemente varios atributos de

edad discretizada). Sera labor del algoritmo de Data Mining determinar los atributos

con los que se realizara la extraccion del conocimiento. Se estudiaran las operacio-

nes de preprocesado que son requisito de determinados algoritmos de extraccion de

patrones, y estos requisitos tendran que estar almacenados en las tablas del sistema

para que, como consecuencia de la peticion de consulta de un determinado usuario, se

organice toda la cadena de operaciones que es necesario ejecutar.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 83: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 71

� Por ello, durante la ejecucion de los operadores de Data Mining no crece ni el numero

de objetos ni el de atributos, pues todos estos atributos necesarios se anadieron en fa-

ses anteriores del ciclo de vida. Como consecuencia, en fase de busqueda de patrones

se tomara una tabla que se considerara estable, esto es, que no admite modificaciones;

esta tabla se explorara una y otra vez en busca de los patrones deseados. Es posible

que, durante la explotacion, sea necesario seleccionar ciertos individuos que cumplan

ciertas caracterısticas o quedarse tan solo con ciertos atributos, pero en ningun caso el

conjunto de objetos crece, pues esto supondrıa que se esta eligiendo una nueva pobla-

cion o universo y por tanto se tratarıa de otra consulta. Tampoco crecen los atributos

que sirven para describir esos objetos, pues nuevamente, si cambian los atributos cam-

biaran los patrones. Cosa diferente es que, durante el proceso, se anadan atributos

calculados en base a los anteriores para aumentar la eficiencia de las consultas. Estos

atributos seran considerados estructuras asociadas, puesto que no sirven para describir

los datos y se anaden de manera transparente al usuario.

� Sera interesante estudiar aquellos casos en que se llega a resultados iguales partiendo

de los mismos datos y aplicando distinta secuencia de operaciones (posiblemente ope-

raciones iguales con parametros distintos). Esta informacion sera interesante de cara

al tunning y a la eficiencia de la ejecucion de consultas. Para ello, sera necesario que

las distintas operaciones almacenen informacion en las tablas del sistema para que el

motor de consulta la pueda consultar y utilizar al formar la secuencia de operaciones

necesaria para responder a una determinada consulta de usuario.

� Las operaciones se encadenan entonces para resolver una determinada consulta. Dado

que las cantidades de datos a explorar por cada operador son muy grandes, se tendra

que estudiar la mejor manera de paralelizar la secuencia de operaciones.

Dependiendo del tipo de operaciones que se esten ejecutando, cambiara el grano de

paralelismo. Esto es, habra situaciones en que las operaciones que se esten ejecutando

en paralelo lo esten realizando sobre una tabla y otras en que el paralelismo sera a

nivel de tupla.

Se estudia a continuacion una lista de operaciones que sera necesario tener implementadas

en el sistema para realizar las consultas de Data Mining para obtencion de patrones. La lista

que se expone no pretende ser exhaustiva solo pretende ilustrar la division en operaciones

basicas de las consultas genericas sin entrar en algoritmos especıficos. Dependiendo de las

funcionalidades y consultas que el sistema proporcione, ası sera la lista de operaciones de

DataMining que tendran que tener implementadas. Se exponen tan solo algunas operaciones

representativas que ya se estudiaron en el capıtulo 2.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 84: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 72

3.4.3.1 Calculo de reglas discriminantes para un concepto

Es un operador que tomara como entrada la tabla relacional que contiene los objetos selec-

cionados y como parametros la definicion del concepto y los valores de confianza y soporte

permitidos.

La salida de este operador sera una tabla relacional en la que cada tupla se puede interpretar

como una regla discriminante para el concepto dado.

Hay que destacar que, la tabla de salida contendra menor numero de objetos y de atributos

que la tabla original 2. Asimismo, la tabla contendra dos atributos nuevos que indicaran el

soporte y la confianza de cada regla.

Observese que no se ha hablado del metodo o algoritmo utilizado para el calculo de este tipo

de reglas por responder todos ellos al mismo comportamiento.

Dependiendo de los algoritmos disponibles, se tendran distintos operadores de discrimina-

cion. El comportamiento de todos ellos, no obstante, sera el que se acaba de describir. Sera el

sistema el que decida con que algoritmo se resuelve la consulta, atendiendo a las estadısticas

e informaciones disponibles en el sistema acerca de las operaciones. Se observa que, si el

sistema utiliza metodologıa de Rough Sets para el descubrimiento de patrones, esta opera-

cion sera la operacion de calculo de la region lower para un determinado concepto, como se

ilustra en capıtulos posteriores.

3.4.3.2 Calculo de reglas caracterısticas de un conjunto de objetos

Esta operacion tomara como entrada la tabla relacional que contiene los objetos selecciona-

dos y como parametros la definicion del conjunto de objetos a caracterizar y los valores de

confianza y soporte permitidos.

La salida de este operador sera una tabla relacional en la que cada tupla se puede interpretar

como una regla caracterıstica del conjunto de objetos dado.

Nuevamente, si se dispone de distintos metodos de caracterizacion, se dispondra de diferen-

tes operaciones de caracterizacion, respondiendo todas al mismo comportamiento.

Nuevamente, si se esta utilizando la metodologıa de los Rough Sets, esta operacion serıa la

operacion de calculo de la region upper del concepto.

3.4.3.3 Calculo de reglas de asociacion

La entrada de esta operacion sera una tabla (generalmente binarizada) y parametros, que

guiaran el comportamiento de la operacion. Entre estos parametros se tendra que suminis-

trar los valores de soporte y confianza de las asociaciones resultantes, ası como el tamano

2Se vera la importancia que este hecho tiene en el siguiente capıtulo

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 85: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 73

aconsejado de las asociaciones.

La salida del operador sera una tabla con las asociaciones mas frecuentes, ası como sus so-

portes y confianzas.

Si bien el algoritmo Apriori es el algoritmo mas estudiado en la bibliografıa para el calculo

de reglas de asociacion, sera admisible cualquier operacion cuyo resultado sean reglas de

asociacion.

3.4.3.4 Consultas de Data Mining sobre valores de atributos discretizados

El usuario puede decidir que las reglas que quiere obtener sean de unos datos objetivos que

han sido previamente discretizados. Incluso el sistema podrıa decidir de manera automatica

tal discretizacion, debido a que, de otro modo, no se pudieran obtener patrones. Si en fa-

se de preprocesado se ha ejecutado la operacion de calculo de intervalos esta operacion

no presenta mas complejidad que la proyeccion sobre el atributo discretizado. Observese

que dependera de las implementaciones de los distintos sistemas el proporcionar distintos

metodos de discretizacion a los usuarios.

3.4.3.5 Generalizacion de valores de atributos con respecto a una determinada jerar-quıa

Los usuarios pueden querer extraer los patrones a distintos niveles conceptuales de gene-

ralizacion. Caso de que el usuario pida la obtencion de reglas sobre unos datos objetivos

previamente generalizados, se tendra que ejecutar la operacion de generalizacion de la ta-

bla que contiene los datos objetivos. Nuevamente, si en fase de preprocesado se calcularon

distintas generalizaciones, esta operacion no tendra mayor complejidad que la de una pro-

yeccion sobre el atributo generalizado para posteriormente pasar a ejecutar el algoritmo de

Data Mining especifico para una determinada consulta.

3.4.4 Definicion de consulta de Data Mining

Una vez que se han estudiado las operaciones de cada fase del ciclo de vida del proceso de

descubrimiento, se puede estudiar el proceso que los sistemas que integren estas capacidades

tendran que llevar a cabo cuando reciban una consulta de Data Mining, lo que ayudara a las

futuras implementaciones de este tipo de sistemas.

La fase de consulta comienza por la interaccion de un usuario con el sistema para pedir cierta

informacion en un cierto lenguaje. Es obvio que la gramatica de los lenguajes de consulta

tendra que ser extendida para dar cabida a las nuevas consultas. Las fases de preprocesado

y preparacion de la base de datos ocurren de manera transparente a los usuarios finales, que

lo unico que desean es tener satisfechas ciertas consultas. Por ello, la consulta de un usuario

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 86: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 74

tan solo tendra que especificar los datos objetivos de la tarea de descubrimiento y el tipo de

informacion que desea obtener, parametrizada convenientemente.

Dependiendo del tipo de consulta que se realice (caracterizacion, generalizacion, discrimi-

nacion, � � � ), el sistema elegira las operaciones (implementaciones de algoritmos de Data

Mining) y establecera el conjunto de requisitos de las mismas. Los requisitos se traduciran

en la adicion por parte del sistema de operaciones de preparacion y preprocesado de los da-

tos. Entonces, como consecuencia de la consulta realizada sobre unos determinados datos,

el sistema (el interprete de consulta), traducira la consulta a operaciones elementales como

las que se han visto, que tendran como fin la resolucion de la consulta del usuario. Es po-

sible que algunas de la operaciones en las que se traduce una determinada consulta esten

ya precomputadas o existan resultados almacenados en las tablas del sistema para hacer mas

eficiente la resolucion. En cualquier caso, sera el optimizador de consulta el que se encargara

de colocar las operaciones a realizar en el orden optimo de cara a la eficiencia, siempre que

esto no suponga alteracion de la semantica de la consulta solicitada.

Definicion: Se puede definir ahora de manera mas precisa consulta de Data Mining como

aquella “Secuencia de operaciones (las de la consulta mas las que anade el sistema de pre-

procesado) que, partiendo de unos datos devuelve al usuario la informacion solicitada”.

En la figura 3.9 se observa como para una consulta el sistema anade todas las operaciones

que, o bien son prerrequisito para ejecutarla, o son necesarios por motivos de eficiencia.

3

1

Intr

erfa

z

3

4

4

2

Mo

tor

de

Co

nsu

lta

Tra

du

cto

r d

e C

on

sult

a

Op

tim

izad

or

de

Co

nsu

lta

Figura 3.9: Proceso de traduccion de una consulta de usuario a operaciones elementales

3.4.4.1 Notas a los algoritmos de Data Mining

El modo en el que las operaciones de Data Mining han sido establecidas en el apartado an-

terior, supone que es el sistema y, en todo caso el administrador del mismo, el que decide de

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 87: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 75

entre todas las operaciones de limpieza, calculos para posibles discretizaciones o generali-

zaciones y demas operaciones de preprocesado de datos cuales deben estar precomputadas

de alguna manera y cuales, por ser menos frecuentes, se ejecutan al realizar la consulta.

Tan solo queda por tanto establecer un estudio de la complejidad de todas la operaciones del

sistema para establecer el orden optimo de ejecucion sin influir en la semantica de las consul-

tas. Por otra parte, se debe tambien destacar que, al expresar de esta manera los algoritmos,

el cambiar el metodo por el que se realiza una determinada consulta solo supone ejecutar la

operacion implementada a tal efecto y, en todo caso, anadir los prerrequisitos necesarios de

manera completamente transparente al usuario. La figura 3.10 establece la estructura de los

operadores de Data Mining.

Por ultimo, destacar que la lista de operadores expuesta no pretende ser exhaustiva, tan solo

��������������������

��������������������

������������������

������������������

��������

��������������������

������������

����������������������������������������

����������������������������������������

��������

��������

������������

������������

������������������

������������������

��������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������

Tabla

Proce

sada

Parámetrosattr = sizethreshold=80%max_iter = 12

de DMOperador

Información del sistema

Tabla

de

Patron

es

Figura 3.10: Estructura basica de los operadores de Data Mining

se pretende con ella exponer la perspectiva desde la que se ve el proceso en este trabajo.

Otras operaciones para obtencion de clusters, patrones secuenciales, entre otros, serıan ne-

cesarios en una exposicion exhaustiva. No obstante, observese que la metodologıa de trabajo

ha quedado establecida y serıa facil el anadir nuevas operaciones y funcionalidades bajo esta

perspectiva.

3.4.5 Requisitos

Como consecuencia de la division de las consultas en operaciones y con objeto de que el

proceso se realice de manera transparente al usuario, es necesario establecer el conjunto de

operaciones que son requisito previo de cualquier otra operacion. Por consiguiente, el siste-

ma tendra que almacenar informacion referente a la secuencia de operaciones a llevar a cabo

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 88: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 76

como resultado de cada consulta para que el traductor de consulta o el modulo encargado de

la ejecucion sepa los requisitos de cada consulta. Se observa que, como consecuencia, no

solo se tendra que extender la gramatica de usuario sino tambien el catalogo del sistema para

almacenar la informacion pertinente en cada caso.

A continuacion se presentan las operaciones que son requisito de ciertas operaciones de Da-

ta Mining. Algunos de estos prerrequisitos han sido estudiados al mismo tiempo que se

estudiaban las operaciones correspondientes. Se presentan aquı algunos ejemplos de estas

operaciones y se especifica la informacion que se tendrıa que guardar en tablas del sistema

caso de que se tuvieran precalculados por motivos de eficiencia. No se entra, sin embargo, en

implementaciones particulares que se salen del ambito de estudio de este trabajo. Cada vez

que una consulta necesite de una generalizacion o discretizacion de valores de un cierto atri-

buto, ya sea por peticion explıcita de un usuario o por que ası lo requiera el funcionamiento

de un cierto operador, sera necesario que se ejecute el algoritmo de calculo de intervalos y

adicion a la tabla correspondiente del atributo o atributos generalizados. Observese que, de

esta manera, es posible, en fase de preparacion, realizar distintas generalizaciones del mismo

atributo y sera en la fase de resolucion de la consulta donde se decidira con cual quedarse.

Esto, asimismo, favorece la ejecucion paralela de consultas sobre el mismo conjunto de ob-

jetos.

Igual ocurrira con los algoritmos que necesiten tablas binarizadas o adicion de atributos de

cuenta. Siempre se supondra, para aumentar la eficiencia, que el preprocesado de los datos

por motivo de la ejecucion de un determinado algoritmo, ha sido ejecutado con anterioridad.

La tabla 3.1 ilustra una posible informacion acerca de los operadores de preprocesado que

son requisito de ciertos operadores de Data Mining.

Discretizar Claves Reagrupar Binarizar � � �Caracterizacion ✔ ✔

Apriori ✔ ✔ ✔

Tabla 3.1: Requisitos de operadores de Data Mining

3.4.6 Presentacion de los resultados

Una vez que la consulta de Data Mining se ha realizado, sera necesario presentar los resul-

tados (patrones) a los usuarios de una manera comprensible.

Es posible que para dar estos resultados sean necesarias algunas operaciones sobre los re-

sultados de los operadores de Data Mining. Ası por ejemplo, en el caso de las reglas de

asociacion, una vez se obtienen las asociaciones mas frecuente, es necesario ejecutar la tra-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 89: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.4. DEFINICION DEL PROCESO EN BASE A OPERACIONES BASICAS 77

duccion de asociaciones a reglas de asociacion.

Por otra parte, ademas de presentar el conocimiento de una manera comprensible, sera de-

seable proporcionar un resumen del proceso por el que han pasado los datos objeto de la

consulta de manera que el usuario pueda realizar nuevas consultas en las que modifique

algun parametro.

A diferencia de las consultas tradicionales de bases de datos, en las que el resultado es

siempre una tabla relacional con los objetos seleccionados, el realizar una consulta de Da-

ta Mining da como resultado un conocimiento que habra que especificar en que forma se

representara. Ademas, los resultados son tambien los objetos (transacciones, clientes, pa-

cientes) representantes de cada patron, regla o clase. No se tratan aquı los distintos metodos

de representacion del conocimiento, pues el objetivo de este trabajo es la descomposicion

en operaciones basicas del proceso. Sı se va a estudiar, en cambio, la informacion que los

operadores habran debido guardar para poder extraer con exito el conocimiento resultante.

De todas las operaciones que realice el sistema, se tendra que almacenar:

� Nombre.

� Parametros de entrada (umbrales).

� Forma de representar el conocimiento (reglas).

� Para cada patron, regla o clase (tupla en el caso que nos ocupa):

– Objetos que cumplen cada patron, regla, � � � (numero y descripcion).

– Grado de solapamiento de los objetos con las descripciones.

Para que se puedan realizar todas estas tareas, sera necesario que el motor de consultas al-

macene informacion referente a todos los apartados vistos con anterioridad. Es importante

destacar que una de las premisas del proceso de KDD es que los patrones tenıan que ser

comprensibles para el usuario al que se le suministraran. Observese que, gracias a la des-

composicion del proceso en operadores, es posible guardar informacion detallada de cada

operacion que se ha ejecutado para poder proporcionar al usuario una explicacion detallada

del proceso de obtencion de los patrones que se le estan suministrando como resultado de su

consulta.

3.4.6.1 Interpretacion y refinado

Una vez que se le presentan los resultados al usuario, pueden presentarse distintas situacio-

nes:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 90: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.5. RESUMEN CONTEXTUAL 78

� Que este conforme con el resultado y decida finalizar la sesion. En estos casos, depen-

diendo del sistema y de la aplicacion, el usuario podra decidir guardar los resultados,

imprimirlos, importarlos a otra aplicacion o simplemente no hacer nada. Cualquiera

de las opciones sale del ambito de este trabajo.

� Que, a la vista del conocimiento obtenido decida modificar algun parametro para ver

como cambian los resultados. De esta forma podrıa decidir:

– Realizar una nueva consulta sobre los mismos datos objetivo en los que cambia

umbrales de ejecucion.

– Modificar el conjunto de datos objetivo y realizar la misma consulta sobre otro

conjunto de datos para poder comparar resultados.

– Realizar una nueva consulta, distinta por completo de la anterior.

3.5 Resumen contextual

En este capıtulo se ha abordado el problema del descubrimiento de conocimiento en grandes

volumenes de datos desde la perspectiva del desarrollador de sistemas de gestion de bases

de datos.

Como consecuencia de tal estudio, las consultas de descubrimiento se han agrupado en fases

y se han descompuesto en operaciones basicas.

El estudio detallado de tales operaciones ha dado como fruto una estructura comun para las

operaciones tanto de las fases de preprocesado como de Data Mining (tal y como se han

concebido en este trabajo).

Por consiguiente, la estructura de operacion queda definida de la siguiente manera (ver figura

3.11).

En la figura se puede observar que toda operacion constara de:

� Entrada: Una tabla relacional, esto es, un conjunto de ocurrencias de entidades defi-

nidas por medio de un conjunto de atributos. Los datos podran, en principio, provenir

de distintas tablas de la base y sera funcion de algun modulo del gestor el reunirlos en

una tabla para ser sometida a una determinada operacion.

� Salida: Otra tabla relacional, posiblemente distinta a la de entrada. Esto es, estara

formada por otro conjunto de objetos definidos por un conjunto de atributos posible-

mente diferente del conjunto original. En cualquier caso, lo que podra ser diferente es

la interpretacion o semantica del contenido de la tabla.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 91: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.5. RESUMEN CONTEXTUAL 79

Operador

Tab

la d

e E

ntra

da

Tab

la d

e Sa

lida

EstructurasAux. de Salida

EstructurasAux. de Entrada

Figura 3.11: Estructura basica de una operacion de KDD en una base de datos

� Tablas del sistema: Es posible que los operaciones necesiten interactuar con las tablas

del sistema para realizar su funcion. Y que necesiten consultar tablas de dominios

para calcular discretizaciones y/o generalizaciones o necesiten consultar ocurrencias

de determinados atributos en la base de datos entre otras. Como consecuencia de

la logica de una determinada operacion, es posible que aparte de ser consultadas las

tablas del sistema, sean modificadas para albergar mas informacion acerca de los datos

que contiene la base y que sera utilizada con posterioridad en alguna operacion de

consulta a la misma.

� Parametros: Sirven para definir ciertas restricciones de los operadores. Toda ope-

racion podra admitir parametros que le indicaran el grado de exactitud con el que se

ejecutara la operacion. Esto permite definir familias de operaciones que solo se dife-

rencian en los parametros con los que se ejecutan. El ejecutar una misma operacion

con distintos parametros de entrada sobre la misma tabla, puede llevar a obtener re-

sultados diferentes o los mismos, por lo que resulta interesante estudiar a fondo los

comportamientos de cada familia de operaciones.

Como consecuencia del establecimiento de una estructura comun para los operadores, se

plantea en el siguiente capıtulo, una modelizacion matematica tanto de los operadores co-

mo de la fase de Data Mining. Las cadenas de proceso que se forman como consecuencia

de la ejecucion de una consulta de usuario, son la base intuitiva para tratar de formalizar

matematicamente el proceso y especificar patrones deseables de comportamiento de las ope-

raciones que seran implementadas. De existir la formalizacion, se permitirıa la automati-

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 92: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

3.5. RESUMEN CONTEXTUAL 80

zacion del proceso de optimizacion de cadenas de operaciones por parte del sistema. Por

consiguiente, las futuras implementaciones podrıan beneficiarse de las propiedades de tal

modelizacion de cara a implementaciones mas eficientes.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 93: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 4

El retıculo de las operaciones de DataMining

Indice General

4.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

4.2 Modelo semantico de Data Mining . . . . . . . . . . . . . . . . . . . . 82

4.2.1 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4.2.2 Universo de Data Mining . . . . . . . . . . . . . . . . . . . . . . 86

4.2.3 Seleccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

4.2.4 Operador de Proyeccion . . . . . . . . . . . . . . . . . . . . . . 91

4.3 Modelo Sintactico de Data Mining . . . . . . . . . . . . . . . . . . . . 93

4.3.1 Elementos del modelo . . . . . . . . . . . . . . . . . . . . . . . 93

4.3.2 Definicion sintactica del operador de generalizacion . . . . . . . 94

4.4 Poset de Generalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . 96

4.4.1 Retıculo de Generalizacion . . . . . . . . . . . . . . . . . . . . . 97

4.4.2 Retıculo de Generalizacion Etiquetado . . . . . . . . . . . . . . . 97

4.5 Modelo Sintactico de Data Mining . . . . . . . . . . . . . . . . . . . . 97

4.6 Interpretacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

4.6.1 Orden inducido en la semantica . . . . . . . . . . . . . . . . . . 99

4.6.2 Teorema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

4.7 Construccion dinamica del retıculo . . . . . . . . . . . . . . . . . . . 100

4.8 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 94: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.1. INTRODUCCION 82

4.1 Introduccion

Tras lo expuesto en capıtulos anteriores, queda claro que el proceso que se esta estudiando

trata de la extraccion del conocimiento oculto en grandes cantidades de datos. El conoci-

miento se extrae identificando patrones. Cada patron servira para identificar comportamien-

tos similares de ciertos conjuntos de objetos.

Por otra parte, a lo largo de este trabajo, se supone que los datos estan definidos por medio

de un conjunto de atributos y sus valores, que estan gestionados por un gestor de bases de

datos relacional. Asimismo, se supone que la entrada de cualquier operacion elemental es

una tabla, esto es, un conjunto de objetos descrito por medio de un conjunto de atributos.

Para identificar patrones, se buscara la informacion equivalente que existe en la base de

datos. Dado un conjunto de atributos es posible definir relaciones de equivalencia en el con-

junto de objetos. Se dice que dos objetos de una base de datos son equivalentes con respecto

a un determinado conjunto de informacion, si todo el conjunto de objetos tiene los mismos

valores para el conjunto de atributos dado. Por eso, en lo que sigue, cuando se estudie el

proceso de extraccion de conocimiento, el interes radicara en los patrones o representantes

de cada clase de equivalencia, que son los que desvelaran conocimiento acerca del conjunto

de individuos bajo estudio.

Una vez se han estudiado las operaciones elementales que seran necesarias para resolver las

consultas de Data Mining, y se ha encontrado una estructura comun en la que expresarlas, se

intentara en este capıtulo encontrar una formulacion matematica que ayude a establecer unos

principios en los que se puedan basar los modulos de gestion y optimizacion de consultas.

4.2 Modelo semantico de Data Mining

Tal y como ha sido expuesto hasta este momento, en cualquier situacion de Data Mining se

puede suponer que se dispone de al menos de un conjunto de objetos (no vacıo), identifica-

dos por los valores que toman para un cierto conjunto de atributos. Por ello, en lo que sigue

se supone que existe un conjunto O no vacıo de objetos y un conjunto no vacıo de atributos

AT . Tambien se supondra que los atributos tienen asociados valores. Por otra parte, puesto

que el objetivo es extraer informacion de un conjunto de objetos, se puede, sin falta de ge-

neralidad, cenir el estudio a bases de datos no vacıas.

Cualquier tarea de Data Mining, independientemente de los resultados que pueda produ-

cir, va siempre de informacion detallada a informacion general para extraer los patrones

requeridos. Se va demostrar como estas tareas se pueden expresar como combinacion de

operaciones que se han denominado operaciones de Data Mining . El resultado de aplicar

estas operaciones es, o bien reducir el numero de elementos de la tabla de entrada, o bien

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 95: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 83

el numero de atributos que se esten teniendo en cuenta, o ambos y, adicionalmente, algun

calculo con los datos que no influye en la estructura de los mismos, pero que son necesarios

para la determinacion de los patrones.

Se supone que la entrada a la etapa de Data Mining es una tabla de la base de datos y que

los conjuntos de atributos y objetos son disjuntos (esta es una convencion habitual en bases

de datos). Por ejemplo:

AT � fK�A�B�Cg

Dom�K� � f� � �� g � O

Dom�A� � fa� a� � � � � amg

Dom�B� � fb� b� � � � � bng

Dom�C� � fc� c� � � � � crg

Ademas,

O � AT � �

En la figura 4.1 se puede observar un esquema de las operaciones que se intentan formalizar

a lo largo del presente capıtulo. Para esta formalizacion es necesario previamente introducir

algunas definiciones que se estudian en la siguiente seccion.

���������������

���������������

�������������������������������������������������������������������������������������������

�������������������������������������������������������������������������������������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

���������������

Operador

Operador

Operador

Operador

Operador

Operador

OperadorOperadorBD

A B C D .......0 1 2 3 5 4 3 2 6 7 4 3 2 2 1 2 1 4 6 5 33 4 5 3 6

............................................................................

4 2 5 6 9 2 3 2 6 7 4 3 2 2 1 2 1 4 6 5 33 4 5 3 6

3 4 5 9 1 4 0 1 7 2 3 5 4 3 2 6 7 4 6 5 34 4 5 3 2

4 2 5 6 9 2 3 2 6 7 4 3 2 2 1 2 1 4 6 5 33 4 5 3 6

0 1 2 3 5 4 3 2 6 7 4 3 2 2 1 6 5 7 4 5 74 1 5 6 3

3 4 5 9 1 4 0 1 7 2 3 5 4 3 2 6 7 4 6 5 34 4 5 3 2

Consulta

Figura 4.1: Esquema de la fase del proceso KDD

4.2.1 Preliminares

Los elementos del universo se perciben a traves de la informacion que se tiene de ellos.

Ocurre entonces que varios objetos se pueden percibir como identicos, teniendo en cuenta

un cierto conjunto de atributos. Por ejemplo, dos o mas pacientes se pueden tratar como

identicos si presentan los mismos sıntomas.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 96: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 84

De esta manera, se supondra que con cada elemento x del universo O, x O, esta asociada

una cierta informacion.

Definicion: Se define �x�i como el conjunto de elementos del universo iguales a x con res-

pecto a i.

�x�i � fy O�i�x� � i�y�g (4.1)

En el caso de bases de datos, donde la informacion viene dada por los atributos y sus valores,

la funcion i�x� se refiere a un atributo i, o a la combinacion de varios atributos (descriptor).

Imponiendo la condicion de que cada atributo sea una funcion monovaluada (pueda tomar

tan solo un valor para cada atributo), esto es :

�Ai AT� �x O � fAi�x� � ai� Ai�x� � ajg � ai � aj (4.2)

Y generalizando esta condicion cuando se trate con descriptores:

AiAj�x� �� Ai�x�� Aj�x� � etc � � � (4.3)

Cualquier i, induce una particion de O en clases de equivalencia. Ası, ocurre que i�x� se

puede ver como el nombre de la clase de equivalencia de x con respecto a la informacion i.

Por ello, se puede efectivamente definir i como una funcion que aplica O en P�O�.

Formalmente, se puede definir la funcion i acerca del universo O como cualquier funcion:

i � O �� P�O� (4.4)

tal que si x e y son iguales con respecto a la informacion i, y �x�i.

�x O� fy O � i�x� � i�y�g � �x�i (4.5)

Obviamente,

O� �i� f�x�i� x Og (4.6)

En lo que sigue, se supone que i es una funcion

i � O �� ��O� (4.7)

donde ��O� es cualquier particion del universo O. Ası, la informacion i acerca del elemento

x se expresa como la clase de equivalencia �x�i para una cierta relacion de equivalencia defi-

nida en O.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 97: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 85

Cod Emp Categorıa Edade� Alta 40e� Alta 50e� Media 40e� Media 30e� Baja 50

Tabla 4.1: Tabla de Empleados

Ejemplo: Partiendo de la tabla 5.2, se tienen las siguientes funciones de informacion:

O� �Categoria� ffe�� e�g� fe�� e�g� fe�gg

O� �Edad� ffe�� e�g� fe�� e�g� fe�gg

O� ��Edad�Categoria�� ffe�g� fe�g� fe�g� fe�g� fe�gg

En el ejemplo e� Edad�e�� dado que e� y e� tienen la misma edad.

Definicion:

Sean:

O � fx�� x�� � � � xng

un conjunto de objetos

AT � fA�� A�� � � � � Ajg

un conjunto de atributos.

Se define la funcion r de la siguiente manera (ver 4.2):

r � P�AT �� P�O� �� P�P�O�� (4.8)

Los elementos que tienen imagen son los pares de la forma �AX � O� donde O, el universo de

objetos, es variable en el tiempo (puede mantenerse o disminuir en el proceso).

Condiciones que cumple la funcion:

� Tienen imagen todos los posibles pares �AX � O� con AX � AT .

� Las imagenes de dos elementos diferentes pueden coincidir.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 98: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 86

K A Bk� 0 0k� 0 1k� 1 1

Tabla 4.2: Ejemplo de tabla

� Si O � fx�� x�� � � � xng entonces:

r�AT�O� � ffx�g� fx�g� � � � fxngg

r�fA�� A�� � � � � Amg� O� � O� ��fA� �A����� �Amg�

r��� O� � f�g

r�AX � O� � O� � AX

r�AX � �� � f�g

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

(AT) (O)x (O)(

(AT) (O)xr : (O)( )

)r

Figura 4.2: Definicion de la funcion r

Ejemplo: Tomando la tabla 4.2, se tiene que :

r�fAg� fk�� k�� k�g� � ff� g� f�gg

r�fBg� fk�� k�� k�g� � ffg� f� �gg

r�fABg� fk�� k�� k�g� � ffg� fg� f�gg

r��� fk�� k�� k�g� � f�g

4.2.2 Universo de Data Mining

El Universo de Data Mining es una construccion matematica que permite definir el espacio

sobre el que se realizaran las consultas que se van a formalizar.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 99: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 87

Dados O � �, O conjunto finito de objetos y AT � �, AT conjunto finito de atributos

sea R el conjunto de todas la relaciones de equivalencia que se pueden definir en O con

descriptores de AT .

Definicion : El conjunto

U � P��fO� �� � Rg� (4.9)

se denominara Universo de Data Mining .

En el ejemplo de empleados (tabla 5.2), se obtiene el siguiente universo:

U � P�ffe�� e�� e�� e�� e�g� fe�� e�g�

fe�� e�g� fe�g� fe�� e�g� fe�� e�g�

fe�g� fe�g� fe�g� fe�g� f�gg�

Teniendo en cuenta la definicion de la funcion r, se puede tambien definir como:

U � P��fr�AX � O�� AX � ATg� (4.10)

Nota: La complejidad de generar el universo es exponencial, pero es importante destacar que

dicho universo es una construccion teorica cuya generacion no sera en ningun caso necesaria.

Demostracion:

U �P��fr�AX � O�� AX � ATg� (4.11)

U �P��fO� �� � Rg� (4.12)

Si AT tiene n elementos, jAT j � n, hay n posibles subconjuntos AX de elementos de

P�AT � (relaciones de equivalencia en R). Por otra parte, si hay m objetos, el numero

maximo de elementos en una particion de O esta acotada por m, con lo cual:

j�fO� ��� Rgj � mn

de modo que k � jP �SfO� ��� Rg�j � m�n por tanto resulta logk � mnlog,

log�logk� � log�log� � nlog � logm. Suponiendo m �� n, puede estudiarse el umbral

a partir del cual log�logk� � log m

Sobre este universo de Data Mining es sobre el que se ejecutan las tareas de descubrimiento

de patrones que se han denominado tareas de Data Mining. Cualquier tarea de Data Mining,

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 100: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 88

independientemente de los resultados que pueda obtener, toma como entrada la informacion

con el maximo detalle para intentar generalizarla en busca de patrones.

Para generalizar la informacion, se pueden descartar atributos o valores de los mismos. Por

eso, se intentara expresar los algoritmos y operaciones de Data Mining como concatenacion

de estas operaciones basicas. Para ello, se va a definir a continuacion las denominadas ope-

raciones de Data Mining que se demostrara son las operaciones basicas mediante las que

se puede expresar cualquier algoritmo de extraccion de conocimiento que sea expresable en

terminos de las operaciones tradicionales de seleccion y proyeccion en bases de datos rela-

cionales y adicionalmente algun proceso expresado en algun lenguaje de programacion.

4.2.2.1 Definicion de operador de Data Mining

Los operadores de Data Mining se pueden expresar como funciones parciales de la forma:

g � U � P�AT � �� U � P�AT �

g�X�AX� � �Y�AY �(4.13)

que verifican:

X � r�AX � O�

Y � r�AY � O�

AY � AX

Y � X

En las siguientes secciones se definen las operaciones de seleccion y proyeccion y se de-

muestra que son operadores de Data Mining de acuerdo con la definicion establecida.

4.2.3 Seleccion

Este operador se utiliza para seleccionar el subconjunto de elementos del universo de objetos

que cumple una determinada condicion. En el ejemplo que se esta teniendo en cuenta, serıa

necesario este tipo de operador para seleccionar por ejemplo los empleados cuyo salario es

mayor que una cierta cantidad.

La condicion sobre la que se selecciona es una expresion Booleana especificada sobre los

atributos utilizados para definir los objetos.

4.2.3.1 Definicion formal

La operacion de seleccion se lleva a cabo cuando se quiere seleccionar el conjunto de ob-

jetos que verifican una cierta condicion. La condicion se expresa como una formula bien

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 101: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 89

construida del calculo de predicados de primer orden:

fx O � f�x� es verdaderag (4.14)

La condicion expresada por f , se puede formular en forma normal conjuntiva (CNF). Con

lo que cualquier seleccion puede remitirse a la interseccion de selecciones elementales.

Definicion: Condicion f :

La condicion f se expresa como :

n�i��

Ai�x�vi (4.15)

donde:

vi Dom�Ai��i

es un operador de comparacion, esto es f�� e � ���� �g

Formamos ahora dos conjuntos:

Of � fx O para los que f se evalua como cierta f�x� � Ciertag

Af � fA AT pertenecientes al alfabeto definido por fg

Propiedad: Dado un conjunto de atributos Af , y un conjunto de objetos O, el conjunto de

atributos define una relacion de equivalencia en O: O� �Af

Definicion: Operador de seleccion: Dados f� Of � Af se define la familia de funciones

parciales Sf de la siguiente manera:

Sf � U � P�AT � �� U � P�AT �

Sf�X�AX� � �fx X � x �Of � �g� AX�(4.16)

para todo X y para cualquier Af tal que X � r�AX � O�, Af � AX

Nota: X y AX estan relacionados en el sentido de que X es un subconjunto de las clases de

equivalencia inducidas por AX en O. Esta relacion es necesaria para que la definicion tenga

sentido.

Ejemplo: Teniendo en cuenta la informacion en la tabla 4.3, donde:

AT � fCategoria� Edad� Sueldog

O � fe�� e�� e�� e�� e�g

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 102: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 90

Cod Emp Categorıa Edad Sueldoe� Alta 40 1000e� Alta 50 1000e� Media 40 1000e� Media 30 600e� Bajo 50 600

Tabla 4.3: Tabla de Empleados y Sueldos

Posibles ejemplos de condiciones son:

f � �Edad�x� � � � Sueldo�x� � ����

f � � �Categoria�x� � Media � Edad�x� � ���

Como consecuencia:

Of � fe�� e�g � fx O��Edad�x� � � � Sueldo�x� � ����g

O�f � fe�g � fx O��Categoria�x� � Media � Edad�x� � ���g

Tomando ahora los conjuntos:

X � ffe�g� fe�g� fe�g� fe�g� fe�gg

AX � fCategoria� Edad� Sueldog

La operacion para recuperar aquellos empleados de la base de datos cuyo salario es mayor

de 1000 dolares se expresarıa como:

Sf �X�AX� � �ffe�g� fe�gg� AX�

Por otro lado, si lo que se quiere es seleccionar aquellos empleados de la base de datos cuyo

nivel es medio y de 30 anos de edad, se expresa matematicamente como:

S �f �X�AX� � �ffe�gg� AX�

Teorema: La seleccion en Bases de Datos Relacionales es un caso particular de la opera-

cion Sf que ha sido definida en nuestro modelo.

En bases de datos relacionales, se trata con el caso particular en que las clases de equivalen-

cia se definen por la clave. Como consecuencia, las clases de equivalencia inducidas por este

atributo contienen tan solo un objeto, pues es sabido que la clave ha sido definida de manera

tal que todos los objetos de la base de datos sean distinguibles, como se puede observar en

el ejemplo.

La operacion de seleccion se expresa en SQL de la siguiente manera:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 103: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 91

SELECT A1, A2, ... , An

FROM Tabla

WHERE Condicion

Propiedades del operador de seleccion:

1. Si Sf�X�AX� � �Y�AX� entonces Y � X

Demostracion: De la definicion se observa que esta es una propiedad obvia y no

requiere demostracion.

2. Sea AX � AY . Si

Sf�X�AX� � �Z�AX� y (4.17)

Sf�Y�AY � � �Z �� AY � (4.18)

entonces �y�Z�

y ��

x�Zx (4.19)

Demostracion: Efectivamente si Ax � AY se obtiene que para toda clase de equiva-

lencia inducida por Ay existe otra inducida por Ax en la que aquella esta incluida. De

modo que teniendo en cuenta las igualdades:

Z � � fy Y � y �Of � �g (4.20)

Z � fx X � x �Of � �g (4.21)

Se obtiene que: �y�Z�

y ��x�Z

x (4.22)

4.2.4 Operador de Proyeccion

El operador de proyeccion selecciona ciertos atributos (columnas de una tabla relacional),

de los objetos y elimina el resto.

Hablando en terminos de bases de datos relacionales, el operador de “seleccion” selecciona

algunas de la filas mientras que el operador de “proyeccion”, selecciona ciertas columnas.

Si tan solo se esta interesado en ciertas propiedades para describir el conjunto de objetos, se

utilizara este operador para proyectar sobre los atributos de interes.

Por ejemplo, si se desea describir los empleados de la base de datos del ejemplo de la tabla

4.3 por medio de su salario y nivel, se tendrıa que proyectar sobre dichos atributos.

La consulta en SQL se expresa de la siguiente manera:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 104: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.2. MODELO SEMANTICO DE DATA MINING 92

CodEmp Categoria Edade� Alta 40e� Alta 50e� Media 40e� Media 30e� Bajo 50

Tabla 4.4: Tabla de Empleados (proyeccion sobre Nivel y Edad)

SELECT Categoria, Edad

FROM Empleado

En la tabla 4.4 se ve el resultado de aplicar la proyeccion. Observese que caso de haber

tuplas repetidas despues de una proyeccion, la operacion antes expuesta en SQL no elimina

dichos repetidos.

4.2.4.1 Definicion formal

Hecho: Si AP � AX

O� �AP� O� �AX (4.23)

en el sentido de que:

�x O� �AP �y O� �AX (4.24)

tal que x � y.

Dado el conjunto de atributos AP � AX , se define la familia de funciones parciales PAP de

la siguiente manera:

PAP � U � P�AT � �� U � P�AT �

PAP �X�AX� � �Y�AP �(4.25)

donde Y � f�x�AP g para todo X , tal que AP � AX y X � r�AX � O�. De esta manera,

�y Y� �x X � y � x (4.26)

donde:S

y�Y y �S

x�X x � O

Ejemplo: En el ejemplo de la tabla 4.3 que se esta tratando sean:

X � fe�� e�� e�� e�� e�g

AX � fCategoria� Edad� Sueldog y

AP � fCategoria� Sueldog

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 105: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.3. MODELO SINTACTICO DE DATA MINING 93

Entonces se cumple que:

PAP �X� fCategoria� Edad� Sueldog� � �ffe�� e�g� fe�g� fe�g� fe�gg� AP �

Y � ffe�� e�g� fe�g� fe�g� fe�gg

Es facil comprobar como �x X�y Y � x � y

Tambien se puede observar comoSx �Sy � fe�� e�� e�� e�� e�g

4.3 Modelo Sintactico de Data Mining

Una vez estudiada la nocion de operador de Data Mining con una determinada semantica se

va a definir una estructura sintactica abstracta. El objetivo principal sera demostrar que el

modelo semantico es un “modelo” (en el sentido logico) de este modelo sintactico, lo que

permitira validar este ultimo e inducir en el plano semantico las mismas propiedades que se

demuestren en el sintactico

4.3.1 Elementos del modelo

� conjunto finito no vacıo

O � fO��O� � � �Ong (4.27)

� conjunto finito no vacıo:

AT � fA��A� � � �Amg (4.28)

� Una funcion:

� � P�AT� �� P�O� (4.29)

definida de manera tal que puede haber elementos en P�O� sin origen, aunque todo

elemento de P�AT� tiene imagen, en particular:

���� � �� (4.30)

y ademas cumple que

�AX � P�AT�� AY � AX � si ��AX� � Ox y ��AY� � Oy entonces Oy � Ox

� Conjunto G de funciones de generalizacion .

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 106: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.3. MODELO SINTACTICO DE DATA MINING 94

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

(AT) )

(AT)

O

O):

(

(

Figura 4.3: Definicion de la funcion �

4.3.2 Definicion sintactica del operador de generalizacion

Por operador de generalizacion se entiende cualquier funcion parcial que aplique el producto

cartesiano de los conjuntos potencia relativos a O y AT en si mismo:

g � P�O�� P�AT� �� P�O�� P�AT� (4.31)

Si g�X�AX� � �Y�AY� se cumple la siguiente condicion:

Y � X

AY � AX

Y � ��AY�

El dominio de g se denotara por Dom�g� y es el conjunto formado por los pares �X�AX� �

X � ��AX�.

Sea D � f�X�AX�� X � ��AX�g

Entonces g � D �� D.

G denotara al conjunto de todos los operadores de generalizacion sobre D

Sobre D se puede definir un orden parcial que es el inducido por G.

Nota: G es cerrado bajo composicion, que existe siempre ya que, segun la definicion,

Im�g� � Dom�g�

Definicion: Orden inducido por G en D.

Se utilizaran las propiedades del orden inducido por el operador de inclusion:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 107: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.3. MODELO SINTACTICO DE DATA MINING 95

Sean �X�AX�� �Y�AY� D

�Y�AY� � �X�AX� (4.32)

sii

�g G� g�X�AX� � �Y�AY� (4.33)

Demostraremos que esto es realmente una relacion de orden parcial mediante la verificacion

de las propiedades:

Reflexiva:

�X�AX� � �X�AX� (4.34)

sii

�g G � g�X�AX� � �X�AX� (4.35)

Sea g�X�AX� � �X�AX� funcion de identidad y g � D �� D

X es generalizacion de X porque X � X

Antisimetrica:

f�X�AX� � �Y�AY�� �Y�AY� � �X�AX�g implica �X�AX� � �Y�AY� (4.36)

Si �g � D �� D tal que:

g�X�AX� � �Y�AY�

X � Y

AX � AY

y �h � D �� D tal que:

h�Y�AY� � �X�AX�

Y � X

AY � AX

(4.37)

Entonces ocurre que X � Y y AX � AY

Transitiva: Ya que G es cerrado bajo composicion:

X � Y � Y � Z � X � Z

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 108: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.4. POSET DE GENERALIZACION 96

Si �g � D �� D tal que

g�X�AX� � �Y�AY�

y �h � D �� D tal que

h�Y�AY� � �X�AX�

Entonces �g � h � D �� D tal que

g � h�X�AX� � �Z�AZ�

(4.38)

Y � X � Y � Z � Z � X

4.4 Poset de Generalizacion

�P�O�� P�AT���� (4.39)

Este “poset”1 de generalizacion tiene un maximo elemento ���AT��AT� y un mınimo ele-

mento ������ ��.

���AT��AT� es el elemento maximo.

������ �� es el elemento mınimo

Demostracion:

Maximo :

��X�AX� P�O�� P�AT�� �X�AX� � ���AT��AT�

Si �g G � g����AT��AT� � �X�AX�

Lo que siempre es posible ya que X � ��AT� y AX � AT

Mınimo:

��X�AX� P�O�� P�AT�� ������ �� � �X�AX�

Si �g G � g�X�AX� � ������ ��

Lo que siempre se verifica ya que ���� � X y � � AX

1Conjunto parcialmente ordenado

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 109: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.5. MODELO SINTACTICO DE DATA MINING 97

4.4.1 Retıculo de Generalizacion

Definicion : Un retıculo es un conjunto parcialmente ordenado �P��� tal que para cada par

de elementos a,b pertenecientes a el, el lub�a� b�, y el glb�a� b� existen.

Definicion:

�P�O�� P�AT���� (4.40)

es un retıculo.

Demostracion:

�X�AX�� �Y�AY� estan relacionados por la funcion g, con lo que X � Y y AX � AY.

Entonces:

lub��X�AX�� �Y�AY�� � �X � Y�AX � AY� (4.41)

(existe y es un elemento del conjunto)

glb��X�AX�� �Y�AY�� � �X � Y�AX � AY� (4.42)

4.4.2 Retıculo de Generalizacion Etiquetado

Se dice que el retıculo esta etiquetado porque cada lınea de conexion se va a etiquetar de

igual modo que se va a hacer con cada nodo del retıculo.

Las etiquetas seran importantes a la hora de describir la semantica del proceso.

4.5 Modelo Sintactico de Data Mining

M �� �O�AT��� ���AT��AT�� ������ ���G� � (4.43)

4.6 Interpretacion

El dominio del modelo sintactico son sımbolos sin significado. Una asignacion de semantica

consta de una declaracion del conjunto de valores y una funcion de interpretacion que apli-

que la sintaxis en la semantica. Tal funcion debe ser biyectiva para inducir en la semantica el

orden que se ha definido en el dominio sintactico. Se construye para ello un lenguaje formal

donde los elementos del universo semantico se representan por sımbolos de O. Se usaran

nombres para los elementos del universo y para los operadores.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 110: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.6. INTERPRETACION 98

Se introducen nuevos identificadores ahora para todos los elementos de U y se denota:

O � fo�� o�� � � � � ong (4.44)

O es un conjunto finito donde oi O representa un elemento particular de U. Entonces la

semantica del problema se define de la siguiente manera:

� Conjunto de objetos: finito y no vacıo O � fx�� x�� � � � � xng

� Conjunto de atributos no vacıo y finito AT � fA�� A�� � � � � Amg, tal que se cumpla:

O � AT � �

� Funcion r � P�AT �� P�O� �� P�P�O��

� Universo de Data Mining

U � P��fr�Ax�O� � Ax � P�AT �g� (4.45)

Es inmediato ver que

U � P�Imagen�r��

� Funcion I de interpretacion:

I � AT �� AT

�Ai AT� I�Ai� � Ai� Ai AT(4.46)

I � P�O�� P�AT� �� U � P�AT �

I�fo�� � � � � omg�AX� � �f�x��Ax� � � � � �xm�Axg� Ax�(4.47)

� I��� � r

� I�g�, si g es una funcion de generalizacion (del dominio de la sintaxis) es una funcion

de Data Mining (de la semantica).

La cuestion ahora esta en descubrir si existe una aplicacion de la semantica en la sintaxis

tal que permita asignar a un elemento �X�AX� de la semantica uno y solo un elemento de

la sintaxis. Si tal funcion de transformacion existe, entonces se podra inducir la relacion de

orden desde la sintaxis al mundo de la semantica.

Se define tal funcion inversa de la siguiente manera:

I�� � U � P�AT � �� P�O�� P�AT�

I���X�AX� � �X�AX�(4.48)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 111: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.6. INTERPRETACION 99

donde :

�X�AX� � �f�xi�AX � � � � �xq�AXg� AX�

�X�AX� � �foi� � � � oqg�AX�

4.6.1 Orden inducido en la semantica

Tomemos �X�AX�� �Y�AY � U � P�AT �. Definimos una relacion de orden �s de la

siguiente manera:

1. Si �X�AX� � �Y�AY �, �X�AX� �s �Y�AY �

2. Si �X�AX� � �Y�AY �, calculese I���X�AX� y I���X�AY �:

� Si �I���X�AX�� � �I���Y�AY ��,entonces �X�AX� � �Y�AY � si y solo si

�I���X�AX�� � �I���Y�AY ��

� En cualquier otro caso, �X�AX�� �Y�AY � no son comparables.

Es inmediato demostrar que la definicion de�s reune las propiedades de ser un orden parcial.

Definicion: Sean s�� s� U � P�AT �, y �� � P�O�� P�AT� tales que :

I���s�� � �

I���s�� � �

Si s� �s s� entonces es obvio que � � � y entonces existe una funcion g G tal que :

g��� � �.

Entonces se dice que cualquier funcion que aplique s�ens� es una Funcion de Data Mining

. Y se denota por D al conjunto de todas las funciones de Data Mining

I���d� � g, I�g� � d. Esta interpretacion no necesita ser unica puesto que no se esta

definiendo un orden en el conjunto G de los operadores de generalizacion ni en el de las

funciones de Data Mining.

4.6.2 Teorema

Todas las operaciones deData Mining que se estudiaron en el capıtulo anterior son funciones

de generalizacion.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 112: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.7. CONSTRUCCION DINAMICA DEL RETıCULO 100

4.7 Construccion dinamica del retıculo

Sea O un conjunto de objetos.

Sea O el conjunto de objetos del universo de Data Mining, y sea AT el conjunto de atributos

utilizados para describir el conjunto de objetos.

En lo que sigue, se explicara el proceso de construccion de la estructura de retıculo que se

genera con la ejecucion de una consulta de Data Mining.

Cada consulta de Data Mining genera de manera dinamica una cadena que es un retıculo

trivial. En el caso de cada ejecucion se cumple ademas que �X�AX�� �Y�AY� estan rela-

cionados por la funcion g pues de otro modo no existirıa el segundo (se ha generado en la

ejecucion de la consulta de Data Mining). Entonces:

lub��X�AX�� �Y�AY�� � �X � Y�AX � AY� � �X�AX� (4.49)

(existe y es un elemento del conjunto)

glb��X�AX�� �Y�AY�� � �X � Y�AX � AY� � �Y�AY� (4.50)

En el caso de tener mas de una ejecucion, cada rama, como se ha observado, es una cadena

y obviamente, un retıculo. El espacio de todas las posibles ejecuciones es un retıculo con el

orden inducido por la inclusion de conjuntos.

Definicion: Retıculo etiquetado: Un retıculo es un grafo formado por nodos y arcos. Se

dice que el retıculo esta etiquetado si los arcos y nodos han sido etiquetados: ver figura 4.4

Proceso de construccion del retıculo: Se ha visto pues como el retıculo se construye de

manera dinamica con las ejecuciones de operaciones de Data Mining sobre un determinado

conjunto de objetos. A continuacion se muestra la construccion del mismo.

Para la construccion del retıculo se supondra que los objetos del universo han sido ordena-

dos, por ejemplo mediante un atributo que dirija el orden. Este atributo tan solo se utilizara

para marcar el orden, pero no se utilizara para generar clases de equivalencia.

El objetivo de la construccion del retıculo es poder tener un criterio de comparacion en

el proceso de descubrimiento de patrones en datos. Ası, se podra decir que patrones son

mejores que otros cuando sobre unos determinados objetos se aplican unos determinados

operadores mediante la traduccion a la sintaxis de los objetos y atributos que se tengan en

un determinado momento.

Se podra aplicar un coste a cada operador y caso de llegar al mismo resultado por nodos

diferentes se tendra un criterio para decidir que camino es mejor. Esta informacion se podra

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 113: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.7. CONSTRUCCION DINAMICA DEL RETıCULO 101

A

B C

E

F

D

G

f(A) g(A)

l(B) h(C) m(C)

k(E)j(D)

n(F)

p(B)

Figura 4.4: Ejemplo de retıculo etiquetado

utilizar en consultas posteriores de cara a la optimizacion del proceso de descubrimiento. El

retıculo servira asimismo para explicar un determinado usuario el proceso de descubrimien-

to seguido, descompuesto en operaciones basicas, lo que le permitira entender los patrones

obtenidos y le facilitara el proceso de refinado, caso de quererlo realizar. A continuacion, se

lista en pseudocodigo el proceso de construccion de dicho retıculo.

Entrada: Un conjunto de objetos O descrito por medio de un conjunto de atributos AT.

Salida: Un retıculo etiquetado que tiene como nodos la traduccion a la sintaxis de los con-

juntos de objetos y atributos utilizados y como ramas para pasar de un nodo a otro el operador

parametrizado que fue aplicado en cada caso.

1. Construccion del primer nodo: fO��AT�g: Calcular las clases de equivalenciaO�� �AT� .

Tomar como representante canonico de cada clase el menor elemento. Esto es, cada

oj � foj� � � � � omg donde oj es el menor de la clase. Con lo que o� � fo�� � � � � ong.

Por otra parte transformar cada Ai AT en Ai y formar la union de todos ellos. Esto

es, AT� �S

Ai

2. Eleccion de un operador de Data Mining. Elegir el operador determinado. Sea g tal

operador: Trazar un arco desde el nodo anterior y etiquetarlo como g�O��AT��.

3. Proceso iterativo: Calcular �Oi�ATi� � g�Oi���ATi���. Formar ası el nodo i.

4. Mientras no sea el fin de la cadena de operadores, volver al paso de “Eleccion del

operador de Data Mining”.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 114: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.8. RESUMEN 102

Como consecuencia, al final del proceso, se tendra un retıculo que expresara el proceso

llevado a cabo con los datos. Supongase la siguiente secuencia de operadores cuyo resultado

es el retıculo que se muestra en 4.5.

� O � fo�� o�� o�� o�� o�g y AT � fA�� A�� A�g. Para formar el primer nodo tenemos

fO � fo�� o�� o�� o�� o�g , AT � fA��A��A�g

� Eleccion de un operador. Sea �A��A�. Trazese un arco etiquetado �A��A�

�O�AT� y

calculese el resultado de aplicar tal operador.

� Supongase que �A��A��O�AT� � ffo�� o�g� fo�� o�� o�gg� fA��A�g

� Construccion del siguiente nodo como O’, AT’ donde O� � fo�� o�g y AT� �

fA��A�g

� El proceso de construccion seguirıa como se ha mostrado hasta el momento

3O4O5 A1 3A2{ AO

O

}O 2O

}A3A21

}

O’,AT’={ { }{

1

)A3A2( (O,AT)

O3

{

}

O,AT={ }

Figura 4.5: Proceso de construccion del retıculo

4.8 Resumen

A lo largo de este capıtulo se ha estudiado la formalizacion matematica de los operadores de

Data Mining.

Como consecuencia, se ha encontrado una formalizacion matematica de la estructura en-

contrada en el capıtulo anterior para ilustrar su funcionamiento y se ha demostrado que el

conjunto de operadores actuando sobre un cierto conjunto de objetos y con un orden que ha

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 115: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

4.8. RESUMEN 103

sido establecido, tiene estructura de retıculo.

Gracias a esta estructura y al orden establecido, sera ahora posible comparar resultados par-

ciales, lo que servira no solo de cara al usuario que tendra un criterio mas de conocer la

bondad de los patrones obtenidos sino que servira de cara a la implementacion para esta-

blecer pautas a la hora de ejecutar cadenas de operadores. Las propiedades seran utilizadas

por el optimizador de consulta cada vez que tenga que ejecutar una determinada cadena de

operaciones.

En el capıtulo siguiente se valida la formalizacion estudiada mediante algoritmos para el

calculo de reglas discriminantes y de asociacion.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 116: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 5

Validacion de las operaciones del retıculode las operaciones de Data Mining

Indice General

5.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.2 Traduccion de las operaciones basicas de la teorıa de Rough Sets aoperadores del modelo semantico . . . . . . . . . . . . . . . . . . . . . 105

5.2.1 Operador de calculo de la region lower . . . . . . . . . . . . . . 105

5.2.2 Operador para el calculo de la region upper . . . . . . . . . . . . 107

5.2.3 Operador para el calculo de la region lımite . . . . . . . . . . . . 109

5.3 Generalizacion de atributos . . . . . . . . . . . . . . . . . . . . . . . . 110

5.4 Algoritmo Apriori expresado como operadores de Data Mining . . . . 112

5.5 Discusion de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . 114

5.6 Estudio de la interpretacion del modelo . . . . . . . . . . . . . . . . . 115

5.7 Ejemplos ilustrativos . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

5.7.1 Calculo de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . 118

5.7.2 Calculo de la region “lower” . . . . . . . . . . . . . . . . . . . . 121

5.7.3 Aplicacion de Apriori al modelo expuesto . . . . . . . . . . . . . 127

5.8 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.9 Aplicacion Practica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.10 Implementacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

5.1 Introduccion

En el capıtulo anterior se ha definido un modelo sintactico y se ha mostrado como el modelo

semantico de Data Mining es una instancia particular del mismo. En ese mismo capıtulo, se

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 117: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2. TRADUCCION DE LAS OPERACIONES BASICAS DE LA TEORıA DE ROUGHSETS A OPERADORES DEL MODELO SEMANTICO 105

ha establecido la manera de poder pasar del modelo semantico al sintactico y se han expues-

to las reglas a cumplir por los operadores para que estos puedan ser denominados de Data

Mining.

De la misma manera, se ha demostrado como la estructura matematica subyacente (retıculo)

se genera de manera dinamica con cada ejecucion de operaciones de Data Mining sobre

un determinado conjunto de objetos. En el presente capıtulo se validan las ideas anteriores

mediante ejecuciones de dos algoritmos mas significativos de Data Mining: Apriori y al-

goritmos de la teorıa de conjuntos aproximados. Para ello en primer lugar se estudia como

expresar dichos algoritmos como operadores del modelo, con lo que se podran extender a

ellos las propiedades del modelo sintactico, con posterioridad se muestra un ejemplo de eje-

cucion de dichos algoritmos sobre un conjunto de datos donde se muestra como el retıculo

se va generando en cada ejecucion.

5.2 Traduccion de las operaciones basicas de la teorıa deRough Sets a operadores del modelo semantico

En capıtulos anteriores se ha estudiado como la teorıa de los Rough Sets se puede aplicar

al descubrimiento de reglas caracterısticas y/o discriminantes en bases de datos. A conti-

nuacion, se expresan las operaciones basicas como operadores de Data Mining y se extraen

algunas consecuencias de aplicacion en la futura implementacion.

5.2.1 Operador de calculo de la region lower

5.2.1.1 Significado intuitivo

Dado un conjunto de objetos descrito por medio de un conjunto particular de atributos, el

operador de calculo de la region lower identifica aquellos objetos que se pueden clasificar

con seguridad como pertenecientes a un subconjunto de objetos.

En el ejemplo de la figura 5.1, donde los ejes �A�B� representan dos posibles atributos y sus

valores, se puede observar, por ejemplo, que x� toma como valores � para A y � para B.

Se puede observar en el grafico que de los objetos donde D � tan solo el x se puede

describir con exactitud mediante los atributos A, B (A � � B � ) y por tanto tan solo el

pertenece a la region lower.

Por otra parte, el elemento x� no se puede describir, pues, observese, que x� tiene los mismos

valores que el y, sin embargo, no pertenece a la region donde D � .

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 118: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2. TRADUCCION DE LAS OPERACIONES BASICAS DE LA TEORıA DE ROUGHSETS A OPERADORES DEL MODELO SEMANTICO 106

A

B

X1

X2

X3 X4

X5 X15

X9

X10X16

X14X13

X11

X6

X7

X12

X8

X17

D = 1

Figura 5.1: Ejemplo de Rough Sets

5.2.1.2 Definicion formal

Se define una familia de funciones lC , donde C representa al subconjunto de objetos (con-

cepto) cuya region lower se calcula con respecto al descriptor AX :

lC � U � P�AT � �� U � P�AT �

lC�X�AX� � �fx X � x � Cg� AX�(5.1)

X � r�U�AX�

donde :

C � O son los elementos que pertenecen al concepto cuya region lower con respecto a la

relacion de equivalencia inducida por AX � AT va a ser calculada.

X es un subconjunto de las clases de equivalencia inducidas por AX en O � Y � O� �AX .

Y es el conjunto de clases de equivalencia que se han seleccionado.

El operador de calculo de la region lower es un operador deDataMining puesto que satisface

las condiciones definidas para tales operadores en el capıtulo anterior.

Propiedad:

Si lC�X�AX� � �Y�AY �, entonces Y � X

Ejemplo:

Si se toma la tabla 5.1:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 119: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2. TRADUCCION DE LAS OPERACIONES BASICAS DE LA TEORıA DE ROUGHSETS A OPERADORES DEL MODELO SEMANTICO 107

ID A B Dx� 0 0 0x� 0 1 0x� 0 1 1x� 0 2 1x� 0 2 0x 1 0 0x� 1 0 1x 1 1 1x� 1 2 1x� 1 2 0x�� 2 2 0x�� 2 1 1x�� 2 1 0x�� 2 2 0x�� 0 3 0x�� 1 3 0x� 2 3 0

Tabla 5.1: Tabla de ejemplo para los operadores de Rough Sets

X � ffx�g� fx�g� fx�g� fx�g�

fx�g� fxg� fx�g� fxg�

fx�g� fx� g� fx��g� fx��g�

fx��g� fx��g� fx��g� fx��g�

fx�gg

AX � fA�B�Dg

(5.2)

Si se calcula la region lower de aquellos elementos para los que D � se tiene:

lx��x��x��x��x��x���X�AX� � �ffxgg� AX� (5.3)

5.2.2 Operador para el calculo de la region upper

5.2.2.1 Significado intuitivo

Dado un conjunto de objetos descrito por medio de un conjunto particular de atributos, el

operador de calculo de la region upper identifica aquellos objetos que se pueden clasificar

con alguna probabilidad como pertenecientes a un subconjunto de objetos.

Tomando una vez mas el ejemplo de la tabla 5.1 se puede observar que el elemento x

se puede clasificar exactamente como perteneciente a los elementos donde D � . Sin

embargo, no se puede decir lo mismo para los elementos x�, x�, x�, x�, x, x�, x�, x� , x��,

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 120: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2. TRADUCCION DE LAS OPERACIONES BASICAS DE LA TEORıA DE ROUGHSETS A OPERADORES DEL MODELO SEMANTICO 108

x��. Para definir los objetos de estas caracterısticas en la teorıa de Rough Sets, se usa el

concepto de region upper que es de modo intuitivo, el conjunto de aquellos elementos que

“posiblemente” pertenecen al conjunto que se esta tratando de definir.

5.2.2.2 Definicion formal

Se define la familia de funciones uC , donde C representa el concepto cuya region upper se

va a calcular con respecto al descriptor AX :

uC � U � P�AT � �� U � P�AT �

uC�X�AX� � �fx X � x � C � �g� AX�(5.4)

X � r�U�AX�

donde:

x � O son los elementos del concepto cuya region upper se va a calcular con respecto a las

relacion de equivalencia inducida por AX � AT .

X es un subconjunto de las clases de equivalencia inducidas por AX en O � X � O� �AX .

Z es el conjunto de clases de equivalencia que se han seleccionado por tener interseccion no

vacıa con el concepto.

Se observa nuevamente, que esta familia de funciones cumple las caracterısticas de ser un

operador de Data Mining.

Se ilustra nuevamente, el concepto del operador de calculo de la region upper con un ejem-

plo.

Ejemplo:

Considerando la tabla 5.1 se tiene:

X � ffx�g� fx�g� fx�g� fx�g�

fx�g� fxg� fx�g� fxg�

fx�g� fx� g� fx��g� fx��g�

fx��g� fx��g� fx��g� fx��g�

fx�gg

AX � fA�B�Dg

(5.5)

ux��x��x��x��x��x���X�AX� � �ffx�g� fx�g� fx�g� fxg� fx�g� fx��gg� AX� (5.6)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 121: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.2. TRADUCCION DE LAS OPERACIONES BASICAS DE LA TEORıA DE ROUGHSETS A OPERADORES DEL MODELO SEMANTICO 109

5.2.3 Operador para el calculo de la region lımite

5.2.3.1 Significado intuitivo

En la teorıa de Rough Sets, se considera tambien una nueva region que se denomina la region

lımite o frontera que identifica a todos aquellos objetos acerca de los que es imposible decidir

si pertenecen al concepto o a su complementario (ver epıgrafe 5.1)

5.2.3.2 Definicion formal

Se define nuevamente una familia de funciones bC ,donde C representa el concepto que se

intenta caracterizar con respecto al conjunto de atributos AX de la siguiente manera:

bC � U � P�AT � �� U � P�AT �

bC�X�AX� � �Y�AX�(5.7)

Y � fz X � z � C � y � C � �g

X � r�U�AX�

donde:

x � O son los elementos cuya region frontera con respecto a la relacion de equivalencia

inducida por AX � AT va a ser calculada.

X es un subconjunto de las clases de equivalencia inducidas por AX en O � X � O� �AX .

Z es el conjunto de clases de equivalencia seleccionadas para formar la region frontera.

Nuevamente se demuestra que el operador toma la forma de los operadores de Data Mining

vistos en la seccion anterior y se ilustra su comportamiento con un ejemplo.

Ejemplo:

Tomando otra vez el ejemplo anterior se tiene para el calculo de la region del lımite:

X � ffx�g� fx�g� fx�g� fx�g�

fx�g� fxg� fx�g� fxg�

fx�g� fx� g� fx��g� fx��g�

fx��g� fx��g� fx��g� fx��g�

fx�gg

AX � fA�B�Dg

(5.8)

bx��x��x��x��x��x���X�AX� � �ffx�g� fx�g� fx�g� fx�g� fx��gg� AX� (5.9)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 122: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.3. GENERALIZACION DE ATRIBUTOS 110

5.3 Generalizacion de atributos

Como resultado de aplicar una jerarquıa, algunos valores de atributos cambiaran. Las je-

rarquıas se pueden expresar como condiciones parciales sobre los valores de cada atributo.

El resultado es la definicion de relaciones de equivalencia sobre los valores de los atributos.

En cualquier caso, cuando se aplican jerarquıas el atributo se transforma. Por ello, se ha

considerado a lo largo de todo este trabajo, que la operacion de generalizacion de valores de

atributos se puede ver como dos operadores: El de transformacion de los valores del atributo

para dar lugar a un nuevo atributo, y el de generalizacion propiamente dicho que es el que

actua al proyectar sobre el atributo generalizado. Se estudian tres situaciones de generaliza-

cion de valores, que se observara son casos particulares de los mismos operadores de Data

Mining ya estudiados:

� Eliminacion de atributos. Es el caso mas simple de generalizacion. Consiste en una

simple proyeccion sobre los atributos deseados. Por ejemplo, se tiene una base de

datos objetos identificados por el color la intensidad y la forma. Una posible manera

de generalizar es eliminar la intensidad en la descripcion de los objetos. Como se

observa, es un caso particular del operador de proyeccion que se expuso en el capıtulo

anterior.

� Supresion de valores de atributos en dominios finitos: La generalizacion en este caso

consta de dos fases: En un primer lugar se transforma el atributo en otro cuyo dominio

son los valores generalizados (se estudio este operador como perteneciente a la fase de

preprocesado y limpieza de la base de datos), y en una segunda fase (mientras se esta

ejecutando el algoritmo deData Mining), se proyecta sobre el atributo deseado. Como

ejemplo, supongase que se tiene la edad como atributo para describir los empleados de

una base de datos. Una posible manera de generalizar serıa transformando los valores

de este atributo de manera se hicieran rangos con las mismas, por ejemplo, baja, media

y alta.

� Discretizacion de valores continuos (dominios infinitos). Es un caso particular del an-

terior, donde el atributo cuyos valores se generalizan toma los mismos en un dominio

infinito, pasando despues de la transformacion a tener un dominio discreto. Las dos

fases que se definıan, se pueden considerar tambien ahora.

� Aplicacion de una jerarquıa sobre un atributo para generalizar sus valores. Un opera-

dor de fase de preparacion de datos, tomara como entrada la base de datos, el nombre

del atributo a generalizar, el nivel de generalizacion deseado y la jerarquıa en cuestion.

Como resultado se devolvera una nueva base de datos que contendra un atributo mas

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 123: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.3. GENERALIZACION DE ATRIBUTOS 111

Cod Emp Categorıa Categorıa disc Edad Sueldoe� Alta Alta 40 1000e� Alta Alta 50 1000e� Media Media 40 1000e� Media Media 30 600e� Bajo Media 50 600

Tabla 5.2: Ejemplo de una posible tabla de Empleados

con las ocurrencias del atributo generalizado. En fase de Data Mining, si tal atributo

quisiera ser usado nuevamente tan solo restara proyectar sobre el.

� Generalizacion de mas de un atributo a la vez. Se denomina ası a la transformacion que

consiste en la definicion de un nuevo atributo tomando como base mas de un atributo

de la base de datos original. Nuevamente, el resultado de aplicar tal transformacion

sera un nuevo atributo que si se desea utilizar en la fase de Data Mining, no habra que

hacer mas que proyectar sobre el.

Observese que esta division en dos operadores permite tener disponibles cuando empieza la

fase de Data Mining distintas generalizaciones y/o discretizaciones del mismo atributo y ele-

gir con posterioridad la que mas convenga, dependiendo de las caracterısticas del conjunto

de objetos que se este analizando.

Se demuestra de esta manera, que segun el enfoque de este estudio, cualquier generalizacion

se puede tratar como operadores de Data Mining como los expuestos en el capıtulo anterior

con lo que los resultados obtenidos se aplican tambien al caso de la generalizacion y/o dis-

cretizacion.

Se ilustra el comportamiento de los operadores expuestos con un ejemplo:

En la tabla 5.2 el atributo Categorıa dis representa una posible generalizacion del atributo

categorıa de la base de datos de empleados que se ha utilizado ya en este trabajo. Y la opera-

cion de generalizar tomando en cuenta sus valores no supone sino proyectar sobre el atributo

generalizado de la siguiente manera:

Gf�X� fCategoria� Edad� Sueldog� �

�Gf�ffe�g� fe�g� fe�g� fe�g� fe�g�

fCategoria� Categoria disEdad� Sueldogg� �

�PCategoria dis�Edad�Sueldo�ffe�g� fe�g� fe�g� fe�g� fe�g�

fCategoria� Categoria disEdad� Sueldogg� �

��ffe�g� fe�g� fe�g� fe�g� fe�g� fCategoria� Edad� Sueldogg�

(5.10)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 124: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.4. ALGORITMO APRIORI EXPRESADO COMO OPERADORES DE DATA MINING 112

E A Adisc Be� 0.125 Baja 40e� 0.230 Media 50e� 0.125 low 40e� 0.315 Alta 30e� 0.234 Media 50e 0.321 Alta 50

Tabla 5.3: Tabla con valores continuos

Observese un ejemplo en el que se generaliza un atributo continuo en lugar de uno discreto.

De igual manera, primero se tiene que generar el atributo generalizado y luego proyectar

sobre el. Se ilustra con la tabla 5.3.

Y una vez se tiene el atributo discretizado, tan solo se tendra que proyectar como se expli-

caba de esta forma:

Gf�ffe�g� fe�g� fe�g� fe�g� fe�g� fe�ggfA�AdiscBg� �

�PAdisc�B�ffe�g� fe�g� fe�g� fe�g� fe�g� fe�ggfA�AdiscBg� �

��ffe�� e�g� fe�� e�g� fe�� egg� fAdisc� Bg�

(5.11)

Todo esto nos lleva a definir la operacion de generalizacion de la siguiente manera:

Definicion formal de la operacion de generalizacion Gf�A�� A AT

Si f es una funcion que transforma un atributo en otro atributo

f � AT �� AT (5.12)

entonces la operacion de generalizacion es la proyeccion sobre el atributo generalizado:

Gf�A� � Pf�A� (5.13)

5.4 Algoritmo Apriori expresado como operadores de DataMining

El algoritmo Apriori se utiliza para la extraccion de reglas de asociacion. El problema de

calculo de reglas de asociacion se puede dividir en tres subproblemas:

1. Generacion de la tabla que contiene las transacciones: Se genera una tabla relacional

binarizada en la que cada atributo representa un objeto y en que cada fila representa una

transaccion. Es importante destacar que esta representacion es la mas habitual y puede

resultar eficiente. Por otra parte, cualquier tabla es susceptible de ser transformada en

una tabla binarizada.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 125: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.4. ALGORITMO APRIORI EXPRESADO COMO OPERADORES DE DATA MINING 113

2. Encontrar el conjunto de objetos (items) mas frecuentes en la tabla que contiene tran-

sacciones.

3. Generar las reglas deseadas de acuerdo a las asociaciones mas frecuentes.

De los subproblemas estudiados, puede observarse que cada uno pertenece a una de las fases

del proceso de KDD.

Tan solo el segundo pertenece a la que denominabamos fase de Data Mining, pues el tercero

pertenece a la de presentacion e interpretacion de resultados, puesto que los patrones han

sido obtenidos con anterioridad y el primero es la binarizacion de la tabla, que se realizara

en fase de preprocesado de los datos.

5.4.0.3 Fase de Data Mining del algoritmo Apriori

Esta fase, para comenzar, necesita una primera lectura de la base de datos en la que se

cuentan las ocurrencias de cada objeto, para generar los objetos con mas ocurrencias en la

base de datos y a partir de ahı generar el segundo conjunto de objetos. A partir de ahı, el

algoritmo va generando las agrupaciones de dos, tres, cuatro, � � � objetos hasta llegar a las

combinaciones mas frecuentes.

El algoritmo consta de dos operaciones que se realizan de manera iterativa hasta encontrar

los patrones que se ajusten a los parametros suministrados por el usuario:

� Generacion de las agrupaciones de objetos: A partir de la agrupacion obtenida en la

fase anterior:

– Eliminar todas aquellas agrupaciones cuyo soporte sea menor que el requerido

por el usuario.

– Generar agrupaciones de un elemento mas a partir de las agrupaciones anteriores.

Se debe tener en cuenta que las nuevas agrupaciones no deben contener como

subconjunto ninguna de las agrupaciones eliminadas en pasos anteriores.

� Recorrer la base de datos para calcular cuantas transacciones dan soporte a cada una

de las agrupaciones calculadas en el paso anterior.

Una vez se ha estudiado el comportamiento del algoritmo, es inmediata la traduccion a ope-

radores de Data Mining. Hay que destacar que tan solo se tienen que traducir aquellas

operaciones que suponen cambios en la base de datos de entrada. Por tanto, las operaciones

de generacion de agrupaciones a partir de las agrupaciones anteriores es un simple proceso

que no involucra a la base de datos y no se tiene que traducir.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 126: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.5. DISCUSION DE RESULTADOS 114

La operacion donde la base de datos esta involucrada y que tendra que ser traducida a opera-

dores es donde la base de datos se explora para contar el soporte de cada agrupacion. En esta

fase, hay que destacar que se pueden eliminar todas aquellas filas que no tengan ninguna de

las combinaciones que se esten calculando, de igual manera, todos aquellos atributos que no

esten en la union de las agrupaciones tambien podran ser eliminados.

Es obvio ver que la operacion de cuenta no supone cambio en la base de datos y que las

operaciones de eliminacion de filas y/o atributos se traducen directamente a los operadores

de seleccion y proyeccion que se estudiaban en el capıtulo anterior. Con esto, el algoritmo

Apriori se traduce a operadores de Data Mining y se podran aplicar los resultados que se

veıan en el capıtulo anterior.

5.5 Discusion de resultados

En este capıtulo se ha expuesto la traduccion de algunos de los algoritmos mas representa-

tivos de Data Mining a los operadores que se estudiaban en el capıtulo anterior. A conti-

nuacion, se analiza para que sirve esta traduccion y de que se pueden beneficiar las futuras

implementaciones de todos estos resultados.

En el capıtulo anterior se ha presentado un modelo sintactico sobre el que se ha definido un

orden y se ha demostrado que un determinado conjunto de objetos con el orden ası definido

tiene estructura de retıculo. Posteriormente, se ha establecido una manera de traducir opera-

ciones con una determinada semantica a la sintaxis. Con lo que todas las operaciones sobre

conjuntos de datos que se puedan traducir al modelo sintactico, representaran una interpre-

tacion de la sintaxis y se les podra aplicar las propiedades de la misma.

Entre las propiedades de las que serıa bueno poder sacar provecho, destaca la definicion de

un orden. Este orden inducido en la semantica se puede traducir a una ordenacion de los

resultados obtenidos al aplicar ciertos operadores a los datos. Esto es, se podrıa establecer

un orden sobre los patrones obtenidos al aplicar una serie de operadores a un determinado

conjunto de objetos, en definitiva se podrıan ordenar los patrones obtenidos como resultado

de ejecutar consultas de Data Mining sobre los datos.

El orden se ha establecido a nivel de operaciones muy basicas y no de algoritmos completos.

Esto ofrece la ventaja de poder ordenar resultados parciales al mismo tiempo que permite

entender perfectamente el proceso, cosa que serıa mas complicada si se estuviera analizando

a un nivel de granularidad mas pequeno.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 127: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.6. ESTUDIO DE LA INTERPRETACION DEL MODELO 115

5.6 Estudio de la interpretacion del modelo

En lo que sigue, se traducen a bases de datos los elementos del modelo.

Lo primero que se define es un conjunto:

O � fo�� o� � � � ong (5.14)

cuya interpretacion es

I�fo�� � � � � omg� AX� � �f�xi�AX� � � � � �x��AXg� AX� (5.15)

donde xi podrıan ser los objetos de una determinada base de datos

AT � fA��A� � � �Amg (5.16)

(5.17)

con la funcion de interpretacion:

I � AT �� AT (5.1

�Ai AT� I�AT� � Ai AT (5.1

(5.2

Esto es, AT podrıa ser el conjunto de atributos utilizados para describir los objetos de la base

de datos Entonces, los primeros sımbolos son los representantes de las clases de equivalencia

y que los segundos se traducen a nombres de atributos. Con esto, los primeros sımbolos

indican los representantes de las clases de equivalencia inducidos por los atributos de un

determinado universo de objetos O.

El hecho de que se este hablando de representantes de clases de equivalencia, quiere decir

que en ningun momento se van a tener tuplas duplicadas, esto es, todos los objetos que

se ajusten a un determinado patron quedaran representados por ese patron y sera la unica

informacion que se guardara como resultado de aplicar un operador a una base de datos con

el fin de obtener patrones.

A continuacion, se definıa una funcion que es a la que se denomina funcion de generalizacion

y que es de la forma:

g � P�O�� P�AT� �� P�O�� P�AT� (5.21)

El significado de esta funcion traducida a la semantica de bases de datos es, simplemente, una

funcion que toma como entrada un conjunto de clases de equivalencia, esto es, un conjunto

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 128: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.6. ESTUDIO DE LA INTERPRETACION DEL MODELO 116

de elementos de una base de datos y un conjunto de atributos, los que sirven para formar

tales clases de equivalencia. Y, como resultado, devuelve otro conjunto de objetos descritos

por medio de otro conjunto de atributos.

Se ve claramente que esto es lo que hace cualquiera de los operadores que se han estado

estudiando a lo largo del proceso de descubrimiento en bases de datos. A continuacion, para

poder definir el retıculo se define un orden sobre el conjunto de objetos de entrada de la

funcion. El orden lo induce la funcion de generalizacion en P�O�� P�AT� :

�Y�AY � � �X�AX� (5.22)

sii

�g G g�X�AX� � �Y�AY � (5.23)

(5.24)

El orden establece que un conjunto de objetos (patrones) es menor que otro si y solamente si

existe un operador (una funcion) para pasar de uno a otro. Con esto, se establece un criterio

que nos permite ordenar conjuntos de patrones obtenidos al aplicar operadores a un conjunto

de objetos.

No obstante, en un retıculo con un orden parcial definido como el que se ha definido en el

modelo sintactico, cualesquiera dos elementos del retıculo no tienen por que ser compara-

bles. Ademas, se tiene que poder pasar de manera unıvoca de la semantica a la sintaxis para

poder establecer tales resultados.

Para ello, se estudiaba al final de la definicion del establecimiento del modelo la funcion para

pasar de una determinada semantica a la sintaxis que se examina a continuacion en detalle.

Tal funcion se define:

I�� � U � P�AT � �� P�O�� P�AT�

I���X�AX� � �X�AX�(5.25)

donde :

�X�AX� � �f�xi�AX � � � � �xq�AXg� AX� (5.26)

�X�AX� � �foi� � � � oqg�AX� (5.27)

Y esta funcion ofrece una manera para calcular el orden en la semantica, que es en definitiva

en lo que se esta interesado. Sea �X�AX�� �Y�AY � U � P�AT �. La relacion de orden

�s queda definida de la siguiente manera:

1. Si �X�AX� � �Y�AY �, �X�AX� �s �Y�AY �

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 129: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.6. ESTUDIO DE LA INTERPRETACION DEL MODELO 117

2. Si �X�AX� � �Y�AY �, calculese I���X�AX� y I���X�AY �:

� Si �I���X�AX�� � �I���Y�AY ��,entonces �X�AX� � �Y�AY � si y solo si

�I���X�AX�� � �I���Y�AY ��

� En cualquier otro caso, �X�AX�� �Y�AY � no son comparables.

El significado de este orden es el siguiente: Para comparar dos patrones, lo primero que se

tiene que hacer es ver si son iguales pues en tal caso, es obvio el resultado. En el caso de que

no sean iguales, la siguiente lınea establece que hay que calcular su traduccion al mundo de

la sintaxis. Si las interpretaciones son distintas, un punto importantısimo a tener en cuenta,

que caso de no hacerlo, todo el razonamiento serıa incorrecto. Es necesario saber si las in-

terpretaciones inversas son distintas para poder establecer la aplicacion unıvoca del mundo

de la semantica a la sintaxis. Al estar tratando con representantes de clases de equivalencia,

puede ocurrir que de universos semanticos diferentes resulte la misma interpretacion al mun-

do de la sintaxis. Tales patrones no son comparables por provenir de universos de partida

diferentes. En cualquier otro caso, el orden es el establecido en la sintaxis.

Observese la importancia de que la aplicacion sea unıvoca: Permite establecer un criterio

por el que algunos patrones no son comparables. Esto no es una restriccion sino, mas bien,

es un criterio que permite dar consistencia al proceso de descubrimiento. Cuando se esten

ejecutando consultas de Data Mining sobre una determinada base de datos, los resultados

de consultas sobre los mismos objetos descritos con el mismo conjunto de atributos seran

comparables. Un sistema construido con tal criterio podra decir que patrones son mejores

o peores que otros disponiendo tambien de un criterio para decir a un usuario cuando dos

patrones no son comparables. En el momento en que la ejecucion de un operador suponga la

eliminacion de atributos y/o de objetos se abrira una nueva rama de proceso y los resultados

seran comparables a partir de esa rama.

Gracias a la construccion del retıculo inherente por haber demostrado que se pueden tradu-

cir los algoritmos mas representativos a operadores de generalizacion, se permite establecer

ramas de proceso (las ramas del retıculo teorico que se podrıa estar calculando). Estas ramas

se podrıan visualizar al usuario, con lo que este podrıa de manera grafica estudiar el proceso

que se ha seguido con los datos fruto de la ejecucion de una determinada consulta y le faci-

litarıa la labor de refinado caso de que esta se fuera a realizar.

A continuacion, se ilustra todo lo expuesto con ejemplos.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 130: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 118

5.7 Ejemplos ilustrativos

En esta seccion se va ilustrar la construccion del retıculo tanto por aplicacion de los algorit-

mos basados en la teorıa de los Rough Sets como por aplicacion del algoritmo Apriori.

5.7.1 Calculo de reglas

Supongase una tabla de una base de datos descrita por medio de los atributos A, B y D.

Supongase tambien que en fase de preprocesado el atributo B ha sido sometido a labores

de generalizacion lo que ha dado como resultado un atributo que se ha denominado BG.

Como consecuencia se tiene la tabla que se observa en la figura 5.2. En la figura se ha

hecho una representacion grafica de la tabla que servira para ilustrar los resultados que se

van a ir obteniendo. Supongase ahora que se desea extraer reglas discriminantes para el

����������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������

B0 1 2 3

K BA

167 0168 0

207 0

243 1

284 1

285 1

338 1

339 1

1385

386 1

394 1

2

490 2

440

587 3

01

63 0

104 0

109 0

110 0

586 3

DG

0

0

0

0

1

10

0

1

1

1

1

0

0

1

1

1

1

0

0

23

3

1

1

2

2

3

3

3

3

1

1

0

0

0

2

2

2

0

22

2

1

1

2

2

2

2

1

1

0

0

0

2

2

2

0

2

2

0B

A

0

1

2

3

B0 1G 2

Figura 5.2: Tabla relacional a la que se ha anadido un atributo generalizado

concepto definido medianteD � aplicando la metodologıa de los Rough Sets. Una posible

secuencia de operaciones serıa:

� Eliminacion de claves.

� Calculo de un reducto.

� Calculo de la region lower.

Para poder construir el retıculo se tiene que construir el primer nodo que es sobre el que se

empiezan a aplicar operadores.

Se tienen 667 objetos identificados por su clave y descritos por el conjunto de atributos antes

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 131: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 119

expuesto. Se construye el primer nodo realizando la interpretacion en el modelo.

Se tiene:

O � f� � �� � � � � ���g

AT � fK�A�B�BG� Dg(5.28)

Como consecuencia se calcula el primer nodo 0 � O �AT donde:

O � fo�� o�� o� � � � � o�g

AT � fK�A�B�BG�Dg(5.29)

Siguiendo la secuencia de operaciones anteriormente expuesta sobre la tabla de la figura 5.2,

se obtiene el siguiente resultado.

5.7.1.1 Eliminacion de claves

Esta operacion se puede expresar en las operaciones del modelo como:

PA�B�BG�D�O �AT � (5.30)

En nuestro caso se tiene que esta operacion da como resultado el nodo 1 � O��AT�

O� � fo�� o�� o� � � � � o��g

AT� � fA�B�BG�Dg(5.31)

Estos valores se calculan proyectando sobre todos los atributos menos la clave, volviendo a

calcular las clases de equivalencia y calculando la interpretacion en el modelo. Se puede ver

el resultado en la figura 5.3

5.7.1.2 Calculo de un conjunto reducido de elementos

Se llevarıa a cabo la ejecucion del algoritmo, que estuviera disponible, para la eliminacion

de elementos redundantes. En cualquier caso, el resultado es expresable como el operador

de proyeccion. En nuestro caso el atributo generalizado resulta ser redundante con lo que se

tiene que eliminar en este paso. Entonces la operacion del modelo que se tiene que ejecutar

es:

PA�B�D�O��AT�� (5.32)

Y como resultado se tiene la tabla que se observa en la figura 5.4. Al realizar la interpretacion

en el modelo se obtiene el nodo 4 � O��AT� donde:

O� � fo�� o�� o� � � � � o��g

AT� � fA�B�Dg(5.33)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 132: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 120

����������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������

K B BA

167 0168 0

207 0

243 1

284 1

285 1

338 1

339 1

1385

386 1

394 1

2

490 2

440

587 3

01

63 0

104 0

109 0

110 0

586 3

DG

0

0

0

0

1

10

0

1

1

1

1

0

0

1

1

1

1

0

0

23

3

1

1

2

2

3

3

3

3

1

1

0

0

0

2

2

2

0

22

2

1

1

2

2

2

2

1

0

2

2

2

0

2

2

0

0

1

O

O

O

O

O

O

O

O

A B B D CntG

0 0 0 0 63

0 1 1 0 27

0 1 1 1 13

0 2 2 0 6

0 2 2 1 58

0 3 2 0 40

0 3 2 1 5

1 0 0 0 16

1 0 0 1 14

1 1 1 1 42

1 2 2 1 54

1 3 2 0 47

1 3 2 1 9

2 0 0 0 42

2 0 0 1 4

2 1 1 1 51

2 2 2 0 22

2 2 2 1 26

2 3 2 0 48

3 0 0 0 2

3 1 1 0 31

3 1 1 1 27

3 2 2 0 39

3 3 2 0 41

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

0

1

Figura 5.3: Eliminacion de claves

������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������

O

O

O

A B B D CntG

0 0 0 63

0 1 1 0 27

1

0

1 1 13

0 2 2 0 6

0 2 2 1 58

0 3 2 0 40

0 3 2 1 5

1 0 0 0 16

1 0

0

1 14

1 1 1 1 42

1 2 2 1 54

1 3 2 0

O

3

0

2 1 9

2 0 0 0 42

2 0 0 1 4

2 1 1 1 51

2 2 2 0 22

2 2 2 1 26

2 3 2 0 48

3 0 0 0 2

3 1 1 0 31

3 1 1 1 27

3 2 2 0 39

3 3 2 0 41

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

47

17

18

19

20

21

22

23

24

O

1

1

O

O

O

O

O

O

O

O

O

O

D Cnt

0 63

0 27

1 13

0 6

1 58

0 40

1 5

0 16

1 14

1 42

1 54

0 47

1 9

0 42

1 4

1 51

0 22

1 26

0 48

0 2

0 31

1 27

0 39

0 41

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

O

16

4A B

0 0

0 1

0 1

0 2

0 2

0 3

0 3

1 0

1 0

1 1

1 2

1 3

1 3

2 0

2 0

2 1

2 2

2 2

2 3

3 0

3 1

3 1

3 2

3 3

Figura 5.4: Calculo de un conjunto reducido de atributos

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 133: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 121

5.7.2 Calculo de la region “lower”

Una vez realizadas las operaciones anteriores, todo lo que queda para el calculo de las reglas

discriminantes es realizar el calculo de la region lower. Como se observaba al principio de

este capıtulo, esta operacion, se puede expresar como operador de Data Mining del modelo.

Puesto que se quieren reglas discriminantes para los objetos donde D � , la operacion que

se tiene que ejecutar es:

lD���O��AT�� (5.34)

Como resultado se tiene la tabla que se observa en el figura 5.5. Al calcular la interpretacion

���������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������������������

O

O

O

D Cnt

1

63

0 27

1

0

0

13

58

0 40

1 5

0 16

1 14

6

42

1 54

47

1

1 9

0 42

1 4

1 51

0 22

1 26

0 48

0 2

0 31

1 27

0

39

0 41

O

O

O

O

O

0

O

O

O

O

O

O

O

O

O

O

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

O

17

18

19

20

21

22

23

O

O

O

O

16

4A B

0 0

0 1

0 1

0 2

0 2

0 3

0 3

1 0

1 0

1 1

1 2

1 3

1 3

2 0

2 0

2 1

2 2

2 2

2 3

3 0

3 1

3 1

3 2

3 324

D Cnt

1 42

1 54

1 51

O

O

O

10

11

16

O3

A B

1 1

1 2

2 1

Figura 5.5: Resultado de aplicar lower a la tabla de la figura anterior

en el modelo se tiene ahora 3 � O��AT� donde

O� � fo� � o��� o�g

AT� � fA�B�Dg(5.35)

Como consecuencia de esta operacion ya se tiene los patrones o reglas discriminantes que

en este caso son:

If A � � B � �� D �

If A � � B � �� D �

If A � � B � �� D �

Los resultados se entregaran al usuario que realizo la consulta que decidira si realizar una

nueva consulta o no.

Se observa que la consulta realizada hasta el momento ha generado una cadena y por tanto

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 134: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 122

un retıculo (ver figura 5.6). En ella se tienen los nodos:

� � ffo�� o�� o�� ���� o�g

fK�A�B�D�BGgg

� ffo�� o�� ���� o��g

fA�B�D�BGgg

� ffo� � o��� o�g

fA�B�D�BGgg

� � ffo� � o��� o�g

fA�B�Dgg

� ffo�� o�� ���� o��g

fA�B�Dgg

(5.36)

Supongamos ahora para el ejemplo que el usuario quiere ver que reglas hubiera obtenido

1

P (0)A B D B

Eliminación de Claves

G

4

3

P (1)A B D

Reducto

Lowerl (4)

D=1,100%

0

Figura 5.6: Cadena generada en una ejecucion

si hubiera generalizado los valores del atributo B. Recuerdese, por otra parte, que el usuario

no tiene por que saber si tal generalizacion existe precomputada en el sistema o no. Caso de

realizar la generalizacion, los posibles pasos serıan:

� Eliminacion de claves.

� Generalizacion.

� Calculo del conjunto reducido.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 135: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 123

� Calculo de la region lower.

El primer paso ha sido estudiado con anterioridad ası que se pasa al estudio de la segunda

fase. Observese que si se supone la eliminacion de claves ya realizada se esta en el nodo del

retıculo 1

5.7.2.1 Generalizacion

Segun el enfoque de este trabajo la generalizacion se puede expresar como una proyeccion

que elimine el atributo original y se quede con los valores del atributo generalizado. En

nuestro caso, la unica generalizacion disponible es la que transforma B en BG. Entonces la

generalizacion se puede expresar como:

PA�BG�D�O��AT�� (5.37)

Y como resultado se tiene la tabla que se observa en la figura 5.7. Al realizar la interpretacion

en el modelo se obtiene el nodo: 5 � O��AT� donde

O� � fo�� o�� o�� o�� o�� o� � � � �

o��� � � � � o�� o� � � � � o�g

AT� � fA�BG�Dg

(5.38)

������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������

O

O

A B B D CntG

0 0 0 0 63

0 1 1 0 27

O

0 1 1 13

0 2 2 0 6

0 2 2 1 58

0 3 2 0 40

0 3 2 1 5

1 0 0 0 16

1 0 0 1 14

1 1 1 1 42

1 2 2 1 54

1 3 2 0 47

1

3

O

1 9

2 0 0 0 42

2 0 0 1 4

2 1 1 1 51

2 2 2 0 22

2 2 2 1 26

2 3 2 0 48

3 0 0 0 2

3 1 1 0 31

3 1 1 1 27

3 2 2 0 39

3 3 2 0 41

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

O

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

21

1

O

O

B D CntG

0 0 63

1 0 27

1 1 13

2 0 6+40

2 1 58+5

O

O

O

O

O

1

2

3

4

5

0 0 16

0 1 14

1 1 42

2 1 54+9

2 0 47

O

O

O

8

9

10

11O

O12

0 0 42

0 1 4

1 1 51

2 0 22+48

2 1 26

14

15

16

17

18

O

O

O

O

O

0 0 2

1 0 31

1 1 27

2 0 39+41

O

O

O

O

20

21

22

23

O

O

5A

0

0

0

0

0

1

1

1

1

1

2

2

2

2

2

3

3

3

3

Figura 5.7: Ejemplo de generalizacion

Aplicando ahora el algoritmo de la region lower se tiene el resultado que se observa en

la figura 5.8 La interpretacion da como resultado el nodo 6 � O�AT donde:

O � fo�� o� � o��� o�g

AT � fA�BG�Dg(5.39)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 136: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 124

����������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������

0 0 63

1 0 27

1 1 13

6+40

2 1 58+5

O

O

2 0

O

1

O3

4

5

0 0 16

0 1 14

1 1 42

O

1

2

2 0 47

O

O

G

8

9

10

11O

O12

0 0 42

0 1

Cnt

1 1 51

2 0 22+48

2 1 26

14

15

16

D

54+9

O

O

2

O

O

0 0 2

1 0 31

1 1 27

2 0 39+41

O

O

4

O

20

21

22

23

18

17

5A

0

0

0

0

0

1

1

1

1

1

2

2

2

2

2

3

3

3

3

O

O

2 1 1 51 O16

B

O

6A B D CntG

0 2 1 63 O5

1 1 1 42 O10

1 2 1 63 O11

Figura 5.8: Region lower sobre tabla generalizada

Una vez que se ejecuta el algoritmo, los resultados se tienen que presentar al usuario.

En este caso, observese que, al haber generalizado un atributo, caso de que el usuario no

especifique un nombre para el nuevo atributo, el sistema asignara a este atributo un nombre.

En nuestro caso, el sistema ha asignado el nombre BG a la generalizacion de B. Por tanto,

las reglas que se obtienen son:

If A � � � BG � �� D �

If A � � BG � �� D �

If A � � BG � �� D �

If A � � BG � �� D �

Nuevamente, los resultados se presentarıan al usuario, que podrıa, parar de hacer consultas

o pedir otras nuevas para comparar resultados. La cadena (retıculo) generada es esta ocasion

es 5.9:

Supongase, para finalizar con el ejemplo , que el usuario desea ahora extraer las reglas

con menos exactitud, esto es, admitiendo un grado de confianza por debajo del ���. En

este caso, a partir del nodo 5, se podrıa ejecutar el algoritmo de region lower con menor

grado de confianza, lo que inducirıa al desarrollo del nodo 7 (ver figura 5.10 ). Dicho nodo

estarıa compuesto por:

O� � fo� � o�g

AT� � fA�BG�Dg(5.40)

Observese, que se podrıan estar realizando numerosas consultas cada una de las cuales irıa

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 137: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 125

G

Eliminación de Claves

4

A B D BP (0)

1

0

P (1)Generalización

A D BG

Lowerl (5)

D=1,50%

3

Figura 5.9: Ejecucion de una consulta

����������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������

0 63

1 0 27

1 1

2 0 6+40

2 1

13

O

O

58+5

O

O

1

2

3

4

5

0 0 16

O

1 14

1 1 42

2

0

54+9

2 0 47

O

O

O

8

9

10

11O

O12

0 0 42

0 1 4

1

1

51

2 0 22+48

2 1 26

14

15

16

17

G

0

1 O

O

O

0 0 2

1 0 31

1

Cnt

27

2 0 39+41

O

O

O

O

20

21

22

23

O

D

5A

0

0

0

0

0

1

1

1

1

1

2

2

2

2

2

3

3

3

3

18

O

B

1

7A

1

2

B D CntG

1 1 42

1 1 51

O

O10

16

Figura 5.10: Region lower sobre tabla generalizada

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 138: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 126

generando la cadena correspondiente. Observese tambien que se puede iniciar la ejecucion

sobre cualquier nodo del retıculo. En la figura 5.11 se muestra el resultado de ejecucion de

las consultas que se han explicado en este apartado.

O

D=1,50%l (5)Lower

GA D B

Generalización Reducto

A B DP (1)

D=1,100%l (4)Lower

0

1P (1)

6

7

2

4

3

5 Lowerl (1)

D=1,100%

P (2)A B D

Reducto

Lowerl (5)

D=1,100%

P (0)A B D B

Eliminación de Claves

G

Figura 5.11: Ejemplo del retıculo que se genera durante el proceso de Data Mining

� � ffo�� o�� o�� ���� o�g

fK�A�B�D�BGgg

� ffo�� o�� ���� o��g

fA�B�D�BGgg

� ffo� � o��� o�g

fA�B�D�BGgg

� � ffo� � o��� o�g

fA�B�Dgg

� ffo�� o�� ���� o��g

fA�B�Dgg

� � ffo�� o�� o�� o�� o�� � � � �

o�� o� � � � � � o��g

fA�D�BGgg

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 139: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 127

� � ffo�� o� � o��� o�g

fA�D�BGgg

� � ffo� � o�g

fA�D�BGgg

En el ejemplo se puede observar como todos los elementos se pueden comparar me-

diante el orden establecido. De igual manera se puede observar lo que se comentaba con

anterioridad, existen elementos (nodos 2 y 5) para los que no se ha generado, despues de las

ejecuciones realizadas, la mınima cota superior. Sin embargo tal elemento podrıa aparecer

como consecuencia de realizar nuevas consultas. En cualquier caso siempre se puede decir

que ambos nodos son “mas pequenos” que el nodo 1.

5.7.3 Aplicacion de Apriori al modelo expuesto

A continuacion, se establece otro ejemplo demostrativo de las ideas expuestas en este trabajo.

En este ejemplo se realiza la ejecucion del algoritmo Apriori para el calculo de reglas de

asociacion. Se toma una posible base de datos transaccional y se ejecuta el algoritmo de

acuerdo a los pasos establecidos en este trabajo. Se recuerdan los pasos basicos en que

segun el enfoque de este trabajo se divide la ejecucion del algoritmo Apriori.

1. Eliminacion de claves.

2. Calcular el conjunto L� que contiene las agrupaciones de un elemento.

3. Realizar una lectura de la base de datos para establecer el soporte de cada combinacion

de L�.

4. Calcular el conjunto C� eliminando de L� todas aquellas agrupaciones que no superen

el umbral establecido por el usuario.

5. Calcular L� a partir de todas las posibles combinaciones de C�.

6. Hacer i � .

7. Mientras no se acabe Repetir:

(a) Lectura de la tabla para determinar los soportes de los elementos de Li.

(b) Calcular Ci eliminando las combinaciones que no superen el mınimo umbral

requerido.

(c) Calcular Li�� a partir de Ci.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 140: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 128

(d) Formar el siguiente nodo proyectando sobre la union de los atributos de Li��.

(e) i �� i� .

Una mejora del mencionado algoritmo se podrıa realizar si, ademas de llevar los contadores

de cada clase de equivalencia, se guardara un contador con el numero de unos por filas. De

esta manera serıa posible antes de generar cada nodo seleccionar para el siguiente nodo tan

solo aquellas tuplas cuyo contador de unos fuera superior al numero de elementos que tienen

las asociaciones cuyo umbral se pretende calcular. Nuevamente, observese que si tal mejora

se introdujera, la operacion cae dentro de la formulacion del modelo aquı expuesto por tra-

tarse de un caso particular de seleccion sobre una base de datos.

A continuacion, se explica detalladamente el proceso de aplicacion del algoritmo Apriori

segun el esquema explicado y se muestra el retıculo que se genera con distintas ejecuciones.

La tabla original de datos que se toma como base para ejecucion del ejemplo esta basada en

la de [Agrawal94].

En la figura 5.12 se observa la base de datos original. Esta tabla, por ser la del comienzo,

sirve para formar el nodo original del retıculo, esto es, el nodo 0. Este nodo tiene la siguiente

estructura en el ejemplo:

O � fo�� o�� � � � � o���g

AT � fK� � � �� � �g

Ejecutando a continuacion el paso de Eliminacion de claves, tal y como ya ha sido expuesto

se eliminan las claves para empezar la busqueda de patrones. Como consecuencia, se obtiene

la tabla de la figura 5.13. Al hacer la interpretacion al modelo de dicha tabla, se construye

el siguiente nodo de la cadena que se etiqueta como nodo 1. Este nodo tiene la siguiente

composicion:

O� � ffo�� o�g� o�� o�� o�g

AT� � f� � �� � �g(5.41)

A continuacion, se tienen que ejecutar las operaciones de calculo de L�, lectura de la base de

datos para calcular el soporte de los elementos y a partir de ahı calculo de C�. Observese que

estas operaciones no se tienen que traducir al modelo, pues tan solo utilizan la base de datos

para realizar calculos, pero no la modifican. Como resultado de los calculos, se obtienen los

conjuntos de objetos que se muestran en la figura 5.14. Con posterioridad se calcula L� a

partir de las combinaciones de elementos de C� y se ve sobre que elementos es necesario

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 141: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 129

0 0 12 0 1 0 0 1

0 1 0 0 11000 1 1 0 1101

0 1 1 0 11400 1 1 1 01410 1 1 1 01421 0 1 1 0143

1 0 1 1 0

1

1 1 1 0

0

163

1 1 1 0 1242

1

Elim

inac

ión

de C

lave

s

1 2 3 4 5

0 1 0 0 1 100 20 1 1 0 1 40 30 1 1 1 0 2 31 0 1 1 0 20 31 1 1 0 1 80 4

1621

1 2 3 4 5 cnt cnt_fila

K

Figura 5.12: Paso de Apriori

1 0 0 1 100 20 1 1 100 1 1 1 0 2 3

40

0 1 1

3

2011 1 1 0 1 80 4

0

0

1 2 3 4 5 cnt cnt_fila

3

1

Figura 5.13: Paso de Apriori

������������������������������������

������������������������������������

������������������������������

������������������������������

n_obj

{1} 100{2} 220

140{4}{5} 220

Agrup.1L C1

{3}20

{1}{2}{3}{5}

Agrup.

Figura 5.14: Obtencion de las estructuras auxiliares

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 142: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 130

proyectar para generar el siguiente nodo. Como consecuencia de los elementos presentes en

L� se observa en este caso que es necesario ejecutar la operacion.

P��������O��AT�� (5.42)

Debido a que el atributo 4 se ha eliminado como consecuencia de que no habıa suficientes

elementos en la base de datos para darle soporte, pot tanto, tampoco aparecera en las combi-

naciones mas frecuentes. Como resultado, se tiene la tabla que se observa en la figura 5.15.

Al realizar la interpretacion en el modelo se obtiene el nodo 3 donde:

O� � fo�� o�� o�� o�g

AT� � f� � �� �g(5.43)

Nuevamente, sera necesario realizar los calculos recorriendo la base de datos. En este caso

0 10 11 01 1

cnt cnt_fila

1 100 21 40

51

33

1 80 4

3

200

2 3

0111

n_objAgrupaciones

{1,2}{1,3}{1,5}{2,3}{2,5}

8010080

220{3,5}

120

120

Figura 5.15: Paso de Apriori

se obtienen las tablas de la figura 5.16. Una vez calculadas las estructuras, nuevamente

������������������������������������

������������������������������������

������������������������������

������������������������������

C2L 2

{2,3}{2,5}{3,5}

Agrup.n_obj

{1,2} 80{1,3} 100{1,5} 80{2,3} 120{2,5} 220

Agrup.

{3,5} 120

Figura 5.16: Obtencion de las estructuras auxiliares (2)

es necesario calcular el siguiente nodo mediante la proyeccion de los atributos pertinentes.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 143: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 131

Para ello, en este caso es necesario ejecutar la operacion.

P������O��AT�� (5.44)

En este caso se ha perdido el atributo 1, pues ya no aparece en las combinaciones que se estan

calculando. Como resultado se tiene la tabla que se observa en la figura 5.15. Al realizar la

interpretacion en el modelo se obtiene el nodo: 4 donde:

O� � fo�g

AT� � f� �� �g(5.45)

Se observa que el algoritmo pararıa su ejecucion y que la tabla que se observa en la figura

5.17 contiene las asociaciones mas frecuentes. Como consecuencia de la ejecucion de todos

3 cnt52

11 1 3120

cnt_fila5

Figura 5.17: Paso de Apriori

los pasos que han sido detallados se obtendrıan una serie de asociaciones mas frecuentes que

se usarıan como entrada de un algoritmo como los estudiados en el capıtulo 2 para el calculo

de reglas de asociacion tomando como base las agrupaciones mas frecuentes. Observese

que no se entra en esa parte del algoritmo pues cae fuera del ambito de este trabajo por

ser algoritmos que no tratan ya con la base de datos que es donde radica el problema de

descubrimiento.

Por otra parte, observese en la figura 5.18 la cadena que se obtiene como resultado de aplicar

los operadores expuestos con anterioridad. Una vez se le han dado los resultados al usuario,

supongase que este decide ejecutar la misma consulta sobre los mismos datos pero esta vez

cambiando los umbrales. Entonces serıa posible que se dieran otros resultados. Por ejemplo,

si se relajan los umbrales, puede ocurrir que al llegar al nodo 3 no se elimine el atributo 1

si se admite que las combinaciones en las que aparece tiene suficiente soporte. En tal caso,

se tendrıa que las estructuras auxiliares generadas serıan las que se observan en la figura

5.19. En este caso, la proyeccion serıa sobre los mismos atributos, lo que harıa que no se

pasase de nodo. Sin embargo, si se introduce la mejora comentada, se podrıan seleccionar

aquellas tuplas en las que el contador por filas es menor de tres, puesto que se van a calcular

asociaciones de tres elementos. Realizando esa operacion que se puede expresar como:

Scountfilas���O��AT�� (5.46)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 144: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 132

(umbral=D)

(umbral=A)

5

2

Eliminación de Clases

3

S (1)cnt<10

S (P (2))cnt_fila<2 1 2 3 5

Eliminación de 4

1

Eliminación de 1S (P (3))

2 3 5cnt_fila<3

0P (0)1 2 3 4 5

Eliminación de Claves

poco Representativas

Figura 5.18: Cadena producto de una ejecucion de Apriori

������������������������������������

������������������������������������

������������������������������

������������������������������

L 2 C2 Agrup.n_obj

8010080

{2,3} 120{2,5} 220

Agrup.

{3,5} 120

{1,2}{1,3}{1,5}

{3,5}{2,5}{2,3}

{1,3}{1,5}

{1,2}

Figura 5.19: Obtencion de las estructuras auxiliares II

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 145: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.7. EJEMPLOS ILUSTRATIVOS 133

Se observa que se obtiene la tabla de la figura 5.20 y el nodo 4 que esta compuesto por

4 � O��AT� donde

O� � fo� o�g

AT� � f� � �� �g(5.47)

Para terminar, observese que tomando otros umbrales habrıa sido posible no eliminar el

atributo 4 en la primera lectura de la tabla. Como consecuencia despues de varias iteraciones,

se podrıa haber llegado a calcular las agrupaciones de tres elementos sobre la tabla original

donde se llegarıa a las estructuras auxiliares mostradas en la figura 5.20 lo que llevarıa a

proyectar para eliminar los atributos 1, 4. Para ello, se ejecutarıa la siguiente operacion:

P������O��AT�� (5.48)

Con lo que se obtiene la tabla de la figura 5.17. Al realizar la interpretacion en el modelo

se obtiene el nodo: 5 � O��AT� que ya ha sido estudiado. Como resultado de todas las

consultas explicadas se tiene el retıculo de la figura 5.20. Observese, que en este caso, serıa

(umbral=C)

(umbral=B)(umbral=A)

(umbral=D)

(umbral=B)

ProyecciónP (4)

2 3 5

S (P (6))Eliminación de 1 y 4

2 3 5

S (3)Selección

2 3 5cnt_fila<3

Eliminación de 4

cnt_fila<3

1 2 3 5

Eliminación de 1

cnt_fila<2

cnt_fila<3

5

S (P (2))

Eliminación de Claves

1 2 3 4 5P (0)

2

63

4

Eliminación de Clasespoco Representativas

S (1)cnt<10

1

0

SelecciónS (2)

cnt_fila<2

S (P (3))

Figura 5.20: Ejemplo de retıculo

muy interesante de cara a la eficiencia, estudiar las distintas ramas por las que se ha llegado

a los mismos resultados. Observese que, dependiendo de la rama de ejecucion elegida, el

numero de lecturas de la base de datos, ası como el tamano de la base de datos que se ha

leıdo en cada caso puede variar considerablemente. Esta informacion deberıa ser tomada en

cuenta por los desarrolladores de sistemas de descubrimiento de reglas de asociacion para

mejorar la eficiencia de los mismos.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 146: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.8. CONCLUSIONES 134

5.8 Conclusiones

Se ha mostrado la traduccion de dos algoritmos a operadores de Data Mining y se ha demos-

trado como la estructura matematica propuesta con anterioridad se genera dinamicamente en

el proceso. En cuanto a las ventajas que tal estructura reporta de cara, no a la implementa-

cion, sino al usuario final, cabe destacar:

� Posibilidad de comprender mejor el proceso: Si se dispone de una herramienta que le

permita visualizar el retıculo segun se va generando, le permitira de manera grafica e

intuitiva comprender cada uno de los pasos de la consulta en detalle.

� Posibilidad de comparar resultados: Es facil ver en el retıculo los resultados que son

comparables y para ellos establecer un orden. Es posible que, en un momento dado, no

se disponga para dos nodos determinados de la maxima cota inferior (o mınima cota

superior) por no haber sido generada hasta ese momento, pero lo que siempre se puede

establecer es para cada para de nodos (conjuntos de patrones en ultima instancia), cual

es mejor o peor.

Por otra parte y de cara a la implementacion de sistemas, se tienen distintos caminos que

llegan a los mismos resultados. Esto podrıa ser utilizado por el optimizador de consulta para

dotar de eficiencia al proceso de descubrimiento.

Si se han establecido pesos a las funciones dependiendo de la complejidad de las mismas, se

tiene un criterio que podra aplicar el optimizador de consultas de cara a la eficiente ejecucion

de consultas de Data Mining.

5.9 Aplicacion Practica

Las ideas expuestas han servido de base para la implementacion de un prototipo de un sis-

tema con capacidad de Data Mining. Tal sistema pretende aumentar las posibilidades de un

sistema de gestion de bases de datos relacional, dotandolo de capacidad de descubrimiento.

En funcion de lo estudiado en este trabajo, las operaciones que se tendrıan que realizar se

resumen en:

� Extender las funcionalidades del administrador de la base de datos o bien crear el

usuario con derechos de administracion de bases de datos de explotacion

� Extender la funcionalidad del lenguaje de creacion de datos para dar cabida a la crea-

cion tanto de bases de datos de explotacion como de bases de datos personalizadas

segun los perfiles de usuario

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 147: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.10. IMPLEMENTACION 135

� Extender el lenguaje de manipulacion de datos para poder ejecutar la consultas de

Data Mining

� Extender el lenguaje de control de usuarios para poder expresar los nuevos permisos

de los usuarios

� Como consecuencia de todo lo anterior, extender el catalogo de la base de datos para

guardar y gestionar de manera eficiente las nuevas consultas

Las nuevas consultas tendran que ser implementadas y para que la implementacion sea mas

eficiente se ha hecho uso de las ideas expuestas en este trabajo. De esta manera, los algorit-

mos se expresan mediante operadores basicos que son los que se implementan, esto a su vez

hace el codigo reusable, pues muchos operadores son utilizados en distintos algoritmos.

Por otra parte, se sigue el criterio de realizar las operaciones de preprocesado que sea posible

antes de la fase de Data Mining. Sera labor del administrador el detectar que operaciones de

cada algoritmo se pueden considerar de preprocesado y tenerlas siempre precalculadas.

La division de algoritmos en operadores facilita al mismo tiempo la ejecucion paralela de

los mismos.

Por otra parte, en cuanto a la visualizacion de los resultados, se presenta al usuario el proceso

detallado que se ha llevado a cabo con los datos fruto de la ejecucion de una determinada

consulta. Esto es posible gracias a la division en operadores y gracias al establecimiento

del retıculo de operaciones de Data Mining que permitira dar una explicacion detallada de

los patrones. En la figura 5.20 se puede ver el retıculo que se forma si se aplican diversas

consultas sobre las tablas que se exponıan anteriormente.

5.10 Implementacion

Las ideas que han sido expuestas en este trabajo han servido de base para la implementacion

de RSDM (Rough Set Data Miner) 1.

La modelizacion de operaciones permite dividir los algoritmos en operaciones basicas de las

que han sido denominadas “operaciones de Data Mining”. Como consecuencia de la defi-

nicion unificada de estas operaciones, surge en la implementacion lo que se ha denominado

“operador”.

Los operadores son estructuras que permiten modelizar las funciones matematicas que se

han utilizado para formalizar las operaciones.

1Toma su nombre de la teorıa de los Rough Sets por ser los primeros operadores implementados en elsistema pertenecientes a esta teorıa

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 148: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

5.10. IMPLEMENTACION 136

Cuando se quiera programar un nuevo algoritmo de descubrimiento de conocimiento, la pri-

mera labor que se tendra que llevar a cabo sera la descomposicion del mismo en operaciones

basicas que seran expresables como operaciones de Data Mining tales como las que se des-

cribıan en capıtulos anteriores. Una vez modelizado el algoritmo se tendra que llevar a cabo

la operacion de implementacion de cada una de las operaciones que se hayan identificado.

Las operaciones se implementan como operadores.

Operador: Se denomina ası a una estructura definida por:

� Entrada: Viene dada por un conjunto de datos definido por medio de un conjunto de

atributos

� Salida: El conjunto de objetos definido por medio de otro conjunto de atributos que se

originan como resultado de aplicar una determinada operacion al conjunto de objetos

original

� Parametros: Sirven para guiar el comportamiento del operador. Dependiendo de

estos parametros, se definen familias de operadores que solo se distinguen por los

parametros que toman como entrada.

Observese la traduccion inmediata de las funciones matematicas definidas en capıtulos an-

teriores con el concepto de operador que se utiliza en la implementacion. Gracias a esta

traduccion inmediata, es posible sacar provecho de las propiedades matematicas que se defi-

nieron en capıtulos anteriores. Por una parte, gracias al orden establecido, se tiene un criterio

para poder ordenar los resultados obtenidos en diferentes consultas al sistema y por otra, la

formalizacion como retıculo proporciona un metodo de visualizacion que puede permitir al

usuario que realiza una consulta entender el proceso llevado con sus datos por un lado y por

otro poder comparar resultados.

En el siguiente capıtulo, se presenta un estudio del sistema RSDM que ha servido como

validacion de las ideas obtenidas en este trabajo.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 149: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 6

Rough Set Data Miner

Indice General

6.1 Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

6.2 Descripcion General de RSDM . . . . . . . . . . . . . . . . . . . . . . 137

6.2.1 Arquitectura del Sistema . . . . . . . . . . . . . . . . . . . . . . 139

6.2.2 Nivel de Interfaz de Usuario . . . . . . . . . . . . . . . . . . . . 140

6.2.3 Nivel RSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

6.2.4 Nivel Data Warehousing . . . . . . . . . . . . . . . . . . . . . . 142

6.2.5 Plataformas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

6.1 Introduccion

El desarrollo del sistema RSDM Rough Set Data Miner se esta realizando dentro del Labora-

torio de Sistemas del Departamento del Lenguajes y Sistemas Informaticos e Ingenierıa del

Software de la Facultad de Informatica (U.P.M.). Su implementacion se encuadra dentro de

los objetivos de un proyecto financiado por Ministerio de Educacion y Ciencia por medio de

la CICYT para la aplicacion de sistemas de Data Mining al analisis de datos medicos.

La implementacion de RSDM se cimenta en los resultados teoricos demostrados en la pre-

sente tesis sirviendo como validacion de los mismos.

6.2 Descripcion General de RSDM

RSDM es el resultado de la investigacion llevada acerca de la integracion de bases de datos

relacionales con las capacidades de Data Mining.

Si bien en la primera version del sistema se penso en que dichas capacidades fueran dadas

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 150: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 138

aplicando la metodologıa de los Rough Sets 1, pronto lo que se penso en que lo mas util

serıa una herramienta de integracion de algoritmos de Data Mining con las capacidades de

Bases de Datos Relacionales de tal manera, que la adicion de nuevos algoritmos al sistema

no supusiera un rediseno del mismo.

Por ello se puede afirmar, que RSDM mas que una herramienta para la ejecucion de un

determinado algoritmo o conjunto de algoritmos, es un motor generico de aplicacion de

algoritmos de Data Mining . Esta caracterıstica permite ajustar el comportamiento del sis-

tema con el menor esfuerzo, al entorno de aplicacion o problema concreto sobre el que se

desea utilizar. El concepto de motor de algoritmos distingue dentro del propio sistema dos

partes: el nucleo del sistema, encargado de la gestion de dicho motor y el conjunto de algo-

ritmos de Data Mining que se pueden aplicar. La principal ventaja de esta division apunta

a la facilidad para ampliar las capacidades del sistema por medio de nuevos algoritmos, de

forma tal que no afecte al nucleo del sistema. Los nuevos algoritmos anadidos al sistema

pueden surgir como mejoras de los ya existentes o por la necesidad de nuevos algoritmos

requeridos por un problema concreto.

La implementacion del motor de algoritmos toma provecho de las ideas teoricas mostradas

en esta tesis. De esta forma, los algoritmos se dividen en operaciones basicas que se pro-

graman mediante la estructura de operador. La estructura de operador es la implementacion

de las funciones matematicas usadas en este trabajo para formalizar cada operacion basica

llevada a cabo a lo largo del proceso de Data Mining.

Otra caracterıstica fundamental de este sistema es la integracion del mismo con los sistemas

gestores de bases de datos (SGBD), lo cual permite hacer uso de la potencia de estas herra-

mientas para tratar grandes volumenes de datos. Este enfoque es uno de los mas novedosos

dentro del campo de los sistemas con capacidades de Data Mining y se puede presentar a

dos niveles diferentes: por un lado se encuentran los sistemas soportados por SGBD, que

los utilizan como herramientas para manejar los datos, pero que ejecuta los algoritmos fuera

del gestor; la otra alternativa agrupa a los SGBD que incorporan dentro de los mismos las

capacidades de Data Mining como nuevas consultas disponibles. RSDM se encuadra dentro

de los primeros, pero el diseno de los modulos se desarrolla con la intencion de portar el sis-

tema al segundo de los enfoques en posteriores versiones. La division de los algoritmos en

operadores permitira programarlos como parte del gestor de bases de datos pertinente para

poder sacar el maximo provecho de las capacidades de optimizacion del gestor de bases de

datos de que se trate.

1de ahı el nombre del sistema

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 151: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 139

6.2.1 Arquitectura del Sistema

La arquitectura del sistema RSDM se encuentra estratificada a tres diferentes niveles, de los

cuales se podrıa decir que unicamente el segundo se corresponde con el nucleo del sistema,

ya que los otros dos se pueden considerar vıas de acceso a los dos componentes fundamen-

tales del proceso de KDD, que son los datos y los usuarios:

� Nivel de Interfaz de Usuario (GUI): Nivel donde se encuentran todas las posibles

herramientas que permiten al usuario interactuar con el sistema. Ver la seccion 6.2.2.

Es de destacar que la interfaz tambien se basa en las ideas mostradas en este trabajo

permitiendo visualizar el retıculo formado con la ejecucion de cada consulta y permi-

tiendo de una manera grafica al usuario comparar resultados.

� Nivel RSDM : Donde se situa el nucleo del sistema, encargado de la aplicacion de la

cadena de operadores que conforman cada consulta solicitada por los usuarios. Ver la

seccion 6.2.3.

� Nivel de Gestion de Datos o Nivel Data Warehousing : Que proporciona la inte-

raccion del modulo anterior con los SGBD que suministran los datos. Este modulo,

entre otras funcionalidades, tambien facilita un catalogo con la informacion necesaria

al nivel superior. Ver seccion 6.2.4.

��������������������������������������������������������������������������������

��������������������������������������������������������������������������������

��������������������������������������������������������������������������������

��������������������������������������������������������������������������������

������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������

Nivel GUI

Nivel DW

Nivel RSDM NodoPrincipal

CooperativosNodos

Distribuidos

RSDM arquitectura

de Datos & CatálogosRequisitos

LigerosNodos

Gramática de Interfaz

Figura 6.1: Descomposicion de la arquitectura de RSDM en tres niveles

Esta descomposicion puede verse esquematizada en la figura 6.1.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 152: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 140

6.2.2 Nivel de Interfaz de Usuario

Este nivel proporciona las herramientas que permiten a los usuarios operar con el sistema.

La arquitectura del sistema es relativamente independiente de las aplicaciones utilizadas pa-

ra interactuar con el. Esta caracterıstica se ha conseguido mediante la definicion de una

gramatica. Por lo tanto, cualquier aplicacion que sea capaz de generar esta gramatica (que

define las ordenes y comandos que se le pueden solicitar al sistema) y de reconocer la infor-

macion retornada por RSDM, puede ser situada en este nivel de la arquitectura.

Otra caracterıstica fundamental de este nivel, es que las aplicaciones desarrolladas para el

mismo no han de ser ejecutadas en la misma computadora que el resto del sistema. Esto

posibilita el desarrollo de aplicaciones visuales basadas en entornos de ventanas que puedan

ser ejecutadas desde puestos sin excesiva capacidad de calculo, de forma tal que interactuen

con el resto del sistema que puede situarse en una computadora con una mayor potencia pero

que no requiere una consola grafica. Esta distribucion de las funcionalidades del sistema en

un esquema cliente/servidor permite acceder al sistema desde puestos remotos (incluso a una

gran distancia) por medio de aplicaciones con moderados requisitos de recursos (memoria,

potencia, � � � ), encargadas unicamente de la representacion de los resultados y el control del

proceso.

Las herramientas de acceso de los usuarios al sistema deben permitir que los mismos realicen

las tareas propias de los distintos roles definidos en RSDM (usuario de consulta, adminis-

trador, � � � ), y que se estudiaban al comienzo de este trabajo, bien mediante aplicaciones

diferenciadas o mediante herramientas que integren multiples funcionalidades.

Es de destacar una vez mas que la formalizacion matematica de las operaciones y el resul-

tado de que la estructura matematica subyacente a la ejecucion de una consulta como un

retıculo matematico ha permitido, que al mostrar los resultados de una determinada consulta

al usuario, se muestre el retıculo formado. Esto posibilita el estudio de cualquier nodo del

mismo ası como, la ejecucion de consultas de refinado desde cualquier nodo y ademas gra-

cias al orden establecido, que sera evidente en la visualizacion de los resultados, el usuario

dispondra de una herramienta con la que le sera facil establecer la bondad de los resultados

obtenidos.

Para la version actual se esta desarrollando un interfaz de usuario en Java que integra las

funciones de administracion y consulta en la misma herramienta.

6.2.3 Nivel RSDM

Este nivel se corresponde con el motor del sistema RSDM, si se entiende como tal el modulo

de la arquitectura encargado de la aplicacion de la secuencia de operadores de Data Mining

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 153: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 141

requeridos por una consulta sobre un conjunto de datos determinado.

El estudio de los algoritmos de Data Mining mas representativos de la actualidad que se ha

llevado a cabo en este trabajo ha permitido, como se comentaba, abordar el diseno de este

nivel desde un prisma novedoso. Como fruto de dicho estudio se han definido las carac-

terısticas comunes mas importantes de los algoritmos existentes, ası como su descomposi-

cion en tareas mas simples que se han denominado operaciones de Data Mining y que se han

implementado mediante la estructura de operador. Este enfoque lleva a subdividir esta capa

en dos componentes diferentes, que son: los operadores y el nucleo del sistema.

6.2.3.1 Operadores

Bajo este concepto se engloban los componentes elementales utilizados para la definicion de

los calculos de los algoritmos de Data Mining. Los operadores representan las operaciones

basicas en que es posible dividir cualquier algoritmo de Data Mining. Por consiguiente, es

posible desarrollar los algoritmos en funcion de estos componentes, permitiendo compartir

entre varios algoritmos los mismos operadores. Esta descomposicion facilita el desarrollo

de nuevos algoritmos debido a:

� Toda la gestion comun a todos los operadores, tales como el manejo de memoria para

datos, el acceso a la base de datos, la interaccion con el usuario, � � � esta soportada por

el sistema, de forma tal que los algoritmos unicamente implementan la logica de las

operaciones que se han de realizar para obtener el resultado en cada caso concreto.

� El desarrollo de un nuevo algoritmo supone, unicamente, la implementacion de la

logica y transformaciones propias (operadores), de ese algoritmo que no se encuentren

desarrolladas anteriormente. Esto permite disenar nuevos algoritmos con un coste

y tiempo de desarrollo mınimo. Para poder aprovechar esta ventaja es necesaria la

descomposicion del algoritmo en los operadores adecuados, de forma que estos esten

ya disponibles o sean faciles de implementar.

El proceso de desarrollo de algoritmos mediante estos componentes implica el analisis del

funcionamiento del mismo y su descomposicion en el conjunto de operadores necesario.

6.2.3.2 Motor de algoritmos

Una vez definido el conjunto de operadores de los que dispone el sistema y como resultado de

un proceso de consulta solicitado por un usuario el sistema tiene que determinar la secuencia

de operadores a aplicar. Este proceso se realiza por medio del motor de algoritmos del

sistema, las operaciones del mismo se pueden centrar en:

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 154: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 142

� Seleccion de los operadores a aplicar: Junto con los operadores asociados a las con-

sultas solicitadas por el usuario, el sistema puede necesitar anadir otros operadores.

Estos operadores adicionales son requeridos para ciertos algoritmos que tiene que rea-

lizar calculos y transformaciones previas o por restricciones de la propia consulta del

usuario.

� Organizar la secuencia de operadores: Una vez definidos todos los operadores que

participan en la consulta, el sistema debe determinar el plan de ejecucion de la mis-

ma. Este plan de ejecucion se determina mediante la optimizacion de la secuencia

de operadores a aplicar. Observese nuevamente aquı la mejora que se puede obtener

en la optimizacion de las cadenas de operadores a aplicar gracias al orden que se ha

estudiado y demostrado en esta tesis. Despues de varias ejecuciones de cadenas de

operadores sera posible establecer cadenas optimas para la ejecucion de determinadas

consultas. Antes de esta operacion, los operadores se encuentran definidos pero no

existe un orden de aplicacion explıcito, unicamente se encuentran definidas restriccio-

nes entre ciertos operadores. Despues de esta fase se obtiene una secuencia ordenada

de los operadores.

� Carga dinamica de operadores: Como cada uno de los operadores se encuentran

definidos fuera del sistema, para conseguir el codigo ejecutable del mismo es necesario

enlazarlo dinamicamente en tiempo de ejecucion. Esta operacion es denominada carga

dinamica de operadores y se caracteriza por:

– Se determina el operador a cargar durante la ejecucion del programa. En tiempo

de compilacion no se conocen los operadores que se van a utilizar.

– El conjunto de operadores puede ser modificado durante la ejecucion del progra-

ma, anadiendo, eliminando o sustituyendo los mismos. Estas modificaciones se

ajustan automaticamente y no requieren ni la recompilacion ni el rearranque del

sistema, pudiendo ser actualizados ’ad hoc’ por el administrador.

Adicionalmente se realizan ciertas operaciones internas relativas a la gestion de usuarios,

recursos y manipulacion de los datos tratados entre otras.

6.2.4 Nivel Data Warehousing

Como resultado del estudio realizado para la integracion de las capacidades de Data Mining

con los sistemas de gestion de bases de datos actuales, (ver capıtulo3), se demostro que

es necesario extenderlos para dotar a los sistemas de nuevos “roles” ası como extender el

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 155: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

6.2. DESCRIPCION GENERAL DE RSDM 143

catalogo para guardar informacion referente a las nuevas consultas.

Este nivel es, el encargado de proporcionar al sistema un acceso optimizado a los datos,

ası como cierta informacion adicional relativa a dichos datos, necesaria para el correcto

funcionamiento del sistema.

Las tareas de este nivel podrıan resumirse en:

� Integracion de los datos de diferentes fuentes: El Data Warehouse tiene por come-

tido recoger y agrupar los datos de los esquemas de que se dispone, proporcionando

una vision unica y uniforme de los datos, independientemente de si estos datos se

encuentran distribuidos a lo largo de distintas bases de datos de una organizacion.

� Soporte del catalogo extendido: Las operaciones de Data Mining requieren cierta

informacion adicional acerca de los datos con los que trabaja.

El subsistema asociado a este nivel puede estar ejecutandose en una computadora distinta del

resto de los niveles y puede incluso encontrarse distribuido en diferentes nodos por motivos

de eficiencia.

6.2.5 Plataformas

El sistema esta siendo implementado sobre Solaris-Sparc y sobre Linux-80x86 y actualmente

no se plantea la posibilidad de realizar el porte a otros sistemas operativos o arquitecturas.

Actualmente, RSDM puede interactuar con bases de datos Oracle 7.x y con Postgres 6.x. Su

adaptacion a otros SGBD no plantea problemas de diseno y su implementacion es facilmente

abordable.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 156: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Parte III

Conclusiones y lıneas futuras

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 157: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Capıtulo 7

Conclusiones

Indice General

7.1 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

7.2 Lıneas futuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

7.1 Conclusiones

El proceso de descubrimiento en bases de datos ha sido analizado en profundidad desde la

perspectiva de las bases de datos. El estudio detallado ha dado lugar a la definicion de unas

operaciones basicas que se han denominado operadores.

Las operaciones se han clasificado atendiendo a su funcionalidad, lo que ha llevado a dividir

el proceso en cuatro etapas diferentes: creacion de la base de datos de explotacion, perso-

nalizacion de la base de datos, data mining e interpretacion de resultados. Esta division ha

llevado a identificar distintos roles o perfiles de usuarios que tendran permiso de ejecucion

de los operadores asignados a la fase del proceso a la que corresponda su perfil.

Algunos de los algoritmos de Data Mining mas representativos han sido analizados en de-

talle, y se han expresado por medio de los operadores identificados con anterioridad. El

estudio detallado del comportamiento de estos operadores ha permitido modelizar la etapa

de Data Mining como un retıculo con lo que se ha establecido un criterio para decidir un

orden en los patrones obtenidos como consecuencia de aplicar una secuencia de operadores

traduccion de una determinada consulta de Data Mining. En resumen, las aportaciones de

este trabajo se pueden concretar en:

� Identificacion de la secuencia de operadores necesaria para llevar a cabo una determi-

nada consulta de Data Mining.

� Establecimiento de secuencias de operadores que se tendran que ejecutar de manera

transparente al usuario final de cara a la eficiente ejecucion de consultas.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 158: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

7.2. LıNEAS FUTURAS 146

� Establecimiento de perfiles con distintos permisos al acceder a una determinada base

de datos personalizada

� Reusabilidad del codigo (gracias a la descomposicion de los algoritmos en operaciones

basicas).

� Formalizacion matematica de los operadores de la fase de Data Mining como una

estructura de retıculo. Esto permitira poder comparar resultados obtenidos a partir del

mismo conjunto de datos original al mismo tiempo que permitira establecer cuando

dos resultados no son comparables.

� Favorecer la comprension del proceso por el usuario, gracias a la formalizacion, se

permite presentar al usuario, no solo los patrones pedidos sino tambien una explicacion

exhaustiva del proceso al que han sido sometidos los datos originales.

� Facilitar la etapa de refinado de consultas al usuario.

� Ayudar al diseno de sistemas futuros que integren capacidades de consulta tradicio-

nales con consultas de Data Mining. Dentro de este apartado se han establecido los

criterios para:

– Generar una nueva gramatica de administrador

– Extender la gramatica de manipulacion de datos

– Extension del catalogo para acoger las nuevas estructuras

7.2 Lıneas futuras

El proceso seguido ha permitido esclarecer algunas de las fases del proceso de KDD desde

la perspectiva de las bases de datos. Una vez que los operadores han sido identificados, ası

como sus propiedades, se establecen criterios de cara a la futura implementacion de sistemas

que proporcionen las consultas de descubrimiento como consultas tradicionales. Para ello,

se ha visto que numerosas partes de los sistemas de gestion de bases de datos han de ser

actualizadas. En este trabajo se han expuesto ideas para tal diseno o implementacion.

Por tanto el presente trabajo abre las puertas a numerosas lıneas de investigacion que cabe

esperar que se desarrollaran en los proximos anos y de las que se espera haber dejado sem-

brada la primera semilla.

Como consecuencia de todo lo expuesto se han sentado las bases para implementaciones

integradas de sistemas de analisis y gestion de bases de datos. No obstante, se abre un nuevo

reto para los desarrolladores de sistemas de gestion de bases de datos que tendran que :

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 159: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

7.2. LıNEAS FUTURAS 147

� Automatizar el proceso de integracion de datos en las bases de datos de explotacion o

Data Warehouses. Por el momento, en la mayorıa de las organizaciones este proceso

se realiza manualmente, lo que requiere un gran trabajo. A medida que los sistemas

de descubrimiento de conocimiento se consoliden tiene que llevar asociada una con-

solidacion del proceso de integracion de los datos en el Data Warehouse de manera

automatica. Como consecuencia sera necesario aumentar el catalogo de la base de

datos

� Extender el catalogo de la base de datos: Sera necesario debido a la inclusion de los

nuevos operadores de extender el catalogo con estructuras capaces de modelizar el

comportamiento de los mismos. Este catalogo habra que extenderlo tambien debido

al proceso de integracion. Si se quiere que dicho proceso de integracion se realice

de manera automatica es necesario que la informacion necesaria de la integracion se

guarde en el catalogo del Data Warehouse.

� Extender las capacidades de seguridad de la base de datos: Se observaba al estudiar

las consultas que aparecen perfiles de usuario nuevos como resultado de las opera-

ciones de descubrimiento. Se tendra que extender los permisos para dar cabida al

administrador de la base de datos de descubrimiento, labores de limpieza, preprocesa-

do e integracion de los datos en las bases de datos de explotacion y permisos para la

ejecucion de consultas de descubrimiento.

� Extender el lenguaje de consulta, control y administrador de la base de datos. En

[Imielinski96], [Agrawal96c], [Han96a] se encuentran propuesta en esta lınea.

� Extension del modulo traductor de consultas. Como consecuencia de la extension del

lenguaje de consulta sera necesario extender el traductor

� Extension de las funcionalidades del modulo optimizador de la base de datos. El

traductor de consultas traducira las consultas de usuario a operadores del sistema que

seran procesados por el optimizador de consulta para conseguir el mayor rendimiento

y eso es posible gracias al orden establecido con lo operadores.

� Proceso distribuido: En la medida de lo posible, habra que pensar en distribuir el pro-

ceso entre los nodos y no en centralizar las bases de datos. De la misma manera que los

Data Warehouses estan distribuidos para dotar de eficacia al proceso de consulta, sera

necesario distribuir el proceso a llevar a cabo cuando un usuario de un determinado

nodo solicite una consulta de Data Mining cuyos datos no tienen por que encontrase

en ese nodo.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 160: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Bibliografıa

[Agrawal93a] R. Agrawal, T. Imielinski, A. Swami Mining association rules between sets

of Item in large Databases, Proceedings of ACM SIGMOD, pages 207-216, May 1993

[Agrawal93b] R. Agrawal, Mining Association rules between sets of items in large data-

bases In Prooceedings of ACM SIGMOD International Conference on Management of

data, pp.207-216, Washington DC, 1993

[Agrawal93c] R. Agrawal, T. Imielinski, A. Swani Database Mining: A performance pers-

pective IEEE Transactions on Knowledge and Data Engenieering 5(6) pp. 914-925,

Diciembre 1993. An special Issue on Learning and Discovery in knowledge Based Da-

tabases

[Agrawal94] R. Agrawal, R. Srinkant Fast Algorithms for Mining Association Rules Chile

1994

[Agrawal95] R. Agrawal, K. Shim Developing tightly-coupled Data Mining applications on

a Relational database system In Prooceedings of KDD’96, pp. 287-291 Orlando, July

1996

[Agrawal96a] R. Agrawal, Shafer Parallel Mining of association rules IEEE Transactions

on Knowledge and Data Engeneering 8(6)

[Agrawal96b] R. Agrawal, H. Mannila, R. Srikant, Fast Discovery of Association Rules

Advances in Knowledge Discovery and Data Mining. U. Fayyad et al. Ed., AAAI/MIT

Press 1996.

[Agrawal96c] R. Agrawal et al., The Quest Data Mining System In Proceedings The

Second International Conference on Knowledge discovery and Data Mining, pp. 244-

249. August 1996

[Agrawal97] R. Agrawal, Q. Vu, R. Skrinkant Mining association rules with item constrains

Proc. del 3rd Int’l Conference on Knowledge Discovery in DataBases and Data Mining,

Newport Beach, California, agosto 1997.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 161: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 149

[Agrawal98a] R. Agrawal, T. Ho, M. Zaki Parallel clasification for Data Mining on Shared-

Memory Multiprocessors IBM Research Report, 1998

[Agrawal98b] R. Agrawal et al. Automatic Subspace Clustering of High Dimensional Data

for Data Mining Applications Proc. of the ACM SIGMOD Conference on Management

of Data, Seattle, jumio1998

[Agrawal98c] R. Agrawal, S. Thomas, S. Sarawagi Integrating association rule mining with

databases: alternatives and implications Proc. of the ACM SIGMOD Conference on

Management of Data, Seattle, jumio1998

[Bayardo98] Efficiently Mining Long Patterns from Databases aparecera en los Proc. de

ACM SIGMOD Conference on Management of Data, Seatle, junio 1998

[Berndt96] D.J. Berndt, J. Clifford Finding Patterns in times Series: A Dynamic Program-

ming Approach Advances in Knowledge Discovery and Data Mining. U. Fayyad et al.

Ed., AAAI/MIT Press 1996

[Bischof97] J. Bischoff, T. Alexaander DataWarehouse : Practical Advice from the experts.

Prentice Hall 1997

[Buntine91] W. Buntine Theory refinement on bayesian networks Proceedings of the 7th

Conference on Uncertainty in Artificial Intelligence a. 52-60, S. Francisco, CA, 1991.

[Cheeseman96a] P. Cheesman J. Stutz Bayesian Classification (Autoclass): Theory and

Results Advances in Knowledge Discovery and Data Mining. U. Fayyad et al. Ed.,

AAAI/MIT Press 1996

[Cheeseman96b] P. Cheeseman and J. Stutz. Bayesian clasification (AUTOCLASS): Theory

and results Advanes in Knowledge Dsicovery and Data Mining. AAAI/MIT Press,

1996.

[Cheung] D. W. Cheung, J. Han, V. T. Ng Y. Fu A Fast Distributed Algorithm for Mining

Association Rules

[Crawley73] Peter Crawley y Robert P. Dilworth Algebraic theory of lattices, ed. Prentice-

Hall, 1.973

[Codd90] E. F. Codd The relational Model for Database Management, Addison Wesley

1990

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 162: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 150

[DMA96] Direct Marketing Association Managing database marketing technology for suc-

cess

[Fayyad96a] U. Fayyad, G. Piatestky-Shaphiro, P. Smyth Knowledge Discovery and Da-

ta Mining: Towards a Unifying Framework In Proceedings The Second International

Conference on Knowledge discovery and Data Mining, pp. 82-88. August 1996

[Fayyad96b] U. Fayyad, G. Piatestky-Shaphiro, P. Smyth, R. Uthurusamy From Data Mi-

ning to Knowledge Discovery: An Overview, Advances in Knowledge Discovery and

Data Mining, AAAI/MIT Press 1996, pp. 1-30

[Fernandez96a] M. Fernandez Baizan. E. Menasalvas, E. Santos. Integrating RDMS and

DataMining Capabilities Using Rough Sets In Proceedings, IPMU’96, Granada (Spain),

July-96

[Fernandez96b] M. Fernandez Baizan, E. Menasalvas, J. Pena Rough Sets as a foundation

to add Data Mining capabilities to a RDMS In Proceedings, CESA’96, Lille (France),

July-96, pp. 764-779

[Fernandez97a] M. Fernandez Baizan, E. Menasalvas, J. Pena, J. Pardo A new approach

for the calculation of reducts in large databases In Proc. JICS’97 pp.340-344, Carolina

1997

[Fernandez98a] M. Fernandez Baizan, E. Menasalvas, J. Pena Integrating RDBMS andData

Mining Capabilities Using Rough Sets, Knowledge Management in Fuzzy Databases,

De Pons, Vila, Kacprzyk. Springer Verlag, a publicar en julio de 1998

[Fernandez98b] M. Fernandez Baizan, E. Menasalvas, E. Santos, R. Portaencasa, C. LLera.

The Lattice of generalizations in a KDD process In Proceedings, EMCSR’98, Viena,

April-98, pp. 181-183

[Fernandez98c] M. Fernandez Baizan, E. Mensalvas, J. Pena Integrating KDD algorithms

and RDBMS code RSTC’98 Varsovia, junio de 1998

[Fernandez98d] M. Fernandez Baizan, A. Wasilewska, E. Menasalvas A modelization of

RSDM RSTC’98 Varsovia, junio de 1998

[Frawley91] W. J. Frawley, G. Piatestky-Shapiro, C. J. Matheus Kowledge Discovery in

DataBases: An Overview Knowledge Discovery in DataBases. ed. G. Piatestky-Shapiro

and W. J. Frawley, AAAI Press 1991

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 163: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 151

[Frawley96] W. J. Frawley, G. Piatestky-Shapiro, P. Smyth From Data Mining to Kowledge

Discovery: An Overview Advances in Knowledge Discovery and Data Mining. ed. W.

J. Frawley, G. Piatestky-Shapiro, P. Smyth and Uthurusamy, AAAI Press 1996

[Fu96] Y. Fu, Discovery of multiple-level rules from large databases Tesis Doctoral

presentada en la Universidad de Simon Fraser en Julio 1996

[Fu98] Y. Fu, J. Han, R.T. Ng, S. Dao Dealing with semantic Heterogeneity by

Generalization-Based Data Mining Techniques Papazoglou de. Cooperative Informa-

tion Systems: Current Trends and Directions Academic Press 1998 pp. 207-231

[Grzymala-Busse95] J. Grzymala-Busse, LERS - a system for learning from examples based

on Rough Sets In Intelligence decision support. Handbook of Applications and Advances

of the Rough Sets Theory, 3. Kluwer Academic Publishers

[Hadjimichael96] M. Hadjimichael, Discovering Fuzzy Relationships from Databases In

Proceedings, CESA’96, Lille, July-96, pp.936-941

[Hadjimichael97] M. Hadjimichael A model for generalization Proc. JCIS’97, vol.3, pp

177-181

[Hall96] Curt Hall Data Mining: Tools and Reviews Data Mnagement Strategies Cuttler

Information Corp. 1996

[Hamowitz] I.J. Hamowitz, O. Gur-Ali, H. Schwarz, Integrating and Mining Distributed

Customer Databases In Proceedings The Third Conference of Knowledge Discovery

and Data Mining (KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R.

Uthurusamy, pp. 179

[Han91a] J. Han, Y. Cai, N. Cercone Concept-based data classification in relational data-

bases AAAI Workshop on Knowledge Discovery in Databases, pp. 77-94 CA, 1991

[Han91b] J. Han, Y. Cai, N. Cercone Attribute- Oriented induction in Relational databases

Knowledge Discovery in Databases pp213-228 AAAI/MIT press 1991

[Han92] J. Han, Y. Cai, N. Cercone, Knowledge Discovery in Databases: An Attribute-

Oriented Approach, In Proceedings 18th International Conference in Very Large Data-

bases, Canada, August 1992

[Han93] J. Han, Y. Cai, N. Cercone Data-driven discovery of quantitative rules in relational

databases IEEE Trans. Knowledge and Data Engeeniering vol 5 pp.29-40 1993

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 164: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 152

[Han96a] J. Han et al., DBMiner: A System for mining knowledge in Large Relational Da-

tabases In Proceedings The Second International Conference on Knowledge discovery

and Data Mining, pp. 250-255. August 1996

[Han96b] J. Han and Y. Fu Exploration of the power of attribute-oriented induction on data

mining. Advances in Knowledge discovery and Data Mining pp. 399-421 AAAI/MIT

Press 1996.

[Han97] J. Han et al., DBMiner: A System for Data Mining in Relational Databases and

Data Warehouses Proc. of CASCON’97: Meeting of Minds, Toronto, Canada, noviem-

bre 1997

[Han98] J. Han, W. Gong, Y. Lin Mining Segment-Wise Periodic Patterns in Time-Related

Databases Proc. of 1998 Int’l conference on Knowledge Discovery and Data Mining

(KDD’98)

[Heckerman96] D. Heckerman. Bayesian networks for knowledge discovery Advances in

Knowledge Discovery and Data Mining pp. 273-306. AAAI/MIT T Press, 1996.

[Ho97] K.M. Ho, P.D. Scott, Zeta: A Global Method for Discretizationg of Continuous Va-

riables In Proceedings The Third Conference of Knowledge Discovery and Data Mining

(KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp.

191

[Houtsma93] M. Houtsma, A. Swani Set Oriented minig of association rules Research

report RJ 9597 IBM Almaden Research Center, San Jose, California 1993

[Hunt66] Hunt E.B. Experiments in Induction. New York: Academic Press 1966

[Imielinski96] T. Imielinski et al., DataMine: Application Programming Interface and

Query Language for Database Mining In Proceedings The Second International Con-

ference on Knowledge discovery and Data Mining, pp. 256-261. August 1996

[Inmon96] W. H. Inmon Building the DataWarehouse. Second Edition. John Willey and

Sons Inc. 1996

[Inmon97] W. H. Inmon J. D. Welch K. Glassey Managinging the DataWarehouse. John

Willey and Sons Inc. 1997

[John97a] G. H. John, Enhancements to the Data Mining Process Tesis Doctoral presentada

en la Universidad de Stanford en Julio de 1997

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 165: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 153

[John97b] G.H. John, SIPping from Data Firehose In Proceedings The Third Conference

of Knowledge Discovery and Data Mining (KDD-97), Edited by D. Heckerman, H.

Mannila, D. Pregibon and R. Uthurusamy, pp. 199

[Kahng97] J. Kahng, W.K. Liao, D. McLeod, Mining Generalized Term Associations:

Count Propagation Algorithm In Proceedings The Third Conference of Knowledge Dis-

covery and Data Mining (KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon

and R. Uthurusamy, pp. 203

[Katzberg94] J. D. Katzberg, W. Ziarko, Variable Precision Rough Sets with Asymetric

Bounds, Rough Sets, Fuzzy Sets and Knowledge Discovery, 1994, pp. 167 - 178

[Ketterling97] A. Ketterling, Clustering Sequences of Complexx Objects In Proceedings

The Third Conference of Knowledge Discovery and Data Mining (KDD-97), Edited by

D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp. 215

[Kohavi97] C. Brunk, J. Kelly, R. Kohavi, MineSet: An Integrated System for Data Mining

In Proceedings The Third Conference of Knowledge Discovery and Data Mining (KDD-

97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, 135

[Komorowski97] J. Komorowski, A. Ohrn Rosetta: A Rough Set Toolkit for Analysis of

Data In Proceedings, JCIS’97, North Carolina, March-97, pp. 403-407

[Konokenko84] Konokenko I., Bratko I. Experiments in automatic learning of medical

diagnostic rules Technical Report Josef Stefan Institute 1984

[Koperski98] K. Koperski, J. Han An Efficient two-step Method for Classification of Spa-

tial Data Proc. 1998 International Symposium on Spatial Data Handling, Vancouver,

Canada junio 1998

[Lin96] T.Y. Lin, Rough Set Theory in Very Large Databases In Proceedings, CESA’96,

Lille, July-96, pp.936-941

[Lu96] Y. Lu, Concept Hierarchy in Data Mining: Specification, Generation and Imple-

mentation Tesis de Master presentada en la Universidad Simon Fraser en enero de 1998.

[Manganaris97] K. Ali, S. Manganaris, Partial Classification Using Association Rules In

Proceedings The Third Conference of Knowledge Discovery and Data Mining (KDD-

97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp. 115

[Mattison97] R. Mattison Data Warehouse Strategies Technologies and techniques. Mc-

Graw Hill 1997

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 166: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 154

[Michalski83] R. S. Michalski A theory and methodology of inductive learning Michalski

et al. editor, Machine Learning: An Artificial Intelligence approach Vol. 1 pp. 83-134.

Morgan Kaufmann, 1983.

[Nakhaeizadeh97] G. Nakhaeizadeh, Development of Multi-Criteria Metrics for Evaluation

of Data Mining Algorithms In Proceedings The Third Conference of Knowledge Dis-

covery and Data Mining (KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon

and R. Uthurusamy, pp. 37

[Olle73] T.W. Olle, The Codasyl approach to Database Management, Cischester: John

Wiley, 1973

[Paterson83] Paterson A., Niblet, T. ACLS user manual. Glasglow:Intelligent Terminals

Ltd. 1983

[Pawlak82] Z. Pawlak, Rough Sets, International Journal of Computer and Infromationn

Sciences Vol 11, n. 5 1982

[Pawlak86] Z. Pawlak, On Decision Tables, Bulletin of The Polish Academy of Sciences

Mathetics vol. 34, No.7, 1986, pp. 563 - 571.

[Pawlak88] Z. Pawlak M. Novotny, Independence of Attributes, Bulletin of The Polish

Academy of Sciences Mathetics vol. 36, No.7, 1988, pp. 459 - 465.

[Pawlak91] Z. Pawlak, Rough Sets - Theoretical Aspects of Reasoning about Data, Kluwer

Academic , 1991.

[Pawlak92] Z. Pawlak, Rough Sets and their applications, ICS Research Report 18/92

Warsaw University of Technology

[Pawlak93] Z. Pawlak, Information Systems-Theoretical foundations, Information systems,

6, No.4, 1993, pp. 299 - 297.

[Piatesky91] G. Piatesky-Shaphiro, Report on the AAAI-91 Workshop on Knowledge Dis-

covery in Databases, IEEE Expert 6(5), October, pp. 74-76

[Piatesky94] G. Piatesky-Shaphiro, An Overview of Knowledge Discovery in Databases:

Recent Progress and Challenges, Rough Sets, Fuzzy Sets and Knowledge Discovery,

1994, pp. 1-11

[Quinlan79] J. R. Quinlan Discovering rules by induction from large collections of exam-

ples D. Michie, editor, Expert Systems in the micro Electronic Age. Edinburg, England,

1979

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 167: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 155

[Quinlan86] J.R. Quinlan Induction of decision Trees Machine Learning 1: 81-106, 1986,

Kluwer Academic Publisher

[Raghavan95] Raghavan, H, Sever The state of Rough Sets for Database Mining applica-

tions Proc. CSC’95 Computer Science Conference On Rough Sets and Database Mining

pp. 1-10 1995

[Sanchez97] J.M. Pena Sanchez, Diseno de una arquitectura para un sistema con capaci-

dades de Data Mining Proyecto fin de carrera, dirigido por E. Menasalvas Facultad de

Informatica. Sept. 1997

[Shepard90] D. Shepard Associates The new Direct marketing Business One Irwin, Ilinois

1990

[Silberzchatz96] A. Silberzchatz, M. Stonebraker, J. Ullman, Database Research: Achieve-

ments and oportunities into the 21st century. SIGMOD Record, 25:52-63, Marzo 1996.

[Simoudis96] E. Simoudis B. Livezey, R. Kerber Integrating Inductive and Deductive Rea-

soning for Data Mining Advances in Knowledge discovery and Data Mining, Usama

Fayyad et al. editors. AAAI/MIT Press pp. 353-373

[Skrinkant95] R. Skrikant, R. Agrawal, Mining generalized association rules, Proceedings

of the 21st VLDB Conference, Zurich, Swizerland, 1995

[Skrinkant96] R. Skrinkant R. Agrawal Mining Generalized Association Rules Proc. of the

21st Int’l Conference on Very Large DataBases

[Skrinkant97a] R. Skrinkant, Q. Vu, R. Agrawal Mining Association Rules with Item Cons-

trains In Proceedings The Third Conference of Knowledge Discovery and Data Mining

(KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp.

103

[Skrinkant97b] R. Skrinkant, R. Agrawal, Mining Association Rules with Item Constraints

In Proceedings The Third Conference of Knowledge Discovery and Data Mining (KDD-

97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp. 67

[Skowron91] A. Skowron, C. Rauszer, The Discernibility matrices and Functions in In-

formation System,, ICS PAS Report 1/91, Technical University of Warsaw 1991, pp.

1-44

[Skowron92] A. Skowron, The discernibility matrices and functions in information systems.

Decision Support by Experience, R. Slowinski(ed.) Kluwer Academic Publishers,1992

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 168: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 156

[Slowinski88] Slowinski K. Rough Sets approach to analysis of data from peritoneal lavage

in acute pancratitis, Medical Informatics. 13, 1988, no.3 143-159

[Spyratos85] N. Spyratos, The Partition model: A Deductive DataBase Model Rapport de

Recherche n. 249- Universite de Paris-Sud, Orsay-Fracia, Dic-1985

[Subramonian97] R. Subramonian, R. Venkata, J. Chen, A Visual Interactive Framework for

Attribute Discretization In Proceedings The Third Conference of Knowledge Discovery

and Data Mining (KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon and R.

Uthurusamy, pp. 82

[Thomas97] S. Thomas, S. Bodagala, K. Alsabti, S. Ranka, An Efficient Algorithm for the

Incremental Updation of Association Rules in Large Databases In Proceedings The

Third Conference of Knowledge Discovery and Data Mining (KDD-97), Edited by D.

Heckerman, H. Mannila, D. Pregibon and R. Uthurusamy, pp. 263

[ANSI/X3/SPARC] Tsichritzis and Klug The ANSI/X3/SPARC DBMS Framework Report

of the study group on database management systems, University of Toronto Canada

[Tsumoto96] S. Tsumoto Incremental Learning of Probabilistic Rules from clinical Data-

bases based on Rough Sets Theory, In Proceedings IPMU’96 vol. 3, pp. 1457-1462.

Granada 1996

[Walkulicz-Deja96] A. Walkulicz-Deja et al. Applying Rough Sets to diagnose in Children’s

Neurology In Proceedings IPMU’96 vol. 3, pp. 1463-1467. Granada 1996

[Wasilewska91] . Wasilewska, M. Hadjimichael An Inductive Learning System. Bulletin of

The Polish Academy of Sciences, Technical Sciences, Vol. 39, No. 3, 1991.

[Wasilewska93] . Wasilewska, M. Hadjimichael Interactive Inductive Learning. Interna-

tional Journal of Man-Machine Studies, Vol. 38, (1993), 147- 167.

[Wasilewska97] . Wasilewska, L. Vigneron Rough R4 and R5 Algebras. International

Journal on Information Science - Special Issue, to appear 1997.

[Zaki97] M.J. Zaki, S. Parthasaranthy, M. Ogihara, W. Li, New Algorithms for Fast Dis-

covery of Association Rules In Proceedings The Third Conference of Knowledge Dis-

covery and Data Mining (KDD-97), Edited by D. Heckerman, H. Mannila, D. Pregibon

and R. Uthurusamy, pp. 283

[Ziarko93a] W. Ziarko, Variable Precision Rough Sets Model, Journal of Computer and

System Sciences, vol. 46. 1993, 39-59

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 169: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

BIBLIOGRAFIA 157

[Ziarko93b] W. Ziarko,R. Golan, D. Edwards An application of Datalogic/R Knowledge

Discovery tool to identify Strong Predictive rules in Stock Market Data, Proceedings of

AAAI Workshop on Knowledge Discovery in Databases, 1993, pp 89-101.

[Ziarko93c] W. Ziarko, Variable precision Rough Set model Journal of computer and sys-

tems sciences, 46, 39-59. 1993

[Ziarko94] W. Ziarko and N. Shan, KDD-R: A comprehensive system for Knowledge Dis-

covery in Databases using Rough Sets In Proceedings of the International Workshop on

Rough Sets and Soft Computing RSSC’94, pp. 164-173

[Ziarko95a] W. Ziarko, N. Shan On Discovery of Attribute Interactions and Domain Clas-

sificactions, CSC’95 23 Annual Computer Science Conference on Rough Sets and Data

Mining

[Ziarko95b] Ziarko W. Data-Based Acquisition and incremental modification of classifica-

tion rules Computational Intelligence. pp. 357-370, 1995

[Ziarko96] W. Ziarko, Discovering classification Knowledge in databases using Rough Sets

In Prooceedings ot the Second International Conference on Knowledge Discovery and

Data Mining, 1996, pp. 271-274

[Zighed97] D.A. Zighed, R. Rakotomalala, F. Feschet, In Proceedings The Third Confe-

rence of Knowledge Discovery and Data Mining (KDD-97), Edited by D. Heckerman,

H. Mannila, D. Pregibon and R. Uthurusamy, pp. 295

Referencias WWW

[www1] KDD-nuggets http://www.kdnuggets.com/

[www2] Data Mine http://www.cs.bham.ac.ukm/ anp/TheDataMine.html

[www3] DB Miner http://db.cs.sfu.ca/DBminer

[www4] Intelligent Miner http://www.software.ibm.com/data/iminer

[www5] Mine Set http://www.sgi.com/Products/software/Mineset

[www6] Rosetta http://www.idt.unit.no/ aleks/rosetta/rosetta.html

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 170: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

Apendice A

Conceptos basicos de la teorıa deconjuntos parcialmente ordenados y

retıculos

A.1 Introduccion

La estructura de retıculo parece ser una constante cuando se trata con sistemas de informa-

cion en los que los objetos son descritos mediante atributos que sean funciones monovalua-

das de sus clases. Ası, por ejemplo, nos encontramos con esta estructura al estudiar como

estructuras de datos la relaciones embebidas en un Modelo Particional [Spyratos85] o basa-

do en Rough Sets [Pawlak82].

En el presente trabajo ha quedado demostrado como el proceso de Data Mining aplicado a

datos descritos como tuplas de una relacion, genera de modo dinamico una cadena, que es

un caso particular de retıculo completo.

El espacio de todos los posibles procesos, es asimismo un retıculo, con la definicion de join

y meet que se derivan de la simple aplicacion de la union e interseccion de conjuntos, res-

pectivamente (aunque solo la aplicacion de todas las posibles funciones de Data Mining y

en todas las formas posibles, podrıa garantizar en un momento dado que el join y/o el meet

de dos elementos del espacio, ha sido generado).

Creemos que la inclusion en este trabajo de un anexo con las definiciones mas importantes

relativas a la teorıa que hemos utilizado es, si no indispensable, sı de gran utilidad para el

caracter autocontenido del mismo.

Aunque son muchos los textos dedicados a una parte tan importante del algebra, nos hemos

basado exclusivamente en un clasico del tema, en el que los principales conceptos aparecen

expuestos con suma claridad, introduciendo progresivamente niveles de mayor complejidad

que, en todo caso, exceden los elementos necesarios para nuestros objetivos. El texto a

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 171: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

A.2. CONJUNTOS PARCIALMENTE ORDENADOS 159

que nos referimos es “Algebraic theory of lattices”, de Peter Crawley y Robert P. Dilworth

[Crawley73].

A.2 Conjuntos parcialmente ordenados

Un conjunto parcialmente ordenado es un sistema �P��� en el que P es un conjunto no

vacıo y � es una relacion binaria definida en el, que cumple las siguientes propiedades:

�x� x � x (A.1)

fx � y� y � xg j� x � y (A.2)

fx � y� y � zg j� x � z (A.3)

En un conjunto parcialmente ordenado, si x � y y �z � x � z � y se dice que y cubre a x,

y se representa ası: x � y (o, equivalentemente: y � x).

Si S es un subconjunto de un conjunto parcialmente ordenado P , entonces existe a lo sumo

un elemento a S tal que a x�x S. Si tal elemento existe, se le llama el mayor

elemento de S.

Analogamente si �b S � b � x�x S a b se le llama menor elemento de S.

Un elemento a S se denomina un maximo de S si �x S tal que x � a (observese que

si el mayor elemento existe, es un maximo, pero pueden existir varios maximos y ningun

mayor).

Las mismas consideraciones se aplican a elementos mınimos: a S es mınimo de S si

�x S � a � x.

A.3 Cadenas

P satisface la condicion de cadena ascendente si y solo si no contiene ninguna secuencia

infinita de la forma a� � a� � � � � . Del mismo modo, satisface la condicion de cadena

descendente si no contiene ninguna secuencia infinita de la forma a� � a� � � � � .

Dos elementos de P son comparables si x � y o y � x. Si S � P es tal que cualquier par

de elementos son comparables, S es una cadena (o conjunto totalmente ordenado).

Si, adicionalmente, se cumple la condicion de cadena ascendente/descendente, se dice que

es una cadena ascendente/descendente bien ordenada.

Todas las cadenas de un conjunto P parcialmente ordenado son finitas si y solo si P satisface

simultaneamente las condiciones de cadena ascendente y descendente.

Un elemento A de un conjunto P parcialmente ordenado es un lımite superior de S � P si

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 172: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

A.4. RETıCULOS 160

a x�x S. Del mismo modo, a es un lımite inferior de S si a � x�x S.

Lema de Zorn:

Si toda cadena de un conjunto parcialmente ordenado P tiene un lımite superior, P tiene un

elemento maximo.

A.4 Retıculos

Sea P un conjunto parcialmente ordenado, y sea S � P . Decimos que a P es un join (o

mınimo lımite superior) de S, si a es un lımite superior de S y a � x para cualquier otro

lımite superior de S (al join tambien se le denomina abreviadamente lub de “least upper

bound”).

Analogamente, b es un meet (o maximo lımite inferior) de S, si y solo si b es un lımite

inferior de S y b x para cualquier lımite inferior de x de S (almeet tambien se le denomina

abreviadamente glb, por “greatest lower bound”).

El join/meet si existe, es unico:

El join de S se representa como: �S

SiS � fx� yg��fx� yg � x � y (A.4)

El meet de S se representa como: �S

SiS � fx� yg��fx� yg � x � y (A.5)

Un conjunto parcialmente ordenado en el que cualquier par de elementos

tiene join y meet es un retıculo.

Si L es un retıculo, �x� y� z� L; se verifica:

x � x � x � x � x (i)

x � y � y � x (ii)

x � y � y � x

x � �y � z� � �x � y� � z (iii)

x � �y � z� � �x � y� � z

x � �x � y� � x (iv)

x � �x � y� � x

�x � y� � x�� x � y � y �� x � y (v)

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 173: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

A.5. RETıCULOS COMPLETOS 161

Del mismo modo, si en un conjunto L se definen dos operaciones binarias � y �, que cum-

plen las propiedades i-iv, podemos definir en L un orden parcial � como el descrito en v, y

�L��� es un retıculo en el que el join de dos elementos es x� y y el meet es x� y. Un ejem-

plo de esto lo constituye el establecimiento de la estructura reticular del conjuntoQ

N de los

particionales definidos sobre N , inferido a partir de las propiedades i-iv que se verifican en

las operaciones � (suma) y � (producto).

A.5 Retıculos completos

Un retıculo es completo si todo subconjunto del mismo tiene join y meet.

Las siguientes son afirmaciones equivalentes:

� L es un retıculo completo.

� Toda cadena ascendente bien ordenada de L tiene un join.

� Toda aplicacion de L en si mismo que preserve el orden, tiene un punto fijo (elemento

que se transforma en sı mismo bajo dicha aplicacion).

A.6 Retıculos distribuidos y modulares

Si un retıculo L satisface una de las igualdades siguientes (donde c� y� z L), entonces

satisface tambien las otras dos:

�x � y� � �x � z� � �y � z� � �x � y� � �x � z� � �y � z� (A.6)

x � �y � z� � �x � y� � �x � z� (A.7)

x � �y � z� � �x � y� � �x � z� (A.8)

(A.9)

Se dice entonces que L es un retıculo distribuido. Un ejemplo lo constituye el retıculo del

conjunto potencia de un conjunto, bajo el orden de inclusion.

Asimismo, toda cadena es un retıculo distribuido. Un retıculo es modular si y solo si satisface

la siguiente igualdad:

�x � y� � ��x � y� � z� � �x � y� � ��x � y� � z� (A.10)

Todo retıculo distribuido es modular, pero no recıprocamente.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’

Page 174: DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´ ´IA …oa.upm.es/955/1/Ernestina_Menasalvas_Ruiz.pdf · DEPARTAMENTO DE LENGUAJES Y SISTEMAS INFORMATICOS E INGENIER´

A.7. RETıCULOS COMPLEMENTADOS 162

A.7 Retıculos complementados

Cuando un retıculo L tiene un menor elemento � y un mayor elemento , definimos el com-

plemento a� L del elemento a L mediante las condiciones:

a � a� � �

a � a� �

Un retıculo con elementos � y , es complementado si cada uno de sus elementos tiene

complemento.

’INTEGRACION DEL PROCESO DE INFERENCIA DE CONOCIMIENTO CON LOS SISTEMAS DE BASES DE DATOS RELACIONALES: FORMALIZACION MATEMATICA DE

LA FASE DE ANALISIS’