Você está na página 1de 62

Introduo a Anlise de

Associao Utilizando
Algoritmo Apriori e
WEKA
Jos Cavalcante Reis Neto
Apresentao IFAL 23/07/2014
Quem sou eu ?
Bacharel em Cincia da Computao 2012;
Mestrando no Programa de ps-graduao em
Informtica da UFAL (Mestrado em Informtica)
Colaborador do Laboratrio de Computao
Pervasiva da UFAL ( COMPE)
Pesquisando atualmente em M-Health,
HealthCare, Cyber-Physical Systems e
Verificao Formal (Petri Nets), Segurana na
especificao de dispositivos mdicos baseado
na ISO 14971;
Roteiro
Introduo
Motivao
Contador de Suporte
Algoritmo Apriori
WEKA
Concluso
Introduo O que minerao
a transformao de grandes
quantidades de dados em padres e
regras significativas.
Empresas como Google e Yahoo - o que
eles planejam fazer com com todas as
suas informaes?
A Walmart uma das mais avanadas
empresas em minerao de dados e na
aplicao de seus resultados ao negcio.
Introduo Anlise de
Associao
Est sendo largamente utilizada no
mercado;
Descobrir relacionamentos contidos de
forma implcita em grandes conjuntos de
dados;
Representar padres, sempre
relacionando dois conjuntos distintos para
obter informao.
Introduo Anlise de
Associao
Uma regra de associao uma expresso de
implicao que segue a forma X Y , onde X e Y
so conjuntos disjuntos de itens ou seja X Y
Motivao
Apresentar relacionamentos entre itens que a
principio so desconhecidos;

Descobrir padres a partir de um conjunto


grande de dados de transaes pode ser
computacionalmente custoso.

Agregar novos valores a um determinado


produto;

Organizao estratgica de objetos em um


supermercado;
Fonte : Livro - Introduo ao Data Mining: Minerao de Dados - Pang-Ning Tan,
Michael Steinbach e Vipin Kumar , editora : Editora Cincia Moderna
Regra de Associao
Contador de Suporte : Consiste no somatrio da
frequncia de um determinado conjunto X
considerando o conjunto de dados.

Uma regra de associao uma expresso de


implicao que segue a forma X Y , onde X e Y
so conjuntos disjuntos de itens ou seja X Y
Conjunto de Itens e Contador de
Suporte
Suporte: Determina a freqncia na qual
uma regra aplicvel a um determinado
conjunto de dados; (geralmente usado para eliminar
regras de baixo interesse)

Confiana: Determina a frequncia na


qual os itens de um determinado conjunto
Y aparecem em transaes que
contenham X ;
Suporte
(X Y )
s( X Y )
N
Confiana

(X Y )
c( X Y )
(X )
Suporte ( Fraldas -> Cerveja) = 60%
Confiana (Fraldas-> Cerveja) = 75%
Problemas de Minerao de
Regras de Associao
A descoberta de regra de associao um processo
muito custoso.
Suporte >= minsup

Confiana >= minconf

Onde o Minisup e o Miniconf so os limites mnimos


de suporte e confiana correspondentes.
Gerao de Conjuntos de Itens Frequentes;
Suporte X -> Y > minsup;

Gerao de Regras;
Confiana X->Y > minconf

Conjunto de Itens Frequentes (minsup);


Gerao de Regras;(regras fortes)
Conjunto de itens Candidatos
Contando suporte para o conjunto
de itens candidatos
O conjunto de itens candidatos formado
pela quantidade em que cada candidato
aparece em uma determinada transao.

Porexemplo o candidato a parece nas


transaes a,ab,abc a cada uma das
transaes acrescenta-se 1 ao valor do
contador de suporte de a;
Conjunto de itens frequentes

Transactions List of
Candidates
TID Items
1 Bread, Milk
2 Bread, Diaper, Beer, Eggs
N 3 Milk, Diaper, Beer, Coke M
4 Bread, Milk, Diaper, Beer
5 Bread, Milk, Diaper, Coke
w
Apriori
O principio Apriori uma forma efetiva de
se eliminar alguns dos conjuntos de itens
sem contar seus valores de suporte
Principio Apriori Se um conjunto de
itens frequente ento todos os seus
subconjuntos tambm devem ser
frequentes.
Obs.: Itens frequentes so que observam
a lei de ser superior ao minsup.
Poda Por intens infrequentes
( Anti-Monotonica) Define-se
Definio
que a medida do suporte para um
determinado conjunto Y de itens nunca
excede o suporte de seus subconjuntos X.
Exemplificando o
Funcionamento Do
algoritmo Apriori
60%; -> 3
Gerao dos itens Candidatos
(Fora Bruta)
Gerao dos itens Candidatos
(Fuso de intes frequentes)
Gerao de Regras baseado em
confiana
Para uma regra gerada a partir de um mesmo
conjunto de item frequente Y temos que;
Sempre que uma regra for gerada a partir de um
subconjunto X de X, onde, o contador de suporte de
X maior ou igual ao do X, ento, a regra de
confiana de X nunca poder ser maior do que a
confiana de X.
Com isso se X for menor do que minconf ento as
subsequentes regras podem ser eliminadas;
X -> Y - X || X -> Y X onde X est contido em X;
( X (Y X )) (Y ) c( X Y X ) ( X Y X ) (Y )
c( X Y X )
(X ) (X ) ( X ) ( X )
Suponha o conjunto Y do itens frequentes
composto por ( Po,Cerveja,Fralda)
Suponha um subconjunto de Y denomiado X
composto por (Po e Cerveja);
Suponha um subconjunto de X denomiado X
composto por (Po);
Logo, X->Y-X = (Po,Cerveja)-> Fralda;
Assim X->Y-X = (Po)-> Fralda,Cerveja;
Temos, confiana X = Y/(Po,Cerveja);
Confiana de X = Y/(Po);
Ento temos que X > X ; 2/2 >= 2/4 ;
Se confiana de X maior e tem baixa confiana
logo X obrigatoriamente tambm ter confiana
baixa;
-I -N 100 -T 0 -C 0.5 -D 0.06 -U 1.0 -M 0.4 -S -1.0 -c -1
ABC =>{}

