• Nenhum resultado encontrado

Clusterização ou Agrupamento de Dados

N/A
N/A
Protected

Academic year: 2021

Share "Clusterização ou Agrupamento de Dados"

Copied!
17
0
0

Texto

(1)

Clusterização ou

Agrupamento de Dados

Stanley R. M. Oliveira

2 MT803 – Tópicos em Matemática Aplicada – Aula 6

Resumo da Aula

 Clusterizaçãoou análise de agrupamentos:  Conceitos básicos e aplicações.

 Tipos de dadosem clusterização.

 Avaliando a qualidade de clustersgerados.

 Similaridadeentre objetos.

 Métodos de Clusterização:

 Particionamento;

 Hierárquico;

 Baseado em densidade.

 Outros.

MT803 – Tópicos em Matemática Aplicada – Aula 6

O que é análise de agrupamentos?



Cluster

: uma coleção de objetos

 Similares aos objetos do mesmo cluster

 Dissimilares aos objetos de outros clusters



Clusterização

 Agrupamento de conjuntos de dados em clusters.



Clusterização

é uma classificação

não

supervisionada

: sem classes predefinidas.

MT803 – Tópicos em Matemática Aplicada – Aula 6



Classificação supervisionada

 Possui atributo meta com informação (classes).



Segmentação Simples

 Divisão de estudantes em diferentes grupos, registrados

em ordem alfabética, pelo último nome.



Resultados de uma Consulta

 O agrupamento é o resultado de uma especificação

externa.



Particionamento de um Grafo

 Os agrupamento pode ter sinergiaou relevância, mas as áreas nãosão idênticas.

(2)

5 MT803 – Tópicos em Matemática Aplicada – Aula 6

Quantos clusters?

Quatro Clusters Dois Clusters

Seis Clusters

A noção de um cluster pode ser ambígua

6 MT803 – Tópicos em Matemática Aplicada – Aula 6

Aplicações gerais de clusterização



Reconhecimento de

padrões.



Análise de

dados espaciais

:

 Criação de mapas temáticos em GIS por meio de agrupamento de características espaciais



Agrupamento de

pacientes

c/ mesmos sintomas



Marketing e business:

segmentação

de mercado



Web:

 Classificaçãode documentos.

 Análise de Weblog para descobrir grupos de padrõesde acessos similares.

7 MT803 – Tópicos em Matemática Aplicada – Aula 6

Outros exemplos de aplicações

 Marketing: identifica grupos distintos de clientes ⇒

útil para desenvolver programas de marketing.

 Uso da terra: Identifica áreas usadas com o mesmo

propósito em um DB com observações da terra.

 Seguro: Identifica grupos de clientes que fazem

comunicação de sinistro com alta freqüência.

 Planejamento (cidade): Identifica grupos de casas

de acordo com o tipo, valor e localização geográfica.

8 MT803 – Tópicos em Matemática Aplicada – Aula 6

O que é uma boa clusterização?

 Uma boa clusterizaçãosempre produz clusters com:

 Alta similaridade nas classes (grupos).

 Baixa similaridade entre as classes (grupos).

 A qualidadedos resultados depende do(a):

 Medida de similaridade usada.

 Método e sua implementação.

 A qualidade do métodode clusterização é também

medida pela sua habilidade de descobrir alguns ou

(3)

9 MT803 – Tópicos em Matemática Aplicada – Aula 6

Clusterização: Requisitos em Mineração

 Escalabilidade.

 Habilidade para lidar com diferentestipos de atributos.

 Habilidade para lidar com dados dinâmicos.

 Descoberta de clusters com diferentes formatos (shapes).

 Necessidade mínimade conhecimento do domíniopara

determinar parâmetros de entrada (input).

 Habilidade de trabalhar com ruídose outliers.

 Insensibilidadecom relação número de registros de entrada.

 Altadimensionalidade.

 Incorporação de restriçõesdefinidas por usuários.

 Interpretabilidadee usabilidade.

