22
567 Ingenierías CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO Prototipo de software para la asociación de datos “UDAssociate” Tecn. Adriana Amaya Morales 1 , Tecn. Martha Lucía Rodríguez 2 , Ing. Jorge Enrique Rodríguez Rodríguez 3 RESUMEN UDAssociate es una herramienta para Minería de Datos, utilizada en la gene- ración de reglas de asociación. Se presenta como un avance del proyecto de investigación “Desarrollo de herramientas para Minería de Datos - UDMiner”. El resultado de este desarrollo se basa en la generación de reglas de asociación booleanas, las cuales clasifican datos y permiten obtener conclusiones; dichas conclusiones se utilizan para apoyar a expertos en la toma de decisiones. La asociación se realiza mediante la implementación del algoritmo A priori, el cual se fundamenta en el hallazgo de conjuntos frecuentes. Normalmente, el aprendizaje de reglas de asociación se basa en su confidencia y soporte. El algoritmo en mención trabaja en la búsqueda de reglas que cumplan unos requisitos mínimos en estas dos medidas. Palabras clave: Algoritmo A priori, Confidencia, Minería de Datos, Reglas de Asociación, Soporte. 1 Tecnóloga en Sistematización de Datos de la Universidad Distrital “Francisco José de Caldas” 2 Tecnóloga en Sistematización de Datos de la Universidad Distrital “Francisco José de Caldas” 3 Ingeniero de Sistemas. Especialista en Telemática. Especialista en Ingeniería de Software. Magíster en Ingeniería de Sistemas. Profesor de la Universidad Distrital “Francisco José de Caldas”. email: [email protected] Fecha de recepción: mayo 30 de 2005 - Fecha de aceptación: agosto 26 de 2005

asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

567

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

Prototipo de software para laasociación de datos “UDAssociate”

Tecn. Adriana Amaya Morales1 , Tecn. Martha Lucía Rodríguez2 ,Ing. Jorge Enrique Rodríguez Rodríguez3

RESUMEN

UDAssociate es una herramienta para Minería de Datos, utilizada en la gene-ración de reglas de asociación. Se presenta como un avance del proyecto deinvestigación “Desarrollo de herramientas para Minería de Datos - UDMiner”.El resultado de este desarrollo se basa en la generación de reglas de asociaciónbooleanas, las cuales clasifican datos y permiten obtener conclusiones; dichasconclusiones se utilizan para apoyar a expertos en la toma de decisiones. Laasociación se realiza mediante la implementación del algoritmo A priori, elcual se fundamenta en el hallazgo de conjuntos frecuentes. Normalmente, elaprendizaje de reglas de asociación se basa en su confidencia y soporte. Elalgoritmo en mención trabaja en la búsqueda de reglas que cumplan unosrequisitos mínimos en estas dos medidas.

Palabras clave:Algoritmo A priori, Confidencia, Minería de Datos, Reglas de Asociación,Soporte.

1 Tecnóloga en Sistematización de Datos de la Universidad Distrital “Francisco José de Caldas”

2 Tecnóloga en Sistematización de Datos de la Universidad Distrital “Francisco José de Caldas”

3 Ingeniero de Sistemas. Especialista en Telemática. Especialista en Ingeniería de Software. Magísteren Ingeniería de Sistemas. Profesor de la Universidad Distrital “Francisco José de Caldas”. email:[email protected]

Fecha de recepción: mayo 30 de 2005 - Fecha de aceptación: agosto 26 de 2005

Page 2: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

568

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

SUMMARY

UDAssociate is a Data Mining application. This realizes an association processabout the information that the user need. The analysis result is showed inboolean rules form. The rules are for classify product the information and letget out useful conclusions in more knowledge areas. This task is making for theA priori algorithm that produce itemset and frequents itemset in all theiterations. The criterions used in this process are the support and the confidenceproportion for the Miner (user). They are the givens of truthfulness andconfidence to de results given for de application.

Keywords:A priori Algorithm, Association Rules, Confidence, Data Mining, Support.

INTRODUCCIÓN

La Minería de Datos ha surgido del análisis de grandes volúmenes de informa-ción, con el fin de obtener resúmenes y conocimiento que apoye la toma dedecisiones y pueda construir una experiencia a partir de los miles de transac-ciones que registra una empresa en sus sistemas informáticos (De Moya, 2003).

En la práctica, los modelos de minería pueden ser de dos tipos: predictivos ydescriptivos. Los modelos predictivos pretenden estimar valores futuros o des-conocidos de variables de interés, llamadas variables objetivo, usando otrasvariables, denominadas variables predictivas (Hernández, 2004).

Los modelos descriptivos determinan patrones que resumen los datos, es de-cir, exploran las propiedades de los datos examinados. Las tareas de asocia-ción, correlación y agrupamiento dan lugar al modelo descriptivo.

