SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Incorporating SAT Solvers into Hierarchical
Clustering Algorithms - An Efficient and Flexible
Approach
Nathan Siegle Hartmann
Núcleo Interinstitucional de Linguística Computacional (NILC),
Instituto de Ciências Matemáticas e de Computação (ICMC),
Universidade de São Paulo (USP)

19 de novembro de 2013

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

1/37
Observação

Material desenvolvido com livre interpretação do paper de Gilpin
and Davidson (2011), publicado na 17th ACM SIGKDD
International Conference on Knowledge Discovery and Data Mining.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

2/37
Introdução
Contextualização e Motivação
Proposta
Modelagem
Regras
Modelando o dendograma
Modelando restrições do usuário
Algoritmo e Experimentos
Considerações Finais

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

3/37
Introdução
Contextualização e Motivação
Proposta
Modelagem
Regras
Modelando o dendograma
Modelando restrições do usuário
Algoritmo e Experimentos
Considerações Finais

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

4/37
Contextualização e Motivação

Agrupamento com restrições é o agrupamento "clássico",
porém insere restrições na formação dos grupos.
Estudos sobre agrupamento restrito se originaram a uma
década atrás.
Trabalhos comumente utilizam apenas regras simples
(Must-Link, Cannot-Link e Must-Link-Before).
2 grandes gaps foram identificados na área.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

5/37
1o Gap da área
Pouco estudo sobre agrupamento hierárquico
utilizando restrições.
Apesar de
Mais de 50% das aplicações de agrupamento serem
hierárquicas.
Agrupamento hierárquico apresenta um sumário
compreensivo dos dados.
Agrupamento hierárquico pode modelar relações temporais.

O uso de agrupamento hierárquico ser bom em áreas com
domínio conhecido por especialistas.
Especialistas podem especificar diversas restrições para
modelar os grupos de interesse.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

6/37
2o Gap da área

Pouco estudo sobre linguagens de programação para
modelagem dessas restrições.
Apesar de
Modelar restrições com linguagens procedurais ser um grande
limitante
Design de algoritmos para solucionar restrições.

Modelar restrições com linguagens declarativas parecer mais
conveniente
Modelagem das restrições

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

7/37
Proposta

Os autores propõe a utilização de
Formulação de restrições em lógica de primeira ordem como
cláusulas de Horn.
Inconsistências são verificadas em tempo polinomial.

Resolução de restrições como um problema SAT
(satisfiability )
Cláusulas de Horn fazem com que problemas SAT deixem de
ser NP Completos.

Se todas as restrições são satisfeitas, o modelo pode ser
interprestado como um dendograma válido.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

8/37
Introdução
Contextualização e Motivação
Proposta
Modelagem
Regras
Modelando o dendograma
Modelando restrições do usuário
Algoritmo e Experimentos
Considerações Finais

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

9/37
Regras

Definição 1. together (x,y,i).
Verdadeiro se x e y estão no mesmo grupo no nível i
Todos os tipos de restrições podem ser modelados com
together e expressos com cláusulas de Horn.
Pode-se definir um dendograma utilizando
A relação together.
As seguintes propriedades sejam satisfeitas:
Reflexividade, Transitividade, Simetria e Inter-Level link.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

10/37
Propriedades

Definição 2. Propriedade de Reflexividade.
∀i, x[together (x, x, i)]
Toda instancia está no mesmo grupo que ela mesma.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

11/37
Propriedades

Definição 3. Propriedade de Simetria.
∀i, x, y [together (x, y , i) → together (y , x, i)]
Se x está no mesmo grupo que y em um nível i, então y está no
mesmo grupo que x no mesmo nível i.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

12/37
Propriedades

Definição 4. Propriedade de Transitividade.
∀i, x, y , z[together (x, y , i)
together (x, z, i)]

together (y , z, i) →

Se em um nível i, x está no mesmo grupo que y e esse está no
mesmo grupo que z, então x está no mesmo grupo que z nesse
nível i.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

13/37
Propriedades

Definição 5. Propriedade de Inter-Level link.
∀i, x, y [together (x, y , i) → together (x, y , i + 1)]
Se x e y estão no mesmo grupo em um nível i, eles permanecerão
no mesmo grupo em todos os níveis subsequentes da hierarquia.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

