Comitês (Ensembles) de Agrupamentos Marcílio C. P. de Souto DIMAp/UFRN.

Slides:



Advertisements
Apresentações semelhantes
Algoritmos de Caminho Mínimo em Grafos
Advertisements

Cortes (cut-sets)‏ 1.
Grafos Orientados (digrafos)
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Algoritmos em Grafos.
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Agrupamentos Baseados em Probabilidade Marcílio Souto DIMAp/UFRN.
Experiments with Clustering as a Software Remodularization Method Nicolas Anquetil and Timothy C. Lethbridge University of Ottawa, Canada WCRE 1999:
1 Seleção de Atributos Marcílio Souto DIMAp/UFRN.
Geometria Computacional Galeria de Arte
Análise de Agrupamentos (Clusters) Marcílio C. P. de Souto DIMAp/UFRN.
Análise de Decisão Aplicada a Gerência Empresarial – UVA Grafos - V
ANÁLISE DISCRIMINANTE
Solved Exercises 1. Finding the Peak. Let A= a1,…,an be a sequence of n numbers with the following property: there is p in {1,…,n} for which (i) the.
Métodos para representação de estruturas hierárquicas
1 Domínios Finitos A eficiência das programas em domínios finitos (incluindo booleanos) podem ainda ser melhoradas pelo uso de Algoritmos de Propagação.
Sinais e Sistemas – Capítulo 3
Relações Adriano Joaquim de O Cruz ©2002 NCE/UFRJ
Capítulo 4: Estado Global
Árvores.
Geometria Computacional Fecho Convexo
2002 LCG/UFRJ. All rights reserved. 1 Localização no Plano Claudio Esperança Paulo Roma.
DIM102 1 Curvas e Superfícies 35T56 – Sala 3F4 Bruno Motta de Carvalho DIMAp – Sala 15 – Ramal 227.
Dárlinton B. Feres Carvalho
Reconhecimento de Padrões Dissimilaridade
Árvore Geradora de Peso Mínimo
Support Vector Machines (SVM)
Carolina Fonseca Neumar Ribeiro
Problemas NP-completo
INF 1771 – Inteligência Artificial
Buscas em Grafos Prof. André Renato 1º Semestre/2012
Grafos Msc. Cintia Carvalho Oliveira Doutoranda em Computação – UFU
Detecção de Comunidades
Algoritmos em Grafos Conceitos principais Prof. André Renato
Inteligência Artificial
Alexandre Xavier Falcão & David Menotti
CLUSTERING: UMA REVISÃO AOS ALGORITMOS BÁSICOS
Aprendizagem de Máquina - Agrupamento
D ETECÇÃO DE C OMUNIDADES Ricardo Prudêncio. L INK M INING - T AREFAS Relacionadas a Objetos Relacionadas a Arestas Relacionadas a Grafos Ranking de Nós.
R ESOLUÇÃO DE E NTIDADES Ricardo Prudêncio. L INK M INING - T AREFAS Relacionadas a Objetos Relacionadas a Arestas Relacionadas a Grafos Ranking de Nós.
Aprendizado Baseado em Instâncias – Algoritmo k-NN
Matemática para Economia III
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
Tópicos Avançados de Base de Dados
K-Means / Clustering.
Marcus Vinicius Silva Soares Orientador: Luiz Merschmann Outubro / 2010.
Segmentação de Imagens
O problema do emparelhamento máximo
Introdução e Busca Cega
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
Introdução à Computação Gráfica Curvas
Aprendizagem de Máquina - Agrupamento Prof. Sérgio Queiroz Slides inicialmente preparados pelo Prof. Ricardo Prudêncio, aos quais foram feitas modificações.
Reconhecimento e Verificação de Assinaturas
BCC 101 – Matemática Discreta I
José Augusto Amgarten Quitzau
Análise de Agrupamentos
Busca Combinatorial e Métodos de Heurística
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
Validação de Agrupamentos
Problemas NP-completos e Programação Dinâmica
Algoritmos FPT para o Problema da k-Cobertura por Vértices
Geometria Computacional Fecho Convexo
Exercícios de Fluxo em Redes
Mineração de Grafos e Predição de Links
CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.
Marcos Corrêa Neves Gilberto Câmara Renato M. Assunção
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 12 Aprendizado não Supervisionado Mapas auto-organizáveis Max Pereira.
Transcrição da apresentação:

