departamento de lenguajes y sistemas informaticos e ingenier´ ´ia...
TRANSCRIPT
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
A mis padres, a mis hermanos y a Javier.
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.
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.
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.
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
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
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
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
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
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
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’
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’