10 MT803 – Tópicos em Matemática Aplicada – Aula 6

Tipos de dados em clusterização



Matriz de dados



Matriz de distâncias

                  np x ... nf x ... n1 x ... ... ... ... ... ip x ... if x ... i1 x ... ... ... ... ... 1p x ... 1f x ... 11 x                 0 ... ) 2 , ( ) 1 , ( : : : ) 2 , 3 ( ) ... n d n d 0 d d(3,1 0 d(2,1) 0

MT803 – Tópicos em Matemática Aplicada – Aula 6

Tipos de dados em clusterização ...



Variáveis numéricas:

 Podem ser reais ou inteiras.

 Ex: temperatura, latitude, longitude, altura, peso, etc. 

Variáveis binárias:

 Possuem somente dois estados: 0 ou 1.



Variáveis nominais:

 Generalização de variáveis binárias.

 Ex: Cores (azul, amarelo, verde, vermelho, etc).



Variáveis composta de vários tipos (

mistura

)

MT803 – Tópicos em Matemática Aplicada – Aula 6

Avaliando a qualidade de clusters

 A similaridade entre dois objetos i e j é expressa em

termos de distância: d(i, j).

 Para cada tipo de variável, existe uma função para

cálculo de distância.

 Existe uma função de “qualidade” que mede a eficácia

de um cluster.

 Pesospodem ser associados com diferentes variáveis

dependendo da aplicação.

 É difícil definir similaridadeou eficácia de um cluster ?

(4)

13 MT803 – Tópicos em Matemática Aplicada – Aula 6

Normalização de variáveis numéricas

 Normalização⇒ variáveis com mesmo peso.  Min-Max para um atributo f:

 Z-score

 Desvio absoluto médio

Onde: f f f novoMin novoMin novoMax x f f f if if S × − + − − = ( ) min max min f f if if m x z σ − = |) | ... | | | (| 1 2 1f f f f nf f f n x m x m x m s = − + − + + − . ) ... 2 1 1 nf f f f n(x x x m = + + + 14 MT803 – Tópicos em Matemática Aplicada – Aula 6

Exercício 1



Usando o software Weka

:

1. Selecionar o dataset “iris”;

2. Normalizar atributos usando Min-max;

3. Normalizar atributos usando Z-score;

4. Selecionar o dataset “segment-challenge” e

aplicar Min-Maxe Z-scorepara normalizar os seus

atributos.

15 MT803 – Tópicos em Matemática Aplicada – Aula 6

Similaridade entre variáveis numéricas

 Distâncias são geralmente usadas para medir a

similaridadeou dissimilaridadeentre objetos.

 Exemplos incluem: a distância de Minkowski:

onde i = (xi1, xi2, …, xip) e j = (xj1, xj2, …, xjp) são dois objetos p-dimensional e qé um inteiro positivo

 Quando q = 1, d é a distância de Manhattan

q q p p q q j x i x j x i x j x i x j i d(, ) (| | | | ... | | ) 2 2 1 1 − + + − + − = | | ... | | | | ) , ( 2 2 1 1 xj xi xj xip xjp i x j i d = − + − + + − 16 MT803 – Tópicos em Matemática Aplicada – Aula 6

Similaridade entre variáveis numéricas

 Quando q = 2, d é a distância Euclidiana:

 Propriedades: d(i,j) ≥ 0 d(i,i) = 0 d(i,j) = d(j,i) d(i,j) ≤ d(i,k) + d(k,j) ) | | ... | | | (| ) , ( 2 2 2 2 2 1 1 xj xi xj xip xjp i x j i d = − + − + + −

Qual é a distância Euclidianae de Manhattanpara os pontos: A=(7,9) e B=(4,5) ?

(5)

17 MT803 – Tópicos em Matemática Aplicada – Aula 6

Exercício 2

1. Dados os pontos

P

= (-1, 3, -2);

Q

= (-4, 5, -2);

R

= (4, -1, 0);

S

= (7, 0, 1), pede-se:

a) O centróide dos pontos P, Q, R, S.