14/37
Propriedades

Definição 6. Propriedade de um Dendograma
Completo.
∀x, y [together (x, y , top)]
Para um dendograma ser completo, o último nível de sua hierarquia
(top) deve conter apenas um grupo com todos os elementos.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

15/37
Modelando o Dendograma

Aplicando os passos a seguir, todo modelo reconhecido será
interpretado como um dendograma completo.
1

Aplica a relação together para refletir um grupo em cada nível
da hierarquia.
Requer que as propriedades de transitividade, simetria e
reflexividade sejam satisfeitas.

2

Aplica a relação Inter-Level link para cada nível da hierarquia.

3

Assegurar um dendograma completo pela Definição 6.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

16/37
Modelando restrições do usuário

Muitos tipos de restrições podem ser inseridas pelo usuário
utilizando apenas cláusulas de Horn.
Restrição de instância.
Restrição para instâncias em um nível específico.
Restrições Must-Link Before.
Restrições em dois grupos: Globais e Locais.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

17/37
Restrições Globais

Restrições Cannot-Link e Must-Link
Originalmente formuladas para agrupamento particional.
Cada nível de um agrupamento hierárquico pode ser
interpretado como uma partição.
Logo essas restrições devem obedecer a todos os níveis da
hierarquia.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

18/37
Restrições Globais

Observação 1. Restrições Globais Must/Cannot-Link.
ML(a, b) ≡ ∀i[together (a, b, i)]
CL(a, b) ≡ ∀i[¬together (a, b, i)]

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

19/37
Restrições Globais

Restrição Must-Link-Before
Originalmente formuladas para agrupamento hierarquico.
Especifica que duas instâncias a e b são mais similares entre si
do que a uma terceira instância c.
Instâncias a e b estão no mesmo grupo antes de c ser inserido.
Se a, b e c estão no mesmo grupo, então a e b já estavam no
mesmo grupo em um nível anterior da hierarquia.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

20/37
Restrições Globais

Observação 2. Restrição Global Must-Link-Before.
MLB(a, b, c) ≡
∀i[together (a, c, i + 1) → together (a, b, i)]
∀i[together (b, c, i + 1) → together (a, b, i)]
¬together (b, c, 1)
¬together (a, c, 1)

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

21/37
Restrições Locais

Atribuir restrições para níveis específicos da hierarquia.
Não são comumente utilizadas
Requer conhecimento de domínio sobre a relação de duas
instâncias em um dado nível da hierarquia.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

22/37
Outras restrições
Observação 3. Must-Link-Before d .
must-link-befored (a, b, c) ≡
∀i[together (a, c, i + d ) → together (a, b, i)]
∀i[together (b, c, i + d ) → together (a, b, i)]
¬together (b, c, 1)
...
¬together (b, c, d )
¬together (a, c, 1)
...
¬together (a, c, d )

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

23/37
Introdução
Contextualização e Motivação
Proposta
Modelagem
Regras
Modelando o dendograma
Modelando restrições do usuário
Algoritmo e Experimentos
Considerações Finais

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

24/37
Algoritmo Genérico para solução de restrições

2
Complexidade O(ln + n2 ), ln = literais negativos, n = instâncias
Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

25/37
Experimentos

Questões de interesse
A incorporação de restrições em algoritmos hierárquicos
produz resultados indesejados?
Restrições mais complexas produzem melhores resultados do
que as menos complexas?
Must-Link-Before d e Must-Link-Before.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

26/37
Dados de teste

Conjunto de dados de teste
Artificial Data Set
Newsgroup Data Set

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

27/37
Dados de teste

Artificial Data Set
Formado segundo uma distribuição gaussiana.
Hierarquia em 5 níveis
Dataset com 120 instâncias de 5 dimensões

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

28/37
Dados de teste
Newsgroup Data Set

20 Newsgroup data set, coleção de 20 mil documentos
pertencentes a 20 categorias.
Dados organizados em hierarquias.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

29/37
Experimentos
Simulação
1
2

Inicializa com um conjunto vazio de regras.
Gerar um dendograma com o conjunto de regras.
Single Linkage e Complete Linkage.

3

4

Comparar a saída obtida com a estrutura real do dendograma
(conhecimento prévio)
Adicionar regras de forma a corrigir erros de merge de pontos
muito cedo no dendograma.
Must-Link-Before e Must-Link-Before d .

