Avaliação de Clusteres

Slides:



Advertisements
Apresentações semelhantes
«Forte do Bom Sucesso (Lisboa) – Lápides 1, 2, 3» «nomes gravados, 21 de Agosto de 2008» «Ultramar.TerraWeb»
Advertisements

Algoritmos de Caminho Mínimo em Grafos
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Algoritmos em Grafos.
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Experiments with Clustering as a Software Remodularization Method Nicolas Anquetil and Timothy C. Lethbridge University of Ottawa, Canada WCRE 1999:
Introdução ao processamento de dados e à estatística - parte 02
ESTIMAÇÃO.
Agrupamento (clustering)
Curso de ADMINISTRAÇÃO
Método Hierárquico Aglomerativo de Clusterização Algoritmo CURE
Método K-medóides Algoritmos PAM e CLARA
Análise de Clusters – Introdução Método K-means
Outliers Detecção de Anomalias
Método de Clusterização baseado em Densidade Algoritmo DBSCAN
Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo
Algoritmos para Seleção Simples
Classificadores em Dados não Balanceados
Mineração de Preferências (a partir de amostras superiores e inferiores) J.Pei et al. KDD 2008 AULA 18 Data Mining Profa. Sandra de Amo.
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Estatística Básica Utilizando o Excel
Reconhecimento de Padrões Segmentação
MB751 – Modelos de previsão
Apresentação: Léia Michelle de Souza
Introdução à Lógica de Programação (cont.)
FUNÇÃO MODULAR.
Mecânica dos Sólidos não Linear
INF 1771 – Inteligência Artificial
ESTATÍSTICA.
Estatística e Probabilidade
MECÂNICA - DINÂMICA Exercícios Cap. 13, 14 e 17. TC027 - Mecânica Geral III - Dinâmica © 2013 Curotto, C.L. - UFPR 2 Problema
Alexandre Xavier Falcão & David Menotti
ME623 Planejamento e Pesquisa
ME623A Planejamento e Pesquisa
CLUSTERING: UMA REVISÃO AOS ALGORITMOS BÁSICOS
Aprendizagem de Máquina - Agrupamento
Agrupamentos / Clustering
PROGRAMAÇÃO LINEAR EXERCÍCIOS PROPOSTOS.
K-Means / Clustering.
ESTATÍSTICA.
1ª. AULA PRÁTICA.
Exponential Random Graph Models
2 Campo Elétrico Livro texto:
Capítulo 10 Funções polinomiais slide 1
Coordenação Geral de Ensino da Faculdade
Medidas de posição  Estudando as distribuições de  frequência,  percebe-se que existe uma  posição de  concentração dos valores, que podem estar mais concentrados no início, no meio ou no 
Medidas de Dispersão ou de Variabilidade:
Estatística Para um dado conjunto de dados, podemos calcular as seguintes grandezas: 1) Medidas de posição 2) Medidas de dispersão 3) Parâmetros de simetria.
Modelagem Estatística
Avaliação de Clusteres Parte II
Matemática – Unidade 2.
Centro de massa Prof. Cesário.
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
CLASSES: SÃO INTERVALOS DE VARIAÇÃO DA VARIÁVEL.
ANÁLISE ESTATÍSTICA II
Computação Gráfica Aula 3 Transformações Geométricas
Estatística.
Estatística Aula 9 – 28/02/2011.
Microsoft Office Excel 2010
Olhe fixamente para a Bruxa Nariguda
Equipe Bárbara Régis Lissa Lourenço Lucas Hakim Ricardo Spada Coordenador: Gabriel Pascutti.
Professor Antonio Carlos Coelho
Tecnologias - Matemática desvio médio, desvio-padrão e variância
Prof. André Aparecido da Silva
Aula 11 - Teste de hipóteses, teste de uma proporção
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
Algoritmos de Agrupamento (Clustering): Métodos Hierárquicos e k-médias Marcílio C. P. de Souto DIMAp/UFRN.
Recuperação Inteligente de Informação
Hugo Feitosa Yuri Lacerda.  Introdução  Projeto  Protótipo  Avaliação  Trabalhos Futuros  Conclusões.
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
Transcrição da apresentação:

Avaliação de Clusteres Sandra de Amo AULA 23 DATA MINING

