Visualisering av hierarkier

Oövervakad inlärning i Python

Benjamin Wilson

Director of Research at lateral.io

Visualiseringar förmedlar insikter

  • "t-SNE" : Skapar en 2D-karta över en datamängd (senare)
  • "Hierarkisk klustring" (den här videon)
Oövervakad inlärning i Python

En hierarki av grupper

  • Grupper av levande varelser kan bilda en hierarki
  • Kluster är inbäddade i varandra

 

Hierarkiskt träd över djur

Oövervakad inlärning i Python

Eurovision-poängdatamängd

  • Länder gav poäng till låtar framförda i Eurovision 2016
  • 2D-array med poäng
  • Rader är länder, kolumner är låtar

 

Eurovision-data

1 https://www.eurovision.tv/page/results
Oövervakad inlärning i Python

Hierarkisk klustring av röstande länder

Hierarkisk klustring av Eurovision

Oövervakad inlärning i Python

Hierarkisk klustring

  • Varje land börjar i ett eget kluster
  • I varje steg slås de två närmaste klustrerna ihop
  • Fortsätter tills alla länder finns i ett enda kluster
  • Detta kallas "agglomerativ" hierarkisk klustring
Oövervakad inlärning i Python

Dendrogram för hierarkisk klustring

  • Läs nedifrån och upp
  • Vertikala linjer representerar kluster

Hierarkisk klustring av Eurovision

Oövervakad inlärning i Python

Dendrogram för hierarkisk klustring

  • Läs nedifrån och upp
  • Vertikala linjer representerar kluster

Ett kluster i hierarkisk Eurovision-klustring

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Ett kluster i hierarkisk Eurovision-klustring

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Ett kluster i hierarkisk Eurovision-klustring med Grekland/Cypern-kluster markerat

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Ett kluster i hierarkisk Eurovision-klustring med Bulgarien/Grekland/Cypern-kluster markerat

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Ett kluster i hierarkisk Eurovision-klustring med Moldavien/Ryssland-kluster markerat

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Ett kluster i hierarkisk Eurovision-klustring med Moldavien/Ryssland/Armenien-kluster markerat

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Sammanslagning av Grekland/Cypern/Bulgarien-klustret med Moldavien/Ryssland/Armenien

Oövervakad inlärning i Python

Dendrogrammet steg för steg

Hierarkisk klustring av Eurovision

Oövervakad inlärning i Python

Hierarkisk klustring med SciPy

  • Givet samples (arrayen med poäng) och 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()
Oövervakad inlärning i Python

Nu kör vi en övning!

Oövervakad inlärning i Python

Preparing Video For Download...