b) As distâncias

Euclidiana

e de

Manhattan

entre

os pontos PQ, RS e QS.

18 MT803 – Tópicos em Matemática Aplicada – Aula 6

Similaridade entre variáveis binárias

 Tabela de contingência para variáveis binárias:

 Similaridade invariante - variável simétrica (ex: sexo):

 Coeficiente de Jaccard- variável assimétrica:

d c b a c b j i d + + + + = ) , ( c b a c b j i d( , )= +++ p d b c a sum d c d c b a b a sum + + + + 0 1 0 1 Objeto i Objeto j

MT803 – Tópicos em Matemática Aplicada – Aula 6

Similaridade entre variáveis binárias

 Exemplo:

 Sexoé um atributo simétrico.

 Os demais atributos são assimétricos.

 Suponha que os valores Y e P representam 1, e o valor N representa 0

Nome Sexo Febre Tosse Test-1 Test-2 Test-3 Test-4

Jack M Y N P N N N Mary F Y N P N P N Jim M Y P N N N N 75 . 0 2 1 1 2 1 ) , ( 67 . 0 1 1 1 1 1 ) , ( 33 . 0 1 0 2 1 0 ) , ( = + + + = = + + + = = + + + = Mary Jim d Jim Jack d Mary Jack d d (Jim, Mary) = ?

MT803 – Tópicos em Matemática Aplicada – Aula 6

Similaridade para variáveis nominais

 Uma generalização da variável bináriaé que ela pode ter

mais de 2 estados (Ex:vermelho, amarelo, azul, verde).

 Método 1: “Simple matching”

 m: número de “matches”, p: número total de variáveis

 Método 2: uso de um grande número de variáveis binárias  Cria-se uma variável binária para cada um dos M estados

nominais. p m p j i d(, )= −

(6)

21 MT803 – Tópicos em Matemática Aplicada – Aula 6

Variáveis intervalares

 Permitem não apenas ordenarem postos os itens

que estão sendo medidos, mas também quantificar

e compararo tamanho das diferenças entre eles.

 Exemplo: temperatura medida em graus Celsius

constitui uma variável intervalar.

 Pode-se dizer que a temperatura de 40ºCé maior

do que 30C e que um aumento de 20ºC para 40ºCé

duas vezes maiordo que um aumento de 30ºC

para 40ºC.

22 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Uma variável ordinalpode ser discretaou contínua.  A ordemé importante (Exemplo: ranqueamento).

 Podem ser tratadas como variáveis intervalares.

 Substituir xif pela sua posiçãono “rank”.

 Mapear o domíniode cada variável no intervalo [0, 1] substituindo

o i-th objeto na f-th variável:

 Computar a similaridadeusando métodos para variáveis intervalares. 1 1 − − = f if if M r z } ,..., 1 { f if M r ∈

Similaridade para variáveis ordinais

23 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Variável de razão: uma medida positiva sobre uma escala não

linear. Aproxima-se da escala exponencial, como por exemplo: AeBtou Ae-Bt

 Exemplos de variáveis (escalas) de razão são: idade, salário,

preço, volume de vendas, distâncias.

 Métodos:

 Tratá-las como variáveis intervalares —não é uma boa escolha!

(por que? — a escala do intervalo pode ser distorcido).

 Aplicar a transformação logarítmica:

yif= log(xif)

 Tratá-las como dados ordinaiscontínuos e tratar seus

posicionamentos “ranks” como intervalares.

Similaridade para variáveis de razão

24 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Um datasetpode conter vários tipos de variáveis:

 Binária simétrica, binária assimétrica, nominal, ordinal, intervalar e

e escala de razão.

 Pode-se usar uma fórmula ponderadapara combinar

seus efeitos:

 Se f ébináriaou nominal:

dij(f)= 0 Se xif= xjf, ou dij(f)= 1 caso contrário.  Se f éintervalar: usar a distância normalizada.  Se f éordinalou escala de razão:

Computar os posicionamentos (ranks) rif e

tratar zifcomo intervalares:

) ( 1 ) ( ) ( 1 ) , ( f ij p f f ij f ij p f d j i d δ δ = = Σ Σ = 1 1 − − = f if M r zif

(7)

25 MT803 – Tópicos em Matemática Aplicada – Aula 6

Exercício 3



Usando o software Weka

:

1. Selecionar o dataset “contact-lenses”;

2. Converter os atributos de nominal para binário;

3. Selecionar o dataset “soybean” e converter seus

atributos de nominalpara binário.

26 MT803 – Tópicos em Matemática Aplicada – Aula 6

Métodos de clusterização



Particionamento

: Constrói várias partições e as

avalia usando algum critério.



Hierárquico

: Cria uma decomposição

hierárquica dos objetos usando algum critério.



Baseado em densidade

: Fundamenta-se em

funções de conectividade e de densidade.



Outros métodos

: Ver capítulo 7 do livro:

 Data Mining: Concepts and Techniques

 Autores: Jiawei Han e Micheline Kamber.

MT803 – Tópicos em Matemática Aplicada – Aula 6

Métodos baseados em particionamento

 Particionamento: Segmenta um banco de dados D de n objetos em um conjunto de k clusters.

 Objetivo: Encontrar uma partição de k clusters que otimiza o

critério de particionamento escolhido.

 Função Objetivo: minimizar a soma dos quadrados das distâncias, tal que:

 Onde:

 Eé a soma dos quadrados dos erros para todos os objetos no dataset;

 pé o ponto no espaço representando um dado objeto;

 mié o centróide do cluster Ci. 2 1 p Ci( i) k i p m E=Σ=Σ ∈ −

MT803 – Tópicos em Matemática Aplicada – Aula 6

 Dado um valor de k, encontrar k clusters que

otimiza um critério de particionamento escolhido:

 Ótimo Global: exaustivamente enumera todas as partições;  Principais heurísticas: algoritmos k-meanse k-medoids.  k-means(MacQueen’67): Cada cluster é representado pelo

centro (centróide) do cluster.

 k-medoidsouPAM(Partition Around Medoids) (Kaufman & Rousseeuw’87): Cada cluster é representado por um dos objetos no cluster.

(8)

29 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: algoritmo

Input: k, D

Output: K centróides e os objetos de cada cluster

Passo 1:Selecionar arbitrariamente k objetos como os clusters iniciais.

Passo 2: Calcular os centróides dos k clusters da posição atual. Passo 3: Associar cada objeto ao cluster (centróide) mais perto

(maior similaridade).

Passo 4: Retornar ao Passo 2 e parar quando não houver mais mudanças significativas entre os objetos.

30 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: exemplo 1

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 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 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 (1) (2) (4) (3) 31 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: exemplo 2



Registros são associados a “

Centro de

Clusters

” através de um processo iterativo.





PASSO 1:

PASSO 1:

 Seleção “arbitrária” de “K” pontos para serem os

“Centros de Cluster”

32 MT803 – Tópicos em Matemática Aplicada – Aula 6

(9)

33 MT803 – Tópicos em Matemática Aplicada – Aula 6

Escolha Inicial de “Centros de Cluster”

K-means: exemplo 2 ...

34 MT803 – Tópicos em Matemática Aplicada – Aula 6





PASSO 2:

PASSO 2:

 Associar cada registro ao “Centro de Cluster” mais

próximo.

K-means: exemplo 2 ...

MT803 – Tópicos em Matemática Aplicada – Aula 6

Associação de cada Registro aos “Centros de Cluster”

Aten

Atençção a esse Registroão a esse Registro

K-means: exemplo 2 ...

MT803 – Tópicos em Matemática Aplicada – Aula 6





PASSO 3:

PASSO 3:

 Calcular os novos “Centros de Cluster”

 Média das coordenadas de todos os pontos

associados a cada “Centro de Cluster”.

(10)

37 MT803 – Tópicos em Matemática Aplicada – Aula 6

Novos “Centros de Cluster” após 1a. Iteração

K-means: exemplo 2 ...

38 MT803 – Tópicos em Matemática Aplicada – Aula 6





PASSO 4:

PASSO 4:

 Associar cada registro aos novos “Centros de

Cluster”.

K-means: exemplo 2 ...

39 MT803 – Tópicos em Matemática Aplicada – Aula 6

Associações de Registros aos Novos “Centros de Cluster”

K-means: exemplo 2 ...

40 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: exemplo 2 ...





PROCESSO ITERATIVO

PROCESSO ITERATIVO

 Passos 2, 3 e 4 são repetidos até que não ocorra

mais mudanças no conjunto de registros que

(11)

41 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: pontos positivos



Relativamente eficiente (

escalável

).



Complexidade

: O(tkn), onde

 n é o número de objetos;

 k é o número de clusters;

 t é o número de iterações;

 Normalmente: k, t << n.



Frequentemente termina em um

ótimo local

.



O

ótimo global

pode ser achado usando

técnicas, tais como

algoritmos genéticos

.

42 MT803 – Tópicos em Matemática Aplicada – Aula 6

K-means: pontos negativos

 Aplicável somente quando a média é definida ⇒

ineficienteparaatributos nominais?(versão

original).

 Necessidade de especificar k, o número de clusters,

a priori.

 Ineficiente para lidar com ruídose outliers.

 Inadequado para descobrir clusters com formato

não-convexo.

 Sensível a outliers, pois todos os pontos (objetos)

são agrupados –impacta centróidesdos clusters.

MT803 – Tópicos em Matemática Aplicada – Aula 6

Variações do Método K-means



Algumas versões do

K-means

diferem em:

 Seleção dos pontos iniciais.

 Cálculo da similaridade entre os pontos.

 Estratégias para calcular os centróides dos clusters.



EM

(

Expectativa-Maximização

) estende o

paradigma usado no

K-means

.



Para atributos nominais:

K-modes

(Huang’98)

 Substitui as médiasdos clusters por modas.

 Usa medidas de similaridade para atributos nominais.  Usa um método baseado em frequências para atualizar as

modas dos clusters.

MT803 – Tópicos em Matemática Aplicada – Aula 6

 Algoritmo de aprendizadopor maximização de esperança (EM).

 Aplicado em aprendizado não supervisionado– agrupamento e mistura de densidades.

 Objetivo: estimar o número de populações (clusters) na

amostra. Cada cluster representa uma dist. de probabilidade.

 Idéia geral:

 EMé aplicado em situações onde se deseja estimar um conjunto de parâmetros que descreve uma distribuição de probabilidade.

 Ou seja, estima a média amostrale sua variância.  EMé uma extensão do algoritmo k-means.

 Associa cada objeto a um cluster de acordo com um peso (prob.

distribuição), representando sua probabilidade de membresia.

 Novas médiassão computadas com base em medidas ponderadas.

EM — Expectation Maximization

(12)

45 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Idéia Geral:

 Começa com uma estimativa inicialde um vetor de parâmetros.

 Iterativamente reavalia (pondera) os objetos com relação à mistura distribuições produzida pelo vetor de parâmetros.  Os objetos reavaliados (novos pesos) são usados para

atualizar a estimativa dos parâmetros.

 A cada objeto é associada uma probabilidade de pertencer a um cluster.

 Algoritmo converge rapidamente, mas pode não

atingir um ótimo global.

EM — Expectation Maximization

46 MT803 – Tópicos em Matemática Aplicada – Aula 6

O Algoritmo EM

 Inicialmente, k objetos são selecionados aleatoriamente

para representar os centróide dos clusters.

 Iterativamente refina os clusters em dois passos:

 Passo E(Expectation): associa cada objeto xi ao cluster Ci com a seguinte probabilidade:

 Onde p(xi/Ck)= N(mk, Ek(xi)) segue uma distribuição normal (Gaussiana) de probabilidade com média mke valor esperado Ek. ) ( ) ( ) ( ) ( ) ( i k i k i k k i x p C x p C p x C p C x P ∈ = = 47 MT803 – Tópicos em Matemática Aplicada – Aula 6

O Algoritmo EM …

 Passo M(Maximization): usa as probabilidades

estimadas no passo anterior para re-estimar (refinar) os

parâmetros do modelo:

 Os Passos E e Mfazem parte de um processo iterativo,

em que as novas probabilidades, calculadas na fase M,

serão utilizadas para realizar a inferência na fase E.

 O Passo Mé a maximizaçãoda função de

verossimilhança das distribuições de probabilidade.

= ∈ ∈ = n i j j i k i i k C x p C x p x n m 1 ( ) ) ( 1 48 MT803 – Tópicos em Matemática Aplicada – Aula 6

Exercício 4



Usando o software Weka

:

1. Selecionar um dataset com variáveis numéricas.

2. Normalizar atributos (Z-score).

3. Explorar o algoritmo k-means:

a) Qual é o número de clusterspré-definido pelo algoritmo? b) Mude a semente (seed) para o k-means e observe o