La tarea de asociación se lleva a cabo a través de las reglas de asociación, lascuales son una de las mejores técnicas de Minería de Datos y tal vez la máscomún en el descubrimiento de patrones en sistemas de aprendizaje no super-visado (Kantardzic, 2003). El aprendizaje de reglas de asociación se basa en suconfidencia y soporte, los algoritmos de aprendizaje trabajan en la búsquedade reglas que satisfagan los parámetros de mínimo soporte y confidencia. Dadoel gran volumen de datos de los problemas con el que los algoritmos de apren-

Page 3: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

569

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

dizaje de reglas de asociación trabajan, la tarea de buscar patrones que cum-plan estos requisitos puede parecer muy costosa computacionalmente, ya queel análisis de los conjuntos de ítems crece notablemente con respecto al núme-ro de variables de los datos. Sin embargo, en los casos reales existen pocosconjuntos frecuentes y los métodos que existen con una confidencia mínima sebenefician de este hecho. Por ejemplo, la mayoría de los clientes de un super-mercado suelen comprar un número bastante limitado de productos.

Un algoritmo de aprendizaje de reglas de asociación es el algoritmo A priori.El funcionamiento de este algoritmo se basa en la búsqueda de los conjuntos deítems con determinado soporte. Para ello, en primer lugar se construyen losconjuntos formados por un solo ítem, que superan el soporte mínimo. Esteconjunto de conjuntos se utiliza para construir el conjunto de conjuntos dedos ítems, y así sucesivamente hasta que obtenga un tamaño en el cual noexistan conjuntos de ítems con el soporte requerido (Hernández, 2004).

La mayoría de las técnicas de asociación necesitan una métrica adecuada parapoder extraer el grado de dependencia que existe entre las variables asociadasa un conjunto de datos. Hay trabajos donde se han evaluado y comparadodiferentes medidas de reglas de asociación, unas que provienen del campo de laestadística y otras definidas de forma específica en Minería de Datos para laevaluación de reglas obtenidas en un entorno educativo mediante algoritmosde programación genética en gramáticas (Hervas-Martínez, 2004).

Una de las tareas de la Minería de Datos, como se ha mencionado, es la asocia-ción; con este desarrollo, entre otros, se busca cumplir con uno de los objeti-vos del proyecto de investigación UDMiner, y de esta forma dar un aporte encuanto a desarrollo4 se refiere, a niveles local y nacional.

En este artículo encontrará una introducción a las reglas de asociación, laimportancia de las reglas de asociación en la toma de decisiones, cómo se desa-rrolló y cómo funciona UDAssociate, pruebas y análisis de resultados, y lasconclusiones de la investigación (proyecto de desarrollo).

4 El desarrollo de esta herramienta está basado en la implementación de técnicas existentes para Mineríade Datos

Page 4: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

570

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

1 REGLAS DE ASOCIACIÓN

Las reglas de asociación son una de las mejores tareas de la Minería de Datos ytal vez, la más común desde el punto de vista de descubrimiento de patrones ensistemas de aprendizaje no supervisado (Kantardzic, 2003). La asociación esuna tarea muy similar a la correlación, que tiene como objetivo identificarrelaciones no explícitas entre atributos categóricos (Hernández, 2004).

Las reglas de asociación son una manera de expresar patrones de datos dediferentes fuentes. Estos patrones sirven para conocer el comportamiento ge-neral del problema que genera la fuente de datos, y de esta manera tener másinformación que pueda asistir en la toma de decisiones. Las principales aplica-ciones son: análisis de mercado, estudio de textos, búsqueda de patrones enambientes WEB, etc. Estas aplicaciones comúnmente tienen asociado granvolumen de datos, por lo que la eficiencia y el costo computacional son facto-res clave en el aprendizaje de reglas de asociación.

¿Qué papel juegan las reglas de asociación en el contexto de Minería de Datos?Las reglas de asociación se derivan de un tipo de análisis que extrae informa-ción por coincidencias; el análisis permite descubrir correlaciones o co-ocu-rrencias en los sucesos de la base de datos por analizar y se formaliza en laobtención de reglas de tipo sí ... entonces ..., las cuales se convierten en unpunto importante de apoyo para el descubrimiento de conocimiento a partirde la información analizada (Agrawal, 2000).

¿Qué es una Regla de Asociación? Para explicar este término se utilizará unejemplo. La Gerencia de Mercadeo de DISTCOL5 , desea dar respuesta al si-guiente interrogante: ¿Cuáles son los productos que más compran sus clientes?Para responder a esta pregunta puede hacerse un estudio de mercado acerca delos productos que los clientes compran al detal, empleando sus resultadospara adoptar un plan de mercadeo o plantear una estrategia, por ejemplo,diseñar el catálogo de electrodomésticos que la compañía ofrece.

