Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

94
MAP-i 2007/2008 1 Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008 Detecção de associações nos dados

description

Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008. Detecção de associações nos dados. Sumário. Motivação Introdução às regras de associação Algoritmos para cálculo de termos frequentes Apriori e outras variantes Breath-first Representações Verticais - PowerPoint PPT Presentation

Transcript of Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

Page 1: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

1

Regras de Associação

Paulo J Azevedo

DI - Universidade do Minho2007-2008

Detecção de associações nos dados

Page 2: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

2

Sumário• Motivação• Introdução às regras de associação• Algoritmos para cálculo de termos frequentes

– Apriori e outras variantes Breath-first

• Representações Verticais– Algoritmos Depth-first com representações verticais

• Representações condensadas de termos frequentes• Medidas de interesse• Filtragem de termos não correlacionados• Selecção e pruning de regras• Atributos contínuos em regras de associação• Estudo de propriedades numéricas com regras de

associação• Modelos de previsão com regras de associação

Page 3: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

3

Problema

• Base de Dados de

Ticket Data• Ex:

1 1901,1881,199,901

2 901,1661

3 676,199,177,100

…..

120099 78,1881,199,8

• O marketing da cadeia de Hipermercados pretende fazer um estudo de comportamento de compras.

• Tem acesso aos dados representativos dos “cestos de compras” (basket data)

• Exemplo de perguntas a responder:

• Que produtos estão associadas ao consumo de cerveja X ?

• Como podemos descrever a população consumidora de amendoins?

• Onde devem estar localizadas os produtos de limpeza doméstica ?

• Como se relacionam os produtos 1661 e 199 ?

Número da

transacção

item

Page 4: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

4

Como expressar a informação extraída ?

• Regras que relacionam produtos (items),

901 & 1661 67

Todas as regras ?

Como obter ?

Como seleccionar ?

Como organizar ?

Há um número explosivo de potenciais regras que podem ser

derivadas!

Qual o procedimento eficiente a aplicar?

Como discriminar regras “boas” de

“más” ?

Qualidade das regrasexpressa por medidasestatísticas.

Page 5: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

5

A CB D

ADACAB BC BD

ABCD

ABD ACDABC

CD

Set indica inclusão

matemática

Itemset

Item

BCD

Podemos ver o problema pela perspectiva do espaço de pesquisa a explorar

Page 6: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

6

Medidas de Interesse• Tipicamente recorre-se a uma métrica de incidência para definir quais as

associações significantes.• A mais popular é o suporte (contagem) dos itemsets.• As regras são qualificadas por uma métrica de interesse (previsibilidade,

solidez ou força da regra).• Normalmente é usada a confiança (probabilidade condicional)• Assim, a regra de associação:

• Deve ser lida como: a compra conjunta dos produtos 901, 707 e 1088 ocorre em 30% das transacções. Por outro lado, verifica-se que 90% das transacções que contêm 901 e 707 também contêm o produto 1088.

• Outra leitura: 90% da sub-população definida pelos produtos 901 e 707 consomem 1088.

• Ou ainda: a contagem do consumo de 901 e 707, quando se adiciona 1088, desce para 90% da inicial.

901 & 707 1088 (sup=0.3,conf=0.9)

Page 7: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

7

Aplicações• Sistemas de recomendação,• Web Adaptativo

– Amazon: o site recomenda novos interesses usando os items visitados/comprados pelo utilizador.

– Challange Netflix: http://www.netflixprize.com

• Descriptive Data Mining (Clusters de residuos em Proteinas),

• Spam Filtering,• Classificação,• etc,

Page 8: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

8

Application: Recommendations using AR

index.html

A

B

C D

E

A DObs.:

Rules:

A E D

A D F

A B DF

A D

D X

(conf: 0,8)

(conf: 0,7)

(conf: 0,6)

(conf: 0,5)

(conf: 0,4)

Recommendations (top 2):

F

X

(0,6)

(0,4)

click stream

Page 9: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

9

TTR Hydrophobic Clusters detectionTTR Hydrophobic Clusters detection

0 2 4 6 8

0

25

50

75

100

% S

AS

A

Leu 12

