P. 1
Class Prezied

Class Prezied

|Views: 0|Likes:
Published by Tiago Gomes
Selecção de Regras CAR
Selecção de Regras CAR

More info:

Categories:Types, School Work
Published by: Tiago Gomes on Jan 25, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

01/28/2015

pdf

text

original

Sections

  • Problema
  • Aplicações
  • Geração de Regras
  • Algoritmo Partition(2)
  • DIC(2)
  • Algoritmos: Representações
  • Representações Verticais
  • Representações Verticais (2)
  • Depth-first Expansion (Caren)
  • Formatos Condensados
  • Formatos Condensados (cont)
  • Exemplos de regras
  • Medidas de Interesse
  • Medidas de Interesse (2)
  • Medidas de Interesse (3)
  • Medidas de Interesse (4)
  • Pruning nos itemsets
  • Selecção e Pruning de Regras
  • Pruning de Regras
  • Significância Estatística
  • Regras Significativas
  • False Discoveries
  • Significant Patterns (2)
  • Significant Patterns (3)
  • Dados Numéricos
  • Discretização
  • Discretização Fayyad & Irani
  • Fayyad & Irani
  • Discretização ChiMerge
  • ChiMerge
  • Discretização Srikant & Agrawal
  • Fusão de Intervalos
  • Partial Completeness
  • Número de Intervalos
  • Exemplo
  • Ideia Geral
  • Distribution Rule presentation
  • Análise de Sub Grupos
  • Análise de Distribuições
  • BestRule Prediction
  • Voting
  • Class Distribution
  • Selecção de Regras CAR
  • Selecção de regras
  • Composição de Modelos
  • Post Bagging
  • Post-Bagging (CAREN)
  • Boosting
  • Boosting (2)
  • Ensemble generation
  • IRE Algorithm
  • Prediction
  • Method behavior
  • Conclusões

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


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


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
ite
m


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 regras
expressa por medidas
estatísticas.


MAP-i 2007/2008
5
A C B D
AD AC AB BC BD
ABCD
ABD ACD ABC
CD
Set indica
inclusão
matemática
Itemset
Item
BCD
Podemos ver o problema pela perspectiva do
espaço de pesquisa a explorar


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)


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,




MAP-i 2007/2008
8
Application: Recommendations using AR
index.html
A
B
C D
E
A D Obs.:
Rules:
A E  D
A D  F
A B  D F
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


MAP-i 2007/2008
9
TTR Hydrophobic Clusters detection
0 2 4 6 8
0
25
50
75
100
%

S
A
S
A
Leu 12
A
Sup = 0.34821 Conf = 1.00000
LEU_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
A
S
A
Met 13
0 2 4 6 8
0
5
10
15
20
25
D
i
s
t
a
n
c
e

(
Å
)
L12 - M13
0 2 4 6 8
0
25
50
75
100
%

S
A
S
A
Phe 64
0 2 4 6 8
0
5
10
15
20
25
D
i
s
t
a
n
c
e

(
Å
)
L12 - F64
0 2 4 6 8
0
25
50
75
100
%

S
A
S
A
Time (ns)
Ala 97
0 2 4 6 8
0
5
10
15
20
25
D
i
s
t
a
n
c
e

(
Å
)
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[


MAP-i 2007/2008
10
Geração de Regras
• Cálculo da confiança: conf(AC) = 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.


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)



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 os
candidatos a contar. Só são considerados candidatos que
obedecem à propriedade anti-monótona
(é candidato se todos os seus subconjuntos são frequentes!)


MAP-i 2007/2008
13
A C B D
AD AC AB BC BD
ABCD
ABD ACD ABC
CD
Infrequente
BCD
Aplicação da Propriedade Anti-monótona


MAP-i 2007/2008
14
Apriori “in action…”


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)




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.


MAP-i 2007/2008
17
Algoritmo Partition(2)
• Filtragem de candidatos globais


MAP-i 2007/2008
18
Algoritmo Dynamic Itemset
Counting (DIC)
Diminuir o número de passagems pelo dataset usando a ideia de iniciar a contagem
do N-itemset quando todos os seus subconjuntos (N-1)-itemsets já são frequentes.


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


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,…]



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


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


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 0 1 1 Itemset ABCE
transacção
Ocorrência nessa transacção


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


MAP-i 2007/2008
25
Formatos Condensados
• Maximal itemsets
I é máximo se:


• Closed itemsets
I é um closed itemset se:




ou se
ms a I a < ¬ ) sup( :
) sup( ) sup( & ) sup( : I s ms s I s = > ¬
O suporte dos itemsets frequentes que não são “closed”
são determinados pelos closed patterns.

cover(I) Je
= J I


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


) 1 sup( ) sup( , 1 X X X X < + c ¬ o


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( X XZ XY XYZ ÷ + >
) sup( ) sup( ) sup( ) sup( XZ XYZ X XY = ¬ =


MAP-i 2007/2008
28
Exemplos de regras
Association Rules ...


Sup = 0.01500 Conf = 0.37500 oranges  bananas & peaches
Sup = 0.03900 Conf = 0.30000 oranges  peaches
Sup = 0.01000 Conf = 0.28571 oranges  bananas & potatoes
Sup = 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


MAP-i 2007/2008
29
Medidas de Interesse
• Lift
• Conviction
• Leverage
• Χ
2
• Reliability
• etc



Teste de Χ
2
entre
antecedente e
consequente

) (
) (
) (
C s
C A conf
C A Lift
÷
= ÷
) ( 1
) ( 1
) (
C A conf
C s
C A conv
÷ ÷
÷
= ÷
) ( ) ( ) ( C s C A conf C A R ÷ ÷ = ÷
) ( * ) ( ) ( ) ( C s A s C A s C A leve ÷ = ÷


MAP-i 2007/2008
30
Medidas de Interesse (2)
) (
) (
) (
C s
C A conf
C A Lift
÷
= ÷
) (
) (
) (
A s
C A s
C A conf

= ÷
Confiança:
• mede probabilidade condicional
P(C) dado A
•Tende a dar ênfase a regras não
correlacionadas (spurious rules).
Laplace:
• estimador da confiança que tem
em conta o suporte
• torna-se mais pessimista com o
valores de s(A) mais pequenos
• sofre dos mesmos problemas da
confiança
2 ) (
1 ) (
) (
+
+
= ÷
A s
C A s
C A lapl
Lift:
• Mede a distância para a independência
entre A e C
• varia entre [0, +oo[
• Valor 1  independência,
• Valores longe de 1  indicam que a evidencia
de A fornece informação sobre C.
• mede co-ocorrência (não implicação)
• é simétrica!


MAP-i 2007/2008
31
Medidas de Interesse (3)
) ( 1
) ( 1
) (
C A conf
C s
C A conv
÷ ÷
÷
= ÷
) ( ) ( ) ( ) ( C s A s C A s C A leve × ÷ = ÷
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 obtidos
em relação ao esperado (à independência)
Teste do χ2:
•Mede independência estatística entre antecedente
e consequente
• não captura a força da correlação entre A e C
• Apenas suporta a decisão de independência
¿
÷
= X
n
r
R i
r E
r E r O
c
] [
]) [ ) ( (
2
2


MAP-i 2007/2008
32
Medidas de Interesse (4)
Jaccard:
•. mede grau de “overlap” (sobreposição) entre
os casos de A e os casos de C
• varia entre [0,1]
• mede a distância entre A e C pela fracção
entre os casos cobertos pelos dois e
os caso cobertos por um só (A ou C).
• valores altos indicam sobreposição de casos
cobertos.
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)


MAP-i 2007/2008
33
Problemas da métrica Confiança
) ( ) ( ) ( C s A s C A s × =
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ção
Entre antecedente e consequente.
¿
÷
= X
n
r
R i
r E
r E r O
c
] [
]) [ ) ( (
2
2
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.


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
X
2
mas ABC pode. Upward closure property:
– Se X
2
(AC) ≥ 3.84 então necessáriamente X
2
(ABC) ≥ 3.84

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

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


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


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)


MAP-i 2007/2008
37
Pruning de Regras
Problema 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( ) ( C A met C A met A A C A imp ÷ ÷ ÷ c ¬ = ÷


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



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, H
0
=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,>H
0
,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 - α


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:
– H
0
: ¬ρ é verdadeiro
– Se ρ é encontrado temos uma false discovery - Erro tipo I
(unsoundness)
– Qualquer ρ que não satisfaz H
0
e não for derivado -
Erro tipo II (incompleteness)



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 H
0
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


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
)! ( )! ( )! ( )! ( )! (
)! ( )! ( )! ( )! (
c b
i
i d i c i b i a d c b a
d b c a d c b a
p
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).


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) p
i
,

)
1
max(
1
+ ÷
s ¬ =
s s
j n
p k
j i j
o


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!



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.


MAP-i 2007/2008
46
Dados Numéricos
Age Colest Blood Class
23 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]


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




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.