En forma premeditada, los productos que frecuentemente compran los clien-tes pueden ser ubicados en sitios algo distantes, mientras que aquellos produc-

5 DISTCOL de Colombia es una empresa cuya misión es la comercialización de electrodomésticos

Page 5: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

571

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

tos que se venden con poca frecuencia se localizarán en sitios más próximos a lavista de los clientes. Si los clientes compran computadores y a la vez se inclinanpor la compra de software financiero, entonces el sitio donde se ubique elhardware puede ayudar a incrementar las ventas del software: los clientes queescojan un computador observarán en la vitrina un software contable quedespierte también su interés (Demoya, 2003).

La información referente a los productos que compran los clientes, puede serrepresentada a partir de una regla de asociación, como sigue:

Si compra computador entonces compra software contable[Soporte = 2%, Confidencia = 60%] (Regla 1)

El soporte y la confidencia son dos criterios de medida interesantes que refle-jan, respectivamente, la utilidad y certeza de la regla. Un soporte del 2% indicaque este porcentaje de todas las transacciones bajo análisis muestran que elcomputador y el software contable son comprados conjuntamente. Una con-fidencia del 60% muestra que este porcentaje de los clientes que compran com-putadores adquieren también software contable. Las reglas de asociación sonapropiadas si satisfacen el valor del mínimo soporte (min_sop) y de la mínimaconfidencia (min_conf).

El soporte y la confidencia para la regla si A entonces B está dada por:

soporte(A B) = P(A U B) (Ecuación 1)

confidencia(A ⇒B) = P(B | A) = soporte(A U B ) / soporte(A) (Ecuación 2)

El soporte de una regla dice qué tan a menudo es aplicable esta regla. En mu-chos casos, las reglas con bajo soporte no son de interés, esta suposición es unhecho asumirla en la definición de la búsqueda de reglas de asociación. Laprecisión de una regla no es necesariamente un buen indicador. Por ejemplo,considere una aplicación médica donde la regla obtenida indica que el emba-razo implica que el paciente sea una mujer con una exactitud del 100%. Unaregla con una precisión del 100% puede ser tan interesante como una regla conun 0% de exactitud (Hand, 2001).

Page 6: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

572

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

El interés debe centrarse en el descubrimiento de reglas que tienen un altosoporte; por lo tanto, independientemente de donde surjan, se buscan paresatributo-valor que cubran gran cantidad de instancias. Ellos se conocen comoítemsets, y cada par atributo-valor como ítem. Si un ítemset satisface el min_sop,entonces se le llama ítemset frecuente.

La respuesta a la pregunta: ¿cómo se encuentran reglas de asociación para laminería de datos?, se encuentra en la ejecución de dos pasos:

� Hallar todos los ítemsets frecuentes.

� Generar los valores de las reglas de asociación a partir de los ítemsetsfrecuentes.

Las reglas de asociación pueden ser clasificadas en varios grupos, de acuerdocon los siguientes criterios:

� Con base en los tipos de valores que manejan las reglas: si una regla serefiere a asociaciones entre la presencia o ausencia de un ítem, se trata deuna regla de asociación booleana (este tipo de reglas son las empleadas enUDAssociate). La Regla 1, presentada anteriormente, es de este tipo.

� Si una regla describe asociaciones entre ítems cuantitativos o atributos,entonces se dice que es una regla de asociación cuantitativa; para mayorinformación remítase a Demoya 2003.

� Con base en las dimensiones de datos que involucra una regla: si en losítems o atributos de una regla de asociación se referencia sólo en unadimensión, se trata de una regla de asociación de dimensión simple. Alreescribir la Regla 1 se tiene:

compra(X, “computador”) ⇒ compra(X, “software contable”) (Regla 2)

La Regla 2 es de dimensión simple porque referencia solo una dimensión: lacompra. Si se referencian dos o más dimensiones, se dice que es una regla deasociación multidimensional, como por ejemplo la Regla 3.

Page 7: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

573

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

� Con base en los niveles de abstracción que involucra la regla: algunosmétodos para encontrar reglas de asociación pueden descubrir reglas condiferentes niveles de abstracción. Por ejemplo, las reglas 3 y 4, son reglasde esta categoría.

edad(X, “20…30”) ⇒ compra(X, “computadores portátiles”) (Regla 3)

edad(X, “20…30”) ⇒ compra(X, “computadores”) (Regla 4)

En este artículo sólo se especifica acerca de reglas de asociación boolenas; losdemás grupos de reglas, serán tratados en trabajos futuros.

A continuación se mencionan algunos aspectos acerca de la importancia de lasreglas asociación para el apoyo a la toma decisiones:

� La clasificación ayuda a descubrir un conjunto de reglas en una base dedatos para formar un clasificador con un determinado margen de error.Las reglas de asociación encuentran todas las reglas existentes en una basede datos que satisfacen algunas restricciones con mínimo soporte y míni-ma confidencia. Para una regla de asociación el objetivo a descubrir noestá predeterminado, este se descubre mediante la experimentación y lageneración de las reglas.

