Anda di halaman 1dari 60

Minerao de Dados e

Aprendizado de
Mquina
Prof. Dr. Slvio Csar Cazella

Sumrio

Clustering (agrupamento)
Medidas

O que anlise de agrupamentos?


(1/4)
Dado um conjunto de
objetos, colocar os
objetos em grupos
(clusters) baseados na
similaridade entre eles
Utilizado para
encontrar padres
inesperados nos dados
Inerentemente um
problema no definido
claramente

Como agrupar os
animais seguintes?

O que anlise de agrupamentos?


(2/4)
Dado um conjunto
de objetos, colocar
os objetos em grupos
baseados na
similaridade entre eles
Utilizado para
encontrar padres
inesperados nos
dados
Inerentemente
um problema no
definido claramente

Como agrupar os
animais seguintes?

Com bico

Sem bico

O que anlise de agrupamentos?


(3/4)
Dado um conjunto
de objetos, colocar
os objetos em grupos
baseados na
similaridade entre eles

Como agrupar os
animais seguintes?

Utilizado para
encontrar padres
inesperados nos
dados
Inerentemente
um problema no
definido claramente

gua

Terra

O que anlise de agrupamentos?


(4/4)
Dado um conjunto
de objetos, colocar
os objetos em grupos
baseados na
similaridade entre eles
Utilizado para
encontrar padres
inesperados nos
dados
Inerentemente
um problema no
definido claramente

Como agrupar os
animais seguintes?

Ovparo

Mamfero

Anlise de Agrupamentos
Aprendizado no-Supervisionado
Dado um conjunto de objetos descritos por mltiplos valores
(atributos)
(1) atribuir grupos (clusters) aos objetos particionando-os
objetivamente em grupos homogneos de maneira a:
Maximizar a similaridade de objetos dentro de um mesmo grupo
Minimizar a similaridade de objetos entre grupos distintos
(2) atribuir uma descrio para cada grupor formado
(1)
(2)
Dados
Algoritmo
de
Agrupamento

Cluster 1

cor=azul

Cluster 2

cor=laranja

Cluster K

cor=amarelo

.
.
.

Representao dos Grupos


(b)

(a)
a

d
j

k
g
(c)
a
b
c

...

e
h
i
1
0.4
0.1
0.3

c
f

d
j

g
2
3
0.1 0.5
0.8 0.1
0.3 0.4

h
i

(d)
g

a c i e d k b j f h

Formalmente, ...
Dado um conjunto de instncias X={x1, x2,...,
xN} (meus dados), em que xj={xj1, xj2,..., xjd}T
d e cada xji um atributo:
10
8

V2

4
2

0
0

5
V1

10

Agrupamento Particional
Um algoritmo de agrupamento particional
(hard) gera uma K-partio de X, C={C1,
C2, ..., CK} (K N), tal que:
Ci (i=1,...,K)
i=1 Ci = X
Ci Cj = (i,j=1,...,K e i j)

Exemplo: Agrupamento Particional


10
8

C1

V2

4
2

C2

0
0

C3

V1

10

Agrupamento Hierrquico
Um algoritmo de agrupamento hierrquico
gera uma estrutura aninhada (rvore) de X,
H={H1, H2, ..., HQ} (K N), tal que:
Ci Hm e Cj Hl (m > l), implica que
Ci Cj ou
Ci Cj = (i,j,m,l=1,...,Q e i j)

Agrupamento Hierrquico: Exemplo


A
B

G
0

Agrupamento Fuzzy
Para algoritmos de agrupamentos
particional hard, cada instncia (objeto)
pertence a apenas um grupo (cluster)
No entanto, pode ser permitido a uma
instncia pertencer a todos os grupos com
um grau de pertinncia, ui,j [0,1], que
representa o coeficiente de pertinncia da jsima instncia ao i-simo grupo (cluster)
k

j i =1 ui,j =1

i j =1 ui,j < N

Como funciona a anlise de


agrupamentos? (1/2)
Suponha que um bilogo queira identificar subtipos de
um determinado cncer(tumor) com base na
expresso gnica do tecido extrado do tumor
Uma pequena amostra de sete pacientes selecionada
A expresso gnica de dois genes - V1 e V2 - foi
medida para o tumor de cada paciente
V1

