590 likes | 687 Views
Formação de agrupamentos: conceitos básicos e algoritmos (parte 2) prof. Luis Otavio Alvares INE/UFSC. Parte desta apresentação é baseada em material do livro Introduction to Data Mining de Tan, Steinbach, Kumar e de material do prof. José Leomar Todesco (UFSC). Clustering hierárquico.
E N D
Formação de agrupamentos: conceitos básicos e algoritmos (parte 2)prof. Luis Otavio AlvaresINE/UFSC Parte desta apresentação é baseada em material do livro Introduction to Data Mining de Tan, Steinbach, Kumar e de material do prof. José Leomar Todesco (UFSC)
Clustering hierárquico • Produz um conjunto de clusters aninhados, organizados como uma árvore • Pode ser visualizado como um dendrograma • Um diagrama em forma de árvore que registra a sequencia de uniões ou divisões
Pontos fortes do clustering hierárquico • Não precisa assumir nenhum número particular de clusters • Qualquer número desejado de clusters pode ser obtido “cortando” o dendograma no nível adequado • Podem corresponder a taxonomias • Exemplo em biologia: o reino animal
Clustering hierárquico • Dois tipos principais • Aglomerativo: • Inicia com cada ponto como um cluster individual • A cada passo une o par de pontos mais próximos até que reste somente um cluster (ou k clusters) • Divisivo: • Inicia com um cluster contendo todos os pontos • A cada passo divide um cluster até que cada cluster contenha apenas um ponto (ou até que haja k clusters) • Os algoritmos tradicionais usam uma matriz de similaridade ou de proximidade (distância) • Unem ou dividem um cluster de cada vez
Como definir a similaridade entre clusters p1 p2 p3 p4 p5 . . . p1 p2 p3 p4 p5 . . . Similaridade? • MIN • MAX • Média do grupo • Distância entre centróides • Outros métodos dirigidos por uma função objetivo • método de Ward Matriz de proximidade
Como definir a similaridade entre clusters p1 p2 p3 p4 p5 . . . p1 p2 p3 p4 p5 . . . • MIN • MAX • Média do grupo • Distância entre centróides • Outros métodos dirigidos por uma função objetivo • método de Ward Matriz de proximidade
Como definir a similaridade entre clusters p1 p2 p3 p4 p5 . . . p1 p2 p3 p4 p5 . . . • MIN • MAX • Média do grupo • Distância entre centróides • Outros métodos dirigidos por uma função objetivo • método de Ward Matriz de proximidade
Como definir a similaridade entre clusters p1 p2 p3 p4 p5 . . . p1 p2 p3 p4 p5 . . . • MIN • MAX • Média do grupo • Distância entre centróides • Outros métodos dirigidos por uma função objetivo • método de Ward Matriz de proximidade
Como definir a similaridade entre clusters p1 p2 p3 p4 p5 . . . p1 p2 p3 p4 p5 . . . • MIN • MAX • Média do grupo • Distância entre centróides • Outros métodos dirigidos por uma função objetivo • método de Ward Matriz de proximidade
Algoritmo Geral de Agrupamento Hierárquico Aglomerativo Passo 1: Iniciar o agrupamento formado por grupos Unitários (cada ponto é um cluster) Passo 2: Encontre, no agrupamento corrente, o par de grupos de dissimilaridade (distância) mínima (= similaridade máxima) Passo 3: Construa um novo grupo pela fusão desse par de grupos de dissimilaridade mínima Passo 4: Atualize a matriz de dissimilaridades: suprima as linhas e as colunas correspondentes aos grupos fusionados e adicione uma linha e uma coluna correspondente as dissimilaridades entre o novo grupo e os grupos antigos Passo 5: Se todos os objetos estão grupados, pare; senão vá para o passo 2
Similaridade MIN ou Single Link 1 2 3 4 5 • A similaridade entre dois clusters é baseada nos dois pontos mais similares (mais próximos) dos dois clusters diferentes • Determinada por um par de pontos, i.e., por um link na matriz de proximidade.
Clustering Hierárquico: MIN 5 1 3 5 2 1 2 3 6 4 4 Clusters aninhados Dendrograma
Métodos hierárquicos aglomerativos Para ilustrar os procedimentos de diversos algoritmos vamos usar o seguinte exemplo. Exemplo: pretende-se investigar, de forma exploratória, o histórico de crescimento corpóreo das pessoas. O pesquisador gostaria de escolher representantes “típicos” da população para tentar traçar diferentes históricos. O objetivo operacional passou a ser o de agrupar os indivíduos da população alvo segundo as variáveis peso e altura. Os dados de seis pessoas foram:
Métodos hierárquicos aglomerativos Como temos duas variáveis com unidades diferentes, usar-se-á a normalização dos dados, onde cada valor será subtraído da média de todas as observações e dividido pelo desvio padrão de todas as observações. A nova tabela fica:
Exemplo: Single Link (MIN) • Método do vizinho mais próximo (Método da ligação simples- Single Link) • Para o nosso exemplo suponha a seguinte matriz de distâncias: A B C D E B Sempre é uma matriz quadrada e simétrica C D E * F
Exemplo: Single Link • Passo 1: inicialmente, cada caso forma um grupo, isto é, temos 6 grupos iniciais. • Passo 2: olhando-se a matriz de distâncias, observa-se que as duas observações mais próximas são D e F, corresponde a uma distância de 0,37, assim, esta duas observações são agrupadas, formando o primeiro grupo. Necessita-se, agora, das distâncias deste grupo aos demais. A partir da matriz de distâncias iniciais têm-se: Com isso, temos a seguinte matriz de distâncias:
Exemplo: Single Link A B C E B C E DF • Passo 3: Agrupar A e B ao nível de 0,67, e recalcular: A matriz resultante será:
Exemplo: Single Link C E DF E DF AB • Passo 4: Agrupar AB com E ao nível de 0,67, e recalcular: Matriz resultante: C DF DF ABE
Exemplo: Single Link • Passo 5: Agrupar C com ABE ao nível de 0,74, e recalcular: Matriz resultante: DF ABCE • Passo 6: O último passo cria um único agrupamento contendo os 6 objetos, que serão similares a um nível de 0,77.
Exemplo: Single Link Resumindo-se, temos: Dendograma: 1,0 0,9 0,8 0,7 0,6 Distância 0,5 0,4 0,3 0,2 0,1 0,0 D F A B E C
Pontos fortes da MIN Dois Clusters Pontos originais • Pode tratar formas não-elípticas
Limitações da MIN Dois Clusters Pontos originais • Sensível a ruído e outliers
Similaridade MAX ou Complete Linkage 1 2 3 4 5 • A similaridade entre dois clusters é baseada nos pontos menos similares (mais distantes) entre os dois clusters (mas escolhe-se a menor distância máxima) • Determinada por todos os pares de pontos dos dois clusters
Clustering hierárquico: MAX 4 1 2 5 5 2 3 6 3 1 4 Clusters aninhados Dendrograma
Exemplo: Complete Linkage • Método do vizinho mais longe (Método da ligação completa – Complete Linkage) Define-se a distância entre os grupos X e Y como: Convém ressaltar que a fusão de dois grupos ainda é feita com os grupos mais parecidos (menor distância). • Passo 1: inicialmente, cada caso forma um grupo, isto é, temos 6 grupos iniciais. • Passo 2: olhando-se a matriz de distâncias, abaixo, observa-se que as duas observações mais próximas são D e F, corresponde a uma distância de 0,37, assim, estas duas observações são agrupadas, formando o primeiro grupo. Necessita-se, agora, das distâncias deste grupo aos demais. A partir da matriz de distâncias iniciais tem-se: A B C D E B C D E F
Exemplo: Complete Linkage A B C E B C E DF • Passo 3: Agrupar A e B ao nível de 0,67, e recalcular:
Exemplo: Complete Linkage Temos: C E DF E DF AB
Exemplo: Complete Linkage • Passo 4: Agrupar AB com E ao nível de 0,79, e recalcular: Matriz resultante: C DF DF ABE
Exemplo: Complete Linkage • Passo 5: Agrupar C com DF ao nível de 1,13, e recalcular: Matriz resultante: CDF ABE • Passo 6: O último passo cria um único agrupamento contendo os 6 objetos, que serão similares a um nível de 2,49.
Exemplo: Complete Linkage Resumindo-se, temos: Dendograma: 2,5 1,3 1,2 1,1 1,0 0,9 0,8 0,7 0,6 Distância 0,5 0,4 0,3 0,2 0,1 0,0 D F C A B E
Ponto forte da MAX Dois Clusters Pontos originais • Menos suscetível a ruído e outliers
Limitações da MAX Dois Clusters Pontos originais • Tendência a quebrar clusters grandes • Tendência a formar clusters esféricos
Similaridade: Média do grupo 1 2 3 4 5 • A proximidade de dois clusters é dada pela média da distância entre pares de pontos dos dois clusters.
Clustering hierárquico: Média do grupo 5 4 1 2 5 2 3 6 1 4 3 Clusters aninhados Dendrograma
Exemplo: Clustering hierárquico: Média do grupo Dada a matriz de distâncias: A B C D E B C D E F • Passo 1: inicialmente, cada caso forma um grupo, isto é, temos 6 grupos iniciais. • Passo 2: olhando-se a matriz de distâncias, observa-se que as duas observações mais próximas são D e F, corresponde a uma distância de 0,37, assim, esta duas observações são agrupadas, formando o primeiro grupo. Necessita-se, agora, das distâncias deste grupo aos demais. A partir da matriz de distâncias iniciais tem-se:
Exemplo: Average Linkage A B C E B C E DF Com a obtenção da matriz de distâncias conclui-se o passo 2, que reuniu os pontos D e F, num nível igual à 0,37.
Exemplo: Average Linkage • Passo 3: Analisando a nova matriz de similaridade, nota-se que existem dois pares com a mesma proximidade: A com B e B com E. Recomenda-se selecionar aleatoriamente um dos pares e criar o novo grupo. Então, neste caso, agrupa-se A com B. Temos: C E DF E DF AB
Exemplo: Average Linkage • Passo 4: Agrupar AB com E ao nível de 0,73, e recalcular: Matriz resultante: C DF DF ABE
Exemplo: Average Linkage • Passo 5: Agrupar C com DF ao nível de 0,95, obtendo-se a partição (ABE, CDF) e recalcular: Matriz resultante: CDF ABE • Passo 6: O processo encerra reunindo num único grupo os conjuntos ABE e CDF, que são similares a um nível de 1,64 .
Exemplo: Average Linkage Resumindo-se, temos: Observando o gráfico em forma de árvore (dendograma), notamos que o maior salto é observado na última etapa, sugerindo a existência de dois grupos homogêneos (A,B,E) e (C,D,F). Dendograma: 1,6 1,5 1,4 1,3 1,2 1,1 1,0 0,9 0,8 0,7 0,6 Distância 0,5 0,4 0,3 0,2 0,1 0,0 D F C A B E
Clustering hierárquico: Média do grupo • Compromisso entre MAX e MIN • Ponto forte • Menos suscetível a ruído e outliers • Limitação • Tendência de gerar clusters esféricos
Método de Ward (Ward’s method) • A similaridade de dois clusters é baseada no aumento do erro quadrado quando dois clusters são unidos • Similar a média do grupo se a distância entre os pontos é a distância ao quadrado • Menos suscetível a ruído e outliers • Tendência de gerar clusters esféricos • Clustering Hierárquico análogo ao K-médias • Pode ser usado para inicializar o K-médias
5 1 5 5 4 1 3 1 4 1 2 2 5 2 5 5 2 1 5 2 5 2 2 2 3 3 6 6 3 6 3 1 6 3 3 1 4 4 4 1 3 4 4 4 Clustering Hierárquico: uma comparação MIN MAX Método de Ward Média do grupo
Clustering Hierárquico: necessidades de tempo e espaço • O(N2) para espaço usando matriz de proximidade. • N é o número de pontos. • O(N3) para o tempo em muitos casos • Tem N passos e em cada passo a matriz de tamanho N2 tem que ser atualizada e percorrida • A complexidade pode ser reduzida para O(N2 log(N) ) em algumas abordagens
DBSCAN Clustering baseado em densidade
DBSCAN (1996) • DBSCAN é um algoritmo baseado em densidade • Densidade = número de pontos dentro de um raio especificado (Eps) • Um ponto é um core point se ele tem mais de um número especificado de pontos (MinPts) dentro do círculo de raio Eps • Estes são pontos que pertencem a um cluster • Um border point tem menos do que MinPts dentro do círculo de raio Eps, mas ele está na vizinhança (definida por Eps) de um core point • Um noise point é todo ponto que não é nem core point nem border point.
Core and border points DBSCAN (Ester 1996) p q r minPts= 5 Eps= 1 Eps Eps Eps Core point Border point noise
DBSCAN Algorithm • Eliminate noise points • Perform clustering on the remaining points