Analisis Karakteristik Mahasiswa Non Aktif

advertisement
2 TIJAUA PUSTAKA
2.1
Definisi Istilah
Program Reguler Universitas Terbuka
Universitas Terbuka memiliki dua program utama, yaitu Reguler dan Non
Reguler yang biasa disebut dengan program Pendas (pendidikan Dasar). Program
Reguler adalah program yang dapat diikuti oleh masyarakat umum, sedangkan
program Pendas adalah program yang dirancang khusus untuk pendidikan guru
sekolah dasar (Sufandi 2007).
UPBJJ-UT (Unit Program Belajar Jarak Jauh Universitas Terbuka)
UPBJJ-UT merupakan unit layanan yang disediakan oleh UT untuk
membantu proses belajar mengajar dan melayani kebutuhan mahasiswa UT di
daerah. Terdapat 39 UPBJJ-UT di luar negeri dan seluruh Indonesia, tersebar di
kota-kota yang memiliki Perguruan Tinggi Negeri. Setiap mahasiswa wajib
terdaftar sebagai anggota dari salah satu UPBJJ-UT sesuai dengan wilayah
dimana mahasiswa berada.
Mahasiswa on Aktif
UT tidak menerapkan sistem putus sekolah (dropout). Namun demikian
jika mahasiswa tidak melakukan registrasi ulang selama 4(empat) semester
berturut-turut, maka mahasiswa tersebut dianggap mengundurkan diri dan
statusnya dinyatakan sebagai mahasiswa non aktif. Jika mahasiswa bermaksud
menyelesaikan studinya dan kembali menjadi mahasiswa aktif, maka mahasiswa
tersebut cukup hanya melakukan registrasi ulang.
2.2
Data Mining dan KDD
Menurut Tan et al (2006), Data mining adalah suatu proses untuk
menemukan informasi yang berguna di dalam data dengan ukuran besar secara
otomatis. Teknik-teknik data mining yang digunakan bertugas untuk menemukan
pola baru dan bermakna di dalam basis data yang mungkin masih belum
diketahui.
7
Tidak semua cara untuk menemukan suatu informasi dapat disebut sebagai
proses data mining. Sebagai contoh, mencari informasi tentang catatan individu
seseorang menggunakan suatu database management system, atau mencari laman
jejaring tertentu melalui pertanyaan di suatu mesin pencari internet adalah suatu
kegiatan yang terkait di wilayah temu kembali informasi. Meskipun kegiatan
semacam itu penting dan mungkin melibatkan penggunaan suatu algoritma
canggih dan struktur data, namun kegiatan tersebut hanya mengandalkan pada
suatu teknik ilmu komputer tradisional dan fitur data yang jelas untuk membuat
struktur indeks demi memperoleh organisasi dan temu kembali informasi yang
efisien. Di sisi lain, teknik data mining telah digunakan untuk meningkatkan
sistem temu kembali informasi (Tan et al. 2006).
Data mining merupakan bagian integral dari Knowledge Discovery in
Databases (KDD). Keseluruhan proses KDD dari mulai data sampai menjadi
informasi ditunjukkan oleh Gambar 2.
Data
Masukan
Praproses
Data
Data
Mining
Postprocessing
Seleksi atribut
Pengurangan dimensi
Normalisasi
Subsetting Data
Informasi
Pemilihan Pola
Visualisasi
Interpretasi Pola
Gambar 2 Proses dari KDD (Tan et al. 2006)
Format dari data masukan bermacam-macam, dapat berbentuk flat file,
spreadsheets, atau relational table. Data input mengalami 3 proses besar sebelum
menjadi hasil yang berupa informasi, yaitu: praproses, data mining, dan
postprocessing. Praproses bertujuan untuk mentransformasi data ke dalam format
sesuai dengan kebutuhan. Termasuk dalam tahapan praproses antara lain adalah
pembersihan data untuk membuang data-data yang tidak digunakan dan data
duplikat, pengurangan data (seleksi atribut dan seleksi record), penggabungan
data, dan transformasi/normalisasi data. Postprocessing bertujuan untuk
membantu pengguna dalam memahami informasi.
8
Kualitas informasi yang dihasilkan oleh proses KDD sangat dipengaruhi
oleh kualitas data, pengetahuan tentang data, dan teknik pengolahan data yang
akan digunakan.
Menurut Luan (2001) fitur data mining yang paling mengena adalah
klastering dan prediksi.
Aspek klastering data mining menawarkan analisis
karakteristik mahasiswa yang komprehensif, sedangkan prediksi berfungsi untuk
memperkirakan
kemungkinan
dari
berbagai
macam
keluarannya,
yaitu
transferabilitas, persistensi, retensi dan keberhasilan dalam belajar. Sedangkan
Menurut Tan et al. 2006, secara umum data mining memiliki dua tugas utama,
yaitu prediktif dan deskriptif:
1. Prediktif
Tujuan dari prediktif adalah untuk memprediksi nilai dari suatu atribut
tertentu berdasarkan nilai dari beberapa atribut lain. Atribut yang diprediksi
biasa disebut dengan target atau dependent variable, sedangkan atribut yang
digunakan untuk memprediksi biasa disebut dengan explanatory atau
independent variables (contoh klasifikasi).
2. Deskriptif
Tujuan dari deskriptif adalah untuk menemukan pola, korelasi, klaster atau
anomali, yang dapat menggambarkan hubungan antar data objek dalam data.
Deskriptif biasanya memerlukan postprocessing untuk validasi dan
merepresentasikan hasil (contoh clustering).
Tipe Data
Data merupakan komponen dasar dalam proses data mining. Setiap data
terdiri dari kumpulan data objek/data observasi. Karakteristik dari data objek
digambarkan dengan beberapa atribut, dimana setiap atribut memiliki nilai
dengan tipe yang berbeda-beda. Secara umum terdapat dua tipe, yaitu kategori
dan numerik. Data numerik adalah suatu data dimana atribut yang dimilikinya
bertipe numerik. Atribut dengan tipe numerik memiliki dua ciri penting, yaitu
bisa diurutkan (2 < 4, 5 < 8), dan memiliki hubungan jarak (d(3,4) = 5). Bilangan
real dan bilangan bulat termasuk dalam tipe numerik. Contoh atribut dengan tipe
numerik adalah Umur, Tinggi Badan, dan Berat Badan. Data kategori adalah
9
suatu data dimana atribut yang dimilikinya bertipe kategori. Ciri dari atribut
dengan tipe kategori adalah : tidak bisa diurutkan dan tidak memiliki hubungan
jarak. Hubungan yang ada hanyalah sama atau tidak sama (biru=biru, merah ≠
hitam). Contoh atribut dengan tipe kategori adalah Jenis Kelamin dan Warna
Kulit.
Praproses Data
Praproses data dilakukan karena data awal cenderung untuk tidak bersih,
tidak lengkap, dan tidak konsisten. Praproses data bertujuan untuk meningkatkan
kualitas data, sehingga diharapkan dapat membantu meningkatkan akurasi,
efektifitas, dan efisiensi dari suatu proses data mining. Praproses data merupakan
langkah yang sangat penting dalam proses KDD karena kualitas hasil akhir suatu
proses data mining sangat dipengaruhi oleh kualitas data. Praproses data juga
bertujuan untuk tranformasi data input ke dalam format sesuai dengan kebutuhan.
Pembersihan data, pengurangan data, penggabungan data, dan transformasi data
merupakan bagian dari praproses data (Han & Kamber 2001).
1. Pembersihan Data
Pembersihan data dilakukan karena data penelitian seringkali memiliki record
dengan nilai atribut yang tidak lengkap, nilai kosong, tidak konsisten, dan
noisy. Terhadap data yang memiliki atribut dengan nilai tidak lengkap atau
kosong dapat diatasi dengan beberapa cara, antara lain: menghapus data
tersebut, isi atribut kosong dengan rata-rata nilai atribut atau isi atribut
kosong dengan nilai atribut yang paling sering muncul (Han & Kamber 2001).
Nilai tidak konsisten adalah nilai yang berada diluar kesepakatan. Contoh:
alamat mahasiswa biasanya dilengkapi dengan atribut Kota dan Kode Pos.
Jika Kode Pos berisi kode yang tidak dimiliki oleh kota tersebut, maka data
memiliki nilai tidak konsisten pada atribut Kode Pos. Terhadap data demikian
dapat dilakukan perbaikan berdasarkan data lain dengan kota yang sama dan
alamat yang berdekatan. Data Noisy adalah kesalahan tidak berpola atau
perbedaan yang terjadi pada variabel yang diukur (Tan et al. 2006).
10
2. Pengurangan Data
Pengurangan data, biasanya dikaitkan dengan data yang sangat besar, adalah
suatu usaha untuk mengurangi ukuran data dengan tujuan untuk memperoleh
data dengan volume yang relatif kecil tetapi dapat mewakili kondisi data asli.
Memproses data hasil pengurangan seharusnya jauh lebih efisien dibanding
dengan memproses data asli tetapi mendapatkan hasil yang relatif sama.
Seleksi atribut dan seleksi record adalah sebagian dari teknik pengurangan
data.
•
Seleksi Atribut
Data yang akan dianalisis bisa jadi memiliki atribut dengan jumlah yang
cukup banyak tetapi sesungguhnya sebagian dari atribut tersebut tidak
relevan dengan kebutuhan penelitian.
Sebagai contoh, jika akan
dilakukan klastering terhadap data mahasiswa untuk menemukan
karakteristik mahasiswa yang berkaitan dengan Index Prestasi Akademik,
maka atribut seperti Nama, Alamat, atau Nomor Telepon termasuk atribut
yang tidak relevan dengan kebutuhan penelitian. Jika atribut tersebut
diikutsertakan dalam proses klastering, maka selain memperlambat proses,
juga akan mendapatkan hasil yang kurang berkualitas. Seleksi atribut
adalah suatu usaha untuk mengurangi ukuran data dengan cara
menghapus atribut yang tidak relevan dengan kebutuhan penelitian (Han
& Kamber 2001).
•
Seleksi Record
Secara umum, karakteristik data mining adalah menganalisis data dengan
ukuran yang sangat besar berdasarkan sampel dari data tersebut. Sampel
digunakan untuk memberikan informasi terkait dengan keseluruhan data.
Kualitas dari informasi yang dihasilkan tergantung dari data objek yang
dipilih sebagai sampel. Seleksi record adalah suatu usaha untuk
mendapatkan data sampel yang representatif dengan data asli.
3. Penggabungan Data
Pada proses data mining seringkali dibutuhkan suatu proses penggabungan
data. Penggabungan dilakukan karena data yang akan dianalisis berasal dari
11
beberapa sumber. Sumber tersebut dapat berupa multiple databases, data
cubes, atau flat file.
4. Transformasi Data
Secara prinsip, data kategori dapat ditransformasi/dikonversi ke dalam
bilangan numerik, dimana satu bilangan numerik mewakili satu nilai kategori.
Atribut kategori yang demikian disebut dengan “dummy variable”
(Kandardzic 2003). Sebagai contoh, jika atribut Warna Kulit memiliki tiga
nilai yaitu ‘putih’, ‘coklat’, dan ‘hitam’, maka ketiga warna tersebut dapat
dikonversi kedalam tiga kode numerik, misalnya ‘putih’=01 , ’coklat’=02,
dan ’hitam’=03. Dalam suatu data numerik kadang-kadang terdapat atribut
yang memiliki nilai dengan rentang yang sangat berbeda dengan atribut lain.
Sebagai contoh: perbedaan gaji dua karyawan jauh lebih besar (ratusan ribu
atau jutaan rupiah) dibanding dengan perbedaan umur dari kedua karyawan
tersebut (kurang dari 100). Untuk beberapa algoritma data mining, kondisi
demikian dapat mengacaukan hasil perhitungan proximity (Tan et al. 2006).
Atribut dengan rentang nilai besar menjadi sangat dominan, dan akan
mempengaruhi hasil secara tidak proporsional. Oleh karenanya, perlu
dilakukan standarisasi terhadap semua atribut sehingga setiap atribut
memiliki kontribusi secara proporsional terhadap hasil akhir suatu proses data
mining.
Salah satu teknik transformasi data yang cukup penting adalah
normalisasi data. Dengan normalisasi, kita dapat mengkonversi semua nilai
dalam skala secara proporsional tanpa mengurangi informasi yang terkandung
di dalamnya.
Normalisasi berfungsi juga sebagai pengurangan waktu
komputasi, dan dapat meningkatkan akurasi. Metode normalisasi yang cukup
populer adalah z-score dan min-max normalization.
•
zero-mean normalization atau z-score. Pada z-score normalization, setiap
nilai v dari atribut A akan dinormalisasi menjadi v’ dengan rumus
v' =
v− A
σA
,
(1)
dimana A dan σA masing2 menyatakan rata-rata dan deviasi standar dari
atribut A.
12
•
Min-max normalization. Pada proses Min-max normalization, setiap nilai
v dari atribut A akan dinormalisasi menjadi v’ dengan rumus
v' =
v - A min
( New max − New min) + New min
A max − A min
(2)
dimana Amin, Amax, Newmin, dan Newmax masing-masing menyatakan
nilai minimum dari atribut A, nilai maximum dari atribut A, nilai
minimum dari skala baru dan nilai maximum dari skala baru. Hasilnya,
setiap nilai dari suatu atribut akan berada dalam skala tertentu, misal [0,
1].
2.3
Analisis Klaster
Analisis Klaster adalah suatu teknik data mining untuk mengelompokkan
himpunan objek(dataset) ke dalam beberapa grup/klaster hanya berdasarkan
kemiripan karakteristik dari atribut yang dimiliki oleh data objek sedemikian
sehingga data objek yang berada di dalam klaster yang sama memiliki kemiripan
satu sama lain tetapi mereka tidak mirip dengan data objek yang berada dalam
klaster yang berbeda (Han & Kamber 2001). Semakin besar tingkat kemiripan
antar objek di dalam klaster dan semakin besar tingkat perbedaan antar klaster,
semakin baik klastering yang dihasilkan.
Analisis Klaster mengelompokkan data objek ke dalam grup yang
bermakna, berguna atau keduanya. Jika tujuan dari klastering adalah membagi
data ke dalam grup yang bermakna, maka klaster seharusnya menangkap struktur
alami dari data (Tan et al. 2006).
Input dari analisis klaster dapat digambarkan sebagai pasangan berurutan
(X,s) atau (X,d), dimana X merupakan himpunan objek berikut deskripsinya, s
dan d masing masing menyatakan kemiripan dan ketidakmiripan antar objek.
Output dari analisis klaster adalah sebuah partisi Λ = {G1, G2, . . . , GN} dimana
Gk, k = 1,2, . . . ,N adalah himpunan bagian dari X sedemikian sehingga
X = {G1 ∪ G2, ∪ , . . . , ∪ GN}, dan Gi ∩ Gj =
φ
untuk i ≠ j
G1, G2, . . . , GN disebut klaster, dan setiap klaster diilustrasikan dengan beberapa
karakteristik.
Klaster beserta karakteristiknya merupakan hasil dari proses
13
klastering yang sangat penting untuk menganalisis karakteristik dari data
(Kandarzic 2003).
Pada umumnya data X dinyatakan dalam matrik data nxp (n objek dan p
atribut), sedangkan kemiripan/ketidakmiripan antar objek dinyatakan dalam
matrik simetri nxn, biasa disebut dengan matrik proximity. Cara menghitung
kemiripan/ketidakmiripan dipengaruhi oleh algoritma yang digunakan, dan
berbeda untuk masing-masing tipe data binary, kategori, atau numerik.
 x11 . . . . . xif . . . . . x1p 
 .............. 


 xi1 . . . . . xif . . . . . xip 


 .............. 
 xn1. . . . . xnf . . . . . xnp 
