A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20081/34 Análise de Clustering: Tópicos adicionais Rodrigo Rocha Gomes e Souza Aula de Mineração.

Apresentações semelhantes


Apresentação em tema: "Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20081/34 Análise de Clustering: Tópicos adicionais Rodrigo Rocha Gomes e Souza Aula de Mineração."— Transcrição da apresentação:

1 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20081/34 Análise de Clustering: Tópicos adicionais Rodrigo Rocha Gomes e Souza Aula de Mineração de Dados (pós-graduação)‏ Universidade Federal de Campina Grande, 11/11/2008 Figuras tiradas do livro “Introduction to Data Mining”, de Tan, Steinbach e Kumar

2 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20082/34 Sumário  Algoritmos baseados em protótipos –Fuzzy c-means –EM (Expectation Maximization)  Algoritmos baseados em densidades –Grid-based –DENCLUE O algoritmo SOM será omitido O algoritmo CLIQUE (subspaces) será omitido

3 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20083/34  Algoritmos baseados em grafos –Sparsification (técnica)‏ –Chameleon –SNN (Shared Nearest Neighbor - técnica)‏ –Jarvis-Patrick –SNN Density OPOSSUM e BIRCH serão omitidos –Algoritmos escaláveis  CURE

4 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20084/34 –Subspace clusters –Clusters mal separados –Distribuição de dados Algoritmos baseados em protótipos

5 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20085/34 K-means (revisão)‏  Não lida bem com clusters de diferentes formas, tamanhos e densidades  É um algoritmo rápido

6 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20086/34 Fuzzy c-means: Introdução  Motivação –Nem sempre os dados estão bem separados –Atribuição de um elemento a um cluster pode ser quase arbitrária  Solução –Clusters são conjuntos nebulosos: x i pertence a C j com grau w ij (entre 0 e 1)‏ –w i1 + w i2 +... + w ik = 1

7 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20087/34 Fuzzy c-means: Algoritmo  Atribua um valor a cada w ij  repita –Calcule o centróide de cada cluster –Recalcule cada w ij  até os centróides se estabilizarem  Para obter um clustering, atribua cada elemento ao cluster para o qual seu grau de pertinência é maior

8 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20088/34 Fuzzy c-means: Exemplo

9 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20089/34 EM (Expectation Maximization)‏  Motivação: dados seguem distribuições estatísticas conhecidas  Generalização do k-means e do fuzzy c-means É como se fosse o K-means que passou pela mão de um estatístico  Algoritmo EM: cada cluster segue uma distribuição estatística. Procura parâmetros para as distribuições.

10 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200810/34 EM: Maximum Likelihood Estimation  Likelihood: até que ponto determinada distribuição estatística explica os dados? Aqui consideramos dados em 1 dimensão, para simplificar as figuras

11 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200811/34 EM: Algoritmo  Cada cluster é representado por uma distribuição estatística com determinados parâmetros  Algoritmo –Selecione um conjunto inicial de parâmetros –repita  Para cada objeto x i, calcule a probabilidade de x i pertencer a cada distribuição.  Ache os parâmetros que maximizam o likelihood –até os parâmetros se estabilizarem

12 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200812/34

13 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200813/34 densidades e tamanhos diferentes formas elípticas EM K-means

14 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200814/34 EM: Weka === Run information === Scheme: weka.clusterers.EM -I 100 -N 3 -M 1.0E-6 -S 100 Relation: iris Instances: 150 Attributes: 5 sepallength sepalwidth petallength petalwidth class Test mode: evaluate on training data === Model and evaluation on training set === EM == Number of clusters: 3 Fonte: Wikipedia

15 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200815/34 Cluster Attribute 0 1 2 (0.34) (0.33) (0.32)‏ ============================================ sepallength mean 5.9188 5.006 6.6181 std. dev. 0.5168 0.3489 0.6001 sepalwidth mean 2.7577 3.418 2.9906 std. dev. 0.3133 0.3772 0.3064 petallength mean 4.268 1.464 5.5681 std. dev. 0.4667 0.1718 0.5369 petalwidth mean 1.3303 0.244 2.0348 std. dev. 0.1968 0.1061 0.2665 class Iris-setosa 1 51 1 Iris-versicolor 50.5437 1 1.4563 Iris-virginica 2.3846 1 49.6154 [total] 53.9283 53 52.0717 Clustered Instances 0 52 ( 35%)‏ 1 50 ( 33%)‏ 2 48 ( 32%)‏ Log likelihood: -2.21075 likelihood ≈ 0,11

16 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200816/34 Algoritmos baseados em densidades

17 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200817/34 DBSCAN (revisão)‏  Lida bem com clusters de diferentes tamanhos e formas  Não lida bem com clusters de diferentes densidades Não lida bem com dados com muitas dimensões (e nem os outros algoritmos baseados em densidade)‏

18 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200818/34 Grid-based  Motivação: eficiência  Desvantagem: sensível a parâmetros (limiar de densidade, tamanho de cada célula)‏ Problemas: ocupa muita memória (mas dá pra armazenar só células preenchidas)‏ Se o limiar for alto, alguns clusters serão perdidos Se o limiar for baixo, clusters serão unidos O quadriculado não captura bem a densidade das regiões curvas. Podemos diminuir as células, mas aí haverá flutuação das densidades já que os pontos não são bem distribuídos.