O que avaliar ? Os dados são “clusterizáveis” ? Isto é, existem estruturas não-randômicas nos dados ? Qual o número ideal de clusteres ? Os clusteres encontrados realmente correspondem a clusteres “reais” ? Dados dois conjuntos de clusteres para os mesmos dados, qual é o melhor ?

Como avaliar ? Como medir a “tendência de clusteres”, o número ideal de clusteres, a qualidade da clusterização, sem a “visualização gráfica” dos dados (só factível até 3 dimensões) ?

Medidas de Avaliação Não-supervisionadas Supervisionadas Medem a qualidade de uma clusterização sem utilizar medidas externas aos dados Medidas de Coesão Medidas de Separação Supervisionadas Medem a qualidade de uma clusterização utilizando medidas externas aos dados, por exemplo, dados de testes etiquetados com um atributo classe.

Fórmula geral de avaliação Seja C = {C1, ...., Ck} um conjunto de clusteres Avaliação(C) = Σ wi Avaliação(Ci) k i = 1 pesos Avaliação individual do cluster Ci Avaliação global de C

Clusteres baseados em Protótipos Medidas de Avaliação = coesão e separação Coesão (individual) Mede o quanto os objetos dentro de um cluster se aglomeram perto do centro do cluster Separação (inter clusteres) Mede o quanto os centros dos clusteres estão bem separados entre si

Clusteres baseados em Protótipos Coesão(Ci) = Σ proximidade(x,ci) ci = centroide (centro de gravidade) de Ci Separação(Ci,Cj) = proximidade(ci,cj) Separação (Ci) = proximidade(ci,c) c = centro de gravidade do conjunto total de dados Proximidade : noção que pode variar dependendo da aplicação Exemplo: SSE mede coesão quando a função de proximidade é o quadrado da distância. x ɛ Ci

Clusteres baseados em Grafos Medidas de Avaliação = coesão e separação Coesão (individual) Mede o quanto os objetos dentro de um cluster estão juntos Separação (inter clusteres) Mede o quanto cada elemento de um cluster está afastado dos elementos de outros clusteres.

Clusteres baseados em grafos Coesão(Ci) = Σ proximidade(x,y) Separação(Ci,Cj) = Σ proximidade(x,y) Proximidade: noção que pode variar dependendo da aplicação x,y ɛ Ci x ɛ Ci, y ɛ Cj

Coesão e Separação globais Medida Fórmula para os clusters individuais (Ci) Peso Tipo I1 Σ proximidade(x,y) x,y ɛ Ci 1/mi mi=tamanho de Ci Coesão baseada em grafo I2 Σ proximidade(x,ci) x ɛ Ci 1 Coesão baseada em protótipo E1 proximidade(ci,c) c = centro de gravidade do conjunto total de dados mi Separação baseada em protótipo G1 k k Σ Σ prox.(x,y) i=1 j=1 i ≠ j x ɛ Ci , y ɛ Cj Σ prox.(x,y) Separação baseada grafo

Exemplos de Medidas de Coesão Baseada em protótipo SSE : noção de proximidade é dada pelo quadrado da distância euclidiana dist SSE(Ci) = Σ dist(x,ci)2 x ɛ Ci SSE = Σ SSE(Ci) i = 1,...,k Baseada em grafos Σ dist(x,y)2 x,y ɛ Ci Relação entre as duas medidas SSE(Ci) = 1 Σ dist(x,y)2 2mi x,y ɛ Ci

Exemplo de Medidas de Separação Baseada em Protótipos SSB = Σ mi dist(ci,c)2 onde mi = tamanho de Ci i = 1,...,k Se os clusters têm mesmo tamanho mi = m/k SSB = 1/2k Σ m/k dist(ci,cj)2 i,j = 1,...,k Relação entre coesão e separação (baseada em protótipos) SSE + SSB = TSS = Σ Σ dist(x,c)2 i = 1,...,k x ɛ Ci Número constante Independe dos clusteres Só depende dos dados iniciais

Exercício 1 Considere o seguinte conjunto de objetos Considere C = {C1, C2} onde C1 = {(1,2), (1.3, 2.5), (2,2.2)} C2 = {(5,1), (5,5, 1,3), (5,3.2,4)} Calcule a coesão e separação do conjunto de clusteres C, utilizando as medidas SSE e SSB respectivamente. Calcule TSS para o conjunto de dados D (não depende de C). Mostre que SSE + SSB = TSS