10

V2
3
4
4
2
6
7
6

2
5
7
7
6
7
4

6
V2

Paciente
A
B
C
D
E
F
G

4
2

0
0

5
V1

10

Como funciona a anlise de


agrupamentos? (2/2)
O objetivo principal da anlise de agrupamentos definir a
estrutura dos dados colocando observaes (instncias ou
objetos) mais parecidas em grupos
Mas para conseguir isso, devemos abordar trs questes bsicas
Como medir a similaridade?
Correlao, Distncia, Medida de Associao, ...
Como formamos os grupos (clusters)?
No importa apenas medir a similaridade, deve haver um
procedimento para agregar as observaes mais similares
em grupos
Quantos grupos formamos?
Compromisso entre menos grupos e mais homogeneidade

Medida de Similaridade:
Distncia Euclidiana
Paciente
A
B
C
D
E
F
G

V1

V2

A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

3
4
4
2
6
7
6

2
5
7
7
6
7
4

C
0,000
2,000
2,828
2,236
3,606
2,236

d(A,B)=Sqrt[(3-4)2+(2-5)2]
d(C,F)=Sqrt[(4-7)2+(7-7)2]

........
D

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

Formao de Grupos
Como j temos a medida de similaridade,
devemos desenvolver um procedimento para
formar grupos
Para nosso propsito, usaremos uma regra
simples:
Identifique as duas observaes mais semelhantes
(mais prximas) que ainda no esto no mesmo
grupo e combine seus grupos
Aplicamos essa regra repetidamente, comeando
com cada observao em seu prprio grupo e
combinando dois grupos por vez, at que todas as
observaes estejam em um nico grupo
Procedimento Hierrquico e Aglomerativo

Formao de Grupos: Passo 1


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Formao de Grupos: Passo 2


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Formao de Grupos: Passo 3


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Formao de Grupos: Passo 4


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Formao de Grupos: Passo 5


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Formao de Grupos: Passo 6


A
A
B
C
D
E
F
G

0,000
3,162
5,099
5,099
5,000
6,403
3,606

0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

10
8

V2

4
2

0
0

5
V1

10

Dendograma

A
B

G
0

Soluo Inicial

A
B
C
D
E
F
G
0

Passo 1

A
B
C
D
E

F
G
0

Passo 2

A
B
C
D
E

G
0

Passo 3

A
B
C

D
E

G
0

Passo 4

A
B

D
E

G
0

Passo 5

A
B

G
0

Passo 6

A
B

G
0

Quantos grupos a soluo final


deve ter?
Um mtodo hierrquico resulta em diversas solues de
agrupamentos (parties)
No caso do exemplo anterior, elas variam de um a seis grupos

Qual devemos escolher?


Sabemos que quando nos afastamos de grupos unitrios, a
homogeneidade diminui
Ento, por que no ficamos com sete grupos, a opo mais
homognea possvel?
O problema que no definimos qualquer estrutura com sete
grupos
Assim, devemos devemos verificar cada soluo para a sua
descrio de estrutura versus a homogeneidade dos grupos

Quantos grupos a soluo final


deve ter?
Para fins de ilustrao, no nosso exemplo foi usada
uma medida muito simples homogeneidade:
As distncias mdias de todas as observaes
dentro dos grupos
A
A
B
C
D
E
F
G

B
0,000
3,162
5,099
5,099
5,000
6,403
3,606

C
0,000
2,000
2,828
2,236
3,606
2,236

0,000
2,000
2,236
3,000
3,606

0,000
4,123
5,000
5,000

0,000
1,414
2,000

0,000
3,162

0,000

Soluo Inicial
Na soluo inicial com sete grupos, essa medida de
similaridade geral 0 (nenhum observao faz par com
alguma outra)

Processo de Aglomerao
Soluo
Passo Distncia Mnima
Par-Instncia Pertinncia
#Grupos Distncia
Soluo Incial
(A)(B)(C)(D)(E)(F)(G)
7
0

Passo 1

Nesse passo, a similaridade mdia (1,414) a distncia