AB =>C AC =>B BC =>A

A =>BC
B =>AC C =>BA
Uma Introduo
ferramenta Weka
WEKA
Significa (Waikato Environment for
Knowledge Analysis ) criado pela
Universidade de Waikato;
Possui licena GPL;
uma coleo de algoritmos de
aprendizagem de mquina para resolver
problemas de minerao de dados.
http://www.cs.waikato.ac.nz/ml/weka/index.ht
ml
Os dados que foram utilizados
@RELATION compras
@attribute leite {sim, no}
@attribute ovos {sim, no}
@attribute caf {sim, no}
@attribute acar {sim, no}
@attribute fraldas {sim, no}
@attribute manteiga {sim, no}
@attribute farinha {sim, no}
@attribute cerveja {sim, no}
@data
sim, sim, sim, sim, sim, sim, no, no
sim, no, sim, no, no, no, sim, no
sim, sim, no, sim, no, no, no, no
no, no, sim, sim, no, no, no, no
no, no, no, no, sim, no, no, no
sim, sim, no, no, no, sim, no, no
sim, sim, sim, sim, no, no, no, no
no, sim, no, no, no, sim, sim, no
sim, sim, sim, sim, no, sim, no, no
no, no, sim, no, sim, no, no, sim
Scheme: weka.associations.Apriori -N 10 -T 1 -C 1.5 -D 0.05 -U 1.0 -M 0.5 -S -1.0 -c -1
Relation: compras
Instances: 10
Attributes: 8
leite
ovos
caf
acar
fraldas
manteiga
farinha
cerveja
Apriori
Minimum support: 0.55 (6 instances)
Minimum metric <lift>: 1.5
Number of cycles performed: 9

Best rules found:


1. leite=sim 6 ==> ovos=sim farinha=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
2. ovos=sim 6 ==> leite=sim farinha=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
3. leite=sim farinha=no 5 ==> ovos=sim 5 conf:(1) < lift:(1.67)> lev:(0.2) [2] conv:(2)
4. ovos=sim farinha=no 5 ==> leite=sim 5 conf:(1) < lift:(1.67)> lev:(0.2) [2] conv:(2)
5. leite=sim 6 ==> ovos=sim farinha=no cerveja=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
6. ovos=sim 6 ==> leite=sim farinha=no cerveja=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
7. leite=sim farinha=no 5 ==> ovos=sim cerveja=no 5 conf:(1) < lift:(1.67)> lev:(0.2) [2] conv:(2)
8. ovos=sim farinha=no 5 ==> leite=sim cerveja=no 5 conf:(1) < lift:(1.67)> lev:(0.2) [2] conv:(2)
9. leite=sim cerveja=no 6 ==> ovos=sim farinha=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
10. ovos=sim cerveja=no 6 ==> leite=sim farinha=no 5 conf:(0.83) < lift:(1.67)> lev:(0.2) [2] conv:(1.5)
Os parmetros mais interessantes para a
implementao so:
-N indica o nmero de regras que ser listado.
-M indica o valor mnimo para suporte para
considerao da regra.
-T indica a mtrica de ordenao (e Filtragem)
das regras:
-T 0 ordena pela mtrica confidence, igual
confiana explicada anteriormente.
-T 1 ordena pela mtrica lift.
-T 2 ordena pela mtrica leverage.
-T 3 ordena pela mtrica conviction.
Medidas de interesse
Medidas de interesse no Weka
Lift;
Leverage;
Conviction;
Fatores de interesse
O lift calculado pela diviso da
confiana de uma determinada regra
c(A->B) pelo suporte do consequente
s(B);

Dada uma regra de associao A -> B,


esta medida indica o quanto mais
freqente torna-se B quando A ocorre.
LIFT
Quando o lift obtido maior que 1, pode-se
dizer que o lado direito da regra ocorre com
mais freqncia nas transaes em que o lado
esquerdo ocorre.

Quando o lift menor que 1, o lado direito


ocorre com mais freqncia nas transaes em
que o lado esquerdo no ocorre.

