29
Aprendizado não- supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Embed Size (px)

Citation preview

Page 1: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Aprendizado não-supervisionado

Algoritmos de Agrupamento

Hierárquico, K-Means e ISODATA

Julio Cesar Duarte

Page 2: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmos de agrupamento

Partição em grupos

Inter-similaridade alta

Intra-similaridade baixa

Page 3: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Exemplo

Dendograma

Page 4: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Tipos de agrupamento Estrutura

Hierárquico Agrupamentos são sub-classes de outros

Não-hierárquico ou flat Sem relação entre agrupamentos

Propriedade Estrito

Objeto x Agrupamento (1xN) Livre

Probabilidade de pertencer (Incerteza, multiplicidade)

Page 5: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Tipos de agrupamento

Hierárquico <--> Estrito Não-hierárquico <--> Estrito ou Livre

Page 6: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Características Hierárquico

Análise detalhada Mais informação Vários algoritmos ótimos Menos eficiente

Não-hierárquico Mais eficiente Métodos simples Resultados suficientes

Page 7: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Agrupamento hierárquico

Estratégias: Bottom-up:

Objetos se agrupando Algoritmo Aglomerativo

Top-Down: Grande agrupamento sendo dividido Algoritmo Divisivo

Page 8: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Notação X – Conjunto de objetos n – Tamanho de X C – Conjunto de agrupamentos sim – Função de similaridade

sim(x,y) = 1/(1+d(x,y)) Monotônica

Sim (c, c1 U c2) ≤ min(Sim (c, c1), Sim (c, c2)) coh – Função de coerência

Coh(c) ?x1,x2εcsim(x1,x2)

Page 9: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmo Aglomerativo

C = Xwhile len(C)>1:

[c1, c2] = argmaxc1,c2εC Sim(c1, c2)

cj = [c1, c2]C.remove(c1)C.remove(c2)C.append(cj)

Page 10: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmo Divisivo

C = [X]while з i C[i]>1:

cj = argmin cjεC coh(cj)

[cj1, cj2] = dividir(cj)C.remove(cj)C.append(cj1)C.append(cj2)

Page 11: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Funções de similaridade

Ligação simples: Similaridade dos dois membros mais

similares Ligação completa

Similaridade dos dois membros menos similares

Média grupal Média das similaridades dos membros

Page 12: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Simples x Completa

Page 13: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Simples Completa

Page 14: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Simples x Completa Simples:

Coerência local Agrupamentos alongados ou efeito da corrente Relação com AGm

Remove maior aresta recursivamente Explica formação das ilhas do Hawaii O(n2)

Completa: Coerência global Agrupamentos justos Relação com clique Melhor intuitivamente

Grupos em torno de um centróide O(n2logn)

Page 15: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Média grupal

Compromisso entre ligação simples e completa

O(n3) O(n2) sim(x,y) = cos(x,y)

Page 16: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Agrupamento top-down Similaridade <--> coerência

Simples: menor similaridade na agm do agrupamento

Completa: menor similaridade entre dois membros

Média grupal: similaridade média no agrupamento

Divisão: Função do agrupamento Algoritmo bottom-up

Page 17: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Agrupamento não-hierárquico

Agrupamento inicial aleatório

Iterativamente troca de elementos

Critério de parada: Medida de verossimilhança Número de agrupamentos

Page 18: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

K-Means

Não-hierárquico

Estrito

Agrupamentos <--> centros de massas

Page 19: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmo K-Means

Centros de massas aleatórios iniciais Iteração:

Elemento ε agrupamento (centro de massa mais próximo)

Recálculo dos centros de massa Iteração enquanto não CP:

ex: sem alterações

Page 20: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmo K-Means

Função de distância: Euclidiana

Mais sensível a outliers Norma L1

L1(X, Y) = ∑k |xk-yk|

Complexidade: Se número de iterações constante O(n)

Page 21: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Exemplo

Page 22: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Algoritmo K-Means

Quebra de empates: Aleatória não-convergência Perturbação de elementos

Page 23: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

K-Means Livre

1a Estratégia: minimizar o erro quadrático Σimincd(i-µc)2

Δµc=Σi η.d(i-µc), i mais próximo de µc

0 , c.c. µc = µc + Δµc

Page 24: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

K-Means Livre 2a Estratégia: Contribuição de todos

)(

)()(/1

)(/1

2

2

)(

)(

2

2

ci

y

yd

id

c

ciy c

cc

ide

e

ou

idyd

id

c

c

Page 25: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

ISODATA

IIterative Self-Organizing Data Analysis Technique Algorithm Extensão do K-Means: seleção automática

de k (qtde de agrupamentos) Parâmetros:

NMIN_EX:no mínimo de elementos por agrupamento Nd: número aproximado de agrupamentos σs

2: parâmetro máximo de abertura para divisão DM:distância máxima de separação para união NM: número máximo de agrupamentos a serem unidos

Page 26: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

ISODATA

Algoritmo:Algoritmo:1. K-Means2. Dividir agrupamentos segundo critério

de dissimilaridade3. Unir dois agrupamentos próximos4. Repetir

Page 27: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

ISODATA

Page 28: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

ISODATA Vantagens::

Auto-organização Eliminação de agrupamentos pequenos Divisão de agrupamentos dissimilares União de agrupamentos similares

Desvantagens: Dados linearmente separáveis Parâmetros iniciais

Impacto na performance Performance Baixa x Muitos Dados Garantia de convergência

Agrupamentos não sobrepostos

Page 29: Aprendizado não-supervisionado Algoritmos de Agrupamento Hierárquico, K-Means e ISODATA Julio Cesar Duarte

Referências Manning Schuetze

Foundations Of Statistical Natural Language Processing

Soumen Chakrabarti Mining The Web Discovering Knowledge From

Hypertext Data Ricardo Gutierrez-Osuna

Introduction to Pattern Recognition Irina Rish, Daniel Oblinger

Lectures in Statistical Pattern Recognition