Exercício 2 : Comparação de medidas de agrupamentos (baseados em protótipos e baseados em grafos) Clusterização 2 obtida utilizando um método baseado em grafos Clusterização 1 obtida utilizando um método baseado em grafos Qual a que tem a melhor coesão segundo I1 ? E a melhor separação segundo G1? Proximidade = quadrado da distância.

Dados para Exercício 2 X Y 1,5 1,4 2,5 1,3 4 3,5 2,1 3,8 3,3 5,2 3

Como utilizar coesão e separação para “melhorar” a clusterização Um cluster com baixo grau de coesão pode ser dividido em 2 subclusteres. Dois clusteres que têm boa coesão mas que não tem bom grau de separação podem ser juntados para formar um único cluster.

Como avaliar objetos dentro de um cluster Como objetos individualmente contribuem para a coesão e separação globais de um conjunto de clusteres ? Objetos que contribuem mais para a coesão e separação estão mais no “interior” de seu cluster. Objetos que contribuem pouco estão mais na “fronteira” de seu cluster.

Coeficiente de Silhueta Medida que combina coesão e separação Coeficiente de Silhueta de um cluster C = média do coef. Silhueta dos objetos de C Coeficiente de Silhueta da clusterização = média do coef. Silhueta de todos os objetos Coeficiente de Silhueta de um objeto – depende da clusterização.

Coeficiente de Silhueta de um Objeto t Dado um conjunto de Clusteres C = {C1,...,Ck} e um objeto t do banco de dados Calcule at = distância média de t a todos os objetos de seu cluster. Calcule bt Para cada cluster C’ não contendo t, calcule t(C’) a distância média entre t e todos os objetos de C’ bt = min {t(C’) | C’ não contém t } Coef. Silhueta (t) = (bt – at ) / max(at , bt )

Coeficiente de Silhueta de objetos Coeficiente de Silhueta varia de -1 a 1. Valores negativos: at > bt (não desejados) Distância média de t a objetos de seu cluster é maior que distância média de t a objetos de outros clusteres Valores Ideais Valores positivos at bem próximo de zero Coeficiente de silhueta bem próximo de 1

Dados agrupados em 10 clusters e os coeficientes de silhueta dos pontos

Exercício 3 Considere as duas clusterizações do Exercicio 2. Calcule o coeficiente de silhueta do objeto t com relação a cada uma destas clusterizações. t t Para casa: calcular o coeficiente de Silhueta global de cada uma das duas clusterizações e decida qual a melhor.

Determinar o número ideal de clusteres Técnica 1 Executa-se o algoritmo K-means diversas vezes com diferentes números de clusteres. Calcula-se o SSE global de cada clusterização obtida Plota-se os valores de SSE (eixo y) por número de clusteres (eixo x) O número ideal de clusteres corresponde a um momento onde se atinge um mínimo no gráfico e logo em seguida há uma estabilização.

Exemplo : número de clusters = 10 Ponto minimo antes da estabilização

Determinar o número ideal de clusteres Técnica 2 Executa-se o algoritmo K-means diversas vezes com diferentes números de clusteres. Calcula-se o coeficiente de silhueta global de cada clusterização obtida. Plota-se os valores dos coeficientes de silhueta (eixo y) por número de clusteres (eixo x) O número ideal de clusteres corresponde a um momento onde se atinge um pico no gráfico.

Exemplo: Número de Clusters = 10 Ponto de Pico

Determinar a tendência de clusteres nos dados Técnica óbvia de se testar a tendência dos dados Aplique um algoritmo de clusterização Avalie cada um dos clusteres obtidos Caso pelo menos um dos clusteres é de boa qualidade boa coesão e boa separação dos demais Conclua que os dados apresentam alguma tendência de clusteres. Problema: os dados podem apresentar clusteres de um tipo não detectável pelo algoritmo aplicado.

Determinar a tendência de clusteres nos dados Outra técnica Aplicar diversos algoritmos de clusterização que buscam clusteres de naturezas distintas: baseados em protótipos, em densidade, em grafos Se nenhum algoritmo apresenta clusteres com boa coesão e boa separação pode-se concluir que os dados não apresentam tendência de clusteres.