entre as duas observaes reunidas (E-F)
Processo de Aglomerao
Soluo
Passo Distncia Mnima
Par-Instncia Pertinncia
#Grupos Distncia
Soluo Incial
(A)(B)(C)(D)(E)(F)(G)
7
0
1
E-F
(A)(B)(C)(D)(EF)(G)
6
1,414
1,414

Passo 2
Um agrupamento de trs elementos (E, F e G) formado
A medida de similaridade geral a mdia das distncias
entre E e F (1,414), e E e G (2,000), e F e G (3,162), que
nos d 2,192
Processo de Aglomerao
Passo Distncia Mnima
Par-Instncia
Soluo Incial
1
E-F
1,414
2
E-G
2,000

Soluo
Pertinncia
#Grupos Distncia
(A)(B)(C)(D)(E)(F)(G)
7
0
(A)(B)(C)(D)(EF)(G)
6
1,414
(A)(B)(C)(D)(EFG)
5
2,192

Aumento do valor da similaridade geral, em relao ao


passo anterior

Passo 3

No Passo 3, um novo grupo de dois membros formado


com a distncia 2,000

Passo
1
2
3

Processo de Aglomerao
Distncia Mnima
Par-Instncia
Soluo Incial
E-F
1,414
E-G
2,000
C-D
2,000

Soluo
Pertinncia
#Grupos Distncia
(A)(B)(C)(D)(E)(F)(G)
7
0
(A)(B)(C)(D)(EF)(G)
6
1,414
(A)(B)(C)(D)(EFG)
5
2,192
(A)(B)(CD)(EFG)
4
2,144

Ligeira diminuio do valor da similaridade geral, em


relao ao passo anterior

Passo 4

Ligeira alterao do valor da similaridade geral, em relao


ao passo anterior
Passo
1
2
3
4

Processo de Aglomerao
Distncia Mnima
Par-Instncia
Soluo Incial
E-F
1,414
E-G
2,000
C-D
2,000
B-C
2,000

Soluo
Pertinncia
#Grupos Distncia
(A)(B)(C)(D)(E)(F)(G)
7
0
(A)(B)(C)(D)(EF)(G)
6
1,414
(A)(B)(C)(D)(EFG)
5
2,192
(A)(B)(CD)(EFG)
4
2,144
(A)(BCD)(EFG)
3
2,234

Isto significa que estamos gerando outros grupos


essencialmente com a homogeneidade dos grupos
existentes

Passo 5
Combinao de dois grupos com trs observaes. Grande
aumento no valor da similaridade geral, em relao ao
passo anterior
Passo
1
2
3
4
5

Processo de Aglomerao
Distncia Mnima
Par-Instncia
Soluo Incial
E-F
1,414
E-G
2,000
C-D
2,000
B-C
2,000
B-E
2,236

Soluo
Pertinncia
#Grupos Distncia
(A)(B)(C)(D)(E)(F)(G)
7
0
(A)(B)(C)(D)(EF)(G)
6
1,414
(A)(B)(C)(D)(EFG)
5
2,192
(A)(B)(CD)(EFG)
4
2,144
(A)(BCD)(EFG)
3
2,234
(A)(BCDEFG)
2
2,896

Isso indicativo de que reunir esses dois grupos resultou


em um agregado que bem menos homogneo
Segundo a nossa medida, poderamos considerar a soluo
do Passo 4 muito melhor do que esta

Passo 6
Nesse passo, a medida geral novamente aumenta
consideravelmente
Passo
1
2
3
4
5
6

Processo de Aglomerao
Distncia Mnima
Par-Instncia
Soluo Incial
E-F
1,414
E-G
2,000
C-D
2,000
B-C
2,000
B-E
2,236
A-B
3,162

Soluo
Pertinncia
#Grupos Distncia
(A)(B)(C)(D)(E)(F)(G)
7
0
(A)(B)(C)(D)(EF)(G)
6
1,414
(A)(B)(C)(D)(EFG)
5
2,192
(A)(B)(CD)(EFG)
4
2,144
(A)(BCD)(EFG)
3
2,234
(A)(BCDEFG)
2
2,896
(ABCDEFG)
1
3,42

Ou seja, a observao A mesmo sozinha ainda foi capaz


de mudar a homogeneidade do agrupamento. Observao
atpica?
Portanto, segundo a nossa medida, ainda consideraramos
a soluo do Passo 4 muito melhor do que esta