ASup = 0.34821 Conf = 1.00000LEU_12=[00.00 : 25.00[ <--

PHE_64=[00.00 : 25.00[ &

MET_13=[00.00 : 25.00[ &

ALA_97=[00.00 : 25.00[

0 2 4 6 8

0

25

50

75

100

% S

AS

A

Met 13

0 2 4 6 80

5

10

15

20

25

Dis

tan

ce

)

L12 - M13

0 2 4 6 8

0

25

50

75

100

% S

AS

A

Phe 64

0 2 4 6 80

5

10

15

20

25

Dis

tan

ce

)

L12 - F64

0 2 4 6 8

0

25

50

75

100

% S

AS

A

Time (ns)

Ala 97

0 2 4 6 80

5

10

15

20

25

Dis

tan

ce

)

Time (ns)

L12 - A97

Sup=0.34821 conf=1.0000 LEU_12=[00.00 : 25.00[

PHE_64=[00.00 : 25.00[ & MET_13=[00.00 : 25.00[ & ALA_97=[00.00 : 25.00[

Page 10: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

10

Geração de Regras

• Cálculo da confiança: conf(AC) = s(A C) / s(A).

• Noção de thresholds de conf e sup (minsup e minconf)

• Algoritmo “trivial”:

Tendo ABC,

testar, sabendo s(AB) e s(ABC),

se s(ABC) / s(AB) ≥ minconf

Fazer este procedimento para todos os

s∈{ABC} em que #s > 1.

Page 11: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

11

Cálculo de Termos Frequentes (frequent itemsets)

• Algoritmo naif: Seja K = { items em DB},

Derivar o P(K) (power_set),

Percorrer DB para contar as ocorrências de P(K)

Filtrar os itemset em P(K) que não verificam minsup.

• Intractável!!!!!!!!• Melhor: fazer uso da propriedade downward closure

do suporte Se X ⊆ Y então s(X) ≥ s(Y)

Page 12: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

12

Algoritmo Apriori [Agrawal & Srikant 94]• L_1 = { 1-items frequentes} • For(k=2;L_k-1 ≠ {}; k++) do

C_{k} = apriori_gen(L_{k-1}); forall transacções t ∈ D do

• C_{t} = subsets(C_{k},t)• Forall candidatos c ∈ C_{t} do

– C.count++;

End L_{k} = {c ∈ C_{k} | c.count ≥ minsup}End

Answer= ∪ L_{k};

Algoritmo Bottom-up e breath-first. Em apriori_gen é gerado oscandidatos a contar. Só são considerados candidatos queobedecem à propriedade anti-monótona (é candidato se todos os seus subconjuntos são frequentes!)

Page 13: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

13

A CB D

ADACAB BC BD

ABCD

ABD ACDABC

CD

Infrequente

BCD

Aplicação da Propriedade Anti-monótona

Page 14: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

14

Apriori “in action…”

Page 15: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

15

Tipos de Algoritmos para Cálculo de termos frequentes (FIM)

• Breath-First

Apriori

Partition

Dic

Sampling

• Depth-First

FP-growth

Inverted Matrix

Eclat

Depth-first expansion (CAREN)

Page 16: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

16

Algoritmo Partition• Versão paralela do Apriori. Definir várias partições no dataset onde

aplicamos localmente o Apriori.

• A soma dos itemsets frequentes ocorridos em cada partição é um superconjunto dos termos frequentes no dataset. Segunda passagem no dataset para contar os candidatos encontrados nas partições.

Page 17: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

17

Algoritmo Partition(2)

• Filtragem de candidatos globais

Page 18: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

18

Algoritmo Dynamic Itemset Counting (DIC)

Diminuir o número de passagems pelo dataset usando a ideia de iniciar a contagemdo N-itemset quando todos os seus subconjuntos (N-1)-itemsets já são frequentes.

Page 19: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

19

DIC(2)

•Large definitvo: frequente e contado•Large candidato:frequente mas em contagem•Small definitivo: já contado não frequente•Small candidato: em contagem, ainda não frequente

Page 20: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

20

Algoritmos: Representações• Horizontais

– Transacções são listas de items. Ex:

t12: 1,4,6,7,12,129,929

t15: 2,4,5,6,14,189,901

• Verticais– Representar a cobertura de cada item nas

transacções. Ex:Tidlist(6) = [t12,t15,t24,t123,t300,…]

Tidlist(14)= [t15,t120,t541,…]

Tidlist(129)=[t12,t18,t45,…]

Page 21: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

21

Representações Verticais

• Cover Lists– Ideal para “sparse” data– Tidlist(I) = [t4,t9,t12,t45,t312,…]– sup(I) = #coverlist(I)– Tidlist(A U B) = tidlist(A) ∩ tidlist(B)

• BitMaps– Melhores resultados com “dense” data– bitmap(I)= “0010011100011000”– sup(I) = bitcount(bitmap(I))– bitmap(A U B) = bitmap(A) & bitmap(B)

Bitwise logical and

Contar bits ligados

Page 22: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

22

Representações Verticais (2)• DiffSets (altamente escalável)

– Em vez de representar todo o tidlist, usar só as “alterações” ao tidlist para calcular suporte.

– Diffset(A U B) = tidlist(A) – tidlist(B) (elementos de A que não

ocorrem em B)– s(AB) = s(A) - #ds(AB)– ds(ABC) = ds(AC) – ds(AB)– s(ABC) = s(AB) - #ds(ABC)

• Exemplo:– t(A) = [1,3,4,5], t(B)=[1,2,3,4,5,6], t(C)=[2,4,5,6].– ds(AB)=[ ],ds(AC)=[1,3], ds(ABC)=[1,3],– S(ABC)= 4 – 0 – 2 = 2.

•Inicialmente temos diffsets < tidlists•Ficam mais pequenos conforme os itemsets se tornam mais longos

Page 23: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

23

Depth-first Expansion (Caren)• 1º scan na BD para contar 1-items frequentes. (items são ordenados por ordem crescente de suporte.• 2ª scan montar bitmaps (cover lists) dos 1-items e contar 2-itemsets

frequentes.• Depth-first expansion: Estender itemsets juntando items

(respeitando a ordem de items imposta). Fazer bitwise-and para obter cover list do novo itemset. Usar testes para evitar operações

bitcounting redundantes (verificar se os 2-itemsets contidos no novo itemset em expansão são frequentes, etc e outros “truques”).

Contagem de suport ↔ bitcounting.

1 2 3 4 5 200 201

1 0 0 0 011Itemset ABCE

transacção

Ocorrência nessa transacção

Page 24: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

24

Representações condensadas de termos frequentes

• All itemsets frequentes (FIS)• Itemsets máximos (MIS)• Closed itemsets (CIS)• Free-sets (FS)

Em certas aplicações é viável calcular versões condensadas dos itemsets. Simplifica-se o cálculo e evita-se alguma redundância.

All Patterns

Closed Patterns

Maximal Patterns

Page 25: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

25

Formatos Condensados

• Maximal itemsets I é máximo se:

• Closed itemsets I é um closed itemset se:

ou se

msaIa )sup(:

)sup()sup(&)sup(: IsmssIs

O suporte dos itemsets frequentes que não são “closed” são determinados pelos closed patterns.

cover(I)J JI

Page 26: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

26

Formatos Condensados (cont)

• Seja X não closed, então sup(X)=sup(I) onde I é o mais pequeno closed pattern que contém X (closure de X)– Notar que em datasets esparsos #FIM ≈ #CIS !

• δ-Free-patterns

X é δ-free pattern sse não existe uma regra de associação entre dois subconjunto de X com δ excepções.

• Melhor: X é um δ-free pattern iff

)1sup()sup( ,1 XXXX

Page 27: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

27

Regras de Inferência de contagem

• Alguns algoritmos usam regras de inferência de contagem (evitando algum esforço), derivando a contagem de um itemset à custa das contagem dos seus subconjuntos.

• Exemplos:– (support lower bound)

Sejam X,Y,Z itemsets,

– (support inference)

Sejam X,Y,Z itemsets,

)sup()sup()sup()sup( XXZXYXYZ

)sup()sup( )sup()sup( XZXYZXXY

Page 28: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

28

Exemplos de regras

Association Rules ...

Sup = 0.01500 Conf = 0.37500 oranges bananas & peachesSup = 0.03900 Conf = 0.30000 oranges peachesSup = 0.01000 Conf = 0.28571 oranges bananas & potatoesSup = 0.01000 Conf = 0.28571 oranges peaches & potatoes

• Que informação é possível tirar deste tipo de estrutura ?• Leitura das regras…• Capacidade de previsão?• Interpretação das métricas• Característica da população descrita...• Redundância

Page 29: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

29

Medidas de Interesse

• Lift• Conviction• Leverage• Χ2

• Reliability• etc

Teste de Χ2 entre antecedente e consequente

)(

)()(

Cs

CAconfCALift

)(1

)(1)(

CAconf

CsCAconv

)()()( CsCAconfCAR

)(*)()()( CsAsCAsCAleve

Page 30: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

30

Medidas de Interesse (2)

)(

)()(

Cs

CAconfCALift

)(

)()(

As

CAsCAconf

Confiança:• mede probabilidade condicionalP(C) dado A•Tende a dar ênfase a regras nãocorrelacionadas (spurious rules).

Laplace:• estimador da confiança que temem conta o suporte• torna-se mais pessimista com ovalores de s(A) mais pequenos• sofre dos mesmos problemas da confiança

2)(

1)()(

As

CAsCAlapl

Lift:• Mede a distância para a independênciaentre A e C• varia entre [0, +oo[• Valor 1 independência,• Valores longe de 1 indicam que a evidenciade A fornece informação sobre C.• mede co-ocorrência (não implicação)• é simétrica!

Page 31: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

31

Medidas de Interesse (3)

)(1

)(1)(

CAconf

CsCAconv

)()()()( CsAsCAsCAleve

Conviction:• motivada pelas fraquezas de conf e lift• varia entre [0.5, +oo[• tenta capturar o grau de implicação entre A e C• é directional i.e. conv(A C) ≠ conv(C A)• valor 1 indica independência• motivação (implicação lógica): A C ~A υ C ~(A ∩ ~C)• medir quanto (A ∩ ~C) se desvia da independência.• inverto o rácio entre s(A υ ~C) e s(A) x s(~C) para lidar com negação• excelente medida para classificação.

Leverage:• varia entre ]-0.25,0.25[• mede o número de casos extra obtidosem relação ao esperado (à independência)

Teste do χ2:•Mede independência estatística entre antecedentee consequente• não captura a força da correlação entre A e C• Apenas suporta a decisão de independência

n

r RirE

rErO

][

])[)(( 22

Page 32: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

32

Medidas de Interesse (4)Jaccard:•. mede grau de “overlap” (sobreposição) entreos casos de A e os casos de C• varia entre [0,1]• mede a distância entre A e C pela fracçãoentre os casos cobertos pelos dois eos caso cobertos por um só (A ou C).• valores altos indicam sobreposição de casoscobertos.Cosine:• também mede grau de “overlap” entre A e C• ver A e C como dois vectores• valor 1, os vectores coincidem• valor 0, vectores não têm sobreposição (varia entre [0,1])

Mutual Info:• mede a redução de incerteza no consequente quando o se toma conhecimento do antecedente.• é simétrica• baseada na noção de entropia (de Shanahan)

Page 33: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

33

Problemas da métrica Confiança

)()()( CsAsCAs

A confiança pode não detectar independência. A regra ovos leite pode ter conf=80% mas podemos saber que o consumo de ovos é independente de leite.

Independência entre A e C:

Noutros casos podemos ter dependência positiva/negativa.Podemos usar uma medida de X^2 para medir correlaçãoEntre antecedente e consequente.

n

r RirE

rErO

][

])[)(( 22

Aplicar teste de X^2 com um valor de conf=95% e 1 grau de liberdade, Se X^2 >= 3.84 rejeita-se a hipótese de independência.

Page 34: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

34

Pruning nos itemsets• Aplicar teste de X^2 durante a contagem de termos

frequentes.

• Problema: X^2 não satisfaz a propriedade downward closure. Isto é, AB e BC podem não satisfazer o teste de X2 mas ABC pode. Upward closure property:– Se X2(AC) ≥ 3.84 então necessáriamente X2(ABC) ≥ 3.84

• Caren. Define sempre um consequente. Em itemsets onde este ocorre aplica X2.

• Corre-se o risco de não gerar todas as regras possíveis. Potencialmente incompleto!

Page 35: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

35

Fraquezas do framework suport-confiança

• Pode ser difícil definir um suporte mínimo ideal• Certos problemas podem exigir suporte mínimos

extremamente baixos e.g. caviar champagne• Solução: procurar as k-optimal rules (sendo

óptimas em relação a uma medida específica)• Suporte e confiança mínimas altas podem

perder regras interessantes• Confiança pode atribuir alto interesse a regras

não correlacionadas (como vimos!)• Outras medidas sofrem de problemas similares

Page 36: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

36

Selecção e Pruning de Regras• Um algoritmo de FIM (mesmo com filtragem de suporte

confiança mínima) pode gerar milhões de regras. Podemos ter #{regras} >> #{transacções} !!!

• Maioria das regras são geradas fruto do acaso (no sentido estatístico). Noção de false discoveries

• Regras não correlacionadas (em que o antecedente e o consequente são independentes)

• Aparecimento de regras redundantes. Regras contêm items no antecedente que são explicados por outros items também no antecedente. Ex (grávida => mulher):

• Grávida & mulher retenção_de_liquidos

– Descartar regra redundante x y se:– Existe z x : s(x ∈ y) = s(x - z y)

Page 37: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

37

Pruning de RegrasProblema de improvement nas regras

Conf = 0.300 oranges bananas & peaches Conf = 0.315 oranges peaches

Noção de improvement: uma regra mais especifica tem de produzir uma mais valia em

termos de valor de medida de interesse.

met pode ser ={conf,lift,conv,X^2,etc}

Se o improvement > 0 dizemos que são regras productivas.

))'()(:'min()( CAmetCAmetAACAimp

Page 38: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

38

Significância Estatística• Em vez de definir um minimal improvement,

aplicar um teste de significância estatística: eliminar regras não significativas (Webb, Magnum Opus)

• Uma regra x y é insignificante se– Existir outra regra x – z y em que valor

met(x y) – met(x – z y) não é significativamente alto (sendo met(x y) >met(x-z y))

• Usa-se um teste da distribuição Binomial para determinar significância

Page 39: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

39

Regras Significativas• Exemplo para um valor de significância α=1%• Processo: eliminar a regra mais especifica se a probabilidade de se

obter, ao acaso, o conjunto de transacções que cobrem essa regra é maior do que α, assumindo que os dados são obtidos de uma amostra aleatória e que o verdadeiro valor da métrica (hipótese nula) é o da regra mais geral.

• Regras (ntrans=1000, H0=0.907):

A & B C (antsup=272,sup=255,conf=0.938)A C (antsup=333,sup=302,conf=0.907)

• Binom.test(255,272,0.907,>H0,conf=0.99), obtém-se p-value=0.04608• A primeira regra é insignificante (para α=1%) em relação à segunda,

porque adicionando B ao antecedente não aumente significativamente o valor de conf.

sucesso #casos H.nula H.alternativa 1 - α

Page 40: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

40

False Discoveries• Seja ρ uma regra que satisfaz um conjunto de restrições

φ em relação a uma distribuição Θ, encontrada num dataset D.

• Há o risco de se ter encontrado ρ que satisfaz φ em relação a D mas não a Θ. (todos os métodos de pruning vistos anteriormente sofrem deste problema!)

• Testes de Hipótese Estatísticos:– H0: ¬ρ é verdadeiro

– Se ρ é encontrado temos uma false discovery - Erro tipo I (unsoundness)

– Qualquer ρ que não satisfaz H0 e não for derivado -

Erro tipo II (incompleteness)

Page 41: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

41

Significant Patterns (Webb’07)

• Dividir os dados para análise em exploratory data e holdout data.

• Derivar regras no exploratory data• Aplicar teste de hipóteses a cada regra (obter

um p-value para cada uma). – Rejeito H0 se p-value < α.

• Usa-se a holdout data para efectuar os testes.• Alternativa (within search):

– Calcular o tamanho do espaço de pesquisa– Aplicar testes estatístico com correcção de Bonferroni

Page 42: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

42

Significant Patterns (2)

• Usa o Exact Fisher Test,– p-value(x y, x–z y):

– Aceitar x y se p-value ≤ α

• Webb aplica este teste somente entre cada regra x y e as suas imediatas generalizações. Isto é regras – { } y e– x–z y tal que |x-z| = n - 1, sendo |x| = n.– Notar que x y tem 2|x| - 1 generalizações!!

),min(

0 )!()!()!()!()!(

)!()!()!()!(cb

i idicibiadcba

dbcadcbap

a = s(x υ y)b = s(x υ ¬y)c = s(x-z υ ¬z υ y)d = s(x-z υ ¬z υ ¬y)

Calcula a probabilidade de observar os números obtidos de ocorrência de x&y (ou valores maiores) dado o número de ocorrências de x-z&y se P(y|

x)==P(y|x-z).

Page 43: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

43

Significant Patterns (3)

• Problema das Multiplas Comparações! Probabilidade de ocorrer um erro de tipo I aumenta com o número de testes.

• Usar Ajustamento de Bonferroni (corrigir α para n testes como sendo κ= α/n) – crivo demasiado fino!

• Usar Ajustamento de Holm (k em vez de α).– Risco de erro tipo I é não mais do que α. Requer

ordenação dos p-values e ter disponíveis todos estes valores antes de determinar valor de ajustamento (k).

– Para (n testes) pi, )1

max( 1 jn

pk jij

Page 44: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

44

Dados não Categóricos(tratamento durante a geração dos itemsets)

• Em formato atributo/valor os atributos numéricos (ou de uma grandeza não categórica, como ex: hierarquias) podem dar origem a inúmeros items.

• Tende a gerar muitas regras e demasiado especificas, muitas vezes sem valor de interesse. Em vez de:

class=1 colesterol = high & age=29 class=1 colesterol = high & age=32 class=1 colesterol = high & age=41

Deviamos ter: class=1 colesterol = high & age ∈ [29,41]

• Catch 22 situation: items de intervalos pequenos implica suportes baixos o que leva à não geração de certas regras.

• Por outro lado, intervalos grandes implica regras de confiança baixa. Juntar valores de um atributo num intervalo leva à perda de informação!

Page 45: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

45

Tratamento de valores numéricos

• Em Pré processamento:– Discretização em intervalos de valores. Ex: criar

intervalos onde é preservado o valor de classe.– Binarização; cada atributo é convertido em dois

valores. Há a selecção de um valor de corte.

• Durante o processamento (árvores de decisão):– Binarização: Seleccionar um valor de corte entre os

valores do conjunto associado à sub-árvore. O valor escolhido é aquele que maximiza ganho! (e é sempre um que está na transição entre valores de classe).

– Aplicação recursiva deste princípio.

Page 46: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

46

Dados Numéricos

Age Colest Blood Class23 High 2.33 A

24 Low 2.39 B

27 High 2.21 A

27 Low 1.09 A

29 Low 2.02 A

30 Low 2.98 C

31 Low 3.01 C

31 High 1.98 B

33 low 2.09 B

Discretização Supervisionada: Atributo especial comando o processo.Ex: Age: [23-23],[24-24],[27-29],[30-31],[33-33]Ou Age < 29, Age ≥ 29.

Não supervisionada: O processo é independente dos outros atributos.Ex: Age:[23-27],[29-31],[33-33]

Page 47: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

47

Discretização

• Supervisionada:– Fayyad & Irani: Entropy oriented– Class intervals (caren)– Chi-Merge

• Não supervisionada:– Equi-depth (intervalos de igual nº de elementos)– Equi-width (intervalos de igual largura)– Srikant (caren)– K-means

Page 48: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

48

Discretização Fayyad & Irani(em Pré-processamento)

• Ordenar os valores do atributo a discretizar,• Definir os cut points – ponto onde há alternância de classe,• Calcular Ganho Informativo para cada ponto:

• Escolher ponto com maior valor de Ganho,• Verificar se condição MDL é satisfeita

Se sim o processo pára,Senão aplicar recursivamente o processoà esquerda e direita do ponto escolhido.

Page 49: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

49

Fayyad & Irani

• Condição Minimal Description Length:

N = #S, k = #classes, ki = #classes em Si

• Processo pára se a condição é satisfeita.

0.0 2.3 12.4 19.3 24.418.92.3

Page 50: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

50

Discretização ChiMerge

• Juntar intervalos adjacentes que demonstram independência sobre o atributo classe.

• Medir independência através de um teste de Χ2. Escolher o par com menor valor da estatística.

• Parar quando, para o par escolhido, Χ2 > δ, sendo δ dado pelo utilizador.

• Inicialmente ordena-se os valores do atributo a discretizar. Cada valor dá origem a um intervalo unitário.

Page 51: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

51

ChiMerge• Cálculo do Χ2

• Sendo:– k é número de classes– Aij é número de exemplos no intervalo i da classe j– Eij = #(intervalo i) x #(classe j) / N, ou seja frequência esperada.

• Graus de liberdade = (#intervalos -1) x (#classes -1)

• Se o teste indica dependência então a diferença na distribuição de classes entre os intervalos é estatisticamente significativa. Ou seja, os intervalos devem permanecer separados.

2

1 1

2)(2

i

k

jij

ijij

EA E

Page 52: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

52

Discretização Srikant & Agrawal• Ocorre durante a execução do algoritmo de FIM.

• Inicia com um número pré-definido de intervalos. Este número é calculado usando uma medida de perda de informação (Partial Completeness).

• Fusão de intervalos adjacentes controlada pelo valor de suporte do intervalo obtido.

• Gera-se assim novos items que convivem com os intervalos iniciais.

• Ficamos com vários níveis de informação sobre o atributo numérico (com menor ou maior granularidade).

Page 53: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

53

Fusão de Intervalos

Dom(X) = {1,2,3,4}

Intervalos base:X=[1,1], sup=0.1X=[2,2], sup=0.2X=[3,3], sup=0.2X=[4,4], sup=0.5

Então podemos ter:X=[1,2], sup=0.3X=[3,4], sup=0.7

Mas também:X=[1,3], sup=0.5X=[2,4], sup=0.9

e atéX=[1,4], sup=1

Não esquecer que estes intervalos só são gerados se não ultrapassarem o suportemáximo imposto pelo utilizar.

Há o problema da geração de demasiados items. Para n valores (ou intervalos) de umatributo temos potencialmente O(n^2) items que contêm um valor ou intervalo do atributo.

O mesmo pode acontecer com as regras em relação à confiança.

Page 54: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

54

Partial Completeness

• P ⊆ C,• X ∈ P e X’ ⊆ X → X’ ∈ P,• X ∈ C, Z tal que:

– Z é uma generalização de X e s(Z) ≤ K x s(X),– Y ⊆ X Y’ tal que:

Y’ é uma generalização de Y e

s(Y’) ≤ K x s(Y).

Pretende-se avaliar o grau de perda de informação que surge com a definiçãode intervalos. Este medida permite definir o número ideal de intervalos em relação à perda admitida.

Seja C um conjunto de itemsets de um dataset D. Para um K > 1, dizemosque P é K-completo em relação a C se:

Page 55: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

55

Exemplonum itemset sup

1 X=[20,30] 10

2 X=[20,40] 12

3 X=[20,50] 15

4 Y=[1,5] 10

5 Y=[1,7] 12

6 X=[20,30],Y=[1,5] 8

7 X=[20,40],Y=[1,7] 10

Os itemsets 2,3,5,7 formam um conjunto P 1.5-completo.

Qualquer itemset de X tem uma generalização neste conjunto em que osuporte dessa generalização é superior nomáximo 1.5 vezes o suporte de X

Intervalos equi-depth (com o mesmo número de valores contínuos)minimizam o número de intervalos necessário para minimizar um dado nível K de partial completeness.

Page 56: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

56

Número de Intervalos

)1(*

*2

kms

nnum

n é o número de atributos contínuos. ms é suporte mínimo

Quanto mais baixo o valor de completude K menor a perda de informaçãoe maior o número de intervalos.

Notar que, para controlar a fusão de intervalos usa-se um valor de suportemáximo que tipicamente, por omissão, é igual a ms.

Page 57: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

57

Exemplo

X Y CLASS

1 11 A

1 11 B

2 13 B

2 13 A

3 15 C

3 15 A

7 18 B

7 18 B

9 23 B

9 23 A

ms = 0.2 K = 8

3)7*2.0(

2*2num

Intervalos base:

X=[1,2], X=[3,7], X=[9,9] Y=[11,13], Y=[15,18], Y=[23,23]

Se suporte máximo for 0.6 podemos obter por fusão:

X=[3,9] e Y=[15,23]

Page 58: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

58

Geração de Regras de Associação para propriedades de interesse numéricas

Ideia geral: Ter regras em que o consequente é a representação de uma propriedade numérica.

Exemplos:

Sex=female Wage: mean=$7.9 (overall mean=$9.02)

non-smoker & wine-drinker life-expectancy=85 (overall=80)

Page 59: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

59

Regras de Associação com propriedades numéricas (cont)

• Várias propostas– Quantitative Association Rules (Aumann &

Lindell99)– Impact Rules (Webb 2001)– Distribution Rules (Jorge & Azevedo 2006)

• Ideia comum a todas as propostas: Gerar regras que representam o comportamento de uma

propriedade numérica num sub população interessante. Diferentes propostas de noção de regra interessante.

Page 60: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

60

Regras de Associação com propriedades numéricas (cont)

• Noção de sub população interessante.– QAR, usa um z-test para confirmar interesse (validade) da

regra. z-test entre meanJ(Tx) e mean(D-Tx) com α=0.05.

Regras do tipo: subset(X) MeanJ(Tx) onde

MeanJ(Tx) ≠ Mean(D-Tx)

z.test(μ0,observ,σ): Usado para encontrar diferenças significativas entre as médias μ0 e média da amostra.

Calcula a probabilidade de a média de uma amostra obtida assumindo a média e desvio padrão da população (μ0 e σ) seja maior do que a média observada - assume

distribuição Normal!

Permite concluir se a amostra pertence à população em estudo.

Complemento de Tx

Page 61: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

61

Regras de Associação com propriedades numéricas (cont)

Impact Rules (Webb)• Interesse refere-se à noção de impacto. Optimização pesquisando-se impact rules que maximizam a definição de impacto.

• Uso de t-test para avaliar significância: tende para o z-test com o aumento do número de graus de liberdade. Mais adaptado para amostra pequenas. Procedimento de comparação de médias.

• Noção de Impacto:

))((cover ))(()Impact( x IRantpoiIRMeanIR

Média da prop. de interesse

Page 62: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

62

Distribution Rules

• O consequente é uma distribuição,

• Uso do teste Kolmogorov-Smirnov, para avaliar se regra é interessante.

• Noção de interesse: Regra é interessante se o pi-value do

ks-test(apriori,rules-dist) < α

for menor que o valor α dado pelo utilizador.

Distribuição geral da população

Distribuição do subgrupo da regra

Page 63: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

63

Ideia Geral

• Gerar regras de associação em que o consequente é a distribuição da propriedade numérica a estudar e o antecedente a descrição da sub população.

• Comparar distribuição apriori (da população geral) com a distribuição do sub grupo (via ks-test()).

• Ex: Ant-Sup = 0.14482

IDADE={46/1,48/1,51/2,52/2,54/1,55/1,57/2,58/1,59/3,60/2,61/2,62/2,63/3,64/4,65/4,66/4,67/3,68/4,69/2,70/6,72/6,73/4,75/3,76/7,77/5,78/3,79/1,80/2,81/1,82/4,83/2,84/3,86/3,90/1 } TAVC=1 & DIAB=0

Descreve a distribuição da IDADE para a sub população (que representa 14,4% dos indivíduos estudados) que teve o tipo de AVC 1 e não é diabética.

Page 64: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

64

Distribution Rule presentation

• property of interest

• each DR is a plot• distribution plot

– frequency polygon

– static binning

• distribution statistics

• comparison with default distribution

Page 65: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

65

Medir o interesse de uma DR• KS-interest:

– Given a rule Ay=Dy|A, its KS-interest is 1-p,

– p is the p-value of the KS test comparing Dy|A and Dy|

•KS-improvement• value added by the refinements of a rule• imp(AB) is min({KS-interest(AB) - KS-interest(AsB) | AsA})

Page 66: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

66

Aplicações de Regras de Distribuição

• Descripitive data mining– dataset: Determinants of Wages from the 1985 Current Population

Survey in the United States, a.k.a. Wages– property of interest: WAGE

• Rule discovery– min-sup=0.1, KS-int=0.95– minimal KS-improvement of 0.01– numerical attributes in the antecedent were pre-discretized– compact internal representation of rules– rules can be output as text or graphically

Page 67: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

67

Using Distribution Rules• antecedent

– people with 13 to 15 years of education

– not from the south

• consequent– wage distribution is

better than the whole population but still concentrated on the same interval

Page 68: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

68

Using Distribution Rules• antecedent

– refinement of previous– race is white

• consequent– wage distribution is even

better than before– KS-improvement is

higher than 0.01– the wages still are

concentrated on the same interval as before

Page 69: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

69

Using Distribution Rules• antecedent

– married males

• consequent– less interesting– still signif. different

Page 70: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

70

Using Distribution Rules• antecedent

– Occupation=Clerical

• consequent– concentrated on

lower income

Page 71: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

71

Using Distribution Rules• antecedent

– Occupation=Management

• consequent– clearly better wage

distribution– we also observe a

slightly lifted right tail

Page 72: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

72

Using Distribution Rules• antecedent

– young people

• consequent– lower wages, very

concentrated– some secondary

modes are suggested

Page 73: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

73

Análise de Sub Grupos

• Por vezes é interessante analisar a distribuição dos valores de um atributo numérico.

• Queremos identificar sub populações que se distinguem em relação à população geral pela distribuição particular do atributo numérico.

• Aplicações naturais em dados médicos.

Page 74: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

74

Análise de Distribuições

Aplicar testes de “Goodness of Fit”. (e.g. Kolmogorov-Smirnov).Compara distribuições segundo parâmetros tipo Skewness (grau de assimetria) e Kurtosis (grau de afunilamento)

Ant sup = 0.18593 KS = 0.000000005119Kurt = 10.990787557293 Skew = 2.475421605300 NCY=6 & ORIGIN=1

MPG={ 15.0/4,16.0/5,17.0/2,18.0/18,19.0/13,20.0/7, 21.0/11,22.0/6,23.0/2,24.0/2,25.0/1,27.0/1, 29.0/1,38.0/1 }

Page 75: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

75

Modelos de Previsão com Regras de Associação

• Ver um conjunto de regras seleccionadas como um modelo de previsão.

• Para fazer previsão sobre um caso, usar as previsões derivadas das regras que cobrem esse caso.

• Usados em:– Sistemas de recomendação– Classificação– Previsão numérica

Page 76: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

76

Classificação com Regras de Associação

• Os modelos são um conjunto seleccionado de regras de associação.

• Regras com um só consequente = classe (CAR rules).

• Várias propostas: CMAR, CBA, Apriori-C.• Vários métodos: BestRule, Votação,

Distribuição de classes,• Uso de diferentes métricas.• Implementação no CAREN

Page 77: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

77

BestRule Prediction

• Para um novo caso:– Produzir um rank com as regras que cobrem caso, – Escolher a regra do topo do rank,– A previsão é o consequente desta regra,

– Rank é produzido pela seguinte ordenação:

)(minarg)(

rrankbestrulexFr

x

)()()()()()(

)()()()(

)()(

212121

2121

21

21

RantRantRsupRsupRmeasRmeas

orRsupRsupRmeasRmeas

orRmeasRmeas

ifRR

Page 78: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

78

Voting

• Para um novo caso:– Seleccionar as regras que cobrem o caso,– Cada regra vote na classe que representa

(consequente).– A votação é ponderada pelo valor da medida

de interesse– Alternativamente, a votação é uniforme

Page 79: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

79

Class Distribution

• Só aplicável em medidas de interesse com valores [0,1] (conf, laplace, etc)

• Votação idêntica aos métodos de voting.

• Noção de resíduo:– Residuo(r) = 1 – vote(r),– Os resíduos de um regra são uniformemente

distribuídos pelas classes não votadas pela regra,– Regras com o mesmo corpo são tratadas em bloco.

Page 80: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

80

Selecção de Regras CAR

• Noção de cobertura do conjunto de treino1) Ordenar regras por ordem descendente de confiança

2) Para cada exemplo e ∈ Treino, e.count=0;

3) Enquanto conjunto Treino ≠ Ø e Regras ≠ Ø fazer1) Para cada r ∈ Regras

1) Encontrar todos os e que cobrem r 2) Se r classifica bem pelo menos um e 3) Então fazer e.count++ para todos e4) Seleccionar r e retirar de Regras

• Vários propostas: CBA os exemplos de treino são retirados assim que usados. CMAR tem a noção de cobertura δ. Os exemplos são retirados quando e.count > δ.

Page 81: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

81

Selecção de regras• São seleccionadas as primeiras N regras que cobrem o

conjunto de treino (e com mais alta confiança)• CBA usa pessimistic error rate based pruning• CMAR aplica voting (selecção de várias regras que

cobrem o exemplo): Divide regras por grupos de classes que estas representam. Faz votação por Χ2 pesado (de cada grupo).

• Apriori-C usa subset feature selection – remoção de items, e N best rules in each class – escolha por classe.

• CBA faz BestRule - Escolhe regra do topo da ordem. Ordena regras por:– R1 > R2 sse conf(R1) > conf(R2)– Ou conf(R1) == conf(R2) && sup(R1) > sup(R2)– Ou conf(R1) == conf(R2) && sup(R1) == sup(R2)

mas R1 gerada primeiro que R2

Page 82: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

82

Composição de Modelos• A escolha de um só modelo levanta problemas

estatísticos (decisão sem suporte), computacionais (máximos locais) e de representação (a hipótese não está no espaço).

• Uso de múltiplos modelos tende a minimizar todos estes problemas.

• Combinação de predições:– Voting (ponderada)– Voting (uniforme)– Class distribuition (CAREN)

• Geração de Modelos Homogéneos– Bagging– Boosting

• Geração de Modelos Heterogéneos– Stacking

Page 83: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

83

Bagging• Boostrapp AGGregation,• boostrapping dos vários conjuntos de treino,• Cada conjunto de treino (de tamanho igual ao dataset inicial) dá origem a um modelo,• (amostragem com substituição)• Previsão feita por votação uniforme.

• Funciona porque reduz a variabilidade dos modelosindividuais escolhendo o voto maioritário de muitos modelos.• Em árvores de decisão acontece:

• na escolha do um atributo de teste para um nó• na escolha dos cut-points nos atributos numéricos.

Page 84: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

84

Bagging

D

S1

S2

Sn

M1

M2

Mn

pred1

pred2

predn

finalpredictionD

M1

M2

Mn

pred1

pred2

predn

finalpredictionR

Post Bagging

sampling voting

Page 85: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

85

Post-Bagging (CAREN)

• Jorge & Azevedo (Discovery Science 05)

• Amostragem de regras em vez de casos,

• Não há necessidade de “relearning”,

• Conjunto de variantes sobre tipo de votos, e possibilidade de “don’t knows”,

• Baixa a componente de variância do erro.

• Implementado no CAREN.

Page 86: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

86

Boosting• Algoritmo iterativo• Associa um peso a cada exemplo• Inicializar os peso de uma forma uniforme• Iterativamente:

• gera um modelo para a actual distribuição dos exemplos (distribuição dada pelos pesos)• os pesos dos exemplos mal classificadossão incrementados para a próxima iteração.

• Os modelos gerados são agregados por votação pesada.• Há redução do bias e da variância.

Page 87: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

87

Boosting (2)

• Weak learner que gera um hiper-plano paralelo a um dos eixos

+

--+

+

-

+

Treino

Treino

+

--+

-+

Decisão

Decisão

1ºIteração

2ºIteração

++

+

+

++

+

++

-

-

+

--+

++

Composição dosDois modelos

No limite, boosting consegue “cobrir” todos os casos, i.e. accuracy de treino = 1.0

Page 88: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

88

Iterative Reordering• Increase the accuracy of a CAR set

– Run the rule set on the training set– Re-evaluate the interest and support of each

rule• Interest according to rule’s accuracy• Support according to rule’s usage

– This yields a new ordering on the original set of rules

Page 89: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

89

Iterative Reordering

D

r1r2r3r4

pred1 pred2 predn

finalprediction

r1r3r2r4

r2r3r1

r2r3

Rule generation

Re-evaluateRe-order

filter

Re-evaluateRe-order

filter

pred3

. . .

+ + +

T1 T2 T3Tn

Page 90: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

90

Ensemble generation

• Updating interest

• support(Triali) = usage(Triali-1)

Page 91: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

91

IRE Algorithm

Page 92: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

92

Prediction• Given a new case

– For each trial• Use BestRule

• Overall prediction– Weighted trial voting (two variants)

• Weight = global accuracy of the trial – IRE.V.Acc.int

• Weight = interest measure of the best rule within the trial

– IRE.BR.int

Page 93: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

93

Method behavior

• Bias variance analysis (Kohavi’s methodology)– 10 out of 12 datasets reduce bias visibly– Variance tends to increase– Error reduction seems to be mainly due to bias reduction

Page 94: Regras de Associação Paulo J Azevedo DI - Universidade do Minho 2007-2008

MAP-i 2007/2008

94

Conclusões

• Algoritmos para calcular associações entre elementos atómicos nos dados (items),

• Geração de Regras que descrevem associação entre elementos atómicos dos dados.

• Selecção de regras interessantes e significativas,

• Tratamento de dados não categóricos• Análise de propriedades de interesse

numéricas.• Previsão com regras de associação