comportamento do algoritmo.

4. Selecionar um dataset com variáveis nominais e repetir os exercícios 1, 2 e 3.

5. Como os algoritmos EMe k-meanspoderiam ser

(13)

49 MT803 – Tópicos em Matemática Aplicada – Aula 6

Métodos Hierárquicos



 MMÉÉTODOS TODOS ““DIVISIVOSDIVISIVOS””→ Todos Registros → Um

“Grande Cluster”.

 Este “Grande Cluster”é dividido em dois ou mais

“Clusters” menores.

 Até que cada Clustertenha somente registros semelhantes.  A cada passo, alguma medida de valor do conjunto de Cluster

é realizada até chegar ao melhor conjunto de Clusters.



 MMÉÉTODOS TODOS ““AGLOMERATIVOSAGLOMERATIVOS””→ Cada registro é

um “Cluster”

 A cada passo, combina-se Clusterscom alguma característica comum até que se chegue a um “Grande Cluster”.

50 MT803 – Tópicos em Matemática Aplicada – Aula 6

Métodos Hierárquicos ...

 Usa a matriz de distâncias como critério de segmentação. Esse

método não exige o número de clusters k como input, mas precisa de uma condição para terminar.

Step 0 Step 1 Step 2 Step 3 Step 4

b d c e a a b d e c d e a b c d e

