Visualizando hierarquias

Unsupervised Learning em Python

Benjamin Wilson

Director of Research at lateral.io

Visualizações comunicam insights

  • "t-SNE": cria um mapa 2D do dataset (depois)
  • "Clusterização hierárquica" (este vídeo)
Unsupervised Learning em Python

Uma hierarquia de grupos

  • Grupos de seres vivos podem formar uma hierarquia
  • Clusters ficam contidos uns nos outros

 

Árvore hierárquica de animais

Unsupervised Learning em Python

Conjunto de dados de pontuação do Eurovision

  • Países deram notas às músicas no Eurovision 2016
  • Array 2D de notas
  • Linhas são países, colunas são músicas

 

Dados do Eurovision

1 https://www.eurovision.tv/page/results
Unsupervised Learning em Python

Clusterização hierárquica dos países votantes

Clusterização hierárquica do Eurovision

Unsupervised Learning em Python

Clusterização hierárquica

  • Cada país começa em um cluster separado
  • A cada passo, os dois clusters mais próximos se unem
  • Continue até todos os países virarem um único cluster
  • Isso é clusterização hierárquica "aglomerativa"
Unsupervised Learning em Python

O dendrograma de uma clusterização hierárquica

  • Leia de baixo para cima
  • Linhas verticais representam clusters

Clusterização hierárquica do Eurovision

Unsupervised Learning em Python

O dendrograma de uma clusterização hierárquica

  • Leia de baixo para cima
  • Linhas verticais representam clusters

Um cluster da clusterização hierárquica do Eurovision

Unsupervised Learning em Python

Dendrogramas, passo a passo

Um cluster da clusterização hierárquica do Eurovision

Unsupervised Learning em Python

Dendrogramas, passo a passo

Um cluster da clusterização hierárquica do Eurovision com o cluster Grécia/Chipre destacado

Unsupervised Learning em Python

Dendrogramas, passo a passo

Um cluster da clusterização hierárquica do Eurovision com o cluster Bulgária/Grécia/Chipre destacado

Unsupervised Learning em Python

Dendrogramas, passo a passo

Um cluster da clusterização hierárquica do Eurovision com o cluster Moldávia/Rússia destacado

Unsupervised Learning em Python

Dendrogramas, passo a passo

Um cluster da clusterização hierárquica do Eurovision com o cluster Moldávia/Rússia/Armênia destacado

Unsupervised Learning em Python

Dendrogramas, passo a passo

União do cluster Grécia/Chipre/Bulgária com Moldávia/Rússia/Armênia

Unsupervised Learning em Python

Dendrogramas, passo a passo

Clusterização hierárquica do Eurovision

Unsupervised Learning em Python

Clusterização hierárquica com SciPy

  • Dado samples (o array de notas) e country_names
import matplotlib.pyplot as plt
from scipy.cluster.hierarchy import linkage, dendrogram

mergings = linkage(samples, method='complete')
dendrogram(mergings, labels=country_names, leaf_rotation=90, leaf_font_size=6) plt.show()
Unsupervised Learning em Python

Vamos praticar!

Unsupervised Learning em Python

Preparing Video For Download...