Comitês (Ensembles) de Agrupamentos Marcílio C. P. de Souto DIMAp/UFRN

Motivação Um dos maiores desafios para os atuais algoritmos de agrupamento (clustering) é a robustez das soluções encontradas Além disso, não se pode afirmar que há uma categorizarão correta única A aplicação de mais de uma técnica pode trazer diferentes relacionamentos entre os dados No contexto de algoritmos supervisionados, isto levou ao desenvolvimento do conceito de sistemas multi-classificadores (comitês ou ensembles) Apenas recentemente técnicas de comitês vêm sendo aplicadas a algoritmos de agrupamento

Comitês de Agrupamentos - Modelo

Seja X um conjunto de n objetos em um espaço d-dimensional Suponha que seja dado um conjunto de partições II = {  1,  2,...,  h } de X Cada partição que faz parte de II é um conjunto de grupos disjuntos, exaustivos e não-vazios π i = {L i 1, L i 2,...,L i k(i) }, X = L i 1 ,...,  L i k(i), para todo π i, em que K(i) é o número de grupos da i-ésima partição Encontrar uma partição consenso σ = {C 1,..,C K } de X, dadas as partições em Π (comitê/ensemble de partições ou conjunto de partições base), tal que ela represente Π de forma ótima (segundo algum critério)

Comitês de Agrupamentos - Modelo Algoritmo Base Que algoritmo(s) de agrupamento aplicar para construir as partições base? e.g., k-médias, EM, hierárquico com ligação média,... Estratégia de Geração Quantas partições base gerar? Como assegurar diversidade entre as partições base? Estratégia de Integração (Função Consenso) Como as partições base devem ser combinadas?

Taxonomia: Geração e Consenso Co-associação Votação Hipergrafos Mistura (EM) CSPA HGPA MCLA Single Comp. Avg. Link Teoria da Informação Outros Diferentes Inic. do mesmo Algoritmo Diferentes Subconjuntos dos Dados Diferentes Subconjuntos dos Atributos Projeções Subespaço Algoritmos Diferentes Função Consenso Estratégia de Geração

Função Consenso: Matriz de Co- Associação A similaridade entre os objetos (instâncias) pode ser estimada a partir do número de grupos compartilhados por dois objetos em todas as partições base Suposição: instâncias que pertencem a um grupo “natural” provavelmente deveriam ser colocadas no mesmo grupos em diferentes partições Esta definição de similaridade expressa a força de co-associação de cada par de objetos por: C(x i,x j )=n ij /h, em que n ij é o número de vezes que as instâncias x i e x j foram atribuídas ao mesmo grupo entre as h partições base A matriz gerada pode ser usada como entrada para qualquer método de agrupamento baseado em matriz de similaridade (Jain & Fred, 2002)

Co-associação: Exemplo (1/4) A Partições Base BCDEABCDEABCDE h=3 (três partições)

Co-associação: Exemplo (2/4) A Partições Base -3/31/300E 3/3-1/300D -2/3 C 00 -3/3B 002/33/3-A EDCBA BCDE Matriz de Co-associação ABCDEABCDE Objetos D and E ocorreram no mesmo grupo 3 vezes h=3 (três partições)

Co-associação: Exemplo (3/4) A Partições Base -3/31/300E 3/3-1/300D -2/3 C 00 -3/3B 002/33/3-A EDCBA BCDE Matriz de Co-associação ABCDEABCDE h=3 (três partições) Partição Final Meta-cluster A B C D E

Co-associação: Exemplo (4/4) Que algoritmo usar para o processo de “meta- agrupamento”? Método Hierárquico Ligação Simples (mais comum) Ligação Média Ligação Completa Métodos baseados em particionamento de grafos Outros...

Exemplo II Suponha que uma base de dados composta de sete objetos X={x 1, x 2,..., x 7 } seja aplicada a quatro algoritmos de agrupamentos diferentes, gerando as quatro partições seguintes: A partir dessas partições, encontrar uma nova partição σ (partição consenso) que as representem de forma ótima

Exemplo II: Partições

Exemplo II: Matriz de Co-Associação

Exemplo II: Resultado da Aplicação do Método Hierárquico com Ligação Simples a Matriz de Co- Associação x 6 x 7 x 4 x 5 x 3 x 1 x 2

