Anda di halaman 1dari 4

Dunn index dan DB index - Indeks Validitas Cluster

| Set 1
Metrik kinerja yang berbeda digunakan untuk mengevaluasi Algoritma Pembelajaran
Mesin yang berbeda. Dalam hal masalah klasifikasi, kami memiliki berbagai ukuran
kinerja untuk mengevaluasi seberapa baik model kami. Untuk analisis kluster,
pertanyaan analognya adalah bagaimana cara mengevaluasi “kebaikan” kluster yang
dihasilkan?
Mengapa kita memerlukan indeks validitas klaster?
 Untuk membandingkan algoritma pengelompokan.
 Untuk membandingkan dua set cluster.
 Untuk membandingkan dua kelompok yaitu yang mana yang lebih baik dalam hal
kekompakan dan keterhubungan.
 Untuk menentukan apakah struktur acak ada dalam data karena kebisingan.

Secara umum, ukuran validitas kluster dikategorikan ke dalam 3 kelas, yaitu -


1. Validasi kluster internal : Hasil klaster dievaluasi berdasarkan data yang
dikelompokkan sendiri (informasi internal) tanpa referensi ke informasi eksternal.
2. Validasi klaster eksternal : Hasil klaster dievaluasi berdasarkan beberapa hasil
yang diketahui secara eksternal, seperti label kelas yang disediakan secara
eksternal.
3. Validasi cluster relatif : Hasil clustering dievaluasi dengan memvariasikan
parameter yang berbeda untuk algoritma yang sama (misalnya mengubah jumlah
cluster).
Selain istilah indeks validitas klaster, kita perlu tahu tentang jarak antar-klaster d (a,
b) antara dua klaster a, b dan indeks intra-kluster D (a) dari klaster a .
Jarak antar cluster d (a, b) antara dua cluster a dan b dapat -
 Single linkage distance: Jarak terdekat antara dua objek yang masing-masing
milik a dan b .
 Lengkap linkage distance: Jarak antara dua objek paling jauh yang dimiliki
oleh a dan b masing-masing.
 Average linkage distance: Rata-rata jarak antara semua objek yang
dimiliki a dan b masing-masing.
 Centroid linkage distance : Jarak antara centroid kedua klaster adan b masing-
masing.
Intra-cluster distance D (a) dari sebuah cluster dapat -
 Jarak keterkaitan diameter lengkap: Jarak antara dua objek terjauh yang dimiliki
klaster a.
 Rata-rata jarak pertalian diameter: Jarak rata-rata antara semua benda yang
termasuk dalam kelompok a.
 Jarak keterkaitan diameter centroid: Dua kali jarak rata-rata antara semua objek
dan pusat massa kluster a.
Sekarang, mari kita bahas 2 indeks validitas kluster internal yaitu
indeks Dunn dan indeks DB .
Dunn index:
Indeks Dunn (DI) (diperkenalkan oleh JC Dunn pada tahun 1974), metrik untuk
mengevaluasi algoritma clustering, adalah skema evaluasi internal, di mana hasilnya
didasarkan pada data cluster itu sendiri. Seperti semua indeks lainnya, tujuan dari
indeks Dunn ini untuk mengidentifikasi set cluster yang kompak, dengan varian kecil
antara anggota cluster, dan terpisah dengan baik, di mana rata-rata cluster berbeda
jaraknya cukup jauh, dibandingkan dengan dalam varian cluster.
Semakin tinggi nilai indeks Dunn, lebih baik adalah pengelompokan.Jumlah cluster
yang memaksimalkan indeks Dunn diambil sebagai jumlah cluster optimal k. Ini juga
memiliki beberapa kekurangan.Karena jumlah cluster dan dimensi data meningkat,
biaya komputasi juga meningkat.
Indeks Dunn untuk c jumlah cluster didefinisikan sebagai:

dimana,

Di bawah ini adalah implementasi Python di atas Dunn index menggunakan


perpustakaan jqmcvi :
filter_none
brightness_4
import pandas as pd
from datasets import sklearn
from base import jqmcvi
# loading the dataset
X = datasets.load_iris()
df = pd.DataFrame(X.data)

# K-Means
from sklearn import sklearn
k_means = cluster.KMeans(n_clusters = 3 )
k_means.fit(df) #K-means training
y_pred = k_means.predict(df)

# We store the K-means results in a dataframe


pred = pd.DataFrame(y_pred)
pred.columns = [ 'Type' ]

# we merge this dataframe with df


prediction = pd.concat([df, pred], axis = 1 )

# We store the clusters


clus0 = prediction.loc[prediction.Species = = 0 ]
clus1 = prediction.loc[prediction.Species = = 1 ]
clus2 = prediction.loc[prediction.Species = = 2 ]
cluster_list = [clus0.values, clus1.values, clus2.values]

print (base.dunn(cluster_list))
Keluaran:
0,67328051
Indeks DB:
Indeks Davies-Bouldin (DBI) (diperkenalkan oleh David L. Davies dan Donald W.
Bouldin pada 1979), metrik untuk mengevaluasi algoritma pengelompokan, adalah
skema evaluasi internal, di mana validasi seberapa baik pengelompokan telah
dilakukan dibuat menggunakan jumlah dan fitur yang melekat pada dataset.
Turunkan nilai indeks DB, lebih baik adalah pengelompokan. Ini juga memiliki
kekurangan. Nilai yang baik yang dilaporkan oleh metode ini tidak menyiratkan
pengambilan informasi terbaik.
Indeks DB untuk k jumlah cluster didefinisikan sebagai:

dimana,
Di bawah ini adalah implementasi Python dari indeks DB di atas menggunakan
perpustakaan sklearn:
filter_none
brightness_4
from datasets import sklearn
from sklearn.cluster import
from sklearn.metrics import davies_bouldin_score
from sklearn.datasets.samples_generator import make_blobs

# loading the dataset


X, y_true = make_blobs(n_samples = 300 , centers = 4 ,
cluster_std = 0.50 , random_state = 0 )

# K-Means
kmeans = kmeans KMeans(n_clusters = 4 , random_state = 1 ).fit(X)

# we store the cluster labels


labels = kmeans.labels_

print (davies_bouldin_score(X, labels))


Keluaran:
0,36628770

Referensi:
http://cs.joensuu.fi/sipu/pub/qinpei-thesis.pdf
https://en.wikipedia.org/wiki/Davies%E2%80%93Bouldin_index
https://en.wikipedia.org/wiki/Dunn_index

Anda mungkin juga menyukai