Dalam artikel ini akan ditunjukkan penerapan Algoritma Hierarchical Clustering dengan tehnik klasifikasi yang merupakan salah satu tehnik Data Mining untuk menentukan kinerja agent pada call center. Akan ditunjukkan juga langkah-langkah pembuatan aplikasinya dengan bahasa pemrograman PHP dan database MySQL.
author : cahya dsn
,
published on : August 28th, 2019
updated on : August 28th, 2019
Hierarchical Clustering adalah metode analisis kelompok yang berusaha untuk membangun sebuah hirarki kelompok data
Metode Hierarchical memulai pengelompokan dengan dengan dua atau lebih objek yang mempunyai kesamaan paling dekat. Kemudian proses diteruskan ke objek lain yang mempunyai kedekatan kedua. Demikian seterusnya sehingga cluster akan membentuk semacam “pohon”, di mana ada hirarki (tingkatan) yang jelas antar objek, dari yang paling mirip sampai paling tidak mirip. Secara logika semua objek pada akhirnya akan membentuk sebuah cluster. Dendogram biasanya digunakan untuk membantu memperjelas proses hirarki tersebut
Strategi pengelompokannya umumnya ada 2 jenis yaitu Agglomerative (Bottom-Up) dan Devisive (Top-Down). Dalam metode agglomerative, setiap obyek atau observasi dianggap sebagai sebuah cluster tersendiri. Dalam tahap selanjutnya, dua cluster yang mempunyai kemiripan digabungkan menjadi sebuah cluster baru demikian seterusnya. Sebaliknya, dalam metode divisive kita beranjak dari sebuah cluster besar yang terdiri dari semua obyek atau observasi. Selanjutnya, obyek atau observasi yang paling tinggi nilai ketidakmiripannya kita pisahkan demikian seterusnya.
Dalam agglomerative ada lima metode yang cukup terkenal, yaitu: Single Linkage, Complete Linkage, Average Linkage, Ward’s Method, Centroid Method
prosedur ini didasarkan pada jarak terkecil. Jika dua obyek terpisah oleh jarak yang pendek maka kedua obyek tersebut akan digabung menjadi satu cluster daan demikian saterusnya.
berlawanan dengan Single Linkage prosedur ini pengelompokkannya berdasarkan jarak terjauh
prosedure ini hampir sama dengan Single Linkage maupun Complete Linkage, namun kriteria yang digunakan adalah rata-rata jarak seluruh individu dalam suatu cluster dengan jarak seluruh individu dalam cluster yang lain.
jarak antara dua cluster dalam metode ini berdasarkan total sum of square dua cluster pada masing-masing variabel.
jarak antara dua cluster dalam metode ini berdasarkan jarak centroid dua cluster yang bersangkutan.
Keuntungan penggunaan metode hierarki dalam analisis Cluster adalah mempercepat pengolahan dan menghemat waktu karena data yang diinputkan akan membentuk hierarki atau membentuk tingkatan tersendiri sehingga mempermudah dalam penafsiran, namun kelemahan dari metode ini adalah seringnya terdapat kesalahan pada data outlier, perbedaan ukuran jarak yang digunakan, dan terdapatnya variabel yang tidak relevan. Sedang metode non-hierarki memiliki keuntungan dapat melakukan analisis sampel dalam ukuran yang lebih besar dengan lebih efisien. Selain itu, hanya memiliki sedikit kelemahan pada data outlier, ukuran jarak yang digunakan, dan variabel tak relevan atau variabel yang tidak tepat. Sedangkan kelemahannya adalah untuk titik bakal random lebih buruk dari pada metode hirarkhi.
Untuk membantu pemahaman terhadap algoritma Hierarchical Clustering dalam tehnik klasifikasi masalah, berikut disertakan contoh perhitungan manual untuk menentukan kinerja agent pada call center dengan menggunakan algortima Hierarchical Clustering.
Sebagai pelengkap artikel data mining dengan Algoritma Hierarchical Clustering pada bagian ini akan dibahas langkah-langkah dalam implementasinya dengan bahasa pemrograman PHP dan database MySQL/MariaDB.
Sebelum melangkah ke pembuatan aplikasinya, dipersiapkan dulu untuk struktur database dan tabel-tabel yang berkaitan dengan aplikasi yang akan dibuat berikut ini
Sebagai bahan pembelajaran aplikasi Data Mining dengan Algoritma Hierarchical Clustering ini; dibuat database (dalam hal ini menggunakan MySQL/MariaDB Database server) sebagai berikut:
CREATE DATABASE IF NOT EXISTS db_dm; USE db_dm;
Awalnya membuat dulu database dengan nama db_dm
jika belum ada database dengan nama tersebut, kemudian gunakan database tersebut dengan memakai sintak USE db_dm;
Sebelum melalukan operasi dengan data dari database, perlu dibuat script untuk koneksi ke database terlebih dahulu. Dari database yang sudah dibuat, kita bisa membuat script php untuk membuat koneksi ke database server dengan extension mysqli sebagai berikut:
<?php
//-- konfigurasi database
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbname = 'db_dm';
//-- koneksi ke database server dengan extension mysqli
$db = new mysqli($dbhost,$dbuser,$dbpass,$dbname);
//-- hentikan program dan tampilkan pesan kesalahan jika koneksi gagal
if ($db->connect_error) {
die('Connect Error ('.$db->connect_errno.')'.$db->connect_error);
}
?>
Sesuaikan nilai-nilai $dbhost,$dbuser,$dbpass
dan $dbname
dengan konfigurasi database yg digunakan.