SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
AGRUPAMENTO COM K-MEANS 
Alexandre Duarte - http://alexandre.ci.ufpb.br/ensino/iad
AGENDA 
• O que é agrupamento 
• Iterações do K-Means 
• Critérios e Propriedades do K-Means 
• O que é um bom agrupamento 
• Quantos grupos
O QUE É AGRUPAMENTO 
• Um agrupamento (cluster) é um subconjunto coeso de 
entidades: entre entidades de um cluster as similaridades são 
maiores do que entre entidades de fora do cluster 
• Agrupamento é um conjunto de métodos para encontrar 
clusters e estruturas de agrupamento nos dados.
DIFERENTES PERSPECTIVAS 
• Aprendizagem de máquina: análise não-supervisionada 
de padrões 
• Descoberta de conhecimento: construção de 
classificadores 
• Análise de dados: Identificar estruturas de 
agrupamento nos dados
IDENTIFICANDO ESTRUTURAS 
DE AGRUPAMENTO NOS DADOS 
• Agrupamento individual 
• Detectando comunidades em uma rede 
• Determinando um subconjunto de proteínas 
similares a uma determinada proteína 
• Identificando um subconjunto de documentos 
sobre um mesmo tema
IDENTIFICANDO ESTRUTURAS 
DE AGRUPAMENTO NOS DADOS 
• Particionamento 
• Divisão da população de acordo com diferentes 
estilos de vida 
• Agrupamento de territórios em regiões econômicas 
• Particionamento de imagens em segmentos 
homogêneos
IDENTIFICANDO ESTRUTURAS 
DE AGRUPAMENTO NOS DADOS 
• Agrupamento hierárquico 
• Taxonomia de organismos 
• Classificação de sub-áreas da computação 
• Ontologia de conceitos em um domínio
ITERAÇÕES DO K-MEANS 
• K-Means: Um método para construir K 
agrupamentos sem interseções 
• Cada agrupamento é representado por um centro ck 
e um conjunto Sk(k=1, …, K) 
Iris setosa: Centro 
S Length S Width P Length P Width 
Centro 5.006 3.428 1.462 0.246 
Média geral 5.843 5.057 3.758 1.199 
Diferença -0.837 0.371 -2.296 -0.953
ITERAÇÕES DO K-MEANS 
1. Especifique K, o número de agrupamentos, e os 
centros iniciais ck (k=1, …, K) 
2. Atualize os conjuntos Sk (k=1, …, K) 
3. Atualize os centros ck (k=1,…, K) 
4. Se os novos centros coincidem com os 
anteriores, pare, senão, vá para 2.
ITERAÇÕES DO K-MEANS 
a) b) 
c) d)
APLICANDO K-MEANS A BASE 
DE IRIS 
• Pré-processamento 
• A: Sem pré-processamento: todas as medidas estão 
relacionadas ao mesmo tipo de flor e na mesma unidade 
• B: (Z-Scoring) Cada variável é centralizada em relação a 
média e normalizada pelo desvio padrão 
• C: Cada variável é centralizada em relação a média e 
normalizada pelo range
APLICANDO K-MEANS A BASE 
DE IRIS 
• Especifique K = 3 e os exemplares 1, 51 e 101 como 
os centros iniciais (conhecimento preliminar) 
• A (sem pré-processamento): Convergiu em 4 iterações 
• B (Z-scoring): Convergiu em 7 iterações 
• C (Normalização pelo range): Convergiu em 5 
iterações
APLICANDO K-MEANS A BASE 
DE IRIS 
• http://blog.whn.se/post/28851413626/k-means-clustering- 
in-r
VANTAGENS 
• Computação é intuitiva 
• Processamento é rápido e não requer memória 
adicional 
• Processamento é fácil de paralelizar (big data)
DISCUSSÃO 
• O K-means sempre converge? 
• Os resultados são independentes da inicialização? 
• Se não, como devemos inicializar? 
• Como escolher o número de clusters K ?
O K-MEANS SEMPRE 
CONVERGE? 
• Minimizar W(S,c) alternando 
• Mins W(S,c): atualização dos clusters 
• Minc W(S,c): atualização dos centros 
• Portanto, W(S,c) diminui a cada passo: 
convergência 
Σ 
KΣ 
W(s,c) = d(i,ck ) 
i∈Sk 
k=1
OS RESULTADOS SÃO 
INDEPENDENTES DA INICIALIZAÇÃO? 
• Qual seria o agrupamento 
ótimo para K = 2 ? 
• Convergimos para esse 
agrupamento com 
qualquer dois pontos 
escolhidos como centros 
iniciais ?
COMO ESCOLHER OS 
CENTROS INICIAIS ? 
• Escolher os pontos que maximizem D(S,c) 
• onde: 
• Nk é o número de entidades em Sk 
• <ck,ck> é distância entre a origem e ck ao 
quadrado 
KΣ 
D(S,c) = Nk < ck ,ck > 
k=1
COMO ESCOLHER OS 
CENTROS INICIAIS ? 
• Requer que os pontos sejam pré-processados pela 
média (origem seria a média de todas as 
coordenadas)
O QUE É UM BOM 
AGRUPAMENTO? 
• Critério interno 
• Exemplo de critério interno: média do quadrado das distâncias 
no K-means 
• Porém, um critério interno muitas vezes não avalia a utilidade do 
agrupamento para uma aplicação. 
• Alternativa: Critério externo 
• Avaliar de acordo com um critério definido por humanos
O QUE É UM BOM 
AGRUPAMENTO? 
• Baseado em algum padrão amplamente adotado 
• Objetivo: O agrupamento deve reproduzir a 
classes definidas no padrão 
• Exemplo de medida de quão bem conseguimos 
reproduzir classes pré-definidas: pureza
CRITÉRIO EXTERNO: PUREZA 
• Ω= {ω1, ω2, . . . , ωK} é o conjunte de grupos e 
• C = {c1, c2, . . . , cJ} é o conjunto de classes 
• Para cada grupo ωk : encontrar a cj com mais membros nkj em ωk 
• Somar todos os nkj e dividir pelo número total de pontos
EXEMPLO DO CALCULO 
PUREZA 
Para 
calcular 
a 
pureza: 
5 
= 
maxj 
|ω1 
∩ 
cj 
| 
(classe 
x, 
grupo 
1); 
4 
= 
maxj 
|ω2 
∩ 
cj 
| 
(classe 
o, 
grupo 
2); 
e 
3 
= 
maxj 
|ω3 
∩ 
cj 
| 
(classe 
⋄, 
grupo 
3). 
Pureza 
é 
(1/17) 
× 
(5 
+ 
4 
+ 
3) 
≈ 
0.71.
PUREZA DO AGRUPAMENTO 
DAS IRIS 
1 2 3 
setosa 50 0 0 
versicolor 0 2 48 
virginica 0 36 14 
Pureza = (1/150) * (50 + 36 + 48) = 0.89
QUANTOS GRUPOS? 
• O número de grupos K é dado em muitas aplicações. 
• Mas e quando isso não acontece? Há um número bom ou ruim para a 
quantidade de grupos? 
• Uma forma de agir: definir um critério de otimização 
• Dado o conjunto de dados, encontrar o K para o qual o valor ótimo é obtido 
• Que critérios de otimização podemos usar? 
• Não podemos utilizar a média dos quadrados das distâncias do centróide 
como critério: o valor ótimo sempre seria fazer K = N.
QUANTOS GRUPOS 
• Ideia básica: 
• Começar com 1 grupo (K = 1) 
• Continue adicionando grupos (= continue a aumentar K) 
• Adicione uma penalidade para cada novo grupo 
• Balancear a penalidade da adição de novos grupos e o quadrado das 
distâncias até os centroides 
• Escolher o valor K com o melhor tradeoff
ENCONTRANDO O K PARA A 
BASE DE IRIS 
http://www.statmethods.net/advstats/cluster.html

