Está en la página 1de 4

Reglas de Asociación y Dependencias

En minería de datos y aprendizaje automático, las reglas de asociación se utilizan para


descubrir hechos que ocurren en común dentro de un determinado conjunto de datos.1
Se han investigado ampliamente diversos métodos para aprendizaje de reglas de
asociación que han resultado ser muy interesantes para descubrir relaciones entre
variables en grandes conjuntos de datos.

Piatetsky-Shapiro2 describe el análisis y la presentación de reglas 'fuertes' descubiertas en


bases de datos utilizando diferentes medidas de interés. Basado en el concepto de regla
fuerte, Agrawal et al.3 presentaron un trabajo en el que indicaban las reglas de asociación
que descubrían las relaciones entre los datos recopilados a gran escala en los sistemas de
terminales de punto de venta de unos supermercados. Por ejemplo, la siguiente regla:

Encontrada en los datos de ventas de un supermercado, indicaría que un consumidor que


compra cebollas y verdura a la vez, es probable que compre también carne. Esta
información se puede utilizar como base para tomar decisiones sobre marketing como
precios promocionales para ciertos productos o dónde ubicar éstos dentro del
supermercado. Además del ejemplo anterior aplicado al análisis de la cesta de la compra,
hoy en día, las reglas de asociación también son de aplicación en otras muchas áreas como
el Web mining, la detección de intrusos o la bioinformática.

Para ilustrar estos conceptos véase el siguiente ejemplo sobre ventas en un


supermercado. El conjunto de items es:

A la derecha se muestra una pequeña base de datos que contiene los items, donde el
código '1' se interpreta como que el producto (item) correspondiente está presente en la
transacción y el código '0' significa que dicho producto no está presente. Un ejemplo de
regla para el supermercado podría ser:
Significaría que si el cliente compró 'leche' y 'pan' también compró 'mantequilla', es decir,
según la especificación formal anterior se tendría que:

Vamos a estudiar ahora los datos del hundimiento del Titanic. Los datos se encuentran en
el fichero “titanic.arff” y corresponden a las características de los 2.201 pasajeros del
Titanic. Estos datos son reales y se han obtenido de: "Report on the Loss of the ‘Titanic’
(S.S.)" (1990), British Board of Trade Inquiry Report_ (reprint), Gloucester, UK: Allan
Sutton Publishing.

Para este ejemplo sólo se van a considerar cuatro variables:

• Clase (0 = tripulación, 1 = primera, 2 = segunda, 3 = tercera)

• Edad (1 = adulto, 0 = niño)

• Sexo (1 = hombre, 0 = mujer)

• Sobrevivió (1 = sí, 0 = no)

Para ello, vamos a ver que reglas de asociación interesantes podemos extraer de estos
atributos. Para ejecutar los métodos en Weka de reglas de asociaciación, seleccionamos la
ventana de associate.
Entre otros, este sistema de minería de datos provee el paquete
“WEKA.associations.Apriori” que contiene la implementación del algoritmo de aprendizaje
de reglas de asociación Apriori. Podemos configurar este algoritmo con varias opciones:
con la opción “UpperBoundMinSupport” indicamos el límite superior de cobertura
requerido para aceptar un conjunto de ítems. Si no se encuentran conjuntos de ítems
suficientes para generar las reglas requeridas se va disminuyendo el límite hasta llegar al
límite inferior (opción “LowerBoundMinSupport”). Con la opción “minMetric” indicamos la
confianza mínima (u otras métricas dependiendo del criterio de ordenación) para mostrar
una regla de asociación; y con la opción “numRules” indicamos el número de reglas que
deseamos que aparezcan en pantalla. La ordenación de estas reglas en pantalla puede
configurarse mediante la opción “MetricType”, algunas opciones que se pueden utilizar
son: confianza de la regla, lift (confianza divido por el número de ejemplos cubiertos por la
parte derecha de la regla), y otras más elaboradas.

Mejora de la confianza: "Lift"


El indicador lift expresa cuál es la proporción del soporte observado de un
conjunto de productos respecto del soporte teórico de ese conjunto dado el
supuesto de independencia. Un valor de lift = 1 indica que ese conjunto aparece
una cantidad de veces acorde a lo esperado bajo condiciones de independencia.
Un valor de lift > 1 indica que ese conjunto aparece una cantidad de veces
superior a lo esperado bajo condiciones de independencia (por lo que se puede
intuir que existe una relación que hace que los productos se encuentren en el
conjunto más veces de lo normal). Un valor de lift < 1 indica que ese conjunto
aparece una cantidad de veces inferior a lo esperado bajo condiciones de
independencia (por lo que se puede intuir que existe una relación que hace que
los productos no estén formando parte del mismo conjunto más veces de lo
normal).

Veamos las reglas que extrae este algoritmo tomando los valores por defecto:
En cada regla, tenemos la cobertura de la parte izquierda y de la regla, así como la
confianza de la regla. Podemos conocer alguna regla interesante aunque otras los son
menos. Por ejemplo, la regla 1 indica que, como era de esperar toda la tripulación es
adulta. La regla 2 nos indica lo mismo, pero teniendo en cuenta a los varones. Parecidas
conclusiones podemos sacar de las reglas 4, 5 y 6. La regla 3 nos indica que los varones
que murieron fueron en su mayoría adultos (97%). La regla 7 destaca que la mayoría que
murieron fueron adultos (97%). Y finalmente la 10 informa que la mayoría de los muertos
fueron hombres (92%). Cabe destacar que la calidad de las reglas de asociación que
aprendamos muchas veces viene lastrada por la presencia de atributos que estén
fuertemente descompensados. Por ejemplo, en este caso la escasa presencia de niños
provoca que no aparezcan en las reglas de asociación, ya que las reglas con este ítemset
poseen una baja cobertura y son filtradas. Podemos mitigar parcialmente este fenómeno
si cambiamos el método de selección de reglas.

También podría gustarte