Estatística de Hopkins Medida que permite verificar se um conjunto de dados tem tendência de clusteres sem efetuar nenhuma clusterização G = p objetos randomicamente distribuídos no espaço dos dados (não necessariamente são objetos do BD !) G = {g1, g2, ... , gp} A = uma amostragem de p objetos pertencentes ao banco de dados. A = {a1, a2, ..., ap}

Estatistica de Hopkins 2 2 1,5 1 1 0,5 1,5 0,5 Para cada objeto calcula-se a distância a seu vizinho mais próximo da base de dados original

Estatistica de Hopkins Σ i=1 ui Valores de distâncias minimas associados a objetos de A (“reais” do banco de dados) H = p p Σ i=1 ui Σ i=1 wi + Valores de distâncias minimas associados a objetos de G (artificialmente gerados)

Estatistica de Hopkins H próximo de 1 : dados clusterizáveis wi são pequenos, ui não necessariamente pequenos H próximo de 0 : uniformemente distribuídos Se os dados são regularmente espaçados, os wi tendem a ser grandes. H em torno de 0,5 : randomicamente distribuídos Indica que a distribuição dos ui e dos wis são similares,

Exercício 4 Considerar o conjunto de dados do Ex. 2 Calcule a estatística de Hopkins destes dados e conclua se estes dados apresentam alguma estrutura de clusteres ou são aleatórios

Exemplo: dados não clusterizáveis Número de amostras = 20 Número de experimentos = 100 H = 0,56 Dados são randômicos

Clusterização utilizando DBSCAN Outlier !! Outlier !! Outlier !!

Clusterização utilizando K-Means

Exemplo de dados clusterizáveis Número de amostras = 20 Número de experimentos = 100 H = 0,95

Exercício 5 Calcule a estatística de Hopkins para estes 1 1,9 7,3 2 3,4 7,5 3 2.5 6,8 4 1,5 6,5 5 3,5 6,4 6 2,2 5,8 7 5,2 8 3,6 9 3,2 10 4,5 2,4 11 2,6 12 1.9 13 2,7 14 15 0,8 16 1,6 1,8 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Calcule a estatística de Hopkins para estes dados para amostragens de 6 elementos, fazendo 10 experimentos . Conclua se os dados são clusterizáveis, randômicos ou uniform. distribuídos.

Exercício 6 Achar 3 clusters utilizando o k-means 1 1,9 7,3 2 3,4 7,5 3 2.5 6,8 4 1,5 6,5 5 3,5 6,4 6 2,2 5,8 7 5,2 8 3,6 9 3,2 10 4,5 2,4 11 2,6 12 1.9 13 2,7 14 15 0,8 16 1,6 1,8 17 1 2 3 4 5 6 7 8 9 12 13 11 14 15 10 16 17 Achar 3 clusters utilizando o k-means 1ª escolha das sementes: pontos 3, 9, 14 2a escolha das semestes: pontos 6,10,15

Exercício 7 Calcular o coeficiente de silhueta global de cada uma das clusterizações. Analise os resultados.

Exercícios 8 e 9 Exercicio 8: Aplique o algoritmo CURE nos dados do exercício 5 para encontrar 3 clusters. a) Faça 2 escolhas distintas para cada um dos parâmetros α e N (= número de representantes de cada cluster). b) Calcule o coeficiente de silhueta global de cada uma das clusterizações e analise o resultado. Exercício 9: Aplique o algoritmo DBSCAN nos dados do exercício 5. a) Faça 2 escolhas distintas para cada um dos 2 parâmetros do algoritmo: Eps, MinPts b) Calcule o coeficiente de silhueta global de cada uma das clusterizações e analise o resultado.

Referências P-N Tan, M. Steinbach, V. Kumar: Introduction to Data Mining, 2006. A. K. Jain and R. C. Dubes Algorithms for Clustering Data. Prentice Hall Advanced Reference Series. March 1988 Livro disponível em http://www.cse.msu.edu/~jain/Clustering_Jain_Dubes.pdf Capitulo 5: Aplicações de Clusterização em Processamento de Imagens

Data Clustering: A Review Jain et al. 1999 – ACM Computing Surveys, Vol. 31, n. 3, Sep. 1999

Aplicações – Survey Jain et al. 1999