0
 d( 2 ,1 ) 0

 d( 3 ,1 ) d( 3 ,2 ) 0

.
.
 .
 .
.
.

 d(n,1 ) d(n, 2 ) . . .
Matrik Data








. . .0 
Matrik Proximity
Analisis klaster telah dipelajari di bidang Statistik, Machine Learning, dan
Basis Data dengan beragam penekanan. Saat ini, analisis klaster juga menjadi
salah satu bidang utama dalam data mining.
Kemiripan dan Ketidakmiripan
Kemiripan dan ketidakmiripan merupakan hal yang sangat mendasar
dalam klaster analisis. Algoritma klastering menggunakan ukuran kemiripan atau
ketidakmiripan untuk menggabung atau memisahkan data objek dari suatu data.
Ukuran kemiripan biasanya digunakan oleh algoritma klastering untuk
menganalisis data kategori, sedangkan ukuran ketidakmiripan digunakan oleh
algoritma klastering untuk menganalisis data numerik. Pada Gambar 3 diberikan
ilustrasi klastering data kategori dan data numerik. Contoh pertama, terdapat
sekumpulan bola dengan 3 macam warna. Algoritma klastering akan
mengelompokkan bola berdasarkan kemiripan warnanya, sehingga bola dalam
satu kelompok memiliki kesamaan warna, dan berbeda dengan warna bola dari
kelompok lain. Contoh kedua, jika terdapat data dengan tipe numerik, maka
algoritma klastering akan mengelompokkan data berdasarkan jarak antar objek
14
sedemikian sehingga jarak antar objek dalam satu klaster minimal, sedangkan
jarak antar klaster maksimal.
Gambar 3 Ilustrasi klastering data kategori dan data numerik
Ukuran kemiripan digunakan untuk mencari pasangan objek yang mirip di
dalam data. Kemiripan antar pasangan objek x dan y dinyatakan dengan sim(x,y).
sim(x,y) akan bernilai besar jika x dan y merupakan pasangan objek yang mirip,
sebaliknya sim(x,y) akan bernilai kecil jika x dan y merupakan pasangan objek
yang tidak mirip. Untuk setiap pasangan objek x dan y, berlaku 3 kondisi berikut
(Kandardzic 2003):
1. 0 ≤ sim(x,y) ≤ 1, kemiripan bernilai antara 0 dan 1.
2. sim(x,x) = 1, setiap objek mirip dengan dirinya sendiri.
3. sim(x,y) = sim(y,x), kemiripan bersifat simetri.
Beberapa algoritma klastering menggunakan ukuran kemiripan untuk
menggabung atau memisahkan data objek. Berikut adalah dua contoh ukuran
kemiripan yang biasa digunakan yaitu Jaccard coefficient Similarity dan
weighted similarity.
15
1. Jaccard coefficient Similarity
Jaccard coefficient digunakan sebagai dasar untuk menghitung kemiripan
pada data transaksi market-basket. Data transaksi market-basket memiliki n
atribut, dimana tiap-tiap atribut merepresentasikan item yang dijual. Semua
atribut bertipe boolean, dengan kata lain akan bernilai 1 jika terjadi transaksi
pada item yang bersesuaian, dan bernilai 0 jika tidak ada transaksi. Jika
terdapat dua transaksi x dan y, maka ukuran kemiripan antara x dan y dihitung
berdasarkan rumus Jaccard coefficient berikut :
sim(x,y) =
|x∩ y|
, dimana
|x∪ y|
(3)
|x ∩ y| menyatakan banyaknya item yang sama pada transaksi x dan transaksi
y, sedangkan |x ∪ y| menyatakan banyaknya gabungan item pada transaksi x
dan transaksi y.
Data kategori dapat dikonversi kedalam data transaksi market-basket dengan
menganggap pasangan nilai atribut sebagai suatu item: bernilai 1 jika
pasangan atribut bernilai sama, dan bernilai 0 jika tidak sama. Sebagai contoh,
diberikan dua data mahasiswa x dan y dengan 5 atribut kategori (UPBJJ,
Pendidikan Akhir, Jenis Pekerjaan, Status Kawin, dan Jenis Kelamin)
berikut :
x = {Jakarta, SLTA, PNS, Kawin, Laki-laki},
y = {Bandung, D1, PNS, Kawin, Laki-laki}, maka
|x ∩ y| = {PNS, Kawin, Laki-laki}= 3
|x ∪ y| = { Jakarta, Bandung, SLTA, D1, PNS, Kawin, Laki-Laki}=7
Maka ukuran kemiripan antara x dan y, sim(x,y) =
3
= 0,43
7
2. Weighted Similarity
Rumus ukuran kemiripan pada data transaksi tidak memperhitungkan
banyaknya nilai/status yang dimiliki oleh masing-masing atribut, dan
menganggap bahwa setiap atribut memiliki bobot yang sama. Weighted
similarity merupakan ukuran kemiripan yang memasukkan faktor bobot pada
rumus ukuran kemiripan. Bobot yang dimaksud tergantung dari banyaknya
16
domain yang dimiliki masing-masing atribut. Dua objek yang berbeda pada
atribut dengan 2 nilai seharusnya memiliki kemiripan yang berbeda dengan
dua objek yang berbeda pada atribut dengan 39 nilai. Hal tersebut bisa
dipahami karena kemungkinan bahwa dua objek memiliki nilai tidak sama
akan berbeda untuk setiap atribut (Dutta et al. 2005). Didefinisikan rumus
weighted similarity berikut :
sim(x,y) =
| x∩ y|
| x ∩ y | +2
∑
k∉x ∩ y
|x
1
Dk
, dimana
(4)
∩ y| menyatakan banyaknya irisan nilai atribut antara x dan y, Dk
menyatakan banyaknya status pada atribut k.
Jika diperhatikan kembali contoh dua mahasiswa x dan y yang sudah dibahas
sebelumnya, maka kedua mahasiswa tersebut memiliki perbedaan pada dua
atribut yaitu UPBJJ yang memiliki 39 status, dan Pendidikan Akhir yang
memiliki 6 status. Dengan demikian ukuran kemiripan antara x dan y adalah :
sim(x,y) =
3
= 0,89
1 1
3 + 2( + )
39 6
Terlihat bahwa kedua ukuran kemiripan memiliki perbedaan yang cukup
signifikan.
Ketidakmiripan sering kali disebut dengan jarak, digunakan untuk mencari
jarak antara pasangan objek di dalam data. Jarak antara pasangan objek x dan y
dinyatakan dengan d(x,y). d(x,y) akan bernilai besar jika x dan y merupakan
pasangan objek yang tidak mirip, sebaliknya d(x,y) akan bernilai kecil jika x dan
y merupakan pasangan objek yang mirip. Untuk setiap objek x dan y berlaku
kondisi berikut (Han & Kamber 2001) :
1. d(x,y) ≥ 0, jarak merupakan bilangan non-negatif.
2. d(x,x) = 0, jarak suatu objek dengan dirinya sendiri = 0.
3. d(x,y) = d(y,x), jarak bersifat simetri.
4. d(x,y) ≤ d(x,h) + d(h,y).
17
Terdapat cukup banyak algoritma klastering yang menggunakan ukuran
jarak untuk menggabung atau memisahkan objek dari suatu data. Ukuran jarak
dihitung menggunakan konsep jarak. Konsep jarak yang banyak dikenal adalah :
1. Euclidean Distance. Jarak antara objek x dan y dihitung menggunakan rumus
berikut :
d ( x, y ) = (∑i=1 ( xi - yi ) 2 , dimana
d
(5)
x = (x1,x2, . . . ,xd) dan
y = (y1,y2, . . . , yd) adalah dua data objek dengan d-atribut
2. Cityblock Distance. Jarak antara objek x dan y dihitung menggunakan rumus
berikut :
d ( x, y ) = ∑i =1 xi - yi
d
, dimana
(6)
x = (x1,x2, . . . ,xd) dan
y = (y1,y2, . . . , yd) adalah dua data objek dengan d-atribut
3. Cosine Distance. Jarak antara objek x dan y dihitung menggunakan rumus
berikut :
d ( x, y ) = 1 x.y =
∑
x =
d
i =1
x.y
, dimana
x y
(7)
xi . yi , perkalian dua vektor
∑ x
d
2
i =1
i
=
x.x , adalah panjang vektor x
x = (x1,x2, . . . ,xd) dan y = (y1,y2, . . . , yd) adalah dua data objek dengan datribut
Metode Penggabungan
Metode penggabungan adalah suatu ukuran kuantitatif yang digunakan
oleh algoritma klastering hierarchical agglomerative untuk menggabungkan dua
klaster Cx dan Cy yang dianggap mirip/dekat berdasarkan ukuran jarak kedua
klaster. Didefinisikan d(Cx,Cy) yang menyatakan jarak antara klaster Cx dan Cy,
nx dan ny masing-masing menyatakan jumlah anggota klaster Cx dan Cy, dan
18
d(x,y) menyatakan jarak antara objek x dan y, dimana x dan y masing-masing
merupakan anggota klaster Cx dan Cy.
Metode penggabungan yang sering
digunakan adalah:
1. Single-Link (Minimum distance ). Single-Link disebut juga tetangga terdekat.
Jarak antara klaster Cx dan Cy dihitung berdasarkan jarak terdekat antara dua
objek dalam klaster Cx dan Cy :
d (C x , C y ) = min d ( x, y )
x ∈Cx
y∈Cy
(8)
2. Complete-link (Maximum distance). Complete linkage disebut juga tetangga
terjauh. Jarak antara klaster Cx dan Cy dihitung berdasarkan jarak terjauh
antara dua objek dalam klaster Cx dan Cy :
d (C x , C y ) = max d ( x, y )
x ∈Cy
y∈Cy
(8)
3. Average link (Average distance). Jarak antara klaster Cx dan Cy dihitung
berdasarkan rata-rata jarak antara semua kemungkinan pasangan objek
dalam klaster Cx dan Cy :
d (Cx, Cy ) =
1
nx n y
nx
ny
x =1
y =1
∑ ∑
(9)
d ( x, y )
19
2.4
Algoritma Klastering
Secara umum algoritma klastering menggunakan dua pendekatan :
1. 1on-Hierarchical clustering/Partitioning clustering. Partitioning clustering
mengelompokkan data objek ke dalam klaster yang tidak overlap sedemikian
sehingga tiap data objek berada dalam tepat satu klaster. Algoritma dengan
pendekatan ini tidak dibahas lebih jauh karena tidak digunakan dalam
penelitian.
2. Hierarchical clustering. Hierarchical clustering memungkinkan suatu klaster
memiliki subklaster yang disusun sebagaimana hierarchical tree, disebut juga
dendrogram (Tan et al. 2006). Hierarchical clustering membentuk klaster
secara alami. Untuk meningkatkan kualitas hierarchical clustering, beberapa
algoritma
mengintegrasikan
hierarchical
clustering
dengan
tehnik
pengelompokan yang lain (contoh: algoritma ROCK dan QROCK ).
Jika dilihat dari proses pembentukan klaster, hierarchical clustering
dibedakan menjadi dua:
1. Agglomerative (bottom up). Secara umum, proses agglomerative dimulai
dengan setiap objek berfungsi sebagai klaster, kemudian secara bertahap
menggabungkan setiap pasang klaster terdekat tersebut berdasarkan
‘kedekatannya/kemiripannya’, sampai akhirnya semua klaster tergabung
dalam satu klaster.
2. Divisive (top down). Secara umum, proses divisive dimulai dengan semua
objek berada dalam satu klaster yang sama, secara bertahap kemudian dipisah
sehingga terbentuk klaster-klaster dengan hanya satu objek. Algoritma ini
tidak dibahas lebih jauh karena tidak digunakan dalam penelitian.
20
Algoritma Hierarchical Agglomerative esting (AGES)
Algoritma AGNES pertama kali diperkenalkan oleh Kaufmann dan
Rousseeuw pada tahun 1990. AGNES merupakan algoritma agglomerative
hierarchical clustering yang cukup popular, bekerja pada data numerik (Han &
Kamber 2001). Algoritma AGNES dimulai dengan menghitung matrik jarak
antar objek, setiap objek berfungsi sebagai klaster, kemudian secara bertahap
menggabungkan setiap pasangan klaster terdekat berdasarkan ukuran jarak dan
metode penggabungan yang digunakan, sampai semua klaster tergabung dalam
satu klaster.
Secara formal langkah-langkah algoritma AGNES ditulis oleh Tan et al
(2006) sebagai berikut :
1. Hitung matrik jarak
2. Anggap setiap objek sebagai sebuah klaster
3. Repeat
4. Gabungkan dua klaster terdekat (berdasarkan ukuran jarak dan metode
penggabungan yang digunakan)
5. Update matrik jarak untuk mengetahui
jarak antara klaster baru
dengan klaster asli.
6. Until hanya ada satu klaster
Algoritma ROCK (RObust Clustering using linKs)
Algoritma ROCK pertama kali diperkenalkan oleh Guha et al pada tahun
1999. ROCK merupakan algoritma agglomerative hierarchical clustering untuk
data kategori, menggunakan konsep link sebagai ukuran kemiripan
untuk
membentuk klaster-klasternya. Beberapa parameter yang digunakan dalam
algoritma ROCK (Guha et al. 2000) adalah tetangga, link, dan fungsi goodness.
•
Tetangga
Tetangga dari suatu objek adalah objek lain yang dianggap sangat mirip
dengan objek tersebut. Diberikan suatu threshold θ bernilai antara 1 dan 0. Dua
objek x dan y dikatakan tetangga jika kemiripan antara x dan y, sim(x,y) ≥
θ.θ
merupakan parameter yang ditentukan oleh pengguna yang dapat digunakan
21
untuk mengontrol seberapa dekat hubungan x dan y sehingga kedua objek
tersebut bisa dikatakan sebagai tetangga. Ukuran kemiripan antar pasangan objek
dihitung dengan rumus Jaccard coefficient, yang disajikan pada persamaan (3).
•
Link
Algoritma ROCK menggunakan informasi tentang link sebagai ukuran
kemiripan antar objek. Jika x tetangga dari z dan z tetangga dari y maka dikatakan
x memiliki link dengan y walaupun x bukan tetangga dari y. Didefinisikan :
link(x,y) = Σ tetangga yang dimiliki oleh sekaligus x dan y
Cara menghitung link untuk semua kemungkinan pasangan n objek bisa dibantu
dengan menggunakan matrik tetangga A. Matrik tetangga A adalah matrik nxn,
dimana A[x,y] bernilai 1 jika x dan y merupakan tetangga dan bernilai 0 jika x
dan y bukan tetangga. Jumlah link antar pasangan x dan y dapat diperoleh dari
hasil kali antara baris ke x dan kolom ke y:
link(x,y) =
∑l =1 A[ x, l ] * A[l , y ] , merupakan hasil kali matrik tetangga A
n
dengan dirinya sendiri: AxA. Jika link(x,y) besar maka besar kemungkinan x dan
y berada dalam klaster yang sama.
•
Goodness Function
Algoritma ROCK menggunakan informasi goodness sebagai ukuran
kemiripan antar klaster, dan menggabungkan objek/klaster yang memiliki
kemiripan terbesar. Didefinisikan ukuran goodness antara klaster Ci dan Cj :
g(Ci, Cj) =
link (Ci, Cj )
- ni1+ 2f(θ ) - nj1+ 2f(θ )
( ni + nj )
link(Ci ,Cj) =
1+ 2f(θ )
∑ link ( x , y )
, dimana
(10)
menyatakan banyaknya cross link (jumlah
x∈C i , y∈ C j
link dari semua kemungkinan pasangan objek yang ada dalam Ci dan Cj, ni dan
nj masing-masing menyatakan jumlah anggota klaster i dan jumlah anggota
klaster j, dan f( θ ) =
1−θ
.
1+θ
22
Secara formal langkah-langkah algoritma ROCK ditulis oleh S Guha et al
(2000) sebagai berikut:
1. Ambil sampel secara random dari data
2. Hitung link untuk setiap pasangan objek
3. Terapkan agglomerative hierarchical clustering pada data sampel
berdasarkan link antar objek sebagai ukuran kemiripan.
4. Secara iterative, gabungkan pasangan klaster Ci dan Cj yang memiliki
goodness function g(Ci, Cj) maksimal. Hentikan penggabungan jika tidak lagi
ditemukan link antar pasangan klaster, atau jumlah klaster yang dikehendaki
sudah tercapai.
5. Klaster yang terbentuk dari sampel kemudian digunakan untuk
menempatkan sisa objek yang ada dalam data.
Algoritma QROCK (Quick version of ROCK)
Algoritma QROCK diperkenalkan oleh Dutta et al pada tahun 2005,
merupakan percepatan dari algoritma ROCK.
QROCK sangat efisien untuk
membentuk klaster sebagaimana klaster yang dibentuk oleh algoritma ROCK ketika
tidak lagi ada link antara klaster satu dengan klaster yang lain. Beberapa parameter
yang digunakan dalam algoritma QROCK adalah:
•
Tetangga
Sebagaimana algoritma ROCK, algoritma QROCK juga melibatkan
konsep tetangga untuk membentuk klaster-klasternya. Diberikan suatu threshold
θ bernilai antara 1 dan 0. Dua objek x dan y dikatakan tetangga jika sim(x,y) ≥
θ . Threshold merupakan parameter yang ditentukan oleh pengguna yang dapat
digunakan untuk mengontrol seberapa dekat hubungan x dan y sehingga kedua
objek tersebut bisa dikatakan sebagai tetangga. Semakin besar threshold, semakin
mirip pasangan yang bertetangga tersebut. Setiap objek yang bertetangga dengan
i disusun dalam suatu matrik tetangga A[i]. Untuk algoritma QROCK, ukuran
kemiripan antar objek dihitung dengan rumus weighted similarity, yang disajikan
oleh persamaaan (4).
23
•
MFSET (Merge Find Set)
Tidak seperti algoritma ROCK yang menggunakan informasi link, algoritma
QROCK menggunakan konsep MFSET untuk membentuk klaster-klasternya.
MFSET terdiri dari tiga operasi berikut :
1. Merge(A,B) : gabungan dari himpunan A dan himpunan B
2. Find(x)
: mencari himpunan yang salah satu anggotanya adalah elemen x.
3. Initial(x)
: membentuk himpunan yang hanya beranggotakan elemen x.
Algoritma QROCK dimulai dengan menghitung kemiripan antar objek.
Berdasarkan matrik kemiripan dan threshold yang diberikan, dihitung matrik
tetangga nbrlist[i] untuk setiap objek i. Inisialisasi setiap objek berfungsi sebagai
himpunan. Untuk setiap i, diambil objek x dalam nbrlist[i], dan kemudian
menggabungkannya dengan komponen lain dalam nbrlist [i].
Secara formal langkah-langkah algoritma QROCK ditulis sebagai berikut :
Input : Dataset D
1. Hitung matrik kemiripan antar objek.
2. Hitung matrik tetangga A[i] untuk setiap i ∈ D berdasarkan θ
3. Untuk setiap objek x dalam D, initial(x)
4. Untuk setiap i dalam D
Ambil objek x dalam A[i]
5.
Untuk setiap objek lain y dalam A[i]
A = find(x)
B = find(y)
Jika A ≠ B, maka merge (A,B)
6. Selesai
Algoritma Cluster Ensemble Based Algorithm
Jika dilihat dari tipe data yang akan dianalisa, algoritma klastering
dibedakan ke dalam tiga jenis : algoritma klastering yang digunakan untuk
menganalisis data numerik, algoritma klastering yang digunakan untuk
menganalisis data kategori, dan algoritma klastering yang digunakan untuk
menganalisis data campuran (numerik dan kategori). Pada umumnya algoritma
klastering hanya digunakan untuk memproses salah satu tipe data numerik atau
24
kategori saja. Tidak banyak algoritma klastering yang dikembangkan untuk
memproses data dengan tipe campuran. Salah satunya adalah algoritma
algCEBMDC, suatu algoritma klastering dengan pendekatan cluster ensemble.
Cluster ensemble adalah suatu metode
yang digunakan untuk menjalankan
beberapa algoritma klastering yang berbeda, untuk mendapatkan bagian yang
sama dari data, bertujuan untuk menyatukan hasil dari hasil-hasil clustering
individual (Zengyou et al 2002).
Klastering bertujuan untuk membentuk grup dan mendapatkan pola yang
menarik dari suatu data. Secara umum output yang dihasilkan oleh suatu
algoritma klastering menempatkan setiap data objek ke dalam satu klaster
tertentu. Jika dua objek berada dalam klaster yang sama maka kedua objek
tersebut dianggap sama. Sebaliknya jika dua objek berada dalam klaster yang
berbeda maka kedua objek dianggap berbeda. Jelas bahwa klaster yang dihasilkan
oleh suatu algoritma klastering tidak dapat diurutkan sebagaimana mengurutkan
bilangan real. Dengan kata lain bahwa klaster-klaster tersebut dapat dipandang
sebagai data kategori. Karena output dari masing-masing algoritma klastering
merupakan data kategori, maka masalah cluster ensemble dapat dipandang
sebagai masalah dari klastering data kategori, dimana hasil dari masing-masing
algoritma klastering dapat digabungkan menjadi data yang baru dengan tipe
kategori (Zengyou et al. 2002).
Algoritma algCEBMDC ( Cluster Ensemble Based Mixed Data Clustering)
Algoritma algCEBMDC dikembangkan untuk menyelesaikan masalah
yang berkaitan dengan klastering data dengan tipe campuran (kategori dan
numerik). Algoritma ini menawarkan suatu teknik baru, yaitu teknik devide-andconquer. Pertama, data asli yang bertipe campuran dipisah menjadi dua: data
dengan tipe kategori dan data dengan tipe numerik. Selanjutnya, kedua data
tersebut diproses secara terpisah dengan menggunakan algoritma klastering yang
sesuai dengan tipe masing-masing data. Terakhir, klaster-klaster yang dihasilkan
oleh kedua algoritma digabungkan dan dipandang sebagai data baru dengan tipe
kategori, kemudian diproses dengan menggunakan algoritma klastering data
25
kategori untuk mendapatkan hasil akhir (Zengyou et al. 2002). Langkah dari
algCEBMDC ditunjukkan oleh Gambar 4 berikut:
Dataset
kategori
Algoritma
Klastering untuk
Data Kategori
Algoritma
Klastering untuk
Data Kategori
Data
set
Dataset
numerik
Algoritma
Klastering untuk
Data Numerik
Gambar 4 Langkah Cluster Ensemble Based Algorithm
Secara formal algoritma algCEBMDC ditulis oleh Zengyou et al. (2002)
sebagai berikut:
Algoritma algDEBMDC
Input
Output
:D
//dataset
: tiap data objek masuk dalam cluster tertentu
1. Pisahkan data menjadi categorical dataset(CD) dan numeric dataset(1D)
2. Lakukan klastering terhadap CD dengan menggunakan algoritma
klastering untuk data kategori (contoh: QROCK).
3. Lakukan klastering terhadap ND dengan menggunakan algoritma
klastering untuk data numerik (contoh: AGNES).
4. Gabungkan output dari kedua algoritma menjadi categorical
dataset(CombinedCD).
5. Gunakan QROCK lagi untuk melakukan klastering terhadap
CombinedCD
2.5
Evaluasi Klaster
Dalam klasifikasi, evaluasi merupakan bagian yang tak terpisahkan dengan
pengembangan model. Tidak demikian halnya dengan evaluasi klaster. Dalam
26
analisis klaster, terdapat beberapa tipe klaster yang berbeda, -setiap algoritma
klastering menghasilkan klaster dengan tipenya masing-masing- . Oleh karenanya,
masing-masing kondisi akan membutuhkan ukuran evaluasi yang berbeda.
Sebagai contoh, k-mean clustering dievaluasi menggunakan SSE, tetapi pada
density based cluster SSE sama sekali tidak dapat bekerja dengan baik (Tan et al.
2006).
Walaupun evaluasi klaster pada umumnya bukan merupakan bagian yang
menyatu dengan analisis klaster, tetapi evaluasi klaster cukup penting dan
sebaiknya merupakan bagian dari analisis klaster (Tan et al. 2006). Beberapa
metode evaluasi klaster yang dikenal antara lain Cohesion, Separation dan
Chopenetic Correlation Coefficient.
•
Cohesion dan Separation
Cohesion (kohesi) adalah ukuran kepadatan antar anggota di dalam klaster,
digunakan untuk mengukur seberapa dekat hubungan antar objek didalam klaster.
Sedangkan separation (separasi)
digunakan untuk mengukur seberapa jauh
hubungan satu klaster dengan klaster yang lain. Secara umum, kohesi dan
separasi dihitung dengan persamaan berikut :
Cohesion (Ci)
=
∑ proximity ( x, y)
(12)
∑ proximity ( x, y)
(13)
x ∈ Ci
y ∈ Ci
Separation (Ci, Cj)
=
x ∈ Ci
y ∈ Cj
Untuk graph based clusters, kohesi dari klaster didefinisikan sebagai
jumlah dari bobot link dalam proximity matrix yang menghubungkan objek-objek
dalam klaster tersebut. Proximity matrix terdiri dari tiga komponen: data objek
sebagai nodes, link antar dua data objek, dan bobot yang diberikan untuk tiap link
antar objek.
Sedangkan separasi antar dua klaster dapat diukur dengan
menjumlahkan bobot dari link yang menghubungkan objek dalam satu klaster
dengan objek dalam lain klaster. Pada umumnya, bobot diperoleh dari jumlah
27
anggota klaster (Tan et al. 2006). Semakin besar kohesi dan semakin kecil
separasi, maka semakin baik klaster yang dihasilkan
•
Cophenetic Correlation Coefficient
Cophenetic correlation coefficient adalah korelasi antara jarak tiap
pasangan objek yang dihitung menggunakan konsep jarak dan jarak
penggabungan yang dihasilkan oleh metode penggabungan yang digunakan. Nilai
chopenetic adalah suatu ukuran kuantitatif yang digunakan untuk mengevaluasi
kualitas hierarchical clustering, dihitung menggunakan fungsi cophenet berikut,
c=
∑ (Y
i ⟨ j
ij
- y )(Zij - z )
∑ i ⟨ j (Yij - y )2 ∑ i ⟨ j (Zij
- z)
(11)
2
Klastering dikatakan valid jika terdapat korelasi yang kuat antara kedua
jarak tersebut. Dengan kata lain, suatu hasil hierarchical clustering dikatakan
baik jika nilai copheneticnya mendekati angka 1(satu).
2.6
Penelitian Yang Relevan
Saxena (2002) menggunakan aplikasi analisis klaster dengan pendekatan
hierarchical clustering untuk menganalisis data mahasiswa aktif India Open
University. Data penelitian memiliki 19 parameter yang kemudian dipisah
kedalam empat data berdasarkan tipenya: binary, nominal, interval_1, dan
interval_2. Hierarchical clustering digunakan untuk menganalisis keempat data
dengan ukuran kemiripan/ketidakmiripan disesuaikan dengan masing-masing tipe
data. Cross tabulations dilakukan terhadap hasil klastering keempat data untuk
mendapatkan hasil akhir.
Zengyou (2002) membandingkan dua algoritma klastering, k-prototype
dan algCEBMDC, suatu algoritma klastering yang bekerja pada data dengan tipe
campuran
(kategori
dan
numerik),
dan
hasilnya
menunjukkan bahwa
algCEBMDC memiliki akurasi lebih baik dibandingkan k-prototype.
Download