� Los sistemas que generan reglas de asociación son particularmente valio-sos para aplicaciones en las cuales la precisión y la comprensión de losmodelos generados son importantes, esto se logra gracias al manejo delsoporte y la confidencia. Del mismo modo, se destacar su fácil compren-sión e interpretación por parte del minero, dado que utilizan un lenguajede descripción de ejemplos de la forma “sí ...... entonces ......”.

� Otro aspecto a contemplar es la Minería de Datos Indirecta6 , la cual esmuy importante cuando se implementa en grandes conjuntos de datos yse desconoce el orden de estos. En este sentido, las reglas de asociación son

6 La Minería de Datos Indirecta realiza preguntas para identificar patrones en los datos, que puedenser significativos.

Page 8: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

574

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

una técnica apropiada para obtener y analizar datos, brindando resulta-dos claros (Berry, 1997).

� Las reglas de asociación pueden tomar datos con longitud variable, sinnecesidad de resumirlos7 y permiten tomar transacciones sin ser necesariamás información. Otras tareas, como clasificación y clustering, requierende formatos específicos, sin embargo esta no es una manera natural depresentar los ítems en una transacción.

� El costo computacional empleado por las reglas de asociación es simple,pero este costo aumenta rápidamente con el número de transacciones y elanálisis de ítems diferentes. Los problemas pequeños pueden trabajarseen una hoja de cálculo. Esto hace que las reglas de asociación sean máscómodas de utilizar, por ejemplo, frente a los algoritmos genéticos o a lasredes neuronales artificiales (Berry, 1997).

� Comparando reglas de asociación frente a árboles de decisión, la ventajade las reglas de asociación con respecto a este tipo árboles, es que el análi-sis de asociación puede existir en cualquiera de los atributos de una basede datos. Los algoritmos de árboles de decisión pueden generar reglas consolo una conclusión; por consiguiente se destaca el esfuerzo de losalgoritmos de asociación para generar reglas con múltiples conclusiones(Mena, 1999).

� Por otro lado, existen estudios y desarrollos alternativos en los cuales sehan combinado reglas de asociación con lógica difusa para determinar elgrado de soporte y de confidencia; a esta combinación se les ha denomina-do reglas de asociación difusas (Ortiz, 2004).

2 ¿POR QUÉ UDASSOCIATE?

UDAssociate se desarrolló con el fin de investigar e indagar en un tema relati-vamente nuevo en nuestro medio (Colombia) y de brindar a futuro una solu-ción fiable al problema que representa el manejo y clasificación de grandes

7 El resumen de datos en Minería de Datos, se refiere a aplicar alguna tarea de sumarización.

Page 9: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

575

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

volúmenes de datos, sin que esto genere complicaciones o dificultades para lasorganizaciones. Esta herramienta es importante, por un lado, en empresasdedicadas al análisis de mercado (por ejemplo, cadenas de almacenes), y porotro, en la academia, dado que puede ser utilizada en cursos de Minería deDatos para explicar o abordar la tarea de asociar datos.

Se manejan reglas de asociación porque, en primer lugar, es un modelo relati-vamente fácil de interpretar para las personas (directivos, jefes de departa-mento, gerentes) que toman decisiones y de implementar para losdesarrolladores de software. En segundo lugar, porque estas ofrecen resulta-dos confiables debido a la incorporación del algoritmo A priori y al grado deveracidad que este implica, ya que realiza una búsqueda exhaustiva8 dentro delos datos para generar reglas claras que satisfagan las necesidades del usuario.

Las herramientas desarrolladas en Colombia para Minería de Datos son limi-tadas9 ; con UDAssociate se busca ofrecer una herramienta funcional en elámbito académico, dejando abierta la posibilidad de que las organizacionesinteresadas amplíen su desarrollo, y la puedan utilizar para el apoyo a la tomade decisiones en algunas de las tareas que realicen.

Otra característica importante en este desarrollo es ampliar el campo de apli-cación de la Minería de Datos, concretamente la tarea de asociación, puesactualmente la principal implementación de las reglas de asociación se en-cuentra en el análisis de mercado.

3 ¿CÓMO SE DESARROLLÓ UDASSOCIATE?

Uno de los procedimientos comúnmente utilizados en la asociación de datos esel algoritmo A priori (tabla 1). El objetivo de los algoritmos de búsqueda dereglas de asociación, es encontrar todas las reglas que satisfacen la condiciónde confidencia y soporte mínimo, dada por el minero. Esto es necesario por

8 Se recomienda manejar con cautela este tipo de búsqueda, dado que su costo computacional puede

llegar a ser muy alto, dependiendo de la cantidad de datos a minar.