Step 4 Step 3 Step 2 Step 1 Step 0

aglomerativo

(AGNES)

divisivo

(DIANA)

MT803 – Tópicos em Matemática Aplicada – Aula 6

AGNES (

Ag

glomerative

Nes

ting)

 Referência: Livro [Kaufmann & Rousseeuw (1990)]

 Implementado em pacotes de análise estatísticas (Ex: Splus).  Usa o método “Single-Link” e matriz de dissimilaridade (distâncias).

 Faz o “merge” dos nós que têm a menor dissimilaridade.  Clusters são formados usando-se a estratégia bottom-up.  Eventualmente todos os nós pertencem ao mesmo cluster.

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 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 – Tópicos em Matemática Aplicada – Aula 6



AGLOMERATIVO

1 2 3 4 5 6 1 2 3 4 5 3 6 2 5 4 1 0 0.05 0.1 0.15 0.2 objetos

(14)

53 MT803 – Tópicos em Matemática Aplicada – Aula 6

Exemplo de Dendograma: AGNES

 Decompõe objetos em vários níveisde particionamento

aninhados (árvore de clusters), conhecida como dendograma.

 Uma clusterizaçãodos objetos é obtida particionando-se o

dendograma em um nível desejado. Cada componente conectado forma um cluster.

54 MT803 – Tópicos em Matemática Aplicada – Aula 6

