CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

47
CIn-UFPE 1 Recuperação Inteligente de Informação Agrupamento de Texto

Transcript of CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

Page 1: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE 1

Recuperação Inteligente de Informação

Agrupamento de Texto

Page 2: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

2

Roteiro da Aula

Definição Geral

Clustering de texto

Redução da dimensionalidade

Cluster não-hierárquico

Cluster hierárquico

Avaliação do agrupamento

Ensemble de agrupamentos

Page 3: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

3

Agrupamento de ObjetosClustering

Objetivos Particionar exemplos não classificados em

subconjuntos disjuntos (clusters), de modo que Exemplos em um mesmo cluster são muito

similares Exemplos em clusters diferentes são muito

diferentes Descobrir novas categorias de maneira não-

supervisionada i.e., sem conhecer as de categorias

previamente

Page 4: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

4

.

Exemplo de Clustering

.

...

. .. ..

..

....

.

...

. .. ..

..

....

.

Page 5: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

5

Clustering de Texto

Técnicas convencionais de Clustering têm sido diretamente aplicadas a texto, tipicamente

representando os textos como vetores de pesos com TF/IDF

usando a medida de similaridade do co-seno.

Algumas aplicações: Durante a recuperação, adicionar outros documentos no

mesmo cluster para melhorar a cobertura

Organizar os resultados da busca em clusters, para melhorar a organização da apresentação dos resultados ao usuário

E.g., folders do Vivisimo

Criação automática de taxonomias hierarquizadas de documentos para browsing

e.g., Yahoo & DMOZ

Page 6: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

6

Page 7: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

7

Page 8: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

8

Page 9: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

9

Representação

Representação dos documentos(e.g. lista de termos)

Redução da dimensionalidade

Seleção ou extração de características

Clustering

Textos

Corpus

Textos

Cluster ATextos

Cluster B

Textos

Cluster C

Etiquetagem

Agrupamento de textos

Page 10: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

10

Redução da dimensionalidade

Page 11: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

11

O objetivo é manter as características relevantes e eliminar características irrelevantes e redundantes.

Seleção de características

Page 12: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

12

Document Frequency: seleciona termos mais frequentes da base

Term Frequency Variance: seleciona termos onde valor de TF apresenta maior variação

Seleção de características

Page 13: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

13

Term Strength: probabilidade de um termo ocorrer em um documento dado que ocorre em um documento similar

Seleção supervisionada: (1) Aplica algoritmo de clustering e considera

clusters como labels de classes; (2) Usa Information Gain, Chi-Square, etc...

para selecionar atributos

Seleção de características

Page 14: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

14

Seleção de características

Page 15: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

15Seleção de características com wrappers

Page 16: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

16

Clustering Não-Hierárquico

O número de clusters desejados deve ser informado

Parâmetro = K

Algoritmo Geral: Escolhe aleatoriamente k instancias (documentos)

como sementes, uma para cada cluster Constrói os clusters iniciais com base nessas sementes

Medindo a similaridade entre vetores Iterações

realoca instancias em clusters diferentes, a fim de melhorar o clustering geral

Para quando nenhum cluster é mais modificado, ou quando atinge um número fixo de iterações

Page 17: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

17

Algoritmo K-Means

Assume que instâncias são vetores de valores reais (não-binários)

Cria clusters baseado em centróides (centros de gravidade), ou média dos pontos em um cluster, c:

A Realocação de instâncias a outros clusters é baseada na distância entre o vetor que representante a instância e o centróide atual do cluster

cx

xc

||

1(c)μ

Page 18: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

18Algoritmo K-Means Medidas de Distância

Distância Euclidiana (L2 norma):

L1 norma:

Similaridade com co-seno (transformada em uma distancia subtraindo-a de 1):

2

