Agrupamentos (de pontos no espaço) Aula 4

Jacques Wainer

Tipos de Agrupamento

Agrupamento ou clusterização

Tipos de agrupamentos

http://www.hypertextbookshop.com/dataminingbook/public_version/contents/chapters/chapter004/section001/blue/page003.html

Familias de algoritmos

K-means (k-médias)

Algoritmo iterativo: dividir os dados em k grupos (vc precisa definir o k)

  1. criar os centros dos grupos aleatoriamente (inicialização)

  2. atribuir cada dado ao grupo cujo centro esta mais próximo

  3. se não houve mudança de atribuição desde a volta passada, terminar

  4. recomputar o centro do grupo como sendo a média dos dados que pertencem ao grupo

  5. voltar ao item 2

http://www.onmyphd.com/?p=k-means.clustering

inicialização

k-means é um algoritmo completo (todos os pontos são classificados), de particionamento (pontos só pertencem a um grupo) e um nível (não há subgrupos dentro de super-grupos

os grupos em k-means são convexos (sem “entradas”), talvez estendendo-se ao infinito em alguma direção (mas os dados não estão no infinito)

https://scikit-learn.org/stable/auto_examples/cluster/plot_kmeans_digits.html#sphx-glr-auto-examples-cluster-plot-kmeans-digits-py

implementçoes de k-means

kmeans em R http://www.rdocumentation.org/packages/stats/functions/kmeans

KMeans em sklearn https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html

pyclustering

Pre-processar os dados?

Limites do kmeans

http://stats.stackexchange.com/questions/133656/how-to-understand-the-drawbacks-of-k-means

Como escolher o k

próxima aula - métricas de qualidade dos grupos - teste para vários k e escolha o melhor.

Variações do k-means

k-means original

Gerar os centros iniciais, e

  1. atribuir cada dado ao grupo cujo centro esta mais próximo

  2. recomputar o centro do grupo como sendo a média dos dados que pertencem ao grupo

Outras definições de centro: k -medianas

Mudanças no passo 2 acima:

k-medianas: computa-se o centro como sendo a mediana dos dado do grupo.

k-medianas é menos sensivel a outliers: pontos anomalos não puxam o centro para eles.

Outras definições de centro: k-medoids

K-medoids - também chamado de PAM (partition around mediods)