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

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

Formação de agrupamentos: conceitos básicos e algoritmos prof. Luis Otavio Alvares INE/UFSC Parte desta apresentação é baseada em material do livro Introduction.

Apresentações semelhantes


Apresentação em tema: "Formação de agrupamentos: conceitos básicos e algoritmos prof. Luis Otavio Alvares INE/UFSC Parte desta apresentação é baseada em material do livro Introduction."— Transcrição da apresentação:

1 Formação de agrupamentos: conceitos básicos e algoritmos 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)

2 Prof. Luis Otavio Alvares 2 Conceitos O problema de Clustering é descrito como: recebido um conjunto de dados (de objetos), tentar agrupá- los de forma que os elementos que compõem cada grupo sejam mais parecidos entre si do que parecidos com os elementos dos outros grupos. Em resumo, é colocar os iguais (ou quase iguais) juntos num mesmo grupo e os desiguais em grupos distintos. 2

3 Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Inerentemente é um problema não definido claramente Como agrupar os animais seguintes? O que é formação de agrupamentos (clustering)? Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN

4 Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Inerentemente é um problema não definido claramente Como agrupar os animais seguintes? Com bico Sem bico O que é formação de agrupamentos (clustering)? Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN

5 Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Inerentemente é um problema não definido claramente Como agrupar os animais seguintes? TerraÁgua O que é formação de agrupamentos (clustering)? Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN

6 Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Inerentemente é um problema não definido claramente Como agrupar os animais seguintes? Ave Mamífero O que é formação de agrupamentos (clustering)? Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN

7 O que é formação de agrupamentos (clustering)? Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Distâncias entre cluster são maximizadas Distâncias intra- cluster são minimizadas

8 Aplicações de clustering Entendimento –Agrupar documentos relacionados, agrupar proteínas com funcionalidades similares, agrupar ações com as mesmas flutuações de preço Sumarização –Reduzir o tamanho de grandes conjuntos de dados Agrupando a precipitação na Austrália

9 A noção de cluster pode ser ambígua Quantos clusters? Quatro ClustersDois Clusters Seis Clusters

10 Prof. Luis Otavio Alvares 10 Encontrar o melhor agrupamento para um conjunto de objetos não é uma tarefa simples, a não ser que n (número de objetos) e k (número de clusters) sejam extremamente pequenos, visto que o número de partições distintas em que podemos dividir n objetos em k clusters é aproximadamente k n /k! Ex. k=2 e n=5 então são 16 formas de dividir 5 elementos em 2 grupos. Dificuldades 10

11 Para agrupar 25 objetos em 5 grupos, existem maneiras possíveis. E se o número de clusters é desconhecido, precisamos somar todas as partições possíveis para cada número de clusters entre 2 e 5 (desconsiderando um só cluster). Dificuldades 11

12 Porque a efetividade dos algoritmos de Clustering é um problema: 1. Quase todos os algoritmos de Clustering requerem valores para os parâmetros de entrada que são difíceis de determinar, especialmente para conjuntos de dados do mundo real contendo objetos com muitos atributos. Dificuldades 12

13 2. Os algoritmos são muito sensíveis a estes valores de parâmetros, freqüentemente produzindo partições muito diferentes do conjunto de dados mesmo para ajustes de parâmetros significativamente pouco diferentes. 3. Conjuntos de dados reais de alta dimensão (muitos atributos) têm uma distribuição muito ampla o que dificulta a análise. Dificuldades 13

14 Medidas de Similaridade As medidas de similaridade fornecem valores numéricos que expressam a distância entre dois objetos. Quanto menor o valor desta distância, mais semelhantes serão os objetos, e tenderão a ficar no mesmo cluster. Quanto maior a distância, menos similares serão os objetos e, em conseqüência, eles deverão estar em grupos distintos. 14