5

Rodar novamente o experimento a partir do passo 2 com o
conjunto de regras atualizado, até que não haja mais erros.

Repetir 10 vezes o experimento.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

30/37
Medidas de Avaliação

F-score ≡ (1 + β 2 ) ·

P·R
(β 2 ·P)+R

Trade-off entre as medidas de precisão e revocação

H-Correlation ≡

Sb
St +Sl

Medida desenvolvida para algoritmos hierárquicos.
Relação entre acertos em ambas as bases, correta e teste, (Sb )
e a soma dos acertos na base correta (St ) e na base de teste
(Sl ).

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

31/37
Experimentos
Resultados para o conjunto de dados gerados artificialmente

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

32/37
Experimentos
Resultados para o conjunto de dados gerados a partir
da 20 Newsgroup data set

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

33/37
Resultados

A adição de regras Must link before d melhora a qualidade da
hierarquia conforme o número de restrições aumenta.
Must-Link-Before d superou o Must-Link-Before em ambas as
medidas F-score e H-correlation.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

34/37
Introdução
Contextualização e Motivação
Proposta
Modelagem
Regras
Modelando o dendograma
Modelando restrições do usuário
Algoritmo e Experimentos
Considerações Finais

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

35/37
Considerações Finais

Lógica é uma boa escolha para especificação de restrição
devido a sua formalidade.
Uma direção de pesquisa é maximizar o número de restrições
satisfeitas no caso de um conjunto inconsistente de restrições.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

36/37
Referências I

Gilpin, S. and I. Davidson (2011). Incorporating sat solvers into hierarchical
clustering algorithms: An efficient and flexible approach. In Proceedings of
the 17th ACM SIGKDD International Conference on Knowledge Discovery
and Data Mining, KDD ’11, New York, NY, USA, pp. 1136–1144. ACM.

Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach

37/37

Weitere ähnliche Inhalte

Ähnlich wie SAT Solvers into Hierarchical Clustering

Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 
Oficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando ROficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando RFabrício Barth
 
Logística tese marcos-roberto_silva
Logística tese marcos-roberto_silvaLogística tese marcos-roberto_silva
Logística tese marcos-roberto_silvaAndré Jun Miki
 
Explorando uma solução distribuída para o sistema Controle de Marcas e Sinais
Explorando uma solução distribuída para o sistema Controle de Marcas e SinaisExplorando uma solução distribuída para o sistema Controle de Marcas e Sinais
Explorando uma solução distribuída para o sistema Controle de Marcas e SinaisAlex Camargo
 
tdc-recife-2020-complexidade-cognitiva
tdc-recife-2020-complexidade-cognitivatdc-recife-2020-complexidade-cognitiva
tdc-recife-2020-complexidade-cognitivaDouglas Siviotti
 
Algoritmos para Geração de Reticulados Conceituais
Algoritmos para Geração de Reticulados ConceituaisAlgoritmos para Geração de Reticulados Conceituais
Algoritmos para Geração de Reticulados ConceituaisSérgio Dias
 
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
[TDC2016] Apache SparkMLlib:  Machine Learning na Prática[TDC2016] Apache SparkMLlib:  Machine Learning na Prática
[TDC2016] Apache SparkMLlib: Machine Learning na PráticaEiti Kimura
 
Fundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareFundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareÁlvaro Farias Pinheiro
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming Alexandre Schmidt
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...Manuel Menezes de Sequeira
 
TDC2016SP - SparkMLlib Machine Learning na Prática
TDC2016SP -  SparkMLlib Machine Learning na PráticaTDC2016SP -  SparkMLlib Machine Learning na Prática
TDC2016SP - SparkMLlib Machine Learning na Práticatdc-globalcode
 
Algoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoAlgoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoFabrício Barth
 
Programação Orientada a Aspectos
Programação Orientada a AspectosProgramação Orientada a Aspectos
Programação Orientada a AspectosRicardo Terra
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Jhonefj
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introduçãoelliando dias
 

Ähnlich wie SAT Solvers into Hierarchical Clustering (20)

Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Grasp Patterns.ppt
Grasp Patterns.pptGrasp Patterns.ppt
Grasp Patterns.ppt
 
Oficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando ROficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando R
 
Logística tese marcos-roberto_silva
Logística tese marcos-roberto_silvaLogística tese marcos-roberto_silva
Logística tese marcos-roberto_silva
 
Explorando uma solução distribuída para o sistema Controle de Marcas e Sinais
Explorando uma solução distribuída para o sistema Controle de Marcas e SinaisExplorando uma solução distribuída para o sistema Controle de Marcas e Sinais
Explorando uma solução distribuída para o sistema Controle de Marcas e Sinais
 
tdc-recife-2020-complexidade-cognitiva
tdc-recife-2020-complexidade-cognitivatdc-recife-2020-complexidade-cognitiva
tdc-recife-2020-complexidade-cognitiva
 
JAVA REFLETCION
JAVA REFLETCIONJAVA REFLETCION
JAVA REFLETCION
 
Diagrama classes
Diagrama classesDiagrama classes
Diagrama classes
 
Algoritmos para Geração de Reticulados Conceituais
Algoritmos para Geração de Reticulados ConceituaisAlgoritmos para Geração de Reticulados Conceituais
Algoritmos para Geração de Reticulados Conceituais
 
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
[TDC2016] Apache SparkMLlib:  Machine Learning na Prática[TDC2016] Apache SparkMLlib:  Machine Learning na Prática
[TDC2016] Apache SparkMLlib: Machine Learning na Prática
 
Fundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de SoftwareFundamentos de Padrões de Projeto de Software
Fundamentos de Padrões de Projeto de Software
 
Object Oriented Programming
Object Oriented Programming Object Oriented Programming
Object Oriented Programming
 
Bfhs
BfhsBfhs
Bfhs
 
MapReduce
MapReduceMapReduce
MapReduce
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
 
TDC2016SP - SparkMLlib Machine Learning na Prática
TDC2016SP -  SparkMLlib Machine Learning na PráticaTDC2016SP -  SparkMLlib Machine Learning na Prática
TDC2016SP - SparkMLlib Machine Learning na Prática
 
Algoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionadoAlgoritmos de Agrupamento - Aprendizado não supervisionado
Algoritmos de Agrupamento - Aprendizado não supervisionado
 
Programação Orientada a Aspectos
Programação Orientada a AspectosProgramação Orientada a Aspectos
Programação Orientada a Aspectos
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02
 
design patterns - introdução
design patterns - introduçãodesign patterns - introdução
design patterns - introdução
 

