Jika pada lesson sebelumnya dibahas tentang K-Means clustering, dimana K-Means adalah tipe flat clustering. Pada lesson hierarchical clustering akan dibahas clustering berdasar hirarki.
Jika Anda pernah belajar biology, taksonomi pada hewan adalah contoh dari hierarchical clustering atau hirarki clustering.
Clustering berdasarkan hirarki ada 2 pendekatan, yaitu bottom up (agglomerative) dan top-down (divisive). Pendekatan agglomerative ini yang akan kita bahas pada lesson ini.
Agglomerative
Jika menggunakan contoh hewan, maka pada awalnya akan ada n cluster, semua hewan berada pada cluster sendiri. Lalu selanjutnya akan dikelompokan berdasarkan sifat dan kemiripan hingga membentuk cluster yang lebih sedikit dan seterusnya.
Agglomerative clustering menggunakan graph yang disebut dendrogram. Kita akan menggunakan dendogram dari library Seaborn.
Pro:
- Kita dapa melihat informasi keterkaitan antar cluster.
- Membantu memahami data lebih baik.
- Tidak perlu menentukan jumlah cluster seperti K-Means.
- Banyak tersedia metodologi untuk melakukan hirarki clustering, yang sering digunakan adalah Ward method.
Contra:
- Skalabilitas, contoh jika kita memiliki 1000 observation, akan sangat sulit membaca dendogram.
- Menghabiskan resource dalam melakukan komputasi.
- Makin banyak data observasi, makin lambat.
Seaborn Heatmap
Pada lesson sebelumnya, seaborn hanya digunakan untuk “mempercantik” grafik. Pada lesson ini, akan kita gunakan untuk menampilkan Dendogram Heatmap menggunakan data country dari lesson sebelumnya.
Code dibawah cukup sederhana, yang perlu diperhatikan adalah, kita perlu membuang fitur yang tidak digunakan. Karena kita akan melakukan clustering berdasar posisi latitude dan longitude, maka informasi language akan dibuang dari data menggunakan perintah drop.
import numpy as np
import pandas as pd
import seaborn as sns
data = pd.read_csv('CountryClusters.csv', index_col='Country')
x_scaled = data.copy()
x_scaled = x_scaled.drop(['Language'],axis=1)
sns.clustermap(x_scaled, cmap='mako')

Sebagai eksperimen, buat heatmap dari clustering market segmentation pada lesson sebelumnya.