Método Hierárquico Aglomerativo de Clusterização Algoritmo CURE

Slides:



Advertisements
Apresentações semelhantes
GEOMETRIA DESCRITIVA A
Advertisements

GEOMETRIA DESCRITIVA A
GEOMETRIA DESCRITIVA A
Gustavo Sant´Anna Ferreira Rodrigo Ribeiro de Souza
Paulo Sérgio Rodrigues PEL205
II Projeto de PG Thiago Augusto Souza do Nascimento.
Geometria Computacional Fecho Convexo II
Sistemas Operacionais
Teoria dos Grafos – Aula 2
AULA 5 PGC Sistemas de Banco de Dados Profa. Sandra de Amo
Experiments with Clustering as a Software Remodularization Method Nicolas Anquetil and Timothy C. Lethbridge University of Ottawa, Canada WCRE 1999:
Otimização de Consultas em SQL Estimativas de Custos
MÉTODOS QUANTITATIVOS
Métodos para representação de estruturas hierárquicas
Recuperação de dados por Conteúdo
Algoritmos e Estruturas de Dados Eng. Elétrica – CEFETES Prof. MSc. Luis Eduardo 2006/2.
Cálculo de Custos de Operações I/O – Arquivos Ordenados
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
Gerenciamento de Arquivos, Páginas e Registros RESUMO DA AULA 3 Profa. Sandra de Amo GBC053 – BCC
Generalização da Técnica Levelwise para Mineração de Padrões Sandra de Amo.
Aprendem a partir de seus vizinhos AULA 9 DATA MINING Sandra de Amo
Gerenciamento de Arquivos, Páginas e Registros
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.
Datalog Recursivo AULA 6 PGC Sistemas de Banco de Dados
Introdução aos Métodos de Acesso AULA 7 – Parte II Profa. Sandra de Amo GBC053 – BCC
Avaliação de Clusteres
Resolução.
Formação de agrupamentos: conceitos básicos e algoritmos prof
Geometria Computacional Fecho Convexo
Uma aproximação no meio dos nossos dois extremos Motivação: – Se nós não sabemos o valor do vem-1, o que podemos fazer? – Quando nós podemos sempre gerar.
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
Ordenação Facilitar e aumentar a eficiência das operações de pesquisa sobre esses dados Pode ser crescente ou decrescente A seqüência de entrada, normalmente,
Ordenação Facilitar e aumentar a eficiência das operações de pesquisa sobre esses dados Pode ser crescente ou decrescente A seqüência de entrada, normalmente,
A FAST APRIORI implementation
Apresentação: Léia Michelle de Souza
Indexação e Hashing Muitas consultas referenciam apenas uma pequena porção dos registros em uma tabela. Portanto necessitamos ser capaz de localizar estes.
Agrupamento de padrões Métodos hierárquicos
List Ranking: Um Estudo Experimental
INF 1771 – Inteligência Artificial
Suellen Silva de Almeida Victor Hugo Cunha de Melo Jean Carlos Mendes
Insertion Sort.
Escoamento em rios Modelo Muskingum
Alexandre Xavier Falcão & David Menotti
CLUSTERING: UMA REVISÃO AOS ALGORITMOS BÁSICOS
Aprendizagem de Máquina - Agrupamento
Agrupamentos / Clustering
Caracterização de consumos
K-Means / Clustering.
K-NN Prof. Dr. Rogério Vargas.
6/7/2014 Mestrado em Ciencia da Computacao Otimização da Técnica Apriori Sandra de Amo Data Mining AULA 4.
Arquivos Estruturados por Ordenação– Custos I/O AULA 5 Profa. Sandra de Amo GBC053 – BCC.
Aula 03 – BCC202 Análise de Algoritmos (Parte 1) Túlio Toffolo www
E NHANCED S ELF -O RGANIZING I NCREMENTAL N EURAL N ETWORK FOR O NLINE U NSUPERVISED L EARNING Cesar Lima José Francisco Maíra Nascimento.
Capacitor É um componente constituído por dois condutores separados por um isolante: os condutores são chamados armaduras (ou placas) do capacitor e o.
Data Mining Técnicas não supervisionadas
Avaliação de Clusteres Parte II
KNN – K Nearest Neighbor (K Vizinhos mais Próximos)
Disciplina Análise de Algoritmos BCC-UFU Profa. Sandra de Amo
Sistemas de Recomendação – Filtragem Colaborativa
Análise de Agrupamentos Marcílio Souto DIMAp/UFRN.
Algoritmos de Agrupamento (Clustering): Métodos Hierárquicos e k-médias Marcílio C. P. de Souto DIMAp/UFRN.
Aprendizado não-supervisionado
Recuperação Inteligente de Informação
Clustering Algorithms for Gene Expression Analysis Pablo Viana Fagner Nascimento.
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
Text Clustering Anaury Norran Italo Lima Robertson Novelino Tomás Almeida.
Transcrição da apresentação:

Método Hierárquico Aglomerativo de Clusterização Algoritmo CURE Sandra de Amo AULA 21 DATA MINING

Clustering Using REpresentatives (CURE) No início, cada amostra é um cluster. número de clusters = número de amostras Calcula-se distância entre os clusters. Clusters próximos são reunidos num único cluster. Repete-se o processo de cálculo da distância entre clusters e reunião de clusters próximos. O processo termina quando se atinge o número pré-fixado de clusters.

