BAB II TINJAUAN PUSTAKA

advertisement
BAB II
TINJAUAN PUSTAKA
A. Knowledge Discovery in Database (KDD) dan Data Mining
Banyak orang menggunakan istilah data mining dan knowledge discovery in
databases (KDD) secara bergantian untuk menjelaskan proses penggalian informasi
tersembunyi dalam suatu kumpulan data yang besar. Akan tetapi kedua istilah
tersebut memiliki konsep yang berbeda, tetapi berkaitan satu sama lain. ”Salah satu
tahapan dalam proses KDD adalah data mining” (Han & Kamber,2006 dalam
Baskoro,2010).
Han and Kamber (2006) menyatakan :
Knowledge Discovery in Database (KDD) adalah proses menentukan informasi
yang berguna serta pola-pola yang ada dalam data. Informasi ini terkandung
dalam basis data yang berukuran besar yang sebelumnya tidak diketahui dan
potensial bermanfaat. Data Mining merupakan salah satu langkah dari
serangkaian proses iterative KDD. Tahapan proses KDD dapat dilihat pada
gambar dibawah ini.
Gambar 2.1 Tahapan dalam KDD (Han and Kamber 2006)
5
Tahapan proses KDD terdiri dari :
a.
Data Selection
Pada proses ini dilakukan pemilihah himpunan data, menciptakan himpunan data
target, atau memfokuskan pada subset variabel (sampel data) dimana penemuan
(discovery) akan dilakukan. Hasil seleksi disimpan dalam suatu berkas yang
terpisah dari basis data operasional.
b. Pre-Processing dan Cleaning Data
Pre-Processing dan Cleaning Data dilakukan membuang data yang tidak
konsisten dan noise, duplikasi data, memperbaiki kesalahan data, dan bisa
diperkaya dengan data eksternal yang relevan.
c.
Transformation
Proses ini mentransformasikan atau menggabungkan data ke dalam yang lebih
tepat untuk melakukan proses mining dengan cara melakukan peringkasan
(agregasi).
d.
Data Mining
Proses data mining yaitu proses mencari pola atau informasi menarik dalam data
terpilih dengan menggunakan teknik, metode atau algoritma tertentu sesuai
dengan tujuan dari proses KDD secara keseluruhan.
e.
Interpretation / Evaluasi
Proses untuk menerjamahkan pola-pola yang dihasilkan dari data mining.
Mengevaluasi (menguji) apakah pola atau informasi yang ditemukan bersesuaian
6
atau bertentangan dengan fakta atau hipotesa sebelumnya. Pengetahuan yang
diperoleh dari pola-pola yang terbentuk dipresentasikan dalam bentuk visualisasi.
1.
Pengertian data mining.
Santosa (2007) menyatakan bahwa data mining merupakan suatu kegiatan yang
meliputi pengumpulan, pemakaian data historis untuk menentukan keteraturan, pola
atau hubungan dalam set data berukuran besar. Salah satu tugas utama dari data
mining adalah pengelompokan clustering dimana data yang dikelompokkan belum
mempunyai contoh kelompok.
Larose (2005) menyatakan bahwa data mining adalah suatu proses pencarian
korelasi, pola dan tren baru yang berguna dalam media penyimpanan data berukuran
besar menggunakan teknologi pengenalan pola seperti teknik-teknik statistik dan
matematis. Istilah lain yang sering digunakan antara lain knowledge mining from
data,
knowledge extraction,
data/pattern analysis,
data archeology, dan data
dredging.
2.
Tujuan data mining.
Baskoro (2010) menyatakan bahwa adapun tujuan dari adanya data mining
adalah :
a.
Explanatory, yaitu untuk menjelaskan beberapa kegiatan observasi atau suatu
kondisi.
b.
Confirmatory, yaitu untuk mengkonfirmasikan suatu hipotesis yang telah ada.
7
c.
Exploratory, yaitu untuk menganalisis data baru suatu relasi yang janggal.
3.
Pengelompokkan data mining.
Tan et. al. (2005), menyatakan :
Secara garis besar data mining dapat dikelompokkan menjadi 2 kategori utama :
a. Descriptive mining, yaitu proses untuk menemukan karakteristik penting dari
data dalam suatu basis data. Teknik data mining yang termasuk dalam
descriptive mining adalah clustering, association, dan sequential mining.
b. Predictive mining, yaitu proses untuk menemukan pola dari data dengan
menggunakan beberapa variabel lain di masa depan. Salah satu teknik yang
terdapat dalam predictive mining adalah klasifikasi.
Larose and Daniel (2005), menyatakan :
Pengelompokkan data mining berdasarkan tugas yang dapat dilakukan yaitu :
a. Deskripsi
Deskripsi adalah menggambarkan pola dan kecenderungan yang terdapat dalam
data yang memungkinkan memberikan penjelasan
dari suatu pola atau
kecenderungan tersebut.
b. Estimasi
Estimasi hampir sama dengan klasifikasi, akan tetapi variabel target estimasi
lebih ke arah numerik daripada ke arah kategori.
c. Prediksi
Prediksi hampir sama dengan klasifikasi dan estimasi, akan tetapi dalam prediksi
nilai dari hasil akan terwujud di masa yang akan datang.
8
d. Klasifikasi
Klasifikasi adalah proses untuk menemukan model atau fungsi yang
menggambarkan dan membedakan kelas data atau konsep dengan tujuan
memprediksikan kelas untuk data yang tidak diketahui kelasnya (Han and
Kamber, 2006).
e. Clustering
Clustering atau analisis cluster adalah proses pengelompokan satu set bendabenda fisik atau abstrak ke dalam kelas objek yang sama (Han & Kamber, 2006).
f. Asosiasi
Asosiasi dalam data mining adalah menemukan atribut yang muncul dalam satu
waktu.
Kusrini dkk (2009), menyatakan bahwa :
Pengelompokkan data mining diatas dijadikan sebagai teknik dari data mining
berdasarkan tugas yang bisa dilakukan, yaitu :
a. Deskripsi
Para
penulis/analis
biasanya
mencoba
menemukan
cara
untuk
mendeskripsikan pola dan trend yang tersembunyi dalam data.
b. Estimasi
Estimasi mirip dengan klasifikasi, kecuali variabel tujuan yang lebih ke arah
numerik daripada kategori. Misalnya, akan dilakukan estimasi tekanan systolic
9
dari pasien rumah sakit berdasarkan umur pasien, jenis kelamin, indeks berat
badan, dan level sodium darah.
c. Prediksi
Prediksi memiliki kemiripan dengan estimasi dan klasifikasi. Hanya saja,
prediksi hasilnya menunjukkan sesuatu yang belum terjadi (mungkin terjadi
dimasa depan). Misalnya, ingin diketahui prediksi harga beras tiga bulan yang
akan datang.
d. Klasifikasi
Dalam klasifikasi variable, tujuan bersifat kategorik. Misalnya, kita akan
mengklasifikasikan pendapatan dalam tiga kelas, yaitu pendapatan tinggi,
pendapatan sedang, dan pendapatan rendah.
e. Clustering
Clustering lebih kearah pengelompokan record, pengamatan, atau kasus dalam
kelas yang memiliki kemiripan. Sebuah cluster adalah kumpulan record yang
memiliki kemiripan satu dengan yang lain dan memiliki ketidak miripan dengan
record-record dalam cluster yang lain, misalnya untuk tujuan audit akuntasi akan
dilakukan segmentasi perilaku financial dalam kategori dan mencurigakan.
f. Asosiasi
Mengidentifikasi hubungan antara berbagai peristiwa yang terjadi pada satu
waktu. Pendekatan asosiasi tersebut menekankan sebuah kelas masalah yang
dicirikan dengan analisis keranjang pasar.
10
B. Clustering
1.
Pengertian clustering.
“Clustering atau analisis cluster adalah proses pengelompokan satu set benda-
benda fisik atau abstrak ke dalam kelas objek yang sama” (Han and Kamber, 2006).
Baskoro (2010) menyatakan bahwa :
Clustering atau clusterisasi adalah salah satu alat bantu pada data mining yang
bertujuan mengelompokkan obyek-obyek ke dalam cluster-cluster. Cluster
adalah sekelompok atau sekumpulan obyek-obyek data yang similar satu sama
lain dalam cluster yang sama dan dissimilar terhadap obyek-obyek yang berbeda
cluster. Obyek akan dikelompokkan ke dalam satu atau lebih cluster sehingga
obyek-obyek yang berada dalam satu cluster akan mempunyai kesamaan yang
tinggi antara satu dengan lainnya. Obyek-obyek dikelompokkan berdasarkan
prinsip memaksimalkan kesamaan obyek pada cluster yang sama dan
memaksimalkan ketidaksamaan pada cluster yang berbeda. Kesamaan obyek
biasanya diperoleh dari nilai-nilai atribut yang menjelaskan obyek data,
sedangkan obyek-obyek data biasanya direpresentasikan sebagai sebuah titik
dalam ruang multidimensi.
Dengan menggunakan clusterisasi, kita dapat mengidentifikasi daerah yang
padat, menemukan pola-pola distribusi secara keseluruhan, dan menemukan
keterkaitan yang menarik antara atribut-atribut data. Dalam data mining, usaha
difokuskan pada metode-metode penemuan untuk cluster pada basis data
berukuran besar secara efektif dan efisien. Beberapa kebutuhan clusterisasi
11
dalam data mining meliputi skalabilitas, kemampuan untuk menangani tipe
atribut yang berbeda, mampu menangani dimensionalitas yang tinggi, menangani
data yang mempunyai noise, dan dapat diterjemahkan dengan mudah.
Cluster1
Cluster 2
outliers
Gambar 2.2 Contoh Clustering (Baskoro 2010)
Adapun tujuan dari data
clustering ini adalah untuk meminimalisasikan
objective function yang diset dalam proses clustering, yang pada umumnya
berusaha
meminimalisasikan
variasi
di
dalam
suatu
cluster
dan
memaksimalisasikan variasi antar cluster.
2.
Metode clustering.
Secara garis besar, terdapat beberapa metode clusterisasi data. Pemilihan metode
clusterisasi bergantung pada tipe data dan tujuan clusterisasi itu sendiri. Metodemetode beserta algoritma yang termasuk didalamnya meliputi (Baskoro, 2010):
12
a. Partitioning Method
Membangun berbagai partisi dan kemudian mengevaluasi partisi tersebut dengan
beberapa kriteria, yang termasuk metode ini meliputi algoritma K-Means, KMedoid, PROCLUS, CLARA, CLARANS, dan PAM.
b. Hierarchical Methods
Membuat suatu penguraian secara hierarkikal dari himpunan data dengan
menggunakan beberapa kriteria. Metode ini terdiri atas dua macam, yaitu
Agglomerative yang menggunakan strategi bottom-up dan Disisive yang
menggunakan strategi top-down. Metode ini meliputi algoritma BIRCH, AGNES,
DIANA, CURE, dan CHAMELEON.
c. Density-based Methods
Metode ini berdasarkan konektivitas dan fungsi densitas. Metode ini meliputi
algoritma DBSCAN, OPTICS, dan DENCLU.
d. Grid-based Methods
Metode ini berdasarkan suatu struktur granularitas multi-level. Metode
clusterisasi ini meliputi algoritma STING, WaveCluster, dan CLIQUE.
e. Model-based Methods
Suatu model dihipotesakan untuk masing-masing cluster dan ide untuk mencari
best fit dari model tersebut untuk masing-masing yang lain. Metode clusterisasi
ini meliputi pendekatan statitik, yaitu algoritma COBWEB dan jaringan syaraf
tiruan, yaitu SOM.
13
Sadaaki et. al. (2008) menyatakan :
Sebelum memutuskan berapa jumlah cluster yang akan dibentuk bahwa
terdapat dua pendekatan yang dapat digunakan yaitu :
a. supervised (jika jumlah cluster ditentukan).
b. unsupervised (jika jumlah cluster tidak ditentukan/alami).
3.
Document clustering.
“Document clustering merupakan suatu teknik untuk mengelompokkan
dokumen-dokumen
berdasarkan
kemiripannya
dengan
tujuan
mendapatkan
sekumpulan dokumen yang tepat” (Widyawati, 2010). Dokumen-dokumen tersebut
dikelompokan ke dalam cluster berdasarkan tingkat kemiripannya. Suatu cluster
dapat dikatakan bagus apabila tingkat kemiripan antar anggota cluster sangat tinggi
dan tingkat kemiripan antar cluster sangat rendah. Sedangkan kualitas suatu cluster
dapat diukur melalui kemampuannya dalam menemukan pola-pola yang tersembunyi.
4.
Klasifikasi algoritma clustering.
“Algoritma clustering secara luas diklasifikasikan menjadi dua algoritma, yaitu
hierarchical clustering, dan non-hierarchical clustering” (Henjaya, 2010).
Han and Kamber (2006) menyatakan bahwa hierarchical clustering adalah
sebuah metode hierarkis yang menciptakan komposisi hierarkis yang diterapkan pada
objek data, sehingga akan menghasilkan cluster-cluster yang bersarang. Algoritma
hierarchical clustering mengatur seluruh objek dalam sebuah pohon untuk melihat
14
hubungan antara setiap objek (Henjaya, 2010). “Contoh algoritma
Hierarchical
clustering adalah HAC (Hierarchical Agglomerative Clustering)” (Karhendana,
2008).
Non-hierarchical clustering, pada umumnya disebut algoritma partitional
clustering, memberikan sejumlah n objek dan k yang merupakan jumlah dari cluster
yang terbentuk. Algoritma partitional clustering mengolah objek ke dalam kkelompok berdasarkan kriteria optimasi tertentu, dimana setiap kelompok merupakan
representasi sebuah cluster. Han and Kamber (2006) menyatakan bahwa contoh
algoritma partitional clustering antara lain K-Means.
C. Penulisan Terkait
Berdasarkan penulisan yang dilakukan oleh Firdausi dkk pada tahun 2011
tentang Analisis Financial Distress Dengan Pendekatan Data Mining Pada Industri
Manufaktur Go-Public Di Indonesia, dikemukakan bahwa penulisan tersebut berisi
tentang perbandingan algoritma K-Means dan Fuzzy C-Means (FCM). Cara kerja
algoritma K-Means dalam pengelompokan data keuangan dan data perusahaan yang
akan mengalami kebangkrutan lebih baik dari cara kerja algoritma FCM, dimana
dalam penulisan itu menggunakan rumus sum squared error (SSE) serta icdrate
(internal cluster disprersion rate). Dimana dari penulisan ini didapatkan nilai SSE
terkecil pada K-Means, menunjukkan bahwa total kesalahan kuadrat yang terjadi pada
pengelompokkan metode tersebut kecil. Sehingga metode itu dapat dikatakan
memiliki nilai error terkecil dan lebih baik dibandingkan metode FCM.
15
Pada metode FCM, keragaman dalam cluster (Sum of Squared Within) SSW
bernilai tertinggi serta keragaman antar cluster (Sum of Squared Between) SSB
bernilai paling rendah sehingga metode FCM memiliki nilai icdrate tertinggi
dibandingkan K-Means. Hal ini menunjukkan pada pengelompokkan dengan
menggunakan metode FCM, terdapat banyak data berbeda dalam tiap cluster yang
terbentuk dan tercermin pada nilai SSW yang tinggi. Serta sedikitnya perbedaan data
antar cluster yang terbentuk dapat dikatakan perbedaan antar cluster 1 dan 2 tidak
jauh beda yang tercermin pada nilai SSB yang rendah. Nilai terkecil pada seluruh
metode K-Means tercipta karena keragaman dalam cluster SSW yang terbentuk sangat
kecil dan keragaman antar cluster SSB sangat tinggi. Oleh karena itu antara metode
K-Means dengan FCM setelah dibandingkan dengan mempertimbangkan nilai SSE
dan icdrate, didapatkan metode K-Means sebagai metode terbaik.
Penulisan lain yang dilakukan oleh Wahyuni pada tahun 2009 dalam jurnalnya
yang berjudul Penggunaan Cluster-Based Sampling Untuk Penggalian Kaidah
Asosiasi Multi Obyektif, menjelaskan bahwa algoritma K-Means lebih baik
dibandingkan algoritma FCM. Dalam penulisan ini berisi tentang dua pembandingan
metode clustering yaitu K-Means dan FCM. Adapun penulisan ini membahas hasil
penggalian kaidah asosiasi multi obyektif dengan menggunakan sampel yang
dilakukan proses clustering terlebih dahulu akan menghasilkan kaidah-kaidah
asosiasi yang lebih baik. Hal ini ditunjukkan dengan nilai rata-rata yang diperoleh
mempunyai nilai yang lebih besar dibandingkan data yang tidak melalui proses
clustering terlebih dahulu. Perbandingan metode clustering yang digunakan yaitu K16
Means dan FCM. Metode K-Means lebih baik daripada FCM, hal ini ditunjukkan
dengan nilai rata-rata confidence yang dihasilkan menggunakan metode K-Means
mempunyai nilai yang lebih besar dibandingkan dengan metode FCM.
Penulisan yang dilakukan oleh Widyawati pada tahun 2010 dalam skripsinya
yang berjudul Perbandingan Clustering Based On Frequent Word Sequence (CFWS)
Dan K-Means Untuk Pengelompokkan Dokumen Berbahasa Indonesia menjelaskan
bahwa didapatkan nilai F-Measure dan Purity hasil implementasi menggunakan
algoritma K-Means lebih tinggi dibandingkan dengan implementasi menggunakan
algoritma CFWS. Hal ini membuktikan bahwa algoritma K-Means lebih tepat
digunakan untuk pengelompokkan dokumen berbahasa Indonesia.
D. Algoritma K-Means
1.
Pengertian K-Means.
“K-Means merupakan algoritma yang umum digunakan untuk clustering
dokumen. Prinsip utama K-Means adalah menyusun k prototype atau pusat massa
(centroid) dari sekumpulan data berdimensi n” (Aryan, 2010). Sebelum diterapkan
proses algoritma K-means, dokumen akan di
preprocessing terlebih dahulu.
Kemudian dokumen direpresentasikan sebagai vektor yang memiliki term dengan
nilai tertentu.
Agusta (2007) menyatakan bahwa K-Means merupakan salah satu metode data
clustering non hirarki yang berusaha mempartisi data yang ada ke dalam bentuk satu
atau lebih cluster/kelompok. Metode ini mempartisi data ke dalam cluster/kelompok
17
sehingga data yang memiliki karakteristik sama dikelompokkan ke dalam satu cluster
yang sama.
2.
Algoritma K-Means.
Algoritma k-means merupakan algoritma yang membutuhkan parameter input
sebanyak k dan membagi sekumpulan n objek kedalam k cluster sehingga tingkat
kemiripan antar anggota dalam satu
cluster tinggi sedangkan tingkat kemiripan
dengan anggota pada cluster lain sangat rendah. Kemiripan anggota terhadap cluster
diukur dengan kedekatan objek terhadap nilai mean pada cluster atau dapat disebut
sebagai centroid cluster atau pusat massa (Widyawati, 2010).
Berikut rumus pengukuran jarak menurut (Santosa, 2007) :
d(x,y)
= ||x-y||2 =
𝑛
𝑖=1(π‘₯𝑖
− 𝑦 𝑖)
2
......... ( 1 )
Adapun rumus perhitungan jarak lainnya didefinisikan sebagai berikut :
......... ( 2 )
d(x,y) = √ ( xi – yi )2 + ( xi – yi )2
Keterangan :
d = titik dokumen
x = data record
y = data centroid
18
Jarak yang terpendek antara centroid dengan dokumen menentukan posisi
cluster suatu dokumen. Misalnya dokumen A mempunyai jarak yang paling pendek
ke centroid 1 dibanding ke yang lain, maka dokumen A masuk ke group 1. Hitung
kembali posisi centroid baru untuk tiap-tiap centroid (Ci..j)dengan mengambil ratarata dokumen yang masuk pada cluster awal (Gi..j ). Iterasi dilakukan terus hingga
posisi group tidak berubah. Berikut rumus dari penentuan centroid.
C (i) =
1
𝐺𝑖
π‘₯πœ–π‘
𝑑π‘₯
......... ( 3 )
Adapun rumus iterasi lainnya didefinisikan sebagai berikut :
C(i) = x1+ x2+ x..+ x…
......... ( 4 )
π‘₯
Keterangan :
x1
= nilai data record ke-1
x2
= nilai data record ke-2
∑x
= jumlah data record
K-Means merupakan algoritma clustering yang bersifat partitional yaitu
membagi himpunan objek data ke dalam sub himpunan (cluster) yang tidak overlap,
sehingga setiap objek data berada tepat dalam satu cluster. Strategi partitionalclustering yang paling sering digunakan adalah berdasarkan kriteria square error.
Secara umum, tujuan kriteria square error adalah untuk memperoleh partisi (jumlah
cluster tetap) yang meminimalkan total square error.
19
SSE (Sum Squared of Error) menyatakan total kesalahan kuadarat yang terjadi
bila n data i n x ,..., x dikelompokkan kedalam k cluster dengan pusat tiap cluster
adalah k m ,...,m 1 . Nilai SSE tergantung pada jumlah cluster dan bagaimana data
dikelompokkan ke dalam cluster-cluster tersebut. Semakin kecil nilai SSE, semakin
bagus hasil clustering-nya.
Adapun rumus SSE adalah sebagai berikut :
......... ( 5 )
SSE = (Ci)2 + (Ci)2 + (C..)2 + (C..)2
Keterangan :
Ci
3.
=
nilai centroid
Tahapan algoritma K-Means.
Widyawati (2010), menyatakan :
Proses algoritma K-Means sebagai berikut :
a. Pilih
secara
acak
objek
sebanyak
k,
objek-objek
tersebut
akan
direpresentasikan sebagai mean pada cluster.
b. Untuk setiap objek dimasukan kedalam cluster yang tingkat kemiripan objek
terhadap
cluster tersebut tinggi. Tingkat kemiripan ditentukan dengan jarak
objek terhadap mean atau centroid cluster tersebut.
c. Hitung nilai centroid yang baru pada masing-masing cluster.
d. Proses tersebut diulang hingga anggota pada kumpulan cluster tersebut tidak
berubah.
20
Sedangkan menurut Adiningsih (2007) tahap penyelesaian algoritma K-Means
adalah sebagai berikut :
a.
Menentukan K buah titik yang merepresentasikan obyek pada setiap cluster
(centroid awal).
b.
Menetapkan setiap obyek pada cluster dengan posisi centroid terdekat.
c.
Jika semua obyek sudah dikelompokkan maka dilakukan perhitungan ulang
dalam menentukan centroid yang baru.
d.
Ulangi langkah ke-2 dan ke-3 sampai centroid tidak berubah.
Kurniawan dkk (2010) menyatakan :
Langkah-langkah dari algoritma K-Means yaitu :
Start
.
Number of
cluster K
Centroid
No object
move group
Distance objects to
centroids
Grouping based on
minimum distance
Gambar 2.3 Cara Kerja Algoritma K-Means (Kurniawan dkk 2010)
21
End
Berikut penjelasan dari gambar 2.3, dengan algoritma K-means dilakukan cara
berikut hingga ditemukan hasil iterasi yang stabil :
a.
Menentukan data centroid, pada sistem ini, ditentukan bahwa centroid pertama
adalah n data pertama dari data-data yang akan di-cluster.
b.
Menghitung jarak antara centroid dengan masing-masing data.
c.
Mengelompokkan data berdasarkan jarak minimum.
d.
Jika penempatan data sudah sama dengan sebelumnya, maka stop. Jika tidak,
kembali ke cara yang ke-2.
22
Download