Exemplo II: Corte no Dendograma a fim de Gerar a Partição Consenso x 6 x 7 x 4 x 5 x 3 x 1 x 2

Exemplo II: Corte no Dendograma a fim de Gerar a Partição Consenso x 6 x 7 x 4 x 5 x 3 x 1 x 2

Exemplo II: Partições Base versus Partição Consenso (gerada a partir da matriz de co-associação)

Função Consenso:Re-Rotulagem & Votação No aprendizado supervisionado, há um conjunto fixo de rótulos (classes) que são atribuídos às instâncias É possível comparar para cada instância x i os resultados de vários classificadores (os rótulos atribuídos) e aplicar uma votação entre estes resultados para definir o resultado final No entanto, as coisas não tão simples no contexto não- supervisionado Diferentes execuções de um algoritmo de agrupamento pode resultar em diferentes grupos Que grupo de uma execução corresponde ao grupo de uma outra? (Problema de Correspondência dos Rótulos)

Re-Rotulagem & Votação: Problema de Correspondência dos Rótulos Suponha que tenhamos os resultados de várias execuções i de algoritmos de agrupamento que particionam um conjunto de dados X em três grupos C ij (j=1,2,3) Quando combinamos as duas primeiras execuções temos que decidir: Quais dos grupos C 11, C 12 e C 13 da primeira execução é similar a quais grupos C 21, C 22 e C 23 da segunda execução, caso exista alguma similaridade Observe que, ao contrário do aprendizado supervisionado, os números 1, 2 e 3 representando os rótulos dos grupos são atribuídos arbitrariamente

Re-Rotulagem & Votação: Problema de Correspondência dos Rótulos Se combinamos mais do que duas execuções, o problema se torna ainda mais complexo A relação de similaridade entre grupos não é transitiva Exemplo: o grupos C 11 da primeira execução pode ser similar ao grupo C 22 da segunda que pode ser similar ao grupo C 31 da terceira, e assim por diante No entanto, isto não significa que C 31 seja similar a C 11 Não há nenhuma forma direta de resolver o Problema de Correspondência dos Rótulos Para uma partição de K grupos, há K! permutação dos rótulos

Re-Rotulagem: Algoritmo Heurística para a rotulagem consistente Cada partição base (  i ) é re-rotulada a fim de maximizar sua concordância com alguma partição de referência dada (  ) Re-Rotulagem( ,  i ) 1) Construa a “matriz de confusão” entre  e  i 2) Encontre o maior valor dessa matriz 3) Associe os rótulos dois grupos que correspondem a este valor máximo 4) Remova este dois grupos 5) Com a matriz reduzida, volte ao passo 2 No primeiro passo do algoritmo, uma das partições base é usada com partição de referência

Re-Rotulagem & Votação Suponha que temos h partições  i do mesmo conjunto de dados X. Denote por  i o resultado da votação após os primeiros i passos (  =  h ) Algoritmo de Votação 1)  1 =  1 2) for i = 2 to h a)  ’ i = Re-Rotulagem(  i-1,  i ) b) Votação  i = (i-1/i)*  i-1 + (1/i)*  ’ i (Weingessel, Dimitriadou & Hornik, 2003)

Exemplo II Suponha que uma base de dados composta de sete objetos X={x 1, x 2,..., x 7 } seja aplicada a quatro algoritmos de agrupamentos diferentes, gerando as quatro partições seguintes: A partir dessas partições, encontrar uma nova partição σ (partição consenso) que as representem de forma ótima

Exemplo II: Partições

Exemplo II: Re-Rotulagem & Votação (1/10)

Exemplo II: Re-Rotulagem & Votação (2/10)  1 =  1

Exemplo II: Re-Rotulagem & Votação (3/10) Re-rotulagem:  2 em relação a  1

Exemplo II: Re-Rotulagem & Votação (4/10) Votação:  (2) = 1/2*  (1) + 1/2*  2 _re-rotoluda +

Exemplo II: Re-Rotulagem & Votação (5/10) Re-rotulagem:  3 em relação a  2

Exemplo II: Re-Rotulagem & Votação (6/10) Votação:  (3) = 2/3*  (2) + 1/3*  3 _re-rotoluda +