9 La mayoría de desarrollos locales y nacionales se han dado en el ámbito académico; sin embargo nose desconoce el esfuerzo que algunas empresas de software ha hecho en construir herramientas enesta área.

Page 10: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

576

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

cuanto si no es así la búsqueda se haría exhaustiva, encontrándose al final unaexplosión en el número de reglas generadas.

El algoritmo A priori satisface los requerimientos de las grandes bases de datosy de hecho se ha convertido en referencia obligada en esta área; éste consta dedos pasos (Han, 2001):

� Encontrar todos los conjuntos frecuentes de ítems, es decir, todos aquellossubconjuntos que cumplen con la condición soporte ≥ mínimo soporte.

� Usar los conjuntos frecuentes de ítems obtenidos para generar reglas quecumplan con la condición confidencia = mínima confidencia.

Con base en lo anterior, pueden surgir dos preguntas: - ¿cómo formar conjun-tos candidatos?, y - ¿cómo hallar los candidatos frecuentes?. El primer interro-gante es fácil de resolver de una forma satisfactoria. Suponga que tiene unacolección de conjuntos frecuentes L

i, y desea hallar todos los conjuntos Y de

tamaño i+1 que posiblemente puedan ser frecuentes; esto es, todos lossubconjuntos Y son frecuentemente apropiados. Esto se puede hacer encon-trando todos los pares {U, V} de conjuntos a partir de L

i, tales que la unión de

U y V tienen tamaño i+1, y con esto se prueba que la unión es realmente uncandidato potencial. Hay menos conjuntos |L

i|2 que conjuntos L

i, y para cada

uno de ellos se tiene que examinar si se presenta otro conjunto |Li|. El orden de

complejidad en el peor de los casos es aproximadamente O(n3), para un tama-ño L

i. En la práctica el algoritmo se ejecuta en un tiempo lineal con respecto a

un tamaño Li (Hand, 2001).

Dado un conjunto de candidatos Ci, su frecuencia puede ser evaluada en sólo

un paso a través de la base de datos. Simplemente se guarda un contador paracada candidato y se incrementa el contador para cada registro (fila) que con-tenga el candidato. El tiempo computacional empleado para el candidato C

i es

O(|Ci|np), si la prueba es implementada de manera trivial. Adicionalmente,

pueden utilizarse técnicas estructuradas para agilizar el proceso.

El tiempo computacional total utilizado para encontrar los conjuntos fre-

cuentes es ( )∑i i

npO C el cual es proporcional al producto del tamaño de

Page 11: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

577

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

los datos (np) y el número de conjuntos que son candidatos sobre cualquiernivel. El algoritmo necesita k ó k+1 pasos a través de los datos, donde k es elnúmero de elementos en el conjunto frecuente más grande (Hand, 2001).

Existen algunas variantes del algoritmo básico de reglas de asociación. Losmétodos comúnmente se orientan hacia uno o más de los siguientes tres obje-tivos: - minimizar el número de pasos a través de los datos, - minimizar elnúmero de candidatos que se desean examinar, y – minimizar el tiempocomputacional requerido para calcular la frecuencia de los candidatos.

En resumen, el algoritmo a priori se basa en que si un conjunto de ítems cum-ple con la condición de soporte mínimo, entonces todo subconjunto de estetambién la cumplirá, en realidad se usa el contra-recíproco, cuando se obtieneun conjunto de ítems se examina si todos los subconjuntos de éste, medidos enla iteración anterior cumplen con la condición de mínimo soporte; si se en-cuentra alguno que no la cumple se puede concluir, «A priori», que dichoconjunto no la cumplirá y por tanto no es necesario medirlo.

Tabla 1. Algoritmo A priori (Demoya, 2003)

Algoritmo: A priori. Encuentra los ítemsets frecuentes.Entradas: Transacciones de una base de datos D; min_sopSalidas: L, ítemsets frecuentes de la base de datos D.Método:(1) L

1 = encontrar_1-ítemsets_frecuente(D);