15 Prof. Luis Otavio Alvares 15 Uma função de distância deve ser tal que: não assuma valores negativos (o menor valor é 0); ser simétrica (a distância do objeto i ao j tem que ser igual à distância do objeto j ao i); forneça o valor 0 quando calculada a distância do objeto a si mesmo ou quando dois objetos são idênticos; respeite a desigualdade triangular, (dados 3 objetos, a distância entre dois deles tem que ser menor ou igual a soma das distâncias entre esses dois objetos e o terceiro). Medidas de Similaridade

16 Prof. Luis Otavio Alvares 16 Medidas de Similaridade è Distância Euclidiana City block (Manhattan, taxicab, L 1 norm, Hamming) –Um exemplo comum é a distância de Hamming, que é o número de bits que é diferente entre dois vetores binários

17 Prof. Luis Otavio Alvares 17 è Métrica de Canberra è coeficiente de CzeKanowski 17

18 Não há uma medida de similaridade que sirva para todos os tipos de variáveis que podem existir numa base de dados. Variáveis numéricas: A medida que é normalmente usada para computar as dissimilaridades de objetos descritos por variáveis numéricas é a Distancia Euclidiana A normalização faz com que todas as variáveis tenham um peso igual. A normalização deve ser efetuada para todos os atributos. Medidas de Similaridade 18

19 Medidas de Similaridade 19

20 Prof. Luis Otavio Alvares 20 Exemplos para strings: Cores = {Branco, Amarelo, Vermelho, Marrom, Preto} x1 = Branco y1 = Amarelo 0, se a1 = a2 d(x1,y1) = 1, se a1 a2 Opção1: medida binária de similaridade Medidas de Similaridade

21 Opção2: transformar o string em um valor numérico (mais usado quando há ordem entre os valores nominais) E usar a distância Euclidiana VermelhoPretoMarromAmarelo 0,250,50,751 Branco 0 Medidas de Similaridade

22 Prof. Luis Otavio Alvares 22 Principais abordagens de Clustering Particionamento (K-médias e variantes) –Divide os pontos (dados) em conjuntos disjuntos (clusters) tal que cada ponto pertence a um único cluster Hierárquica –Um conjunto de clusters aninhados organizados como uma árvore Baseadas em densidade –Encontra clusters baseado na densidade de regiões Baseadas em grade (Grid-based) –Encontra clusters baseado no número de pontos em cada célula

23 K-médias (K-means) Abordagem por particionamento Cada cluster está associado a um centróide (ponto central) Cada ponto é associado ao cluster cujo centróide está mais próximo Número de clusters, K, precisa ser especificado O algoritmo básico é bem simples:

24 Prof. Luis Otavio Alvares 24 K-médias: exemplo do funcionamento

25 Prof. Luis Otavio Alvares 25 K-médias: partição Diagrama de Voronoi – poliedros convexos em torno dos centróides

26 Prof. Luis Otavio Alvares 26 k-means (Exemplo) Usar k=2 (parâmetro informado pelo usuário) Dataset a ser clusterizado

27 Prof. Luis Otavio Alvares 27 Passo 1 Determina-se os centróides iniciais (normalmente pega-se ao acaso k pontos (registros): por exemplo os registros A e B), isto é: C 1 (1) = (5,3) C 2 (1) = (-1,1) k-means (Exemplo)

28 Prof. Luis Otavio Alvares 28 Passo 2: Calcula-se as distâncias de cada ponto aos centróides, para definir os cluster iniciais. k-means (Exemplo) Os clusters são: C 1 = {A} C 2 = {B,C,D} Pois C e D estão mais perto de B do que de A

29 Prof. Luis Otavio Alvares 29 k-means (Exemplo) Passo 3: cálculo dos novos centróides C 1 (2)= (5,3) C 2 (2)=

