Las reglas de asociación introducen incertidumbre (probabilidades) a las reglas de los Sistemas Basados en Reglas.
Las asociaciones son relaciones de co-ocurrencia entre elementos:
Donde:
- El soporte representa el porcentaje de transacciones en que contienen . Mide la frecuencia de la regla.
- La confianza representa el porcentaje de transacciones en que contienen e . Mide la predictibilidad de la regla.
El conteo de soporte de es .
El objetivo es, dado un conjunto de transacciones , encontrar todas las reglas de asociación en en cuyos valores de soporte y confianza sean iguales o mayores a los establecidos por el usuario.
El problema está en encontrar todas las reglas. Existen varios algoritmos para esto, y todos dan el mismo conjunto de reglas.
Algoritmo A Priori
Este algoritmo trabaja en dos pasos:
- Crear el conjunto de items frecuentes, es decir filtrados por soporte mínimo.
- Generar todas las reglas de asociación confiables, es decir filtradas por la confianza mínima.
Se asume que los items en están ordenados lexicográficamente. La propiedad de cierre hacia abajo (downward closure) dice que, si un itemset contiene soporte mínimo, entonces todos sus subconjuntos no vacíos también lo contienen. Esto poda un gran número de itemsets y hace eficiente al algoritmo.
El algoritmo puede funcionar con mucha cantidad de datos ya que solamente tiene en cuenta items en cada pasada (lo que se conoce como level-wise search).
Una vez generado el conjunto de todos los itemsets frecuentes filtrados por soporte mínimo, se generan todas las reglas de asociación confiables (filtradas por la confianza mínima).