MAP-i 2007/2008
49
Fayyad & Irani
• Condição Minimal Description Length:



N = #S, k = #classes, k
i
= #classes em S
i
• Processo pára se a condição é satisfeita.
0.0 2.3 12.4
19.3
24.4
18.9
2.3


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.


MAP-i 2007/2008
51
ChiMerge
• Cálculo do Χ
2







• Sendo:
– k é número de classes
– A
ij
é número de exemplos no intervalo i da classe j
– E
ij
= #(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
j
ij
ij ij
E
A E
_


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).


MAP-i 2007/2008
53
Fusão de Intervalos
Dom(X) = {1,2,3,4}

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

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

Mas também:
X=[1,3], sup=0.5
X=[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 suporte
máximo imposto pelo utilizar.
Há o problema da geração de demasiados
items. Para n valores (ou intervalos) de um
atributo 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.



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ção
de 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, dizemos
que P é K-completo em relação a C se:
¬
¬
-
-


MAP-i 2007/2008
55
Exemplo
num 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 o
suporte dessa generalização é superior no
má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.


MAP-i 2007/2008
56
Número de Intervalos
) 1 ( *
* 2
÷
=
k ms
n
num
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ção
e maior o número de intervalos.

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


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 * 2
= = num
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]


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)



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.



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 mean
J
(Tx) e mean(D-Tx) com α=0.05.

Regras do tipo: subset(X)  Mean
J
(Tx) onde
Mean
J
(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


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 IR ant poi IR Mean IR ÷ =
Média da prop.
de interesse


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


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.


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



MAP-i 2007/2008
65
Medir o interesse de uma DR
• KS-interest:
– Given a rule Ay=D
y|A
, its
KS-interest is 1-p,
– p is the p-value of the KS test
comparing D
y|A
and D
y|C

•KS-improvement
• value added by the refinements of a rule
• imp(AB) is
min({KS-interest(AB) - KS-interest(AsB) | As _A})


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




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



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



MAP-i 2007/2008
69
Using Distribution Rules
• antecedent
– married males
• consequent
– less interesting
– still signif. different



MAP-i 2007/2008
70
Using Distribution Rules
• antecedent
– Occupation=Clerical
• consequent
– concentrated on
lower income



MAP-i 2007/2008
71
Using Distribution Rules
• antecedent
– Occupation=Management
• consequent
– clearly better wage
distribution
– we also observe a
slightly lifted right
tail




MAP-i 2007/2008
72
Using Distribution Rules
• antecedent
– young people
• consequent
– lower wages, very
concentrated
– some secondary
modes are
suggested



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.


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.000000005119
Kurt = 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 }


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


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



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:

) ( min arg
) (
r rank bestrule
x F r
x
e
=
) ( ) ( ) ( ) ( ) ( ) (
) ( ) ( ) ( ) (
) ( ) (
2 1 2 1 2 1
2 1 2 1
2 1
2 1
R ant R ant R sup R sup R meas R meas
or R sup R sup R meas R meas
or R meas R meas
if R R
< . == . ==
> . ==
>



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


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.


MAP-i 2007/2008
80
Selecção de Regras CAR
• Noção de cobertura do conjunto de treino
1) Ordenar regras por ordem descendente de confiança
2) Para cada exemplo e ∈ Treino, e.count=0;
3) Enquanto conjunto Treino ≠ Ø e Regras ≠ Ø fazer
1) 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 e
4) 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 > δ.



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



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



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 modelos
individuais 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.


MAP-i 2007/2008
84
Bagging
D
S
1
S
2
S
n
M
1
M
2
M
n
pred
1
pred
2
pred
n
final
prediction
D
M
1
M
2
M
n
pred
1
pred
2
pred
n
final
prediction
R

Post Bagging
sampling
voting


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.



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 classificados
sã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.


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 dos
Dois modelos
No limite, boosting consegue “cobrir” todos os casos,
i.e. accuracy de treino = 1.0


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



MAP-i 2007/2008
89
Iterative Reordering
D
r1

r2
r3
r4
pred
1
pred
2
pred
n
final
prediction
r1

r3
r2
r4
r2

r3
r1

r2

r3


Rule
generation
Re-evaluate
Re-order
filter
Re-evaluate
Re-order
filter
pred
3
. . .

+ + +
T
1
T
2
T
3
T
n


MAP-i 2007/2008
90
Ensemble generation
• Updating interest






• support(Trial
i
) = usage(Trial
i-1
)


MAP-i 2007/2008
91
IRE Algorithm


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


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


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

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->