Como medir a distância entre clusteres Enfoque baseado em centróide Distância entre clusteres C1 e C2 = dmean(C1,C2) = d(m1,m2) mi = centróide de Ci Enfoque MST (Minimum Spanning Tree) dmin(C1,C2) = min d(p,q) p ɛ C1, q ɛ C2

Como medir a distância entre clusteres Média dmedia(C1,C2) = 1 Σ Σ d(p,q) ni nj ni = tamanho do cluster Ci Max d(C1,C2) = max d(p,q) p ɛ C1 q ɛ C2 p ɛ C1, q ɛ C2

Distância entre Clusters Centróides MST Média MAX

Cálculo da Distância em CURE Política mista: centróides e MST Determina um número N de objetos em cada cluster que são mais representativos do cluster. Elementos bem distribuídos Representam zonas distintas do cluster Calcula a mínima distância entre estes elementos mais representativos.

Distância entre Clusters CURE Elementos representativos do Cluster C2 Elementos representativos do Cluster C1

Cálculo da Distância entre Clusters CURE + + Parâmetros de Entrada Coeficiente de Retração Número de representantes escolhidos em cada cluster

Parâmetros de Ajuste Representantes : capturam o formato do cluster Retração em direção do centro de gravidade: Diminuir a influência de ruídos Coeficientes de retração : Valores pequenos : favorecem clusters de formato não convexo, menos compacto Valores grandes : aproximam os representantes do centro do cluster, favorecem clusters convexos, de forma esférica.

Algoritmo CURE Entrada Saída Banco de Dados BD K = número de clusters α = fator de retração ( 0 ≤ α < 1) N = número de representantes em cada cluster Saída K clusters disjuntos

Algoritmo CURE Duas estruturas de dados Uma para armazenar os clusters a cada iteração (heap sequencial) Uma para armazenar os representantes dos clusters a cada iteração (kd-tree – estrutura de dados utilizada para armazenamento e consulta eficientes de dados multidimensionais)

Apresentação simplificada Q = arquivo para armazenar os clusters id1 u1 2 u = cluster = {a1, a2, ..., an} u.mp = cluster mais próximo de u id2 u2 2 u3 3 id3 id4 u4 4 u2 = u1.mp clusters d(u, u.mp) Arquivo Q ordenado pela terceira coluna T = arquivo para armazenar os representantes de cada cluster id1 {p1,p2,p3} u1. rep id2 {q1,q2,q3} u2. rep id3 {w1,w2,w3} u3. rep id4 {v1,v2,v3} u4. rep

Criação dos Clusteres ui = {pi}, onde BD = {p1,...,pm} Repeat Inicialmente cada objeto é um cluster Clusteres são ordenados em Q segundo a menor distância a seus clusteres mais próximos. Arquivo T contém m registros, cada registro é um conjunto unitário {pi}. Repeat Considera-se o primeiro cluster u em Q e v = u. mp Retira u e v de Q w = u U v ; w.rep = representantes de w Remove de T os registros u.rep e v.rep Calcula w.mp Atualiza a terceira coluna do arquivo Q Insere em Q o cluster w na posição adequada e w.rep em T Until Q contém k clusteres

Exemplo: cálculo de w.rep Cluster v Cluster u p1 q1 N = 3 α = 0.5 q2 p2 p3 Centro de gravidade de w = u U v w = {p1, p2, p3, q1, q2} Repr. 1 = o que está mais afastado do centro = q1 Repr. 2 = o que está mais afastado de q1 = p2 Repr. 3 = o que está mais afastado de {q1, p2} d(p1,{q1,p2}) = min {d(p1,q1), d(p1,p2)} = d(p1,p2) d(p2,{q1,p2}) = 0 d(p3,{q1,p2}) = d(p3,p2) d(q1,{q1,p2}) = 0 d(q2,{q1,p2}) = d(q1,q2)

Exemplo: cálculo de w.rep Cluster v Cluster u p1 q1 N = 3 N = 3 α = 0.5 q2 p2 p3 Centro de gravidade de w = u U v w = {p1, p2, p3, q1, q2} w.rep = representantes do cluster w

Cálculo de w.mp (mais próximo de w) Considera-se x = o primeiro cluster de Q – {u,v} Fazemos w.mp = x Para cada y em Q – {u,v} 3.1 Se d(y,w) < d(w,w.mp) então w.mp:= y 3.2 Se y.mp = u ou v 3.2.1 Se d(y,y.mp) < d(y,w) 3.2.1.1 Existe z em Q – {u,v}tal que d(y, z) < d(y,w) ? Sim : y.mp := z Não : y.mp := w 3.2.2 Se d(y,y.mp) ≥ d(y,w) y.mp:= w 3.3 Se y.mp é diferente de u e v 3.3.1 Se d(y,y.mp) > d(y, w) Para cada cluster y atualiza seu cluster mais próximo

Vantagens e Desvantagens CURE detecta clusters de formato arbitrário K-means detecta clusters de formato esférico CURE é robusto quanto a outliers Desvantagem de CURE : complexidade O(n2), n = tamanho do banco de dados

Referência S. Guha, R. Rastogi, K. Shim: CURE – An Efficient Clustering Algorithm for Large Databases. ACM/SIGMOD 1998.