Software y association rules 2010

Download Report

Transcript Software y association rules 2010

Software Association Rules
4/13/2015
Maestria en Data Mining
1
Agenda



Weka
R
Apriori
4/13/2015
Maestria en Data Mining
2
Weka


Tiene implementados 3 algoritmos vinculados a
Association Rules
 Apriori
 Tertius
 Predictive Apriori
Los dos últimos son de tipo “predictivo”
4/13/2015
Maestria en Data Mining
3
Weka –Parámetros Apriori



Car: indica que se trata de “clasification association rule”,
funciona en conjunto con classindex que indica cual es la
variable a predecir
Tiene un rango para el min support y el parámetro ”Delta”
indica en cuanto se baja el min support en una iteración si
no se alcanza el numero deseado de reglas
significance level : Apriori usa un test de chi-cuadrado
para determinar si la relación entre X e Y es
estadisticamente significativa. Se rechazan aquellos
casos en los que la probabilidad de chi-cuadrado sea
menor que la establecida en este parámetro
4/13/2015
Maestria en Data Mining
4
Weka –Metric Type

Indica la métrica que se va a utilizar para ordenar los
resultados. Además de la confianza están
 leverage (L -> R)
 Pr(L,R) - Pr(L).Pr(R).
 Mide la diferencia que hay entre los casos cubiertos
por el itemset y la que se debería haber esperado si
los sucesos eran independientes
 Lift (L -> R)
 (P(LR)/(P(L)*P(R))
 Conviction (L -> R)
 (1 − sup(R))/(1 − confidence(L -> R))
 Mide las veces que A ocurre sin B
4/13/2015
Maestria en Data Mining
5
Weka –Varios



Para poder procesar los datos referidos a las clásicas
compras del supermercado es necesario que los datos
tengan el formato de una matriz, donde las filas
representan las compras y las columnas los productos.
En las columnas correspondientes a los productos que se
encuentran en una transaccion debe aparecer un 1
(TRUE) y si bien la documentacion dice que en los demás
debe haber un 0 ( FALSE) la heurísitca demuestra que es
necesario colocar un “?”
En la versión 3.5.6 no permite utilizar atributos numéricos
para reglas de asociación generalizadas , pero eso esta
resuelto en al versión 3.5.7
4/13/2015
Maestria en Data Mining
6
Agenda



Weka
R
Apriori
4/13/2015
Maestria en Data Mining
7
R


Es necesario instalar los packages
 Arules
 Matrix ( necesario para ejecutar el anterior)
 En el servidor de ftp estan las versiones que se
pueden usar con el software del laboratorio. Sino
pueden instalarlo directamente desde internet
 En el archivo arules.pdf está el help
correspondiente al package
Una vez instalados antes de usarlos hay que
cargarlos
4/13/2015
Maestria en Data Mining
8
R

Tiene implementados 2 algoritmos de association
rules
 Apriori
 Eclat
4/13/2015
Maestria en Data Mining
9
R


Pueden encontrar detalles sobre la implementación
de estos algoritmos en R en :
 “Introduction to arules Mining Association Rules
and Frequent Item Sets”, Michael Hahsler and
Bettina Grün and Kurt Hornik ( arules_paper.pdf)
 “Efficient Implementations of Apriori and Eclat”,
Christian Borgelt ( fimi_03.pdf)
El algoritmo ECLAT está descripto en :
 “Scalable Algorithms for Association Mining”,
Mohammed J. Zaki ( k0372.pdf)
4/13/2015
Maestria en Data Mining
10
Parámetros


Apriori recibe 4 parámetros :
 Datos
 Parámetros de ejecución del algoritmo ( confianza, y
muchos más)
 Apariencia: restricciones en las reglas que son generadas
por apriori ( por ejemplo que atributos quiero que aparezcan
del lado izquierdo, derecho., etc.)
 Control : impactan sobre la forma de ejecución del algoritmo
( por ejemplo maximizar memoria o velocidad, etc)
Eclat recibe 3 parámetros :
 Datos
 Parámetros de ejecución del algoritmo
 Control
4/13/2015
Maestria en Data Mining
11
Parámetros de ejecución

Comunes a ambos algoritmos
 Support:
 minlen: mínimo número de items por itemset
 maxlen: máximo número de items por itemset
 target: Tipo de asociación a buscar





4/13/2015
"frequent itemsets"
"maximally frequent itemsets"
"closed frequent itemsets"
"rules" (Sólo Apriori)
ext: variable boolena indicando si se va a dar informacion
adicional sobre las medidas de calidad
Maestria en Data Mining
12
Parámetros Apriori






Confidence
smax: valor para el máximo soporte ( default 1)
arem: indicador de medidas adicionales de calidad a utilizar (default: "none“)

"none“:

"diff": absolute confidence difference

"quot": difference of confidence quotient to 1

"aimp": absolute difference of improvement to 1

"info": information difference to prior

"chi2": normalized chi^2 measure
aval: indicador boolenao para establecer si se desea mostrar las medidas
adicionales de calidad.
arem. minval: mínimo valor para la medida adicional establecida(default: 0.1)
originalSupport: indicador boolenao para establecer si se desea calcular el
soporte de la forma tradicional o sólo utilizando la parte izquierda de las reglas
4/13/2015
Maestria en Data Mining
13
Parámetros Eclat

tidLists: indicador booleano para establecer si se
desea mostrar el conjunto de transacciones en las
que aparece cada itemset(transaction IDs) (default:
FALSE)
4/13/2015
Maestria en Data Mining
14
Parámetros de Control

Son parámetros referidos a la forma de ejecución del
algoritmo. Por ejemplo




4/13/2015
tree: a logical indicating whether to organize transactions as
a prefix tree (default: TRUE)
heap: a logical indicating whether to use heapsort instead of
quicksort to sort the transactions (default: TRUE)
memopt: a logical indicating whether to minimize memory
usage instead of maximize speed (default: FALSE)
load: a logical indicating whether to load transactions into
memory (default: TRUE)
Maestria en Data Mining
15
Parámetros de Apariencia


Aplican sólo al a priori
Se refieren a los criterios que deben cumplir las
reglas que están buscando. Por ejemplo

4/13/2015
appearance = list(rhs = c("income=small", "income=large"),
default="lhs“), indica que para la parte derecha de la regla
tiene que aparecer la variable income con los valores small o
large y que para la parte izquierda no hay restricciones.
Maestria en Data Mining
16
Algunos Comandos útiles

Para ver las transacciones


Para obtener información de resumen de las
transacciones ( cuantas son, cuantos items, etc)


inspect(basket)
Summary(basket)
Para convertir del formato de transacciones a un
formato de matriz

4/13/2015
j <- as(basket, "matrix")
Maestria en Data Mining
17
Agenda



Weka
R
Apriori
4/13/2015
Maestria en Data Mining
18
Apriori



Es un ejecutable que se corre desde
línea de comandos
El autor es Christian Borgelt ( que es el
mismo que hizo la implementación del
apriori en el R)
La página es
http://www.borgelt.net//apriori.html

4/13/2015
De ahí se puede bajar y está el help
Maestria en Data Mining
19
Software Association Rules
Muchas gracias!
4/13/2015
Maestria en Data Mining
20