Dessa forma, as regras que possuem lift maior


que 1 so mais interessantes que as demais,
sendo o lift diretamente proporcional relao
entre os dois lados da regra.
Leverage
Dada uma regra L -> R, leverage mede a
diferena entre a freqncia de co-ocorrncia de
L e R e as freqncias de L e R separadamente,
ou seja, (Pr(L;R) ) (Pr(L) Pr(R)). Valores acima
de zero so desejveis. Esta mtrica
semelhante lift.

a diferena entre a Frequncia de co-ocorrencia


entre dois conjuntos e a frequencia desses dois
conjuntos acontecerem separadamente.

mede o nmero de casos extra obtidos em


relao ao esperado ( independncia)
Leverage
Quando o leverage obtido maior que zero, h
a indicao de que os dois lados da regra
ocorreram juntos, em nmero de transaes
maior que o esperado, caso os itens analisados
sejam completamente independentes.

Se o leverage for menor que zero, os dois lados


ocorrem juntos em nmero menor que o
esperado.

Para leverage igual a zero, os dois lados da


regra ocorrem juntos, exatamente o esperado.
Isso significa que ambos provavelmente so
independentes.
Conviction
Dada uma regra L -> R, conviction a freqncia com
que L ocorre sem R, dividida pela frequncia com que
as duas ocorrem juntas, ou seja:

(Pr( L) Pr(! R))


Pr( L, R)
Tenta capturar o grau de implicao entre A e C
valor 1 indica independncia
Assimtrico
Conviction
Quando a convico de uma regra igual
a 1, pode-se dizer que os itemsets no
possuem relao. Quanto maior a
convico, maior a relao entre X e Y.
Uma convico menor que 1 implica em
relao negativa entre os itemsets, ou
seja, quando X ocorre, Y tende a no
ocorrer.
Concluso
Importncia dos dados;
Importante saber o que buscar;
Ter conhecimento prvio do domnio do
problema para poder eliminar as
associaes que no agregam
informaes.
Dvidas ?
OBRIGADO
PELA ATENO
Introduo ao Fp-growth
Fp-Growth
Possui uma abordagem radicalmente
diferente para descobrir conjuntos de itens
frequentes.
O Algoritmo no concorda com o
paradigma gerar e testar do Apriori, em
vez disso usa uma estrutura de rvore
chamada de FP extraindo o conjunto de
itens frequentes diretamente desta rvore.
Analisando item frequentes
Trata-se de uma abordagem de leitura
bottom up da rvore.
Comea a ler do item mais infrequente
para o mais frequente.
Para encontrar os itens frequentes deve-
se analisar primeiro o mais baixo de todos
os subconjunto se este frequente, sendo
este frequente, deve-se analisar
gradativamente os seus superconjuntos.
O Algoritmo FP-Growth
No geram conjuntos de itens frequentes
duplicados;
Gera de modo eficiente o conjunto de
itens frequentes;
Para determinados conjuntos de dados o
Fp-growth tem melhor desempenho do
que o Apriori.
Salvo quando existe um problema com o
fator de compactao.
Padres de Associao
Mesmos os bancos de dados pequenos
podem gerar at centenas de regras de
associao em determinados limites de
suporte e confiana.
Muito desses padres no so
interessantes para se extrair informaes
O lixo de uma pessoa pode ser o tesouro
de outra
Padres de Associao
Padres de associao podem ser encontrados
atravs de mtodos estatsticos;
Utilizar a medida de interesse objetivo que utiliza
estatstica derivada de dados para determinar se
um padro interessante.
Utilizar medida subjetiva de interesse, relevncia
subjetiva : manteiga -> po em detrimento a fraldas
-> cerveja;
Incorporar conhecimento subjetivo na avaliao de
padres uma tarefa difcil porque requer
conhecimento prvio de especialista o domnio.
Medidas Objetivas de Interesse
uma abordagem orientada a dados para
se avaliar a qualidade de padres de
associao.
independente de domnio e requer o
mnimo de informao do usurio alm da
especificao de um limite para filtragem
de padres de baixa qualidade.
Utilizao da tabela de Contigncia.
Tabela de Contigncia
Exemplo Ch, Caf
Fatores de interesse
Lift-> Regras com alta confiaa podem
ser enganosas por que a medida de
confiana ignora o suporte do conjunto de
intens que aprece no consequente da
regra.
O lift calculado pela diviso da confiana
de uma determinada regra c(A->B) pelo
suporte do consequente s(B);
Fator de interesse
Medida do fator de interesse : esta medida foca na
independncia estatstica dos conjuntos de interesse.
I(A,B) ;

s( A, B) Nf 11
I ( A, B) .
s( A) s( B) f 1 f 1
I(A,B) : = 1, Se A e B forem independentes;
I(A,B) > 1, Se A e B forem relacionados positivamente
I(A,B) < 1, Se A e B forem relacionados negativamente.
Ex ch -> caf tem correlao negativa entre pessoas que
bebem ch e as que bebem caf;
FpGrowth com o
Exemplo do Livro
40%; -> 2

Você também pode gostar