(2) Para (k=2; Lk-1

¹Æ; k++){(3) C

k = generar_A priori(L

k-1, min_sop);

(4)Para cada transacción t Î D{ // examinar D para el contador(5)C

t = subconjuntos(C

k-t) // obtener los subconjuntos t que son

candidatos(6) Para cada candidato c Î C

t

(7) c.contador++(8) fin-para(9)L

k = {c Î C

k | c.contador ³ min_sop}

(10) fin-para(11) retornar L = U

kL

k;

Page 12: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

578

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

función generar_A priori(Lk-1

: (k-1)-ítemsets frecuentes; min_sop: mínimo soporte)(1) Para cada ítemset l

1 Î L

k-1

(2)Para cada ítemset l2 Î L

k-1

(3)Si (l1[1] = l

2[1] Ù (l

1[2] = l

2[2]) Ù … Ù ( l

1[k-2] = l

2[k-2]) Ù

(l1[k-1] < l

2[k -1]))

Entonces{(4 )c = l

1 X l

2; //generar candidatos

(5) Si subconjunto_infrecuente(c, Lk-1

) Entonces(6) eliminar c;(7) Si No(8) adicionar c a C

k

(9) fin-para(10) retornar C

k;

función subconjunto_infrecuente(c : k-ítemset candidato; Lk-1

:(k-1)-ítemset frecuente)(1) Para cada (k-1)-subconjunto s de c(2) Si (s Ï L

k-1) Entonces

(3) retornar Verdadero;(4) retornar Falso;

Por otro lado, se utilizó la metodología de desarrollo de software orientada aobjetos PUD (Proceso Unificado de Desarrollo), se trabajó la notación UML10

(Booch, 1999). Se seleccionó para la codificación el lenguaje de programaciónJava versión J2SE (Java Second Standard Edition) por ser un lenguaje de pro-gramación orientado a objetos y multiplataforma; característica que lo hacesobresalir con respecto a otros lenguajes de programación.

Para ilustrar más claramente las tareas que realiza UDAssociate, se muestra eldiagrama de casos de uso (figura 1). En este se plasma fundamentalmente latarea de asociación, de la siguiente forma:

10 Lenguaje de Modelado Unificado.

Page 13: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

579

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

� La generación de ítemsets, se hace a partir de la determinación del míni-mo contador de soporte para cada transacción11 .

� La obtención de ítemsets frecuentes selecciona las transacciones que cum-plen con el mínimo contador de soporte, descartando las que no cumplen.

� La generación de reglas se deduce con base en el último conjunto de ítemsetsfrecuentes. Obtenidas las reglas, se seleccionan aquellas que igualen o so-brepasen la mínima confidencia, dada por el minero, y finalmente se pre-sentan al usuario (experto en un área) para apoyar de esta forma la tomade decisiones.

11 Cada transacción se representa por cada uno de los registros o muestras contenidas en la base dedatos.

Preprocesar

Configurar

Cargar Datos

Guardar Resultados

Cargar Reglas

Generar Itemset

Generar Itemset Frecuente

Asociar

<<include>>

<<include>>

Generar Reglas

<<include>>

Minero

M ostrar Arbol

M ostrar Reglas<<extends>>

Figura 1. Modelo de casos de uso

Page 14: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

580

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

4 ¿CÓMO FUNCIONA?

Antes de iniciar con la explicación del proceso de asociación, se dan algunasespecificaciones de los requerimientos de software y la forma de instalarUDAssociate, estos son: - el software desarrollado es multiplataforma(Windows, Unix, Linux, …), por tanto el único requisito es tener instalada lamáquina virtual de JAVA, - la instalación consiste en copiar el archivo conextensión *.JAR y los archivos de ayuda.

Por otro lado, se recomienda que las especificaciones mínimas del computa-dor a utilizar sean: - Pentium IV, y - 256 MB en memoria RAM.

Una vez se haya instalado el software, se puede iniciar con la utilización de éste.A continuación se explica brevemente cómo funciona: UDAssociate manejaarchivos con extensión *.ENT (tipo texto), el archivo no requiere formatoalguno ni discriminación de los datos, se maneja un número ilimitado de tran-sacciones y estas a su vez no requieren una cantidad de ítems12 igual. Se aclaraque el generar reglas de asociación no implica búsqueda de resultados dirigi-dos a una clase en particular, por tanto no es necesario asignar un atributo conesta finalidad.

Para el proceso de obtención de reglas, como se ha mencionado, UDAssociateimplementa el algoritmo A priori, realizando una búsqueda exhaustiva13 . Elproceso implica, en primera instancia la generación de un conjunto de ítemsets(figura 2), luego se obtienen los ítemsets frecuentes, seleccionados con base enel criterio del contador mínimo de soporte.

Obtenidos los ítemsets frecuentes, se generan las reglas, a partir de la medidade confidencia, como se describe en el numeral 1. En la figura 3 se muestranalgunas reglas obtenidas de un conjunto de datos compuesto por 400 transac-ciones, cada una con máximo 10 ítems. Para este ejemplo, se estableció uncontador de soporte mínimo de 30% y una confidencia de 60%.

12 Los ítemes incluidos en cada transacción deben ser de tipo nominal; para casos en los que seencuentren datos de tipo numérico, existen dos opciones: - eliminar este ítem ó aplicar discretización,durante la fase de preprocesamiento.

13 La búsqueda exhaustiva se realiza por todo el espacio de un problema.

Page 15: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

581

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

Finalmente, el minero (gerente, jefe de ventas, directivo, …) utiliza las reglascon mayor grado de confidencia para apoyar la toma de decisiones del área encuestión.

Figura 2. Proceso de obtención de ítemsets.

Figura 3. Obtención de reglas a partir del índice de confidencia mínima

Page 16: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

582

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

5 PRUEBAS Y ANÁLISIS DE RESULTADOS

Las pruebas se realizaron comparando los resultados generados porUDAssociate con los generados por las herramientas WEKA14 Y CBA15 .

Los datos utilizados en las pruebas se tomaron del repositorio dewww.datalab.uci.edu/data/mldb-sgi/data/

PRUEBA 1

Esta prueba se realizó con el archivo propuesto por HAN (tabla 2). Es unejemplo sencillo y general, consta de 4 atributos y 9 transacciones.

Tabla 2. Conjunto de patrones (tomado del libro Han, 2001)

Para este proceso se utilizó, como parámetros de soporte y confidencia, un20% para cada medida. Los resultados obtenidos son: - con relación al tiempo(figura 4), tanto WEKA como UDAssociate emplearon el mismo tiempo, - encuanto a los ítemsets frecuentes (figura 5) generados, se observa que WEKA yCBA generan el mismo número. UDAssociate genera 13 ítemsets frecuentes

p1 p2 P5

p2 p4

p2 p3

p1 p2 P4

p1 p3

p2 p3

p1 p3

p1 p2 P3 p5

p1 p2 P3

14 Entorno para el análisis de conocimiento WAIKATO, desarrollada en la Universidad de Nueva Zelanda

15 Clasificación basada en asociación, desarrollada en la Universidad de Singapur

Page 17: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

583

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

que son los que realmente se deben generar16 , - las reglas generadas se observanen la figura 6, se aclara que CBA sólo produce hasta los ítemsets frecuentes, portal razón no genera reglas; del mismo modo, UDAssociate genera más reglasque WEKA, pues como se menciona antes, UDAssociate obtiene más ítemsetsfrecuentes.

Figura 4 Gráfica de tiempo para el archivo HAN

Figura 5 Gráfica de ítemsets frecuentes para el archivo HAN

Figura 6 Gráfica de reglas para el archivo HAN

PRUEBA 2

Los datos utilizados son del archivo ZOO, este contiene los atributos de clasi-ficación de especies animales (por ejemplo, plumas, nombre del animal, hue-vos, leche, alas, acuático, depredador, … ). Consta de 17 atributos y 101

16 Este número de ítemesets frecuentes se corroboró con una prueba de escritorio, obteniendo losmismos 13 ítemesets frecuentes generados por UDAssociate, también se corrobora con los datossuministrados por HAN 2001.

0

0.5

1

1.5

2

Tiempo en Segundos

Weka

CBA

UDAssociate

1

3

5

7

9

11

13

Itemsets Frecuentes

Weka

CBA

UDAssociate

Items que seDeberianGenerar

0

5

10

15

20

25

Reglas Generadas

Weka

CBA

UDAssociate

Page 18: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

584

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

transacciones. Tanto para el soporte como para la confidencia se utilizó un50%. En la figura 7 se observa que el tiempo empleado por UDAssociate essuperior al de las dos herramientas en mención, aunque la diferencia es míni-ma. Las figuras 8 y 9 muestran que el comportamiento de UDAssociate y WEKAes el mismo; mientras que, al igual que en las demás pruebas, CBA no generareglas.

Figura 7 Gráfica de tiempo para el archivo ZOO

Figura 8 Gráfica de ítems para el archivo ZOO

PRUEBA 3

La tercera prueba se realizó con el archivo ASSOCSAM, en el que se almacenandatos de aleaciones (color, textura, compuestos químicos, …).

Este archivo tiene 39 atributos y 898 patrones. Se probó con un soporte del90% y una confidencia del 90%. En este ejemplo se observa que el comporta-miento (figuras 10, 11, 12) de las 3 herramientas es igual en cuanto a la genera-ción de ítemsets frecuentes y reglas, salvo las reglas generadas por CBA.

0

0,5

1

1,5

2

2,5

Tiempo en Segundos

Weka

CBA

UDAssociate

1

51

101

151

201

Itemsets Frecuentes

Weka

CBA

UDAssociate

Items que seDeberianGenerar

Page 19: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

585

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

Figura 9 Gráfica de reglas para el archivo ZOO

Las 3 herramientas utilizan para asociación el algoritmo A priori, el cual sebasa en la generación de ítemsets frecuentes, condicionado por las medidas desoporte y confidencia. Sin embargo WEKA utiliza otras medidas, como son:una constante delta, un parámetro de convicción, mínimo y máximo conta-dor de soporte, y permite definir el número de reglas a generar. Por lo anterior,en algunos ejemplos los resultados difieren en cierta medida con respecto a losresultados generados por UDAssociate.

Figura 10 Gráfica de tiempo para el archivo ASSOCSAM

Figura 11 Gráfica de ítemsets frecuentes para el archivo ASSOCSAM

0

200

400

600

800

1000

1200

Reglas Generadas

Weka

CBA

UDAssociate

0

0.5

1

1.5

2

Tiempo en Segundos

Weka

CBA

UDAssociate

123456789

ítemsets frecuentes

Weka

CBA

UDAssociate

Items que seDeberianGenerar

Page 20: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

586

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

Figura 12 Gráfica de regla para el archivo ASSOCSAM

6 CONCLUSIONES

� El campo de aplicación de las reglas de asociación no se ve restringido auna sola área del conocimiento17 , porque puede ser implementada en lastelecomunicaciones, en la medicina, en marketing, etc. La finalidad de lasreglas es encontrar soluciones respecto a la clasificación de información;razón por la cual se puede afirmar que la herramienta desarrollada es depropósito general, desde el contexto de la Minería de Datos.

� Los potenciales usuarios de UDAssociate, están dados por gerentes, jefesde cartera, analistas de mercadeo, entre otros. Sin embargo, esta herra-mienta se puede utilizar en cursos de Minería de Datos, ampliando de estaforma los usuarios beneficiados.

� Con base en las pruebas hechas y en la teoría existente, se concluye que elorden de complejidad del algoritmo A priori depende de la cantidad dedatos y de la relación que existe entre ellos. Por consiguiente, se recomien-da utilizar un hardware con buenas características, dado que cuando setrate con problemas con un alto número de transacciones, la complejidadcomputacional se incrementa notablemente.

� Se destaca la construcción de este software como un avance de investiga-ción al proyecto UDMiner, y un aporte al desarrollo de este tipo de herra-mientas en el ámbito colombiano; sin desconocer las herramientasexistentes.

0

2

4

6

8

10

12

14

Reglas Generadas

Weka

CBA

UDAssociate

17 La mayor aplicación de las reglas de asociación se ve inclinada hacia áreas relacionadas con el análisisde mercadeo.

Page 21: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

587

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

7 TRABAJOS FUTUROS

� Implementar algoritmos para la generación de reglas de asociaciónmultidimensionales y multinivel.

� Incluir conceptos de la teoría de conjuntos difusos en los procesos de Mi-nería de Datos, con el fin de obtener resultados más cercanos al pensa-miento natural.

� Implementar un árbol de patrones frecuentes (con p ramificaciones18 )con el fin de organizar los candidatos, y de esta forma reducir la comple-jidad computacional.

REFERENCIAS BIBLIOGRÁFICAS

AGRAWAL, R. AGRAWAL, C. and PRASAD, V. (2000). A tree projectionalgorithm for generation of frequent ítemsets. USA, Journal of Paralleland Distributed Computing (Special Issue on High Performance DataMining).

BERRY, M and LINOFF, G. (1997). Data Mining Techniques. USA, JohnWiley & Sons, Inc.

BOOCH, G. RUMBAUGT, J. JACOBSON, I. (1999). Lenguaje de Mode-lado Unificado. España, Addison Wesley.

DE MOYA, E. y RODRÍGUEZ, J. (2003). La contribución de las reglas deasociación a la Minería de Datos. Colombia, Tecnura ISSN 0123-92X –Año 7 No. 13.

HAN, J. and KAMBER, M. (2001). Data Mining “Concepts andTechniques”. USA, Morgan Kauffman Publishing.

18 El número de ramificaciones del árbol frecuente está dado por el número de variables (atributos).Para cada variable A, el nodo hijo (descendiente) de la raíz del árbol etiquetado con A contieneaquellos candidatos de quienes la primera variable es A (según la clasificación de las variables). Elnodo hijo llamado A, es construido de forma recursiva.

Page 22: asociación de datos “UDAssociate”cidc.udistrital.edu.co/investigaciones/documentos/revistacientifica... · cir, exploran las propiedades de los datos examinados. Las tareas de

588

Inge

nier

ías

CENTRO DE INVESTIGACIONES Y DESARROLLO CIENTÍFICO

HAND, D., MANNILA, H. and SMYTH, P. (2001). Principles of DataMining. USA, The MIT Press.

HERNÁNDEZ, J., RAMÍREZ, J. y FERRI, C. (2004). Introducción a laMinería de Datos. España, Pearson.

HERVAS-MARTÍNEZ, C., ROMERO, C. y VENTURA, S. (2004). Compa-ración de medidas de evaluación de reglas de asociación. España, Depar-tamento de Informática y Análisis Numérico, Universidad de Córdoba.

KANTARDZIC, M. (2003). Data Mining. USA, IEEE Press.

MENA, J. (1999). Data Mining Your Website. USA, Digital Press.

ORTÍZ, J. y GARCÍA, J. (2004). Minería de datos difusa: descubrimientode reglas de asociación difusas. Colombia, Revista Vínculos, ISSN 1794-211X - AÑO 1, Volumen 1.