Mais conteúdo relacionado

Mais procurados

Chap8 basic cluster_analysis
Chap8 basic cluster_analysisChap8 basic cluster_analysis
Chap8 basic cluster_analysis
guru_prasadg
 
amostragem
amostragemamostragem
amostragem
socram01
 
57701066 matematica-discreta-exercicios-resolvidos
57701066 matematica-discreta-exercicios-resolvidos57701066 matematica-discreta-exercicios-resolvidos
57701066 matematica-discreta-exercicios-resolvidos
HAROLDO MIRANDA DA COSTA JR
 
Meta analysis of microarray
Meta analysis of microarrayMeta analysis of microarray
Meta analysis of microarray
弘毅 露崎
 
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
sarvani17
 
明日から読める無作為化比較試験: 行動療法研究に求められる統計学
明日から読める無作為化比較試験: 行動療法研究に求められる統計学明日から読める無作為化比較試験: 行動療法研究に求められる統計学
明日から読める無作為化比較試験: 行動療法研究に求められる統計学
Yasuyuki Okumura
 

Mais procurados (20)

Probabilidade e Estatística
Probabilidade e EstatísticaProbabilidade e Estatística
Probabilidade e Estatística
 
Exercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição BinomialExercícios Resolvidos: Distribuição Binomial
Exercícios Resolvidos: Distribuição Binomial
 
