Você está na página 1de 17

Resumo da Aula

Clusterizao ou anlise de agrupamentos:


Clusterizao ou 

 Conceitos bsicos e aplicaes.


Agrupamento de Dados
 Tipos de dados em clusterizao.
 Avaliando a qualidade de clusters gerados.
Stanley R. M. Oliveira  Similaridade entre objetos.
 Mtodos de Clusterizao:
 Particionamento;
 Hierrquico;
 Baseado em densidade.
 Outros.

MT803 Tpicos em Matemtica Aplicada Aula 6 2

O que anlise de agrupamentos? O que no Clusterizao?


 Cluster: uma coleo de objetos  Classificao supervisionada
 Similares aos objetos do mesmo cluster  Possui atributo meta com informao (classes).

 Dissimilares aos objetos de outros clusters


 Segmentao Simples
 Diviso de estudantes em diferentes grupos, registrados
 Clusterizao em ordem alfabtica, pelo ltimo nome.
 Agrupamento de conjuntos de dados em clusters.
 Resultados de uma Consulta
 O agrupamento o resultado de uma especificao
 Clusterizao uma classificao no externa.
supervisionada: sem classes predefinidas.
 Particionamento de um Grafo
 Os agrupamento pode ter sinergia ou relevncia, mas as
reas no so idnticas.

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

Outros exemplos de aplicaes O que uma boa clusterizao?


 Marketing: identifica grupos distintos de clientes  Uma boa clusterizao sempre produz clusters com:
til para desenvolver programas de marketing.  Alta similaridade nas classes (grupos).
 Uso da terra: Identifica reas usadas com o mesmo  Baixa similaridade entre as classes (grupos).
propsito em um DB com observaes da terra.  A qualidade dos resultados depende do(a):
 Seguro: Identifica grupos de clientes que fazem  Medida de similaridade usada.
comunicao de sinistro com alta freqncia.  Mtodo e sua implementao.

 Planejamento (cidade): Identifica grupos de casas  A qualidade do mtodo de clusterizao tambm


de acordo com o tipo, valor e localizao geogrfica. medida pela sua habilidade de descobrir alguns ou
todos os padres escondidos.

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

Tipos de dados em clusterizao ... Avaliando a qualidade de clusters


 Variveis numricas:  A similaridade entre dois objetos i e j expressa em
termos de distncia: d(i, j).
 Podem ser reais ou inteiras.
 Ex: temperatura, latitude, longitude, altura, peso, etc.  Para cada tipo de varivel, existe uma funo para
clculo de distncia.
 Variveis binrias:
 Possuem somente dois estados: 0 ou 1.  Existe uma funo de qualidade que mede a eficcia
de um cluster.
 Variveis nominais:
 Pesos podem ser associados com diferentes variveis
 Generalizao de variveis binrias.
dependendo da aplicao.
 Ex: Cores (azul, amarelo, verde, vermelho, etc).
 difcil definir similaridade ou eficcia de um cluster ?
 Variveis composta de vrios tipos (mistura)
 A resposta tipicamente subjetiva.

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

xif m f 3. Normalizar atributos usando Z-score;


 Z-score zif =
f
4. Selecionar o dataset segment-challenge e
aplicar Min-Max e Z-score para normalizar os seus
 Desvio absoluto mdio atributos.
s f = 1n (| x1 f m f | + | x2 f m f | +...+ | xnf m f |)

Onde: m f = 1n (x1 f + x2 f + ... + xnf )


.

MT803 Tpicos em Matemtica Aplicada Aula 6 13 MT803 Tpicos em Matemtica Aplicada Aula 6 14

Similaridade entre variveis numricas Similaridade entre variveis numricas


 Distncias so geralmente usadas para medir a  Quando q = 2, d a distncia Euclidiana:
similaridade ou dissimilaridade entre objetos.
d (i, j) = (| x x |2 + | x x |2 +...+ | x x |2 )
i1 j1 i2 j 2 ip jp
 Exemplos incluem: a distncia de Minkowski:

d (i, j) = q (| x x |q + | x x |q +...+ | x x |q )  Propriedades:


i1 j1 i2 j 2 ip jp
 d(i,j) 0
onde i = (xi1, xi2, , xip) e j = (xj1, xj2, , xjp) so dois objetos  d(i,i) = 0
p-dimensional e q um inteiro positivo  d(i,j) = d(j,i)
 d(i,j) d(i,k) + d(k,j)
 Quando q = 1, d a distncia de Manhattan
d (i, j) =| x x | + | x x | +...+ | x x | Qual a distncia Euclidiana e de Manhattan para os
i1 j1 i2 j 2 ip jp
pontos: A=(7,9) e B=(4,5) ?

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

Similaridade entre variveis binrias Similaridade para variveis nominais


 Exemplo:  Uma generalizao da varivel binria que ela pode ter
Nome Sexo Febre Tosse Test-1 Test-2 Test-3 Test-4 mais de 2 estados (Ex: vermelho, amarelo, azul, verde).
Jack M Y N P N N N
Mary F Y N P N P N  Mtodo 1: Simple matching
Jim M Y P N N N N
 m: nmero de matches, p: nmero total de variveis

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