Exemplo II: Re-Rotulagem & Votação (7/10) Re-rotulagem:  4 em relação a  3

Exemplo II: Re-Rotulagem & Votação (8/10) Votação:  (4) = 3/4*  (3) + 1/4*  4 _re-rotoluda +

Exemplo II: Re-Rotulagem & Votação (9/10) Partição consenso final (fuzzy)  :Partição consenso final (hard)  :

Exemplo II: Re-Rotulagem & Votação (10/10) Partição consenso final (hard)  :

Função Consenso: Particionamento de (Hiper)Grafos Strehl & Ghosh (2002) propuseram três heurísticas diferentes para a construção da partição consenso Cluster-based Similarity Paritioning Algorithm (CSPA) HyperGraph-Partitioning Algorithm (HGPA) Meta-Clustering Algorithm (MCLA) Esses algoritmos abordam o problema primeiro transformando o conjunto de partições base em um hipergrafo The output of the method is the consensus partition, found by the consensus functions, with the maximum average Normalized Mutual Information em relação as partições base (Strehl & Ghosh 2002)

Função Consenso: CSPA Idêntica a abordagem de Matriz de Co-Associação C(x i,x j )=n ij /h, em que n ij é o número de vezes que as instâncias x i e x j foram atribuídas ao mesmo grupo entre as h partições base A matriz gerada é usada para a construção de um Grafo de Similaridade O método usado para particionar o grafo em k componentes é o METIS (Multilevel graph partitioning algorithm), desenvolvido por Karypis & Kumar (1998) Complexidade de tempo e espaço quadrada no número de instâncias

Função Consenso: HGPA Transforme o conjunto de partições base em um hipergrafo: cada grupo será um hiper-aresta

Hipergrafo x1 x4 x3 x2 x5 x6x7

Função Consenso: HGPA O problema de encontrar a partição consenso é formulado como o particionamento do hipergrafo pelo corte do número mínimo de hiper-arestas Assume-se que todos os vértices, como também as hiper-arestas, possuem o mesmo peso O algoritmo usado para efetuar o particionamento faz parte do pacote HMETIS, que é uma extensão do METIS para hipergrafos (Karypis & Kumar, 1998)

HGPA: Exemplo

A partição consenso: {{x 1, x 2, x 3 },{x 4, x 5 },{x 6, x 7 }} Possui o corte mínimo de hiper-arestas de 4 É tão balanceada quanto possível para três grupos de sete objetos

Função Consenso: MCLA Como no caso do HGPA, cada grupo é representado como uma hiper-aresta A idéia do MCLA é: Agrupar e collapsar hiper-arestas (grupos) relacionadas Atribuição de cada instância a hiper-aresta colapsada a qual ele pertença mais fortemente A determinação das hiper-arestas que são consideradas relacionadas para o propósito de junção é feita por meio de um agrupamento baseado em grafos das hiper-arestas Cada grupo de hiper-arestas é chamado de meta-grupo A junção reduz o número de hiper-arestas para k

Função Consenso: MCLA Construa o Meta-Grafo Associe cada grupo (as hiper-aresta h do hipergrafo anterior) das partições base a um vértice de um grafo não direcionado (meta grafo) Os pesos das arestas são proporcionais a similaridade ente os vértices (grupos) Uma medida de similaridade poderia ser o Índice de Jaccard Agrupe as Hiper-arestas (Grupos) Particione o meta grafo em k meta-grupos balanceados (METIS) Colapse os Meta-Grupos Para cada meta-grupo, compute a freqüência de cada um das instância (vetor de associação) Compita por objetos Um objeto é atribuído ao meta-grupo com o valor mais alta no vetor de associação

Bibliografia A. Strehl & J. Ghosh (2002). Cluster Ensembles - A knowledge Reuse Framework for Combining Multiple Partitions. Journal of Machine Learning Research, vol. 3, pp E. Dimitriadou, A. Weingessel & K. Hornik (2003). A cluster ensembles framework. in Third International Conference on Hybrid Intelligent Systems (HIS), pp A. L. N. Fred & A. K. Jain (2002). Data clustering using evidence accumulation. in 16th International Conference on Pattern Recognition, pp G. Karypis & V. Kumar (1998). A fast and high quality multilevel scheme for partitioning irregular graphs. SIAM Journal on Scientific Computing, 20(1), pp