Amostragem - estatistica
Amostragem - estatisticaAmostragem - estatistica
Amostragem - estatistica
 
Aula 07 Medidas de Tendencia Central de Dados Não Agrupados
Aula 07   Medidas de Tendencia Central de Dados Não AgrupadosAula 07   Medidas de Tendencia Central de Dados Não Agrupados
Aula 07 Medidas de Tendencia Central de Dados Não Agrupados
 
Exercicios de estatistica resolvido.5
Exercicios de estatistica resolvido.5Exercicios de estatistica resolvido.5
Exercicios de estatistica resolvido.5
 
Chap8 basic cluster_analysis
Chap8 basic cluster_analysisChap8 basic cluster_analysis
Chap8 basic cluster_analysis
 
amostragem
amostragemamostragem
amostragem
 
愛大学生用、メタアナリシスについて
愛大学生用、メタアナリシスについて愛大学生用、メタアナリシスについて
愛大学生用、メタアナリシスについて
 
データ解析12 k平均法
データ解析12 k平均法データ解析12 k平均法
データ解析12 k平均法
 
57701066 matematica-discreta-exercicios-resolvidos
57701066 matematica-discreta-exercicios-resolvidos57701066 matematica-discreta-exercicios-resolvidos
57701066 matematica-discreta-exercicios-resolvidos
 
20130716 はじパタ3章前半 ベイズの識別規則
20130716 はじパタ3章前半 ベイズの識別規則20130716 はじパタ3章前半 ベイズの識別規則
20130716 はじパタ3章前半 ベイズの識別規則
 
Meta analysis of microarray
Meta analysis of microarrayMeta analysis of microarray
Meta analysis of microarray
 
Medidas de dispersão desviomédio, desvio-padrão e variância.pptx
Medidas de dispersão desviomédio, desvio-padrão e variância.pptxMedidas de dispersão desviomédio, desvio-padrão e variância.pptx
Medidas de dispersão desviomédio, desvio-padrão e variância.pptx
 
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
Andrew Lih - The Wikipedia Revolution_ How a Bunch of Nobodies Created the Wo...
 
email transaction network analysis
email transaction network analysisemail transaction network analysis
email transaction network analysis
 
明日から読める無作為化比較試験: 行動療法研究に求められる統計学
明日から読める無作為化比較試験: 行動療法研究に求められる統計学明日から読める無作為化比較試験: 行動療法研究に求められる統計学
明日から読める無作為化比較試験: 行動療法研究に求められる統計学
 
Estastítica Inferencial
Estastítica InferencialEstastítica Inferencial
Estastítica Inferencial
 
kmean clustering
kmean clusteringkmean clustering
kmean clustering
 
[アルゴリズムイントロダクション勉強会] ハッシュ
[アルゴリズムイントロダクション勉強会] ハッシュ[アルゴリズムイントロダクション勉強会] ハッシュ
[アルゴリズムイントロダクション勉強会] ハッシュ
 
Spectral clustering Tutorial
Spectral clustering TutorialSpectral clustering Tutorial
Spectral clustering Tutorial
 

Destaque (7)

Clustering (Agrupamento)
Clustering (Agrupamento)Clustering (Agrupamento)
Clustering (Agrupamento)
 
Agrupamento (clustering) - K-Means
Agrupamento (clustering) - K-MeansAgrupamento (clustering) - K-Means
Agrupamento (clustering) - K-Means
 