Similaridade para variveis de razo Similaridade para variveis mistas


 Varivel de razo: uma medida positiva sobre uma escala no  Um dataset pode conter vrios tipos de variveis:
linear. Aproxima-se da escala exponencial, como por exemplo:  Binria simtrica, binria assimtrica, nominal, ordinal, intervalar e
AeBt ou Ae-Bt e escala de razo.
 Pode-se usar uma frmula ponderada para combinar
 Exemplos de variveis (escalas) de razo so: idade, salrio,
seus efeitos:
preo, volume de vendas, distncias. pf = 1 ij( f ) d ij( f )
d (i, j ) =
 Mtodos: pf = 1 ij( f )
 Trat-las como variveis intervalares no uma boa escolha!  Se f binria ou nominal:
(por que? a escala do intervalo pode ser distorcido). dij(f) = 0 Se xif = xjf , ou dij(f) = 1 caso contrrio.
 Aplicar a transformao logartmica:  Se f intervalar: usar a distncia normalizada.
yif = log(xif)  Se f ordinal ou escala de razo:
Trat-las como dados ordinais contnuos e tratar seus  Computar os posicionamentos (ranks) rif e

z if =
r
if 1
posicionamentos ranks como intervalares. tratar zif como intervalares: M 1
f

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.

 Outros mtodos: Ver captulo 7 do livro:


 Data Mining: Concepts and Techniques
 Autores: Jiawei Han e Micheline Kamber.

MT803 Tpicos em Matemtica Aplicada Aula 6 25 MT803 Tpicos em Matemtica Aplicada Aula 6 26

Mtodos baseados em particionamento Mtodos baseados em particionamento


 Particionamento: Segmenta um banco de dados D de n  Dado um valor de k, encontrar k clusters que
objetos em um conjunto de k clusters.
otimiza um critrio de particionamento escolhido:
 Objetivo: Encontrar uma partio de k clusters que otimiza o
 timo Global: exaustivamente enumera todas as parties;
critrio de particionamento escolhido.
 Principais heursticas: algoritmos k-means e k-medoids.
 Funo Objetivo: minimizar a soma dos quadrados das
distncias, tal que:  k-means (MacQueen67): Cada cluster representado pelo
centro (centride) do cluster.
E = ik=1 pCi ( p mi ) 2
 k-medoids ou PAM (Partition Around Medoids) (Kaufman
 Onde:
& Rousseeuw87): Cada cluster representado por um dos
 E a soma dos quadrados dos erros para todos os objetos no
objetos no cluster.
dataset;
 p o ponto no espao representando um dado objeto;
 mi o centride do cluster Ci.

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

Output: K centrides e os objetos de cada cluster 7

6
7

5 5

4 4

Passo 1:Selecionar arbitrariamente k objetos como os clusters 3

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

Passo 2: Calcular os centrides dos k clusters da posio atual. (1) (2)

Passo 3: Associar cada objeto ao cluster (centride) mais perto


10 10

(maior similaridade). 9

8
9

7 7

Passo 4: Retornar ao Passo 2 e parar quando no houver mais 6

5
6

mudanas significativas entre os objetos. 4

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

K-means: exemplo 2 K-means: exemplo 2 ...


 Registros so associados a Centro de
Clusters atravs de um processo iterativo.

 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.

Escolha Inicial de Centros de Cluster


MT803 Tpicos em Matemtica Aplicada Aula 6 33 MT803 Tpicos em Matemtica Aplicada Aula 6 34

K-means: exemplo 2 ... K-means: exemplo 2 ...


Aten
Ateno a esse Registro  PASSO 3:
 Calcular os novos Centros de Cluster
 Mdia das coordenadas de todos os pontos
associados a cada Centro de Cluster.

Associao de cada Registro aos Centros de Cluster


MT803 Tpicos em Matemtica Aplicada Aula 6 35 MT803 Tpicos em Matemtica Aplicada Aula 6 36
K-means: exemplo 2 ... K-means: exemplo 2 ...
 PASSO 4:
 Associar cada registro aos novos Centros de
Cluster.

Novos Centros de Cluster aps 1a. Iterao

MT803 Tpicos em Matemtica Aplicada Aula 6 37 MT803 Tpicos em Matemtica Aplicada Aula 6 38

K-means: exemplo 2 ... K-means: exemplo 2 ...


 PROCESSO ITERATIVO
 Passos 2, 3 e 4 so repetidos at que no ocorra
mais mudanas no conjunto de registros que
compem cada Cluster.

Associaes de Registros aos Novos Centros de Cluster

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

Variaes do Mtodo K-means EM Expectation Maximization


 Algumas verses do K-means diferem em:  Algoritmo de aprendizado por maximizao de esperana (EM).
 Seleo dos pontos iniciais.  Aplicado em aprendizado no supervisionado agrupamento e
 Clculo da similaridade entre os pontos. mistura de densidades.
 Estratgias para calcular os centrides dos clusters.  Objetivo: estimar o nmero de populaes (clusters) na