DIANA (

Di

visive

Ana

lysis)

 Referência: Livro [Kaufmann and Rousseeuw (1990)]

 Implementado em pacotes de análise estatisticos (Ex: Splus).

 Procedimento: o inverso de AGNES.  Eventualmente cada nó forma um cluster.

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 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 55 MT803 – Tópicos em Matemática Aplicada – Aula 6

Mais sobre métodos hierárquicos



Pontos Fracos

:

 Os algoritmos não são escaláveis.

 Complexidade: O(n2), onde n é o número de objetos.

 Uma vez que os clusters são formados, eles não podem

ser mudados (não existe “undo”).



Pontos Fortes

:

 Pode ser integrado com métodos não hierárquicos.

 BIRCH(1996): usa “CF-tree” com sumários dos objetos

e ajusta a qualidade dos sub-clusters.

 CURE(1998): produz clusters (com diferentes formas

e tamanhos) de alta qualidade na existência de outliers

 CHAMELEON(1999): utiliza modelagem dinâmica.

56 MT803 – Tópicos em Matemática Aplicada – Aula 6

Método baseado em densidade



DBSCAN

é um algoritmo baseado em

densidade

.

 Densidade= número de pontos dentro de um raio

específico (Eps)

 Um “core point” tem um número mínimo de pontos