Backtracking - Gerar todos os subconjuntos
Backtracking - Gerar todos os subconjuntosBacktracking - Gerar todos os subconjuntos
Backtracking - Gerar todos os subconjuntos
 
K-Nearest Neighbor
K-Nearest NeighborK-Nearest Neighbor
K-Nearest Neighbor
 
KNN
KNN KNN
KNN
 
K mean-clustering algorithm
K mean-clustering algorithmK mean-clustering algorithm
K mean-clustering algorithm
 
Algorithme knn
Algorithme knnAlgorithme knn
Algorithme knn
 

Semelhante a Agrupamento com K-Means

Aprendizagem Automática
Aprendizagem AutomáticaAprendizagem Automática
Aprendizagem Automática
butest
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
iaudesc
 

Semelhante a Agrupamento com K-Means (20)

Agrupamento de sequências biológicas
Agrupamento de sequências biológicasAgrupamento de sequências biológicas
Agrupamento de sequências biológicas
 
Gilcimar apresentação
Gilcimar apresentaçãoGilcimar apresentação
Gilcimar apresentação
 
Análise de Agrupamentos e Regionalização
Análise de Agrupamentos e RegionalizaçãoAnálise de Agrupamentos e Regionalização
Análise de Agrupamentos e Regionalização
 
Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clustering
 
kNN Algorithm
kNN AlgorithmkNN Algorithm
kNN Algorithm
 
Aprendizagem Automática
Aprendizagem AutomáticaAprendizagem Automática
Aprendizagem Automática
 
Mineração de dados
Mineração de dadosMineração de dados
Mineração de dados
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
 
Análise de agrupamentos e regionalização - Prática no Geoda
Análise de agrupamentos e regionalização - Prática no GeodaAnálise de agrupamentos e regionalização - Prática no Geoda
Análise de agrupamentos e regionalização - Prática no Geoda
 
Estatística - Aula 2
Estatística - Aula 2Estatística - Aula 2
Estatística - Aula 2
 
Aula1 mba fiap_2018_redes_neurais
Aula1 mba fiap_2018_redes_neuraisAula1 mba fiap_2018_redes_neurais
Aula1 mba fiap_2018_redes_neurais
 
Analise de clusters
Analise de clustersAnalise de clusters
Analise de clusters
 
Sessao 6.pdf para aproveitametno em sessões
Sessao 6.pdf para aproveitametno em sessõesSessao 6.pdf para aproveitametno em sessões
Sessao 6.pdf para aproveitametno em sessões
 
Aprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e RAprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e R
 
[TCC] Apresentacao - Agrupamento de Instâncias
[TCC] Apresentacao - Agrupamento de Instâncias[TCC] Apresentacao - Agrupamento de Instâncias
[TCC] Apresentacao - Agrupamento de Instâncias
 
Clusterização de padrões de candlesticks utilizando Mapas de Kohonen
Clusterização de padrões de candlesticks utilizando Mapas de KohonenClusterização de padrões de candlesticks utilizando Mapas de Kohonen
Clusterização de padrões de candlesticks utilizando Mapas de Kohonen
 
Cluster analysis TDC POA 2017
Cluster analysis  TDC POA 2017Cluster analysis  TDC POA 2017
Cluster analysis TDC POA 2017
 
Redes neurais e lógica fuzzy
Redes neurais e lógica fuzzyRedes neurais e lógica fuzzy
Redes neurais e lógica fuzzy
 
Classificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAClassificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATA
 
Big Data e Data Science - GBG - Google Business Group
Big Data e Data Science - GBG - Google Business GroupBig Data e Data Science - GBG - Google Business Group
Big Data e Data Science - GBG - Google Business Group
 

Mais de Alexandre Duarte

Mais de Alexandre Duarte (20)

Projeto de Experimentos
Projeto de ExperimentosProjeto de Experimentos
Projeto de Experimentos
 
Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de Experimentos
 
Causalidade e Abdução
Causalidade e AbduçãoCausalidade e Abdução
Causalidade e Abdução
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!
 
Atividades Científica
Atividades CientíficaAtividades Científica
Atividades Científica
 
Escolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaEscolhendo um Projeto de Pesquisa
Escolhendo um Projeto de Pesquisa
 