12 )(),( i

m

ii yxyxL

m

iii yxyxL

11 ),(

yx

yx

1

Page 19: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

19

Algoritmo K-Means

Seja d a distância medida entre instâncias

Selecione aleatoriamente k instâncias {s1, s2,… sk} como sementes

Até o processo convergir (ou outro critério de parada for satisfeito), faça: Para cada instância xi

Aloque xi no cluster cj tal que d (xi, sj) é mínima.

Atualize as sementes como sendo os centróides de cada cluster

Para cada cluster cj sj = (cj)

Page 20: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

20

Exemplo do K Means (K=2)

Pegue as semenstes

Realoque clusters

Compute centróides

xx

Realoque clusters

xx xx Compute centróides

Realoque clusters

Convergiu!

Page 21: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

21Algoritmo K-Means Escolha das Sementes

Resultados podem variar com a escolha aleatória das sementes Algumas sementes podem resultar em

taxas baixas de convergência Ou convergência para clusters sub-optimais

Devemos selecionar sementes com base em uma heurística ou usando resultados de outro método

Page 22: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE 22

Clustering Hierárquico

Page 23: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

23

Clustering Hierárquico

Constrói uma árvore (taxonomia hierárquica - dendograma) a partir de um conjunto de exemplos não etiquetados

Aplicações recursivas de um algoritmo de clustering padrão podem produzir um clustering hierárquico

animal

vertebrado

peixe reptil anfíbio mamífero helmito inseto crustáceo

invertebrado

Page 24: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

24Clustering Hierárquico Aglomerativo vs. Divisivo

Métodos Aglomerativos (bottom-up) Iniciam com cada exemplo sendo um cluster

e Iterativamente combinam os clusters para

formar cluster maiores

Métodos Divisivos (particionais, top-down) Inicialmente, separam todos os exemplos

em clusters.

Page 25: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

25Clustering Hierárquico Aglomerativo

Algoritmo: Inicia com cada instância em um clusters

separado Até restar apenas um cluster

Repetidamente, une os dois clusters ci and cj que são mais semelhantes, criando um cluster ci cj

Utiliza uma função para determinar a similaridade entre duas instâncias/clusters

E.g., Co-seno entre vetores de documentos

O histórico das junções forma uma árvore binária (ou hierarquia).

Page 26: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

26

Clustering Hierárquico Aglomerativo Similaridade entre Clusters

Como computar a similaridade entre dois clusters (sim(x,y)) que podem conter mais de uma instância?

Três possibilidades: Single Link: Similaridade entre os dois

membros mais similares Complete Link: Similaridade entre os dois

membros menos similares Group Average: Similaridade média entre

todos os membros do cluster

Page 27: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

27

Clustering Hierárquico Aglomerativo Single Link

Similaridade entre os dois membros mais similares:

Pode resultar em clusters longos e finos, devido ao efeito “cadeia” Isso é apropriado em alguns casos, como

por exemplo clustering islands.

),(max),(,

yxsimccsimji cycx

ji

Page 28: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

28

Clustering Hierárquico Aglomerativo Exemplo de Single Link

Page 29: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

29

Clustering Hierárquico Aglomerativo Complete Link

Similaridade entre os dois membros menos similares:

Cria clusters mais densos e esféricos, que são, em geral, preferíveis

),(min),(,

yxsimccsimji cycx

ji

Page 30: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

30

Clustering Hierárquico Aglomerativo Exemplo de Complete Link

Page 31: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

31

Clustering Hierárquico Aglomerativo Similaridade entre Clusters

Depois de unir ci e cj, a similaridade entre o cluster resultante e outro cluster qualquer ck pode ser dada por: Single Link:

Complete Link:

)),(),,(max()),(( kjkikji ccsimccsimcccsim

)),(),,(min()),(( kjkikji ccsimccsimcccsim

Page 32: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

32Clustering Hierárquico Aglomerativo Similaridade Group Average entre

Clusters

Mede a similaridade entre dois clusters com base na similaridade média entre todos os pares com o cluster que foi unido

“Compromisso” entre single e complete link.

)( :)(

),()1(

1),(

ji jiccx xyccyjiji

ji yxsimcccc

ccsim

Page 33: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

33

Clustering Hierárquico Aglomerativo Similaridade Group Average entre

Clusters

Assume co-seno como função de similaridade e vetores normalizados

Sempre mantém a soma dos vetores em cada cluster

Compute similaridade entre clusters em tempo constante:

jcx

j xcs

)(

)1||||)(|||(|

|)||(|))()(())()((),(

iiii

iijijiji cccc

cccscscscsccsim

Page 34: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

34

Clustering Hierárquico Divisivo

Aplicação de k-Means de forma interativa Inicialmente, divida todos os objetos em

dois clusters usando k-Means Aplique k-Means nos clusters formados para

gerar subclusters Repita até atingir critério de parada

Page 35: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

35

Algoritmos Incrementais

A cada novo objeto, atualiza a estrutura de grupos sem precisar reiniciar o processo de clustering

Ideal em contextos onde os documentos são recebidos de forma constante e a uma taxa alta

Exemplos de algoritmos: Single-Pass, COBWEB, Redes ART,...

Page 36: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

36

Critérios de avaliação

Page 37: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

37

Critério de similaridade geral

Page 38: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

38

Matrizes de dispersão

Page 39: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

39

Matrizes de dispersão

Page 40: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

40Traços das matrizes de dispersão

Page 41: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

41

Critérios externos

Page 42: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

42

Critérios externos

Page 43: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

43

Critérios externos

Page 44: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

44

Ensemble de agrupamentos

Page 45: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

45

Ensemble de agrupamentos

Page 46: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

46

Ensemble de agrupamentos

Page 47: CIn-UFPE1 Recuperação Inteligente de Informação Agrupamento de Texto.

CIn-UFPE

47

Tendências

Características linguísticas para representação de textos.

Seleção de agrupamentos para realização de ensemble.

Algoritmos incrementais. Melhora da precisão e custo computacional

dos algoritmos. Construção de critérios para seleção de

parâmetros no algoritmo. Etiquetagem de agrupamentos.