especificados pelo usuário (MinPts) dentro do raio (Eps).

 Um “border point” fica localizado na vizinhança de um

“core point”.

 Um “noise point” é qualquer ponto que não se classifica

(15)

57 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Idéia: Um cluster é definido como um conjunto máximo de

pontos densamente conectados.

 Encontra clusterscom formatos (shape) arbitrários em

bancos de dados espaciais, contendo ruídos(outliers).

Core Border

Outlier

Eps = 1cm MinPts = 5

DBSCAN – Idéia Geral

58 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Arbitrariamente, selecionaum ponto p.

 Identifica todos os pontos densamente conectadosa p

com relação aos parâmetros Epse MinPts.

 Se pé um “core point”, um cluster é formado.

 Se pé um “border point” e não hápontos densamente

conectados a p, DBSCAN visita o próximo pontodo

conjunto de dados.

 Continua o processoaté que todos os pontos do

conjunto de dados tenham sido analisados.

O Algoritmo DBSCAN

MT803 – Tópicos em Matemática Aplicada – Aula 6

Pontos Originais Tipos de pontos: core, bordere noise

Eps = 10, MinPts = 4

DBSCAN: Core, Border e Noise Points

MT803 – Tópicos em Matemática Aplicada – Aula 6

Clusters

• Na presença de ruídos (Noise)

• Na geração de clusters com diferentes formatose tamanhos. Pontos Originais

(16)

61 MT803 – Tópicos em Matemática Aplicada – Aula 6

Pontos Originais

(MinPts=4, Eps=9.75).

(MinPts=4, Eps=9.92)

•Variaçãona densidade dos pontos • Dados com alta dimensionalidade.

Quando DBSCAN

não

funciona bem?

62 MT803 – Tópicos em Matemática Aplicada – Aula 6

Validação de Clusters

 Em classificação supervisionada, existe uma grande

variedade de medidas para avaliar quão bom um modelo

é: Acurácia, precisão, cobertura,kappa etc.

 Para análise de clusters, como avaliar a qualidadedos

clusters gerados?

 Em geral, os clusters são avaliadospor especialistas de

forma subjetiva.

 Então, por que precisamos avaliar clusters?

 Para evitarencontrar padrões com ruídos.

 Para comparar algoritmosde clusterização.

 Para comparar clustersgerados por mais de um algoritmo.