Ciência da Computação como Ciência
Ciência da Computação como CiênciaCiência da Computação como Ciência
Ciência da Computação como Ciência
 
Metodologia da Pesquisa Científica: Introdução
Metodologia da Pesquisa Científica:  IntroduçãoMetodologia da Pesquisa Científica:  Introdução
Metodologia da Pesquisa Científica: Introdução
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
 
Panorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBPanorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPB
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis Nominais
 
Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e Classificação
 
Sumarização Estatística 2D
Sumarização Estatística 2DSumarização Estatística 2D
Sumarização Estatística 2D
 
Sumarização Estatística 1D
Sumarização Estatística 1DSumarização Estatística 1D
Sumarização Estatística 1D
 
Transformação de Dados
Transformação de DadosTransformação de Dados
Transformação de Dados
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de Dados
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de Experimentos
 
Introdução ao Projeto de Surveys
Introdução ao Projeto de SurveysIntrodução ao Projeto de Surveys
Introdução ao Projeto de Surveys
 
Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01
 
Introdução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de DadosIntrodução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de Dados
 

Agrupamento com K-Means

  • 1. AGRUPAMENTO COM K-MEANS Alexandre Duarte - http://alexandre.ci.ufpb.br/ensino/iad
  • 2. AGENDA • O que é agrupamento • Iterações do K-Means • Critérios e Propriedades do K-Means • O que é um bom agrupamento • Quantos grupos
  • 3. O QUE É AGRUPAMENTO • Um agrupamento (cluster) é um subconjunto coeso de entidades: entre entidades de um cluster as similaridades são maiores do que entre entidades de fora do cluster • Agrupamento é um conjunto de métodos para encontrar clusters e estruturas de agrupamento nos dados.
  • 4. DIFERENTES PERSPECTIVAS • Aprendizagem de máquina: análise não-supervisionada de padrões • Descoberta de conhecimento: construção de classificadores • Análise de dados: Identificar estruturas de agrupamento nos dados
  • 5. IDENTIFICANDO ESTRUTURAS DE AGRUPAMENTO NOS DADOS • Agrupamento individual • Detectando comunidades em uma rede • Determinando um subconjunto de proteínas similares a uma determinada proteína • Identificando um subconjunto de documentos sobre um mesmo tema
  • 6. IDENTIFICANDO ESTRUTURAS DE AGRUPAMENTO NOS DADOS • Particionamento • Divisão da população de acordo com diferentes estilos de vida • Agrupamento de territórios em regiões econômicas • Particionamento de imagens em segmentos homogêneos
  • 7. IDENTIFICANDO ESTRUTURAS DE AGRUPAMENTO NOS DADOS • Agrupamento hierárquico • Taxonomia de organismos • Classificação de sub-áreas da computação • Ontologia de conceitos em um domínio
  • 8. ITERAÇÕES DO K-MEANS • K-Means: Um método para construir K agrupamentos sem interseções • Cada agrupamento é representado por um centro ck e um conjunto Sk(k=1, …, K) Iris setosa: Centro S Length S Width P Length P Width Centro 5.006 3.428 1.462 0.246 Média geral 5.843 5.057 3.758 1.199 Diferença -0.837 0.371 -2.296 -0.953
  • 9. ITERAÇÕES DO K-MEANS 1. Especifique K, o número de agrupamentos, e os centros iniciais ck (k=1, …, K) 2. Atualize os conjuntos Sk (k=1, …, K) 3. Atualize os centros ck (k=1,…, K) 4. Se os novos centros coincidem com os anteriores, pare, senão, vá para 2.
  • 10. ITERAÇÕES DO K-MEANS a) b) c) d)
  • 11. APLICANDO K-MEANS A BASE DE IRIS • Pré-processamento • A: Sem pré-processamento: todas as medidas estão relacionadas ao mesmo tipo de flor e na mesma unidade • B: (Z-Scoring) Cada variável é centralizada em relação a média e normalizada pelo desvio padrão • C: Cada variável é centralizada em relação a média e normalizada pelo range
  • 12. APLICANDO K-MEANS A BASE DE IRIS • Especifique K = 3 e os exemplares 1, 51 e 101 como os centros iniciais (conhecimento preliminar) • A (sem pré-processamento): Convergiu em 4 iterações • B (Z-scoring): Convergiu em 7 iterações • C (Normalização pelo range): Convergiu em 5 iterações
  • 13. APLICANDO K-MEANS A BASE DE IRIS • http://blog.whn.se/post/28851413626/k-means-clustering- in-r
  • 14. VANTAGENS • Computação é intuitiva • Processamento é rápido e não requer memória adicional • Processamento é fácil de paralelizar (big data)
  • 15. DISCUSSÃO • O K-means sempre converge? • Os resultados são independentes da inicialização? • Se não, como devemos inicializar? • Como escolher o número de clusters K ?
  • 16. O K-MEANS SEMPRE CONVERGE? • Minimizar W(S,c) alternando • Mins W(S,c): atualização dos clusters • Minc W(S,c): atualização dos centros • Portanto, W(S,c) diminui a cada passo: convergência Σ KΣ W(s,c) = d(i,ck ) i∈Sk k=1
  • 17. OS RESULTADOS SÃO INDEPENDENTES DA INICIALIZAÇÃO? • Qual seria o agrupamento ótimo para K = 2 ? • Convergimos para esse agrupamento com qualquer dois pontos escolhidos como centros iniciais ?
  • 18. COMO ESCOLHER OS CENTROS INICIAIS ? • Escolher os pontos que maximizem D(S,c) • onde: • Nk é o número de entidades em Sk • <ck,ck> é distância entre a origem e ck ao quadrado KΣ D(S,c) = Nk < ck ,ck > k=1
  • 19. COMO ESCOLHER OS CENTROS INICIAIS ? • Requer que os pontos sejam pré-processados pela média (origem seria a média de todas as coordenadas)
  • 20. O QUE É UM BOM AGRUPAMENTO? • Critério interno • Exemplo de critério interno: média do quadrado das distâncias no K-means • Porém, um critério interno muitas vezes não avalia a utilidade do agrupamento para uma aplicação. • Alternativa: Critério externo • Avaliar de acordo com um critério definido por humanos
  • 21. O QUE É UM BOM AGRUPAMENTO? • Baseado em algum padrão amplamente adotado • Objetivo: O agrupamento deve reproduzir a classes definidas no padrão • Exemplo de medida de quão bem conseguimos reproduzir classes pré-definidas: pureza
  • 22. CRITÉRIO EXTERNO: PUREZA • Ω= {ω1, ω2, . . . , ωK} é o conjunte de grupos e • C = {c1, c2, . . . , cJ} é o conjunto de classes • Para cada grupo ωk : encontrar a cj com mais membros nkj em ωk • Somar todos os nkj e dividir pelo número total de pontos
  • 23. EXEMPLO DO CALCULO PUREZA Para calcular a pureza: 5 = maxj |ω1 ∩ cj | (classe x, grupo 1); 4 = maxj |ω2 ∩ cj | (classe o, grupo 2); e 3 = maxj |ω3 ∩ cj | (classe ⋄, grupo 3). Pureza é (1/17) × (5 + 4 + 3) ≈ 0.71.
  • 24. PUREZA DO AGRUPAMENTO DAS IRIS 1 2 3 setosa 50 0 0 versicolor 0 2 48 virginica 0 36 14 Pureza = (1/150) * (50 + 36 + 48) = 0.89
  • 25. QUANTOS GRUPOS? • O número de grupos K é dado em muitas aplicações. • Mas e quando isso não acontece? Há um número bom ou ruim para a quantidade de grupos? • Uma forma de agir: definir um critério de otimização • Dado o conjunto de dados, encontrar o K para o qual o valor ótimo é obtido • Que critérios de otimização podemos usar? • Não podemos utilizar a média dos quadrados das distâncias do centróide como critério: o valor ótimo sempre seria fazer K = N.
  • 26. QUANTOS GRUPOS • Ideia básica: • Começar com 1 grupo (K = 1) • Continue adicionando grupos (= continue a aumentar K) • Adicione uma penalidade para cada novo grupo • Balancear a penalidade da adição de novos grupos e o quadrado das distâncias até os centroides • Escolher o valor K com o melhor tradeoff
  • 27. ENCONTRANDO O K PARA A BASE DE IRIS http://www.statmethods.net/advstats/cluster.html