30 Prof. Luis Otavio Alvares 30 k-means (Exemplo) Passo 4: novo cálculo dos clusters Os clusters são: C 1 = {A} C 2 = {B,C,D} Pois: A está mais perto de C 12 do que de C 22 B, C e D estão mais perto de C 22 do que de C 12 Como os elementos dos clusters não se alteraram, os centróides vão ser os mesmos e com isso o algoritmo para.

31 Prof. Luis Otavio Alvares 31 Outros exemplos com o k-médias

32 Dois conjuntos de clusters diferentes gerados pelo K-médias Particionamento sub-ótimoParticionamento ótimo Pontos originais

33 Importância de escolher os centróides iniciais

34

35 Avaliando os clusters gerados A medida mais comum é a soma dos erros quadrados (Sum of Squared Error - SSE) Para cada ponto, o erro é a distância ao centróide mais próximo x é um ponto de dados no cluster C i e m i é o ponto representativo (centróide) do cluster C i Uma maneira fácil de reduzir o SSE é aumentar K, o número de clusters Um bom particionamento com um K pequeno pode ter um SSE menor do que um mau particionamento com um K maior

36 Importância da escolha dos centróides iniciais

37

38 Exemplo com 10 clusters Iniciando com dois centróides em um cluster para cada par de clusters

39 Exemplo com 10 clusters Iniciando com dois centróides em um cluster para cada par de clusters

40 Exemplo com 10 clusters Iniciando com um par de clusters tendo 3 centróides iniciais e outro par com somente um.

41 Exemplo com 10 clusters Iniciando com um par de clusters tendo 3 centróides iniciais e outro par com somente um.

42 Pré e Pós-processamento Pré-processamento –Normalize os dados –Elimine exceções (outliers) Pós-processamento –Elimine clusters pequenos que podem representar outliers –Divida clusters fracos i.e., clusters com SSE relativamente alto –Junte clusters que estão perto e que tenham SSE relativamente baixo

43 Limitações do K-médias K-médias tem problemas quando os clusters têm –Tamanhos diferentes –Densidades diferentes –Formato não esférico K-médias tem problemas quando os dados contêm outliers.

44 Limitações do K-médias: tamanhos diferentes Pontos originais K-médias (3 Clusters)

45 Limitações do K-médias: densidades diferentes pontos originais K-médias (3 Clusters)

46 Limitações do K-médias: formatos não esféricos Pontos originais K-médias (2 Clusters)

47 Superando as limitações do K-médias Pontos originaisClusters do K-médias Uma solução é usar muitos clusters. Encontra partes de clusters, mas que precisam ser unidos.

48 Superando as limitações do K-médias Pontos originaisclusters do K-médias

49 Superando as limitações do K-médias Pontos originaisclusters do K-médias

50 O algoritmo K-médias é sensível a ruídos visto que um objeto com um valor extremamente grande pode, distorcer a distribuição de dados. Para diminuir essa sensibilidade, no algoritmo K- medoids, ao invés de utilizar o valor médio dos objetos em um cluster como um ponto referência, a mediana é utilizada, que é o objeto mais centralmente localizado em um cluster.

51 Prof. Luis Otavio Alvares 51 Métodos de K-medoids (K-medianas) Em vez de médias (centróides), usa objetos representativos chamados medoids PAM (Partitioning Around Medoids, 1987) – inicia com um conjunto de medoids e iterativamente substitui um dos medoids por um dos pontos não-medoids se ele melhora a distância total do particionamento resultante CLARA (Clustering Large Applications, 1990) – It draws multiple samples of the data set, applies PAM on each sample, and gives the best clustering as the output CLARANS (Randomized CLARA, 1994) – mais eficiente e escalável que CLARA e PAM

52 Prof. Luis Otavio Alvares 52 Exercício + +


Carregar ppt "Formação de agrupamentos: conceitos básicos e algoritmos prof. Luis Otavio Alvares INE/UFSC Parte desta apresentação é baseada em material do livro Introduction."

Apresentações semelhantes


Anúncios Google