Passos na Anlise de
Agrupamentos
Partio

Pr-Proc

Alg.
Clustering

Dados
Interpretao

Conhecimento

Validao

Medidas de Similaridade

Medidas de Similaridade
A similaridade entre objetos (instncias) uma
medida de correspondncia ou semelhana entre
objetos a serem agrupados
Ela pode ser medida de diversas formas
Medidas Correlacionais (e.g., correlao de Pearson)
Medidas de Distncia (e.g., distncia euclidiana)
Medidas de Associao (e.g., ndice de Jaccard)

Cada uma dessas formas representa uma perspectiva


particular da similaridade, dependendo de seus
objetivos e do tipo de dados
Tanto as medidas correlacionais quanto as medidas de
distncia requerem dados mtricos, ao passo que as
medidas de associao so para dados no-mtricos

Medidas de Similaridade:
Frmulas

Medidas Correlacionais
Medidas correlacionais representam similaridades pela
correspondncia de padres ao longo dos atributos
Ela no olha a magnitude do valores dos atributos,
apenas o padro global de valores

Cliente_1
Cliente_2
Cliente_3
Cliente_4
Cliente_5
Cliente_6
Cliente_7

X1
X2
X3
X4
X5
7,000 10,000 9,000 7,000 10,000
9,000 9,000 8,000 9,000 9,000
5,000 5,000 6,000 7,000 7,000
6,000 6,000 3,000 3,000 4,000
1,000 2,000 2,000 1,000 2,000
4,000 3,000 2,000 3,000 3,000
2,000 4,000 5,000 2,000 5,000

12

Cliente_1

10

Cliente_2

Cliente_3

Cliente_4

Cliente_5

Cliente_6

0
X1

X2

X3

X4

X5

Cliente_7

Exemplo

12

Cliente_1

10

Cliente_2

Cliente_3

Cliente_4

Cliente_5

Cliente_6

0
X1

X2

X3

X4

X5

Cliente_7

Medidas Correlacionais

Cliente_1
Cliente_2
Cliente_3
Cliente_4
Cliente_5
Cliente_6
Cliente_7

Cliente_1 Cliente_2 Cliente_3 Cliente_4 Cliente_5 Cliente_6 Cliente_7


1,000
-0,147
1,000
0,000
0,000
1,000
0,087
0,516
-0,824
1,000
0,963
-0,408
0,000
-0,060
1,000
-0,466
0,791
-0,354
0,699
-0,645
1,000
0,891
-0,516
0,165
-0,239
0,963
-0,699
1,000

Medidas Correlacionais
Cliente_1
Cliente_2
Cliente_3
Cliente_4
Cliente_5
Cliente_6
Cliente_7

X1
7,000
9,000
5,000
6,000
1,000
4,000
2,000

X2
10,000
9,000
5,000
6,000
2,000
3,000
4,000

X3
9,000
8,000
6,000
3,000
2,000
2,000
5,000

X4
7,000
9,000
7,000
3,000
1,000
3,000
2,000

X5
10,000
9,000
7,000
4,000
2,000
3,000
5,000

Mdia
8,600
8,800
6,000
4,400
1,600
3,000
3,600

Cliente_1
Media
X-Media
(X-Media)^2

7,000
8,6
-1,600
2,56

10,000
8,6
1,400
1,96

9,000
8,6
0,400
0,16

7,000
8,6
-1,600
2,56

10,000
8,6
1,400
1,96

9,2

Cliente_5
Media
Y-Media
(Y-Media)^2

1,000
1,6
-0,600
0,36

2,000
1,6
0,400
0,16

2,000
1,6
0,400
0,16

1,000
1,6
-0,600
0,36

2,000
1,6
0,400
0,16

1,2

0,96

0,56

0,16

0,96

0,56

3,2
3,32265
0,963087

Medidas Correlacionais
Cliente_1
Cliente_2
Cliente_3
Cliente_4
Cliente_5
Cliente_6
Cliente_7

Cliente_1 Cliente_2 Cliente_3 Cliente_4 Cliente_5 Cliente_6 Cliente_7