SAT Solvers into Hierarchical Clustering

  • 1. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach Nathan Siegle Hartmann Núcleo Interinstitucional de Linguística Computacional (NILC), Instituto de Ciências Matemáticas e de Computação (ICMC), Universidade de São Paulo (USP) 19 de novembro de 2013 Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 1/37
  • 2. Observação Material desenvolvido com livre interpretação do paper de Gilpin and Davidson (2011), publicado na 17th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 2/37
  • 3. Introdução Contextualização e Motivação Proposta Modelagem Regras Modelando o dendograma Modelando restrições do usuário Algoritmo e Experimentos Considerações Finais Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 3/37
  • 4. Introdução Contextualização e Motivação Proposta Modelagem Regras Modelando o dendograma Modelando restrições do usuário Algoritmo e Experimentos Considerações Finais Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 4/37
  • 5. Contextualização e Motivação Agrupamento com restrições é o agrupamento "clássico", porém insere restrições na formação dos grupos. Estudos sobre agrupamento restrito se originaram a uma década atrás. Trabalhos comumente utilizam apenas regras simples (Must-Link, Cannot-Link e Must-Link-Before). 2 grandes gaps foram identificados na área. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 5/37
  • 6. 1o Gap da área Pouco estudo sobre agrupamento hierárquico utilizando restrições. Apesar de Mais de 50% das aplicações de agrupamento serem hierárquicas. Agrupamento hierárquico apresenta um sumário compreensivo dos dados. Agrupamento hierárquico pode modelar relações temporais. O uso de agrupamento hierárquico ser bom em áreas com domínio conhecido por especialistas. Especialistas podem especificar diversas restrições para modelar os grupos de interesse. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 6/37
  • 7. 2o Gap da área Pouco estudo sobre linguagens de programação para modelagem dessas restrições. Apesar de Modelar restrições com linguagens procedurais ser um grande limitante Design de algoritmos para solucionar restrições. Modelar restrições com linguagens declarativas parecer mais conveniente Modelagem das restrições Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 7/37
  • 8. Proposta Os autores propõe a utilização de Formulação de restrições em lógica de primeira ordem como cláusulas de Horn. Inconsistências são verificadas em tempo polinomial. Resolução de restrições como um problema SAT (satisfiability ) Cláusulas de Horn fazem com que problemas SAT deixem de ser NP Completos. Se todas as restrições são satisfeitas, o modelo pode ser interprestado como um dendograma válido. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 8/37
  • 9. Introdução Contextualização e Motivação Proposta Modelagem Regras Modelando o dendograma Modelando restrições do usuário Algoritmo e Experimentos Considerações Finais Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 9/37
  • 10. Regras Definição 1. together (x,y,i). Verdadeiro se x e y estão no mesmo grupo no nível i Todos os tipos de restrições podem ser modelados com together e expressos com cláusulas de Horn. Pode-se definir um dendograma utilizando A relação together. As seguintes propriedades sejam satisfeitas: Reflexividade, Transitividade, Simetria e Inter-Level link. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 10/37
  • 11. Propriedades Definição 2. Propriedade de Reflexividade. ∀i, x[together (x, x, i)] Toda instancia está no mesmo grupo que ela mesma. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 11/37
  • 12. Propriedades Definição 3. Propriedade de Simetria. ∀i, x, y [together (x, y , i) → together (y , x, i)] Se x está no mesmo grupo que y em um nível i, então y está no mesmo grupo que x no mesmo nível i. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 12/37
  • 13. Propriedades Definição 4. Propriedade de Transitividade. ∀i, x, y , z[together (x, y , i) together (x, z, i)] together (y , z, i) → Se em um nível i, x está no mesmo grupo que y e esse está no mesmo grupo que z, então x está no mesmo grupo que z nesse nível i. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 13/37
  • 14. Propriedades Definição 5. Propriedade de Inter-Level link. ∀i, x, y [together (x, y , i) → together (x, y , i + 1)] Se x e y estão no mesmo grupo em um nível i, eles permanecerão no mesmo grupo em todos os níveis subsequentes da hierarquia. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 14/37
  • 15. Propriedades Definição 6. Propriedade de um Dendograma Completo. ∀x, y [together (x, y , top)] Para um dendograma ser completo, o último nível de sua hierarquia (top) deve conter apenas um grupo com todos os elementos. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 15/37
  • 16. Modelando o Dendograma Aplicando os passos a seguir, todo modelo reconhecido será interpretado como um dendograma completo. 1 Aplica a relação together para refletir um grupo em cada nível da hierarquia. Requer que as propriedades de transitividade, simetria e reflexividade sejam satisfeitas. 2 Aplica a relação Inter-Level link para cada nível da hierarquia. 3 Assegurar um dendograma completo pela Definição 6. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 16/37
  • 17. Modelando restrições do usuário Muitos tipos de restrições podem ser inseridas pelo usuário utilizando apenas cláusulas de Horn. Restrição de instância. Restrição para instâncias em um nível específico. Restrições Must-Link Before. Restrições em dois grupos: Globais e Locais. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 17/37
  • 18. Restrições Globais Restrições Cannot-Link e Must-Link Originalmente formuladas para agrupamento particional. Cada nível de um agrupamento hierárquico pode ser interpretado como uma partição. Logo essas restrições devem obedecer a todos os níveis da hierarquia. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 18/37
  • 19. Restrições Globais Observação 1. Restrições Globais Must/Cannot-Link. ML(a, b) ≡ ∀i[together (a, b, i)] CL(a, b) ≡ ∀i[¬together (a, b, i)] Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 19/37
  • 20. Restrições Globais Restrição Must-Link-Before Originalmente formuladas para agrupamento hierarquico. Especifica que duas instâncias a e b são mais similares entre si do que a uma terceira instância c. Instâncias a e b estão no mesmo grupo antes de c ser inserido. Se a, b e c estão no mesmo grupo, então a e b já estavam no mesmo grupo em um nível anterior da hierarquia. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 20/37
  • 21. Restrições Globais Observação 2. Restrição Global Must-Link-Before. MLB(a, b, c) ≡ ∀i[together (a, c, i + 1) → together (a, b, i)] ∀i[together (b, c, i + 1) → together (a, b, i)] ¬together (b, c, 1) ¬together (a, c, 1) Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 21/37
  • 22. Restrições Locais Atribuir restrições para níveis específicos da hierarquia. Não são comumente utilizadas Requer conhecimento de domínio sobre a relação de duas instâncias em um dado nível da hierarquia. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 22/37
  • 23. Outras restrições Observação 3. Must-Link-Before d . must-link-befored (a, b, c) ≡ ∀i[together (a, c, i + d ) → together (a, b, i)] ∀i[together (b, c, i + d ) → together (a, b, i)] ¬together (b, c, 1) ... ¬together (b, c, d ) ¬together (a, c, 1) ... ¬together (a, c, d ) Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 23/37
  • 24. Introdução Contextualização e Motivação Proposta Modelagem Regras Modelando o dendograma Modelando restrições do usuário Algoritmo e Experimentos Considerações Finais Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 24/37
  • 25. Algoritmo Genérico para solução de restrições 2 Complexidade O(ln + n2 ), ln = literais negativos, n = instâncias Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 25/37
  • 26. Experimentos Questões de interesse A incorporação de restrições em algoritmos hierárquicos produz resultados indesejados? Restrições mais complexas produzem melhores resultados do que as menos complexas? Must-Link-Before d e Must-Link-Before. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 26/37
  • 27. Dados de teste Conjunto de dados de teste Artificial Data Set Newsgroup Data Set Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 27/37
  • 28. Dados de teste Artificial Data Set Formado segundo uma distribuição gaussiana. Hierarquia em 5 níveis Dataset com 120 instâncias de 5 dimensões Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 28/37
  • 29. Dados de teste Newsgroup Data Set 20 Newsgroup data set, coleção de 20 mil documentos pertencentes a 20 categorias. Dados organizados em hierarquias. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 29/37
  • 30. Experimentos Simulação 1 2 Inicializa com um conjunto vazio de regras. Gerar um dendograma com o conjunto de regras. Single Linkage e Complete Linkage. 3 4 Comparar a saída obtida com a estrutura real do dendograma (conhecimento prévio) Adicionar regras de forma a corrigir erros de merge de pontos muito cedo no dendograma. Must-Link-Before e Must-Link-Before d . 5 Rodar novamente o experimento a partir do passo 2 com o conjunto de regras atualizado, até que não haja mais erros. Repetir 10 vezes o experimento. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 30/37
  • 31. Medidas de Avaliação F-score ≡ (1 + β 2 ) · P·R (β 2 ·P)+R Trade-off entre as medidas de precisão e revocação H-Correlation ≡ Sb St +Sl Medida desenvolvida para algoritmos hierárquicos. Relação entre acertos em ambas as bases, correta e teste, (Sb ) e a soma dos acertos na base correta (St ) e na base de teste (Sl ). Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 31/37
  • 32. Experimentos Resultados para o conjunto de dados gerados artificialmente Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 32/37
  • 33. Experimentos Resultados para o conjunto de dados gerados a partir da 20 Newsgroup data set Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 33/37
  • 34. Resultados A adição de regras Must link before d melhora a qualidade da hierarquia conforme o número de restrições aumenta. Must-Link-Before d superou o Must-Link-Before em ambas as medidas F-score e H-correlation. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 34/37
  • 35. Introdução Contextualização e Motivação Proposta Modelagem Regras Modelando o dendograma Modelando restrições do usuário Algoritmo e Experimentos Considerações Finais Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 35/37
  • 36. Considerações Finais Lógica é uma boa escolha para especificação de restrição devido a sua formalidade. Uma direção de pesquisa é maximizar o número de restrições satisfeitas no caso de um conjunto inconsistente de restrições. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 36/37
  • 37. Referências I Gilpin, S. and I. Davidson (2011). Incorporating sat solvers into hierarchical clustering algorithms: An efficient and flexible approach. In Proceedings of the 17th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’11, New York, NY, USA, pp. 1136–1144. ACM. Incorporating SAT Solvers into Hierarchical Clustering Algorithms - An Efficient and Flexible Approach 37/37