Vizualizace hierarchií

Unsupervised Learning in Python

Benjamin Wilson

Director of Research at lateral.io

Vizualizace přinášejí poznatky

  • „t-SNE“: vytváří 2D mapu datové sady (později)
  • „Hierarchické shlukování“ (toto video)
Unsupervised Learning in Python

Hierarchie skupin

  • Skupiny živých organismů mohou tvořit hierarchii
  • Shluky jsou vnořené do sebe

 

Hierarchický strom živočichů

Unsupervised Learning in Python

Datová sada bodování Eurovize

  • Země udělovaly body písním na Eurovizi 2016
  • 2D pole bodů
  • Řádky jsou země, sloupce písně

 

Data z Eurovize

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

Hierarchické shlukování hlasujících zemí

Hierarchické shlukování zemí Eurovize

Unsupervised Learning in Python

Hierarchické shlukování

  • Každá země začíná v samostatném shluku
  • V každém kroku se sloučí dva nejbližší shluky
  • Pokračuje se, dokud nejsou všechny země v jednom shluku
  • Tomu se říká „aglomerativní“ hierarchické shlukování
Unsupervised Learning in Python

Dendrogram hierarchického shlukování

  • Čte se zdola nahoru
  • Svislé čáry představují shluky

Hierarchické shlukování zemí Eurovize

Unsupervised Learning in Python

Dendrogram hierarchického shlukování

  • Čte se zdola nahoru
  • Svislé čáry představují shluky

Jeden shluk hierarchického shlukování Eurovize

Unsupervised Learning in Python

Dendrogramy krok za krokem

Jeden shluk hierarchického shlukování Eurovize

Unsupervised Learning in Python

Dendrogramy krok za krokem

Jeden shluk hierarchického shlukování Eurovize se zvýrazněným shlukem Řecko/Kypr

Unsupervised Learning in Python

Dendrogramy krok za krokem

Jeden shluk hierarchického shlukování Eurovize se zvýrazněným shlukem Bulharsko/Řecko/Kypr

Unsupervised Learning in Python

Dendrogramy krok za krokem

Jeden shluk hierarchického shlukování Eurovize se zvýrazněným shlukem Moldavsko/Rusko

Unsupervised Learning in Python

Dendrogramy krok za krokem

Jeden shluk hierarchického shlukování Eurovize se zvýrazněným shlukem Moldavsko/Rusko/Arménie

Unsupervised Learning in Python

Dendrogramy krok za krokem

Sloučení shluku Řecko/Kypr/Bulharsko se shlukem Moldavsko/Rusko/Arménie

Unsupervised Learning in Python

Dendrogramy krok za krokem

Hierarchické shlukování zemí Eurovize

Unsupervised Learning in Python

Hierarchické shlukování pomocí SciPy

  • Máme samples (pole bodů) a 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 in Python

Pojďme si to vyzkoušet!

Unsupervised Learning in Python

Preparing Video For Download...