1,000
-0,147
1,000
0,000
0,000
1,000
0,087
0,516
-0,824
1,000
0,963
-0,408
0,000
-0,060
1,000
-0,466
0,791
-0,354
0,699
-0,645
1,000
0,891
-0,516
0,165
-0,239
0,963
-0,699
1,000

As instncias 1, 5 e 7 tm padres semelhantes e correlao


(positiva) alta
Da mesma forma instncias 2, 4 e 6
A instncia 3 tem correlao baixa ou negativas com todas as demais,
de modo que talvez forme um grupo por si mesma
Portanto, as correlaes representam padres ao longo dos atributos,
muito mais do que as magnitudes

Medidas de Distncia
Representam a similaridade como a proximidade
entre observaes (instncias) ao longo dos
atributos
As medidas de distncia so, na verdade, uma
medida de dissimilaridade, em que os valores
maiores denotam menor similaridade
A distncia convertida em similaridade pelo uso da
relao inversa (1 - distncia)

Medidas de Distncia: Exemplo


Distncia Euclidiana

Cliente_1
Cliente_2
Cliente_3
Cliente_4
Cliente_5
Cliente_6
Cliente_7

Cliente_1 Cliente_2 Cliente_3 Cliente_4 Cliente_5 Cliente_6 Cliente_7


0,00
3,32
0,00
6,86
6,63
0,00
10,24
10,20
6,00
0,00
15,78
16,19
10,10
7,07
0,00
13,11
13,00
7,28
3,87
3,87
0,00
11,27
12,16
6,32
5,10
4,90
4,36
0,00

Distncia versus Correlao


As medidas de distncia se concentram na magnitude dos
valores e representam casos similares que esto
prximos, mas podem ter padres muito diferentes ao
longo dos atributos
No caso do exemplo anterior, vemos emergir grupos
muitos diferentes quando a distncia considerada em
lugar da correlao
Como as distncias menores representam maior
similaridade, percebemos que as instncias 1 e 2 formam
um grupo e as instncias 4, 5, 6 e 7 formam outro
Um terceiro grupo, que consiste apenas do caso 3, difere
dos outros dois porque possui valores que so tantos
altos quanto baixos

Distncia versus Correlao


Agrupamentos baseados em medidas
correlacionais podem no ter valores similares,
mas sim padres similares

Agrupamentos baseados em distncia tm


valores mais similares no conjunto de atributos,
mas os padres podem ser bem diferentes

Medidas para Atributos Binrios


Considere dos vetores binrios xi e xk
n11 - quantidade de vezes que xil e xkl so ambos 1
n00 - quantidade de vezes que xil e xkl so ambos 0
n01 - quantidade de vezes que xil=0 e xkl=1
n10 - quantidade de vezes que xil=1 e xkl=0

n11

n10

n01

n00

Medidas para Atributos Binrios


1

n11

n10

n01

n00

Coeficiente de matching
simples

ndice (coeficiente) de
Jaccard

n11 + n00

n11

n00 + n01 + n10 + n11

n01 + n10 + n11

Medidas para Atributos Categricos


Pode-se transformar esses atributos em
binrios e, depois, aplicar uma medida
binria
Outra possibilidade
Sij =

1/d Sijl
0, se i<>j

Sijl =
1, se i=j

Medidas para Strings


Programao Dinmica
Sejam s e t

duas seqncias, com |s|=m e |t|=n,

construir uma matriz (m+1) x (n+1),

em que M(i, j)

contm a similaridade entre s[1..i] e t[1..j].


M (i, j) = max
M (i, j-1) - 2
(ltimo passo = Insero)
M (i-1, j-1) + p(i,j) (ltimo passo =
Substituio/Match)
M (i-1, j) - 2
(ltimo passo = Remoo)

Bibliografia
Hair-Jr., J. F. et al (2005). Anlise
multivariada de dados. Captulo 9 - Anlise
de Agrupamentos. pp. 381-419. Bookman.
Xu, R. and Wunsch II, D. (2005). Survey of
Clustering Algorithms. IEEE Trans. on Neural
Networks, v. 16, pp. 645-678.
Souto, M. C. P. Anlise de Agrupamentos
(Clusters). DIMAP/UFRN.

Thats all folks

Anda mungkin juga menyukai