19 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200819/34 DENCLUE  Generalização do DBSCAN  Maneira mais precisa de calcular densidades É como um DBSCAN que passou pela mão de um estatístico –desvantagens  kernel-based é caro. DENCLUE simplifica usando grids (mas aí sofre de problemas de grid)‏  não lida bem com diferentes densidades  não lida bem com altas dimensões –vantagem: lida bem com diferentes tamanhos e outliers Fonte: Wikipedia

20 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200820/34 Algoritmos baseados em grafos

21 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200821/34 Clustering Hierárquico Aglomerativo  Matriz de proximidade entre objetos

22 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200822/34 Clustering Hierárquico Aglomerativo  Inicialmente, cada cluster contém um objeto  A cada passo, agrupa os dois clusters mais próximos entre si Clusters aninhadosDendrograma 1 2 3 4 5 6 1 2 5 3 4

23 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200823/34 Clustering Hierárquico Aglomerativo  Proximidade entre clusters? Mais pra frente veremos outro critério para agrupar clusters, usado pelo Chameleon

24 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200824/34 Sparsification  Variações –Remover arestas com similaridade < limiar –Manter apenas arestas para os k vizinhos mais próximos de cada nó  Vantagens: menos dados a processar; é possível usar algoritmos de particionamento de grafos

25 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200825/34 Chameleon  Motivação: modelo local (dinâmico) de cluster Closeness schemes will merge (a) and (b)‏ (a)‏ (b)‏ (c)‏ (d)‏ Average connectivity schemes will merge (c) and (d)‏ Pronúncia: kamílion Esse algoritmo é adaptável como um camaleão

26 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200826/34 Chameleon: Conceitos  Relative closeness (RC)‏  Relative interconnectivity (RI)‏  Proximidade entre dois clusters: RI(C i, C j ) * RC(C i, C j ) a

27 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200827/34 Chameleon: Algoritmo  Construa o grafo dos k vizinhos mais próximos  Particione o grafo (algoritmo METIS)‏  repita – Agrupe os clusters de acordo com RI e RC  até não ser possível agrupar clusters

28 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200828/34 Chameleon: Resultados  Lida bem com diferentes formas, tamanhos e densidades  Assume que o particionamento do grafo produz subclusters

29 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200829/34 SNN (Shared Nearest Neighbors)‏  Motivação: dificuldade em tratar alta dimensionalidade e densidades diferentes  “Dois pontos similares aos mesmos pontos são similares entre si” (mesmo se a similaridade original era pequena)‏

30 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200830/34 SNN: Algoritmo  Compute o grafo dos k vizinhos mais próximos  Se dois pontos x, y não estão ligados, similaridade(x, y) = 0  Caso contrário, similaridade(x, y) = número de vizinhos comuns entre x e y

31 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200831/34 Jarvis-Patrick  Algoritmo –Compute o grafo de similaridade SNN –Remova as arestas com similaridade < limiar –Encontre os componentes conexos do grafo resultante

32 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200832/34 Jarvis-Patrick: Resultados  Lida bem com clusters de diferentes densidades, tamanhos e formas  Muito sensível ao parâmetro limiar limiar = Llimiar = L + 1

33 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200833/34 SNN density  Algoritmo –Compute o grafo de similaridade SNN –Aplique o DBSCAN (Eps, MinPts)  Lida bem com diferentes tamanhos, densidades e formas

34 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200834/34 SNN density a) All Points b) High SNN Density c) Medium SNN Density d) Low SNN Density

35 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200835/34

36 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200836/34 CURE  Cada cluster tem múltiplos pontos representativos  Escolhe pontos mais distantes uns dos outros  Encolhe os pontos em direção ao centróide  Usa amostragem e particionamento para tratar de forma eficiente grandes volumes de dados 

37 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200837/34 CURE: Algoritmo  Selecione uma amostra aleatória dos dados  Particione a amostra em partições de tamanho igual  Agrupe os pontos de cada partição usando o AHC de CURE  Use o AHC de CURE para agrupar os clusters do passo anterior até restarem apenas K clusters  Atribua cada ponto (de fora da amostra) ao cluster mais próximo

38 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200838/34 CURE: Resultados  Não lida bem com diferentes densidades  Lida bem com outliers

39 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200839/34 Subspace (CLIQUE)‏  Motivação: clusters em subespaços  CLIQUE: de Agrawal, baseado no Apriori  Vantagens e desvantagens do Apriori –lento

40 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200840/34 SOM – Mapas auto-organizáveis  Motivação: redução de dimensões, visualização  Motivação: vizinhança entre clusters  Desvantagem: –convergência não é garantida –lento

41 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200841/34 Escalabilidade  Amostragem  Particionamento ...

42 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200842/34 Minimum Spanning Tree OPOSSUM

43 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200843/34 Características de dados  Alta “dimensionalidade” (procurar termo na álgebra linear)‏  Muitas instâncias  Dados esparsos. Booleano vs. inteiro  Outliers ... Remover este slide?

44 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200844/34 Sumário  Características de dados e clusters  Algoritmos e técnicas –protótipo –densidade –grafos  Algoritmos escaláveis  Considerações finais

45 Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/200845/34 Características de clusters  Forma  Diferentes tamanhos  Diferentes densidades


Carregar ppt "Rodrigo RochaAnálise de Clustering (tópicos adicionais)‏ 11/11/20081/34 Análise de Clustering: Tópicos adicionais Rodrigo Rocha Gomes e Souza Aula de Mineração."

Apresentações semelhantes


Anúncios Google