63 MT803 – Tópicos em Matemática Aplicada – Aula 6

Clusters encontrados dados aleatórios

0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x y Pontos Aleatórios 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x y K-means 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x y DBSCAN 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x y Complete Link 64 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Coesão: Mede a proximidadedos objetos de um cluster.  Exemplo: Soma do Erro Quadrático (SEQ).

 Separação: Mede como um cluster édistintoou bem separadodos outros.

 Exemplo: Erro Quadrático

 Coesãoé medida pela SEQinterna (dentro de um cluster).

 Separaçãoé medida pela soma de quadrados entre clusters.

 Onde |Ci| é o tamanho (cardinalidade) do cluster i.

Medidas Internas: Coesão e Separação

∑ ∑ ∈

=

i x Ci i

m

x

WSS

(

)

2

− = i i i m m C BSS ( )2

(17)

65 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Exemplo: SEQ  BSS + WSS = constante 1 2 3 4 5

×

×

×

×

×

×

×

×

×

×

×

×

m1 m2 m 10 9 1 9 ) 3 5 . 4 ( 2 ) 5 . 1 3 ( 2 1 ) 5 . 4 5 ( ) 5 . 4 4 ( ) 5 . 1 2 ( ) 5 . 1 1 ( 2 2 2 2 2 2 = + = = − × + − × = = − + − + − + − = Total BSS WSS K=2 clusters: 10 0 10 0 ) 3 3 ( 4 10 ) 3 5 ( ) 3 4 ( ) 3 2 ( ) 3 1 ( 2 2 2 2 2 = + = = − × = = − + − + − + − = Total BSS WSS K=1 cluster:

Medidas Internas: Coesão e Separação

66 MT803 – Tópicos em Matemática Aplicada – Aula 6

 Um grafo de proximidadetambém pode ser usado para

coesão e separação.

 Coesãoé a soma dos pesos de todos os links dentro de um cluster.

 Separaçãoé a soma de todos os pesos entre os nós de um cluster e nós fora do cluster.

coesão separação

Medidas Internas: Coesão e Separação

MT803 – Tópicos em Matemática Aplicada – Aula 6

Medidas Externas:

Entropy

e

Purity

MT803 – Tópicos em Matemática Aplicada – Aula 6

Exercício 5



Usando o software Weka

:

1. Selecionar o dataset “cpu”.

2. Normalizar atributos (Z-score).

3. Execute o algoritmo DBScansem ajustar os

parâmetros. Qual foi o resultado encontrado?

4. Explorar os parâmetros epsilone mimPointsdo

algoritmo DBScan. Analisar os resultados

encontrados.

5. Indique uma vantagem do algoritmo DBScanem

Referências

Documentos relacionados

Nota 4) Fator Histórico de Aproveitamento do curso de origem do candidato – valendo 10 Pontos Esta pontuação será utilizada para verificar se o candidato está apto a ingressar

Anemia Falta de prazer; desinteresse da vida Meu mundo é cheio de alegria e estou interessado em tudo.. Apendicite Medo da vida; bloqueio do fluxo das

A CTC é a capacidade que o solo tem em assegurar alguns nutrientes, tais como: cálcio, magnésio, potássio no seu nível de acidez atual, no entanto, não mostra

discussão inter-setorial sobre a importância da garantia do abastecimento da Região Metropolitana 9.. do Rio de

Quando o ingressante não tem lugar para se hospedar nem condições financeiras de alugar um imóvel até a divulgação do resultado final do apoio-moradia (PAPFE

Em conformidade com as quais este documento «...destina-se a sintetizar as reconciliações bancárias das diversas contas de que a entidade for titular, devendo ser enviado em

In the medium northern region of the State of Mato Grosso sheep farming is characterized predominantly by semi-intensive production systems, with meat production for

Embora tenhamos em mente que se trata de temas complexos, difíceis de serem abordados somente em um artigo, gostaríamos de correr o risco, ao procurar traçar brevemente uma