Escolar Documentos
Profissional Documentos
Cultura Documentos
MT803 Tpicos em Matemtica Aplicada Aula 6 3 MT803 Tpicos em Matemtica Aplicada Aula 6 4
A noo de um cluster pode ser ambgua Aplicaes gerais de clusterizao
Reconhecimento de padres.
Anlise de dados espaciais:
Criao de mapas temticos em GIS por meio de
agrupamento de caractersticas espaciais
Quantos clusters? Seis Clusters
Agrupamento de pacientes c/ mesmos sintomas
Marketing e business: segmentao de mercado
Web:
Dois Clusters Quatro Clusters Classificao de documentos.
Anlise de Weblog para descobrir grupos de padres de
acessos similares.
MT803 Tpicos em Matemtica Aplicada Aula 6 5 MT803 Tpicos em Matemtica Aplicada Aula 6 6
MT803 Tpicos em Matemtica Aplicada Aula 6 7 MT803 Tpicos em Matemtica Aplicada Aula 6 8
Clusterizao: Requisitos em Minerao Tipos de dados em clusterizao
Escalabilidade. x 11 ... x 1f ... x 1p
Habilidade para lidar com diferentes tipos de atributos. ... ... ... ... ...
Matriz de dados x ... x if ... x ip
Habilidade para lidar com dados dinmicos. i1
... ... ... ... ...
Descoberta de clusters com diferentes formatos (shapes). x ... x nf ... x np
n1
Necessidade mnima de conhecimento do domnio para
determinar parmetros de entrada (input).
Habilidade de trabalhar com rudos e outliers. Matriz de distncias 0
d(2,1) 0
Insensibilidade com relao nmero de registros de entrada.
d(3,1 ) d ( 3,2 ) 0
Alta dimensionalidade.
: : :
Incorporao de restries definidas por usurios. d ( n ,1) d ( n ,2 ) ... ... 0
Interpretabilidade e usabilidade.
MT803 Tpicos em Matemtica Aplicada Aula 6 9 MT803 Tpicos em Matemtica Aplicada Aula 6 10
MT803 Tpicos em Matemtica Aplicada Aula 6 11 MT803 Tpicos em Matemtica Aplicada Aula 6 12
Normalizao de variveis numricas Exerccio 1
Normalizao variveis com mesmo peso. Usando o software Weka:
Min-Max para um atributo f:
1. Selecionar o dataset iris;
xif min f
S = (novoMax novoMin ) + novoMin
max f min f 2. Normalizar atributos usando Min-max;
f f f
if
MT803 Tpicos em Matemtica Aplicada Aula 6 13 MT803 Tpicos em Matemtica Aplicada Aula 6 14
MT803 Tpicos em Matemtica Aplicada Aula 6 15 MT803 Tpicos em Matemtica Aplicada Aula 6 16
Exerccio 2 Similaridade entre variveis binrias
1. Dados os pontos P = (-1, 3, -2); Q = (-4, 5, -2); Tabela de contingncia para variveis binrias:
Objeto j
R = (4, -1, 0); S = (7, 0, 1), pede-se: 1 0 sum
a) O centride dos pontos P, Q, R, S. 1 a b a +b
Objeto i 0 c d c+d
b) As distncias Euclidiana e de Manhattan entre sum a + c b + d p
os pontos PQ, RS e QS.
Similaridade invariante - varivel simtrica (ex: sexo):
d (i, j ) = b+c
a+b+c+d
Coeficiente de Jaccard - varivel assimtrica:
d (i, j ) = b+c
a+b+c
MT803 Tpicos em Matemtica Aplicada Aula 6 17 MT803 Tpicos em Matemtica Aplicada Aula 6 18
d (i, j) = p pm
Sexo um atributo simtrico.
Os demais atributos so assimtricos.
Suponha que os valores Y e P representam 1, e o valor N representa 0
0 +1
d ( Jack , Mary ) = = 0 . 33 Mtodo 2: uso de um grande nmero de variveis binrias
2 + 0 +1
1+1 Cria-se uma varivel binria para cada um dos M estados
d ( Jack , Jim ) = = 0 . 67
1+1+1 nominais.
1+ 2
d (Jim,
d ( Jim Mary) ) =
, Mary = ? = 0 . 75
1+1+ 2
MT803 Tpicos em Matemtica Aplicada Aula 6 19 MT803 Tpicos em Matemtica Aplicada Aula 6 20
Variveis intervalares Similaridade para variveis ordinais
Permitem no apenas ordenar em postos os itens Uma varivel ordinal pode ser discreta ou contnua.
que esto sendo medidos, mas tambm quantificar A ordem importante (Exemplo: ranqueamento).
e comparar o tamanho das diferenas entre eles.
Podem ser tratadas como variveis intervalares.
Exemplo: temperatura medida em graus Celsius Substituir xif pela sua posio no rank. r if {1,..., M f }
constitui uma varivel intervalar. Mapear o domnio de cada varivel no intervalo [0, 1] substituindo
o i-th objeto na f-th varivel:
Pode-se dizer que a temperatura de 40C maior r if 1
do que 30C e que um aumento de 20C para 40C z if =
M f 1
duas vezes maior do que um aumento de 30C
para 40C. Computar a similaridade usando mtodos para variveis
intervalares.
MT803 Tpicos em Matemtica Aplicada Aula 6 21 MT803 Tpicos em Matemtica Aplicada Aula 6 22
MT803 Tpicos em Matemtica Aplicada Aula 6 23 MT803 Tpicos em Matemtica Aplicada Aula 6 24
Exerccio 3 Mtodos de clusterizao
Usando o software Weka: Particionamento: Constri vrias parties e as
avalia usando algum critrio.
1. Selecionar o dataset contact-lenses;
2. Converter os atributos de nominal para binrio; Hierrquico: Cria uma decomposio
hierrquica dos objetos usando algum critrio.
3. Selecionar o dataset soybean e converter seus
atributos de nominal para binrio. Baseado em densidade: Fundamenta-se em
funes de conectividade e de densidade.
MT803 Tpicos em Matemtica Aplicada Aula 6 25 MT803 Tpicos em Matemtica Aplicada Aula 6 26
MT803 Tpicos em Matemtica Aplicada Aula 6 27 MT803 Tpicos em Matemtica Aplicada Aula 6 28
K-means: algoritmo K-means: exemplo 1
10 10
Input: k, D 9 9
8 8
6
7
5 5
4 4
2
3
iniciais. 1
0
1
0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
(maior similaridade). 9
8
9
7 7
5
6
3
4
2 2
1 1
0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
(4) (3)
MT803 Tpicos em Matemtica Aplicada Aula 6 29 MT803 Tpicos em Matemtica Aplicada Aula 6 30
PASSO 1:
Seleo arbitrria de K pontos para serem os
Centros de Cluster
MT803 Tpicos em Matemtica Aplicada Aula 6 31 MT803 Tpicos em Matemtica Aplicada Aula 6 32
K-means: exemplo 2 ... K-means: exemplo 2 ...
PASSO 2:
Associar cada registro ao Centro de Cluster mais
prximo.
MT803 Tpicos em Matemtica Aplicada Aula 6 37 MT803 Tpicos em Matemtica Aplicada Aula 6 38
MT803 Tpicos em Matemtica Aplicada Aula 6 39 MT803 Tpicos em Matemtica Aplicada Aula 6 40
K-means: pontos positivos K-means: pontos negativos
Relativamente eficiente (escalvel). Aplicvel somente quando a mdia definida
ineficiente para atributos nominais? (verso
Complexidade: O(tkn), onde original).
n o nmero de objetos;
Necessidade de especificar k, o nmero de clusters,
k o nmero de clusters;
a priori.
t o nmero de iteraes;
Normalmente: k, t << n. Ineficiente para lidar com rudos e outliers.
Frequentemente termina em um timo local. Inadequado para descobrir clusters com formato no-
convexo.
O timo global pode ser achado usando
Sensvel a outliers, pois todos os pontos (objetos)
tcnicas, tais como algoritmos genticos.
so agrupados impacta centrides dos clusters.
MT803 Tpicos em Matemtica Aplicada Aula 6 41 MT803 Tpicos em Matemtica Aplicada Aula 6 42
MT803 Tpicos em Matemtica Aplicada Aula 6 43 MT803 Tpicos em Matemtica Aplicada Aula 6 44
EM Expectation Maximization O Algoritmo EM
Idia Geral: Inicialmente, k objetos so selecionados aleatoriamente
Comea com uma estimativa inicial de um vetor de para representar os centride dos clusters.
parmetros.
Iterativamente refina os clusters em dois passos:
Iterativamente reavalia (pondera) os objetos com relao
mistura distribuies produzida pelo vetor de parmetros. Passo E (Expectation): associa cada objeto xi ao cluster Ci
Os objetos reavaliados (novos pesos) so usados para com a seguinte probabilidade:
atualizar a estimativa dos parmetros. p (Ck ) p( xi Ck )
P ( xi Ck ) = p (Ck xi ) =
A cada objeto associada uma probabilidade de pertencer a p ( xi )
um cluster.
Onde p(xi/Ck)= N(mk, Ek(xi)) segue uma distribuio normal
Algoritmo converge rapidamente, mas pode no (Gaussiana) de probabilidade com mdia mk e valor
atingir um timo global. esperado Ek.
MT803 Tpicos em Matemtica Aplicada Aula 6 45 MT803 Tpicos em Matemtica Aplicada Aula 6 46
O Algoritmo EM Exerccio 4
Passo M (Maximization): usa as probabilidades Usando o software Weka:
estimadas no passo anterior para re-estimar (refinar) os
parmetros do modelo: 1. Selecionar um dataset com variveis numricas.
1 n xi p ( xi Ck ) 2. Normalizar atributos (Z-score).
mk =
n i =1 p ( xi C j ) 3. Explorar o algoritmo k-means:
j
a) Qual o nmero de clusters pr-definido pelo algoritmo?
b) Mude a semente (seed) para o k-means e observe o
Os Passos E e M fazem parte de um processo iterativo, comportamento do algoritmo.
em que as novas probabilidades, calculadas na fase M,
4. Selecionar um dataset com variveis nominais e
sero utilizadas para realizar a inferncia na fase E.
repetir os exerccios 1, 2 e 3.
O Passo M a maximizao da funo de 5. Como os algoritmos EM e k-means poderiam ser
verossimilhana das distribuies de probabilidade. usados conjuntamente.
MT803 Tpicos em Matemtica Aplicada Aula 6 47 MT803 Tpicos em Matemtica Aplicada Aula 6 48
Mtodos Hierrquicos Mtodos Hierrquicos ...
MTODOS DIVISIVOS Todos Registros Um Usa a matriz de distncias como critrio de segmentao. Esse
mtodo no exige o nmero de clusters k como input, mas precisa
Grande Cluster. de uma condio para terminar.
Este Grande Cluster dividido em dois ou mais Step 0 Step 1 Step 2 Step 3 Step 4
aglomerativo
Clusters menores. (AGNES)
At que cada Cluster tenha somente registros semelhantes. a ab
A cada passo, alguma medida de valor do conjunto de Cluster b
realizada at chegar ao melhor conjunto de Clusters. abcde
c
cde
MTODOS AGLOMERATIVOS Cada registro d
um Cluster de
e
A cada passo, combina-se Clusters com alguma caracterstica divisivo
comum at que se chegue a um Grande Cluster. Step 4 Step 3 Step 2 Step 1 Step 0 (DIANA)
MT803 Tpicos em Matemtica Aplicada Aula 6 49 MT803 Tpicos em Matemtica Aplicada Aula 6 50
3
0.15
Eventualmente todos os ns pertencem ao mesmo cluster. 5
2 1 0.1
10
9
10
9
10
9
2 3 6
8 8 8
0.05
7 7 7
6 6 6
0
5
4
5
4
5
4
4 3 6 2 5 4 1
3
2
3
2
3
2
4 objetos
1 1 1
0 0 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
MT803 Tpicos em Matemtica Aplicada Aula 6 51 MT803 Tpicos em Matemtica Aplicada Aula 6 52
Exemplo de Dendograma: AGNES DIANA (Divisive Analysis)
Decompe objetos em vrios nveis de particionamento Referncia: Livro [Kaufmann and Rousseeuw (1990)]
aninhados (rvore de clusters), conhecida como dendograma.
Implementado em pacotes de anlise estatisticos (Ex: Splus).
Uma clusterizao dos objetos obtida particionando-se o
dendograma em um nvel desejado. Cada componente Procedimento: o inverso de AGNES.
conectado forma um cluster.
Eventualmente cada n forma um cluster.
10 10
10
9 9
9
8 8
8
7 7
7
6 6
6
5 5
5
4 4
4
3 3
3
2 2
2
1 1
1
0 0
0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10
MT803 Tpicos em Matemtica Aplicada Aula 6 53 MT803 Tpicos em Matemtica Aplicada Aula 6 54
MT803 Tpicos em Matemtica Aplicada Aula 6 55 MT803 Tpicos em Matemtica Aplicada Aula 6 56
DBSCAN Idia Geral O Algoritmo DBSCAN
Idia: Um cluster definido como um conjunto mximo de Arbitrariamente, seleciona um ponto p.
pontos densamente conectados.
Identifica todos os pontos densamente conectados a p
Encontra clusters com formatos (shape) arbitrrios em
bancos de dados espaciais, contendo rudos (outliers). com relao aos parmetros Eps e MinPts.
MT803 Tpicos em Matemtica Aplicada Aula 6 57 MT803 Tpicos em Matemtica Aplicada Aula 6 58
MT803 Tpicos em Matemtica Aplicada Aula 6 59 MT803 Tpicos em Matemtica Aplicada Aula 6 60
Quando DBSCAN no funciona bem? Validao de Clusters
Em classificao supervisionada, existe uma grande
variedade de medidas para avaliar quo bom um modelo
: Acurcia, preciso, cobertura, kappa etc.
Para anlise de clusters, como avaliar a qualidade dos
clusters gerados?
(MinPts=4, Eps=9.75).
Em geral, os clusters so avaliados por especialistas de
Pontos Originais forma subjetiva.
Ento, por que precisamos avaliar clusters?
Variao na densidade dos pontos
Para evitar encontrar padres com rudos.
0.9
1
0.9
Coeso: Mede a proximidade dos objetos de um cluster.
0.8 0.8 Exemplo: Soma do Erro Quadrtico (SEQ).
0.7 0.7
Pontos 0.6 0.6 DBSCAN Separao: Mede como um cluster distinto ou bem
Aleatrios 0.5
y
0.5
separado dos outros.
y
0.4 0.4
0.3 0.3
0
0 0.2 0.4 0.6 0.8 1
0
0 0.2 0.4 0.6 0.8 1 Coeso medida pela SEQ interna (dentro de um cluster).
x x
WSS = ( x mi )2
1 1
0.9 0.9
0.5
0.6
0.5
Separao medida pela soma de quadrados entre clusters.
y
BSS = Ci (m mi )2
0.4 0.4
0.3 0.3
0.2 0.2
i
0.1 0.1
0 0
Onde |Ci| o tamanho (cardinalidade) do cluster i.
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
x x
MT803 Tpicos em Matemtica Aplicada Aula 6 63 MT803 Tpicos em Matemtica Aplicada Aula 6 64
Medidas Internas: Coeso e Separao Medidas Internas: Coeso e Separao
Um grafo de proximidade tambm pode ser usado para
Exemplo: SEQ coeso e separao.
BSS + WSS = constante Coeso a soma dos pesos de todos os links dentro de um cluster.
m Separao a soma de todos os pesos entre os ns de um cluster e ns
fora do cluster.
1 m1 2 3 4 m2 5
MT803 Tpicos em Matemtica Aplicada Aula 6 67 MT803 Tpicos em Matemtica Aplicada Aula 6 68