amostra. Cada cluster representa uma dist. de probabilidade.
 EM (Expectativa-Maximizao) estende o  Idia geral:
paradigma usado no K-means.  EM aplicado em situaes onde se deseja estimar um conjunto de
parmetros que descreve uma distribuio de probabilidade.
 Para atributos nominais: K-modes (Huang98)  Ou seja, estima a mdia amostral e sua varincia.
 Substitui as mdias dos clusters por modas.  EM uma extenso do algoritmo k-means.
 Usa medidas de similaridade para atributos nominais.  Associa cada objeto a um cluster de acordo com um peso (prob.
distribuio), representando sua probabilidade de membresia.
 Usa um mtodo baseado em frequncias para atualizar as
modas dos clusters.  Novas mdias so computadas com base em medidas ponderadas.

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

AGNES (Agglomerative Nesting) AGNES (Agglomerative Nesting)


 Referncia: Livro [Kaufmann & Rousseeuw (1990)]  AGLOMERATIVO
 Implementado em pacotes de anlise estatsticas (Ex: Splus).
 Usa o mtodo Single-Link e matriz de dissimilaridade (distncias).
 Faz o merge dos ns que tm a menor dissimilaridade. 5
 Clusters so formados usando-se a estratgia bottom-up. 1 0.2

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

Mais sobre mtodos hierrquicos Mtodo baseado em densidade


 Pontos Fracos:  DBSCAN um algoritmo baseado em densidade.
 Os algoritmos no so escalveis.
 Complexidade: O(n2), onde n o nmero de objetos.  Densidade = nmero de pontos dentro de um raio
 Uma vez que os clusters so formados, eles no podem especfico (Eps)
ser mudados (no existe undo).
 Um core point tem um nmero mnimo de pontos
 Pontos Fortes: especificados pelo usurio (MinPts) dentro do raio (Eps).
 Pode ser integrado com mtodos no hierrquicos.
 Um border point fica localizado na vizinhana de um
 BIRCH (1996): usa CF-tree com sumrios dos objetos core point.
e ajusta a qualidade dos sub-clusters.
 CURE (1998): produz clusters (com diferentes formas  Um noise point qualquer ponto que no se classifica
e tamanhos) de alta qualidade na existncia de outliers como core point nem como border point.
 CHAMELEON (1999): utiliza modelagem dinmica.

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.

 Se p um core point, um cluster formado.


Outlier  Se p um border point e no h pontos densamente
conectados a p, DBSCAN visita o prximo ponto do
Border
Eps = 1cm conjunto de dados.
Core MinPts = 5  Continua o processo at que todos os pontos do
conjunto de dados tenham sido analisados.

MT803 Tpicos em Matemtica Aplicada Aula 6 57 MT803 Tpicos em Matemtica Aplicada Aula 6 58

DBSCAN: Core, Border e Noise Points Quando DBSCAN funciona bem?

Pontos Originais Clusters

Pontos Originais Tipos de pontos: core,


border e noise Na presena de rudos (Noise)

Eps = 10, MinPts = 4 Na gerao de clusters com diferentes formatos e tamanhos.

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.

Dados com alta dimensionalidade.


 Para comparar algoritmos de clusterizao.
 Para comparar clusters gerados por mais de um algoritmo.
(MinPts=4, Eps=9.92)
MT803 Tpicos em Matemtica Aplicada Aula 6 61 MT803 Tpicos em Matemtica Aplicada Aula 6 62

Clusters encontrados dados aleatrios Medidas Internas: Coeso e Separao


1

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.2 0.2  Exemplo: Erro Quadrtico


0.1 0.1

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

K-means 0.8 0.8


Complete i xC i
0.7 0.7
Link
0.6

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

K=1 cluster: WSS= (1 3) 2 + ( 2 3) 2 + ( 4 3) 2 + (5 3) 2 = 10


BSS= 4 (3 3) 2 = 0
Total = 10 + 0 = 10

K=2 clusters: WSS = (1 1.5) 2 + ( 2 1.5) 2 + ( 4 4.5) 2 + (5 4.5) 2 = 1


BSS = 2 (3 1.5) 2 + 2 ( 4.5 3) 2 = 9 coeso separao
Total = 1 + 9 = 10
MT803 Tpicos em Matemtica Aplicada Aula 6 65 MT803 Tpicos em Matemtica Aplicada Aula 6 66

Medidas Externas: Entropy e Purity Exerccio 5


 Usando o software Weka:
1. Selecionar o dataset cpu.
2. Normalizar atributos (Z-score).
3. Execute o algoritmo DBScan sem ajustar os
parmetros. Qual foi o resultado encontrado?
4. Explorar os parmetros epsilon e mimPoints do
algoritmo DBScan. Analisar os resultados
encontrados.
5. Indique uma vantagem do algoritmo DBScan em
relao ao k-means.

MT803 Tpicos em Matemtica Aplicada Aula 6 67 MT803 Tpicos em Matemtica Aplicada Aula 6 68

Você também pode gostar