Anda di halaman 1dari 32

1

Perbandingan Metode Clustering Menggunakan Metode Single


Linkage dan K-Means pada Pengelompokan Dokumen
Comparison of Clustering Methods using Single Linkage and K-
Means Method on Document Clustering
Proposal Tugas Akhir
Rendy Handoyo
114080082
Program Studi Sistem Komputer
Fakultas Elektro dan Komunikasi
Institut Teknologi Telkom
Bandung
2013
2
LEMBAR PENGESAHAN
Proposal Tugas Akhir:
Perbandingan Metode Clustering Menggunakan Metode Single
Linkage dan K-Means pada Pengelompokan Dokumen
Comparison of Clustering Methods using Single Linkage and K-
Means Method on Document Clustering
Disusun oleh :
RENDY HANDOYO
NIM : 114080082
Telah diperiksa dan disetujui sebagai salah satu syarat memperoleh
gelar Sarjana Teknik pada Program Studi S-1 Sistem Komputer
Fakultas Elektro dan Komunikasi Institut Teknologi Telkom
Bandung, April 2013
Disetujui dan disahkan oleh :
Pembimbing I Pembimbing II
R. Rumani, Drs., Ir., MSEE Surya Michrandi, ST., MT
NIK : 94470315-3 NIK : 13861155-2
3
Abstrak
Mengelompokkan suatu dokumen yan berbentuk soft copy bisa dilakukan dengan suatu
aplikasi pengelompokkan. Aplikasi pengelomppokkan ini akan mengolah setiap dokumen sesuai
kemiripan dokumen tersebut. Pada awalnya, akan dilakukan preprocessing supaya dokumen bisa
direpresentasikan sebagai suatu nilai yang bisa diolah. Kemudian hasil nilai tersebut akan
dilanjutkan kedalam proses pengujian kemiripan suatu dokumen. Kemiripan suatu dokumen
dilihat dari distance space yang diperoleh. Dokumen - dokumen yang memiliki nilai distance
space yang paling kecil akan dikelompokkan terlebih dahulu.
Pada tugas akhir ini, pengelompokkan dokumen - dokumen menggunakan teknik
pengelompokkan K-Means dan Single Linkage. Metode K- Means akan membangkitkan suatu
titik tengah atau centroid secara random untuk mengukur nilai distance space nya. Setiap
dokumen yang memiliki jarak terdekat dengan centroid akan dikelompookan menjadi satu
kelompok. Setelah itu, dilakukan update untuk nilai centroidnya dan berhenti jika nilai centroid
tersebut tidak berubah lagi setelah diupdate Sedangkan Single Linkage, akan menggunakan
dokumen - dokumen yang tersedia untuk mengukur jarak antar dokumen. Jarak antar dokumen
yang paling kecil akan di kelompokkan menjadi satu kelompok. Setelah itu, akan dilakukan
update jarak antar dokemen dengan suatu cluster yang baru atau jarak antar dokumen dengan
dokumen lain. Single linkage akan berhenti jika sudah mencapai jumlah cluster yang diinginkan.
Untuk melihat tingkat kualitas dari cluster yang terbentuk dilakukan pengujian dari nilai
silhouette coefficient dan purity. Jika nilai silhouette coefficient mendekati 1 maka kualitas
cluster tersebut akan semakin baik. Untuk pengujian Purity akan dilakkan secara manual dengan
mengecek atau membaca setiap cluster apakah sudah tergolong sesuai kelompoknya atau tidak.
Kata Kunci : Clustering, Single Lingkage Clustering, K-Means Clustering, Silhouette
coefecient, purity.
4
KATA PENGANTAR
Puji syukur penulis ucapkan kepada Tuhan Yang Maha Esa atas karuniaNya penulis bisa
menyelesaikan Proposal Tugas Akhir yang berjudul Perbandingan Metode Clustering
Menggunakan Metode Single Linkage dan K-Means pada Pengelompokan
Dokumen. Tugas akhir ini disusun untuk memenuhi persyaratan untuk menjadi sarjan Sistem
Komputer, Fakultas Elektro dan Komunikasi, Institut Teknologi Telkom.
Saya mengucapakan terima kasih kepada semua pihak yang telah membantu saya dalam
menyelesaikan Proposal Tugas Akhir ini. Dosen pembimbing saya Pak Rumani dan Pak Surya
yang telah mengarahkan saya dalam pembuatan Proposal Tugas Akhir ini. Serta teman teman
semua yang selau memberikan inspirasi dalam kendala kendala yang saya temui.
Dalam penyusunan Proposal Tugas Akhir ini, penulis menyadari bahwa Proposal Tugas
Akhir ini masih memiliki kekurangan. Untuk itu, saya berharap setiap pembaca mau memberikan
saran kepada penulis melalui sianipar.rendy@yahoo.co.id. Ataupun siapa saja yang ingin berbagi
ilmu saya sangat terbuka untuk turut berbagi.
Akhir kata penulis ucapakan terimakasih atas perhatiannya. Penulis berharapa tugas akhir
ini bisa berguna bagi para pembaca dan bisa terus dikembangkan menjadi yang terbaik untuk
pengembangan dunia keamanan komputer.
Bandung, Mei 2013
Penulis
5
DAFTAR ISI
HALAMAN JUDUL
LEMBAR PENGESAHAN.................................................................................................i
ABSTRAK............................................................................................................................ii
KATA PENGANTAR..........................................................................................................iii
DAFTAR ISI.........................................................................................................................iv
BAB I PENDAHULUAN.....................................................................................................1
1.1 Latar Belakang.......................................................................................1
1.2 Rumusan Masalah .................................................................................2
1.3 Tujuan.....................................................................................................2
1.4 Batasan Masalah....................................................................................2
1.5 Metedologi Penelitian ...........................................................................3
1.6 Sistematika Penulisan Tugas Akhir .....................................................3
BAB II LANDASAN TEORI ..............................................................................................4
2.1Document Clustering..............................................................................4
2.2 Pre Processing ........................................................................................5
2.2.1 Case Folding ............................................................................5
2.2.2 Tokenization...........................................................................5
2.2.3 Stopword Removal ................................................................5
2.2.4 Stemming................................................................................5
6
2.2.5 Pembobotan Term .................................................................7
2.2.5.1 Term Frequence (TF)................................................7
2.2.5.2 Inverse Document Frequency (IDF) ........................7
2.2.5.3 TF.IDF........................................................................8
2.2.5.4 Normalisasi.................................................................8
2.3 Vector Space Model (VSM).................................................................8
2.4 Distance Space......................................................................................8
2.5 Single Linkage Clustering...................................................................9
2.6 K-Means Algorithm.............................................................................9
2.7 Evaluasi Clustering..............................................................................11
2.7.1 Silhouette Coefficient ............................................................11
2.7.2 Purity......................................................................................12
BAB III GAMBARAN SISTEM.......................................................................................13
3.1 Gambaran Umum Sistem.....................................................................13
3.2 Spesifikasi Kebutuhan Sistem...............................................................16
3.2.1 User...........................................................................................16
3.2.2 Input Data................................................................................16
3.2.3 Proses / Fungsionalitas Sistem...............................................16
3.2.4 Keluaran Sistem......................................................................17
3.3 Software Tools........................................................................................17
3.4 Model Analisis ........................................................................................18
3.4.1 Use Case Diagram...................................................................18
3.4.2 Skenario Use Case Diagram...................................................19
3.4.2.1 Insertion of data.........................................................19
3.4.2.2 Preprocess of data .....................................................19
3.4.2.3 Selection of cluster method.......................................20
3.5 Data Base ................................................................................................21
3.6 Desain Interface .....................................................................................21
7
3.7 Implementasi Sistem..............................................................................22
3.8 Rancangan Pengujian............................................................................22
BAB IV KONTRIBUSI KEILMUAN .............................................................................23
DAFTAR PUSTAKA.........................................................................................................25
8
1. PENDAHULUAN
1.1 Latar Belakang
Berita adalah media yang dijadikan sebagai peyampaian informasi informasi yang
penting. Pada saat ini, berita telah disebarkan melalui dunia internet dan hasil perkembangan
penyebarannya sangat cepat sekali. Karena itulah jumlah berita saat ini menjadi sangat banyak
sekali. Jumlah berita yang banyak ini akan membuat pembaca berita menjadi kesulitan untuk
memperoleh berita yang diinginkan untuk dibaca. Setiap pembaca akan semakin dimudahkan
dalam membaca berita yang diinginkan dengan adanya pengelompokan berita. Pengelompokan
ini merupakan suatu metode yang dikenal dengan istilah Clustering.
Clustering adalah suatu metode analisa data untuk memecahkan masalah
pengelompokan. Analisa yang dilakukan adalah dengan mencari hubungan suatu data dengan
data lain. Jika data tersebut memiliki kemiripan maka data tersebut akan dikelompokkan menjadi
satu cluster. Clustering dibedakan menjadi dua macam yaitu Hierarchical Clustering dan
Partitioned Clustering. Hierarchical Clustering merupakan metode pengelompokan data secara
bertahap sedangkan Partional Clustering merupakan metode pengelompokkan yang langsung
menentukan jumlah kelompok atau cluster yang diperlukan. Tugas akhir ini akan
membandingkan teknik Clustering secara Hierarchical Clustering dengan Partitioned
Clustering. Untuk Clustering secara Hierarchical Clustering akan digunakan metode Single
Linkage sedangkan Partional Clustering akan digunakan metode K- Means.
Pada metode Single Linkage semua dokumen dianggap sebagai cluster. Kemudian
dihitung jarak antar dokumen yang satu dengan dokumen yang lainnya. Jarak terdekat dari setiap
dokumen akan dikelompokkan terlebih dahulu menjadi satu cluster. Setelah itu, dihitung pula
jarak antar cluster yang telah terbentuk dengan dokumen lain. Demikian seterusnya sampai pada
akhirnya dokumen dokumen tersebut dikelompokkan sesuai dengan cluster yang diinginkan.
Sedangkan metode K-Means akan membangkitkan centroid yang merupakan suatu titik. Titik ini
akan dijadikan sebagai acuan untuk mengukur jarak antar dokumen dengan centroid tersebut.
Jika jarak nya semakin dekat dengan centroid tersebut maka akan dijadikan sebagai satu cluster.
Setelah itu dilakukan update centroid, jika setelah dilakukan update centroid nilai centroidnya
sama dengan nilai centroid sebelumnya maka proses pengelompokan akan selesai.
9
Dalam tugas akhir ini, perbandingan dari dua metode tersebut akan dilihat dari segi
kualitas cluster dan purity (kemurnian) y. Pengujian dari segi kualitas cluster dilakukan dengan
melihat silhouette coefficient. Pengujian ini akan melihat seberapa baik suatu cluster. Silhouette
coefficient dilakukan dengan menghitung jarak rata - rata antar dokumen dalam satu cluster.
Setelah itu menghitung jarak antar suatu dokumen dengan dokumen lain yang berada dalam
cluster lain dan yang diambil adalah jarak yang paling terdekat. Sehingga kombinasi dari nilai
tersebut akan memberikan perhitungan silhouette coefficient. Sedangkan pengujian purity, akan
dilakukan secara manual. Pengujian manual yang dimaksud adalah, dengan membaca setiap
dokumen apakah merupakan dokumen yang mirip atau berada dalam satu ketegori yang sama.
Jika semua dokumen merupakan dokumen yang sama, maka nilai purity akan bernilai 1.
Sedangkan jika ada satu dokumen atau beberapa yang tidak sama, maka akan masuk ke
perhitungan rumus purity.
1.2 Rumusan Masalah
Rumusan masalah dalam tugas akhir ini adalah :
1. Bagaimana membuat suatu sistem yang bisa mengelompokkan dokumen menggunakan
metode Single Linkage dan K-means.
2. Bagaimana melakukan pengujian untuk melihat metode yang lebih baik antara Single
Linkage dan K-means berdasarkan Silhouette Coefficient dan Purity.
1.3 Tujuan
Tujuan dari tugas akhir ini adalah :
1. Mengimplementasikan metode Single Linkage dan K-Means.
2. Membandingkan metode antara Single Lingkage dan K-Means untuk mengetahui metode
yang lebih baik dalam mengelompokkan dokumen
1.4 Batasan Masalah
Batasan masalah yang digunakan dalam tugas akhir ini adalah sebagai berikut :
1. Dataset yang digunakan adalah dokumen berita yang diambil dari internet.
2. Aplikasi bekerja secara offline
3. Stemming yang digunakan adalah stemming bahasa Indonesia sehingga tidak mengatasi
kata asing yang terdapat dalam dokumen
4. Dokumen yang digunakan hanya dalam bentuk format .txt.
10
1.5Metodologi Penelitia
Metode yang digunakan dalam menyelesaikan tugas akhir ini adalah menggunakan
metode studi pustaka atau studi literatur dan analisis dengan langkah kerja sebagai berikut :
1. Mencari dan mempelajari referensi bahan-bahan yang berhubungan dengan tugas akhir
ini seperti Text Mining, Hierarchical Agglomerative Clustering, Partitioned Clustering,
Single Linkage, K-Means.
2. Merancang aplikasi untuk melakukan pengelompokan data dan
mengimplementasikannya ke dalam perangkat lunak
3. Melakukan pengujian sistem dengan data yang diperoleh
4. Melakukan analisis dari hasil pengujian
5. Membuat kesimpulan dari hasil implementasi dan analisis
6. Menyusun laporan tugas akhir
1.6 Sistematika Penulisan
Tugas Akhir ini disusun berdasarkan sistematika sebagai berikut :
BAB I : Pendahuluan
Pada bab ini berisi latar belakang masalah, perumusan masalah yang akan dibahas, batasan
masalah, tujuan yang akan dicapai, metodologi penyelesaian, serta sistematika penulisan.
BAB II : Dasar Teori
Pada bab ini berisi dasar teori yang digunakan dalam membangun sistem untuk Tugas
Akhir ini.
BAB III : Analisis dan Perancangan Sistem
Pada bab ini berisi analisis sistem yang meliputi gambaran umum dan analisis kebutuhan
sistem, serta perancangan sistem
BAB IV : Implementasi dan Pengujian
Pada bab ini akan diuraikan mengenai hasil yang didapatkan dari Clustering dokumen
otomatis menggunakan metode Sinlge Linkage dan K-means dan akan dilakukan analisis
parameter evaluasi hasil Clustering dan nilai purity-nya.
BAB V : Penutup
Bab ini akan berisi kesimpulan dan saran dari hasil pengujian yang dilakukan serta
diberikan saran-saran untuk pengembangan lebih lanjut perangkat lunak ini.
11
2. Landasan Teori
2.1 Document Clustering
Dokumen Clustering adalah pengelompokan secara otomatis dokumen teks ke dalam
kelompok sehingga dokumen-dokumen di dalam sebuah cluster memiliki kemiripan yang tinggi
dibandingkan dengan yang lain, tetapi berbeda dengan dokumen di cluster lainnya. Tidak seperti
dokumen klasifikasi, tidak ada dokumen yang memiliki label disediakan di Clustering. Dokumen
yang ada pertama akan diolah (pre processing) menjadi data yang dapat diolah untuk proses
Clustering selanjutnya, setelah itu hasil pre processing tadi akan dikelompokkan kemudian
dimasukkan ke dalam cluster-nya, yang diilustrasikan sebagai berikut :
Gambar 2-1 Langkah-langkah dalam Clustering
Banyak algoritma Clustering yang membutuhkan fungsi jarak untuk mengukur kemiripan
antar datanya. Namun secara umum algoritma Clustering dibagi atas 2 yaitu :
1. Metode Partitioning (Non Hirarki)
Metode ini juga disebut exclusive Clustering, dimana setiap data harus masuk ke cluster
tertentu. Metode ini bertujuan untuk mengelompokkan n objek data ke dalam k kelompok
(k<n), dimana nilai k telah ditentukan sebelumnya oleh pemakai. Salah satu metode
pengelompokan data yang sering dipakai pada non hirarki adalah algoritma K-Means.
2. Metode Hierarchical
Metode ini bertujuan untuk mengelompokkan objek-objek data ke dalam pohon cluster.
Metode ini ada 2 macam berdasarkan arahnya, yaitu : bottom up atau agglomerative yang
menggabungkan klaster kecil menjadi cluster besar dan top down yang memecah cluster
besar menjadi cluster yang lebih kecil.
12
2.2 Pre Processing
Dalam dokumen Clustering perlu dilakukan pre prosessing terlebih dahulu terhadap
dokumen-dokumen yang ingin diklaster. Dalam tahap pre processing ada beberapa tahap yang
perlu dilakukan, antara lain :
2.2.1 Case Folding
Case folding adalah proses mengubah semua huruf dalam dokumen berita menjadi huruf
kecil. Huruf yang akan diterima hanya huruf a sampai huruf z. Karakter selain huruf akan
dihilangkan.
2.2.2 Tokenization
Tokenization ialah segmentasi dokumen berita untuk mendapatkan daftar kata (term)
yang terdapat dalam dokumen tersebut. Hal ini dilakukan agar tiap kata dapat diketahui frekuensi
kemunculan pada suatu berita. Setelah tokenization, kalimat-kalimat panjang dihasilkan dalam
token/term pendek. Tanda baca dan karakter-karakter khusus dihapus untuk kemudian dilakukan
proses stopword removal dan stemming sehingga didapatkan token-token.
2.2.3 Stopword Removal
Stopword removal adalah proses pembuangan stopword yang terdapat dalam dokumen.
Stopword dapat didefenisikan sebagai kata yang tidak memiliki arti deskriptif terhadap isi
dokumen. Kata yang termasuk dalam stopwords misalnya adalah kata sambung seperti yang,
di, dan, dari, dan yang lainnya. Fungsi dari stopword removal sendiri ialah untuk
mereduksi jumlah term yang akan diproses. Stopword ini tergantung dari bahasa yang digunakan.
Dalam tugas akhir ini referensi yang digunakan sebagai stopword berasal dari link berikut ini :
http://svn.apache.org/repos/asf/lucene/dev/trunk/modules/analysis/common/src/
resources/org/apache/lucene/analysis/id/stopwords.txt.
2.2.4 Stemming
Stemming adalah proses pengembalian setiap kata berimbuhan ke bentuk dasarnya. Hal
ini dilakukan untuk mempermudah pada proses pembobotan term nantinya Sebagai contoh
membeli, pembeli, dan dibeli akan di-stem menjadi kata dasarnya yaitu beli.
Algoritma stemming untuk suatu bahasa tertentu berbeda dengan bahasa lainnya. Hal ini
dikarenakan struktur bahasa yang berbeda sehingga pendekatan yang dilakukan juga tentu
13
berbeda. Contohnya stemming untuk bahasa Indonesia berbeda dengan stemming untuk bahasa
Inggris karena struktur morfologinya yang sudah jelas berbeda apalagi dengan bahasa Thailand
yang memiliki aksara yang berbeda.
Algoritma stemming sudah banyak tersedia dan diterapkan dalam infomation retrieval.
Misalnya stemming Porter, Lancester, dan lain-lain. Namun untuk stemming bahasa Indonesia
sendiri masih sedikit. Beberapa diantaranya adalah algoritma Nazief-Adriani, Arifin-Setiono, dan
Vega. Adapun stemming yang dipakai dalam pengerjaan TA ini adalah stemming bahasa
Indonesia Nazief-Adriani. Gambaran umum struktur kata pada bahasa Indonesia :
Prefiks1 + Prefiks2 + Kata Dasar + Sufiks3 + Sufiks2 + Sufiks1
Secara umum, proses algoritma Nazief-Adriani adalah sebagai berikut :
1. Pertama, cari kata yang akan di-stem dalam kamus kata dasar. Jika ditemukan maka
diasumsikan kata adalah root word. Maka agloritma berhenti.
2. Inflection suffixes (-lah, -kah, -ku, -mu, atau -nya) dibuang. Jika berupa
particles (-lah, -kah, -tah, atau -pun) maka langkah ini diulangi lagi untuk
menghapus Possesive Pronouns (-ku, -mu, atau -nya) jika ada.
3. Hapus derivation suffixes (-i, -an, atau -kan). Jika kata ditemukan di kamus, maka
algoritma berhenti. Jika tidak maka masuk ke langkah 3a
a. jika -an telah dihapus dan huruf terakhir dari kata tersebut adalah -k, maka -k
juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus maka algoritma
berhenti. Jika tidak ditemukan maka lakukan langkah 3b.
b. akhiran yang dihapus (-i. -an, atau -kan) dikembalikan, lanjut ke langkah 4.
4. Hapus derivation prefix. Jika pada langkah 3 ada sufiks yang dihapus maka pergi ke
langkah 4a, jika tidak pergi ke langkah 4b.
a. periksa tabel kombinasi awalan-akhiran yang tidak diijinkan. Jika ditemukan maka
algoritma berhenti, jika tidak pergi ke langkah 4b. Kombinasi awalan dan akhiran
yang tidak diizinkan dapat dilihat pada Tabel 2-1.
14
Tabel 2-1 Kombinasi Awalan-Akhiran yang Tidak Diijinkan
Awalan Akhiran
be- -i
di- -an
ke- -i, -kan
me- -an
se- -i, -kan
b. Tentukan tipe awalan kemudian hapus awalan. Jika root word belum juga ditemukan
lakukan langkah 5. Jika sudah ditemukan maka algoritma berhenti. Catatan : jika
awalan kedua sama dengan awalan pertama algoritma berhenti.
5. Melakukan recoding.
6. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal diasumsikan
sebagai root word. Proses selesai.
2.2.5 Pembobotan Term
Pembobotan term digunakan untuk memberikan bobot yang berbeda kepada setiap
kata/term yang terdapat dalam dokumen dilihat dari frekuensi kemunculannya dalam satu
dokumen dan seberapa sering dia muncul di semua dokumen yang ada.
2.2.5.1 Term Frequency (TF)
Term Frequency (TF) adalah cara pembobotan term yang paling sederhana. Konsep
metode ini adalah term yang muncul beberapa kali dalam sebuah dokumen lebih penting
daripada term yang hanya muncul satu kali. TF dapat dirumuskan sebagai berikut :
TF (t
k
, d
j
) = f (t
k
, d
j
) (2.1)
Dimana (t
k
, d
j
) adalah jumlah kemunculan term k dalam dokumen j.
2.2.5.2 Inverse Document Frequency (IDF)
Document Frequency (DF) memperhatikan kemunculan kata pada kumpulan dokumen.
Sebuah kata yang sering muncul pada kumpulan dokumen lebih berarti daripada kata-kata yang
tidak sering muncul. Tetapi term yang sering muncul pada kumpulan dokumen adalah
diskriminator yang tidak baik. Sehingga, muncullah teori tentang Inverse Document Frequency
(IDF) yang memberikan bobot yang tinggi untuk term yang jarang muncul pada kumpulan
dokumen. IDF dapat dirumuskan sebagai berikut :
15
IDF (t
k
) = log
N
d] (t)
(2.2)
Dimana N adalah jumlah dokumen yang dipakai dan df (t) adalah jumlah dokumen yang
mengandung term k paling tidak satu kali.
2.2.5.3 TF IDF
Pembobotan TF IDF adalah jenis pembobotan yang sering digunakan dalam
information retrieval dan data mining. Pembobotan ini adalah suatu pengukuran statistik untuk
mengukur seberapa penting sebuah kata dalam kumpulan dokumen. Tingkat kepentingan
meningkat ketika sebuah kata muncul beberapa kali dalam sebuah dokumen tetapi dibarengi
dengan frekuensi kemunculan kata tersebut dalam kumpulan dokumen. TF IDF dapat
dirumuskan sebagai berikut :
TF IDF (t
k
, d
j
) = TF (t
k
, d
j
) IDF (t
k
) (2.3)
2.2.5.4 Normalisasi
Panjang sebuah dokumen pasti berbeda-beda. Untuk itu, setelah mendapatkan bobot
untuk masing-masing term pada seluruh dokumen, bobot tersebut perlu dinormalisasi
berdasarkan panjang dokumen tersebut.
w (word
i
) =
w (wod)
w
2
(wod) + w
2
(wod2)+ + w
2
(wodn)
(2.4)
2.3 Vector Space Model (VSM)
Sebelum menghitung jarak antar dokumen, dokumen harus direpresentasikan menjadi
sesuatu yang dapat dihitung nilainya. Sebuah dokumen akan direpresentasikan sebagai sebuah
vektor v, dimana setiap elemen dalam v merupakan bobot dalam sebuah term.
2.4 Distance Space
Menghitung distance space untuk menentukan similarity/ kesamaan atau
dissimilarity/ketidaksamaan antar data. Suatu cluster diharapkan memiliki tingkat similarity yang
besar antar anggota-anggotanya dan memiliki tingkat dissimilarity yang besar dengan cluster-
cluster yang lainnya. Distance space yang sering digunakan ialah Euclidean distance,
dirumuskan:
16
d(i,j) = |x
i1
x
j1
|
2
+ |x
i2
x
j2
|
2
+ + |x
in
x
jn
|
2
(2.5)
d(i,j) = jarak antara data ke i dan data ke j x
j1
= nilai atribut ke satu dari data ke j
n = jumlah atribut yang digunakan x
i1
= nilai atribut ke satu dari data ke i
2.5 Single Linkage Clustering
Single Linkage Clustering adalah metode hierarchical Clustering yang bersifat bottom up
yaitu penggabungan n buah objek menjadi satu cluster tunggal atau sampai jumlah yang telah
kita tentukan. Metode ini awalnya dimulai dengan meletakkan setiap objek data sebagai sebuah
cluster tersendiri dan selanjutnya menggabungkan cluster-cluster tersebut menjadi cluster yang
lebih besar dan lebih besar lagi sampai akhirnya semua objek data menyatu dalam sebuah cluster
tunggal atau proses dapat pula berhenti jika telah mencapai batasan kondisi tertentu.
Algoritma Single Linkage tersebut ialah sebagai berikut :
1. Menentukan k sebagai jumlah cluster yang ingin dibentuk
2. Setiap data dianggap sebagai cluster. Kalau n=jumlah data dan c=jumlah cluster, berarti
ada c=n
3. Menghitung jarak/similarity/dissimilarity antar cluster
4. Cari 2 cluster yang mempunyai jarak antar cluster yang paling minimal dan gabungkan
(c=c-1)
5. Jika c>3, kembali ke langkah 3
Gambar 2-2 Ilustrasi Algoritma Single Lingkage
17
2.6 K-Means Algorithm
K-Means merupakan metode klasterisasi yang paling terkenal dan banyak digunakan di
berbagai bidang karena sederhana, mudah diimplementasikan, memiliki kemampuan untuk
mengklaster data yang besar, mampu menangani data outlier, dan kompleksitas waktunya linear
O(nKT) dengan n adalah jumlah dokumen, K adalah jumlah kluster, dan T adalah jumlah iterasi.
K-means merupakan metode pengklasteran secara partitioning yang memisahkan data ke dalam
kelompok yang berbeda. Dengan partitioning secara iteratif, KMeans mampu meminimalkan
rata-rata jarak setiap data ke klasternya. Metode ini dikembangkan oleh Mac Queen pada tahun
1967.
Dasar algoritma K-means adalah sebagai berikut :
1. Tentukan nilai k sebagai jumlah klaster yang ingin dibentuk.
2. Bangkitkan k centroid (titik pusat klaster) awal secara random.
3. Hitung jarak setiap data ke masing-masing centroid menggunakan rumus korelasi antar dua
objek yaitu Euclidean Distance dan kesamaan Cosine.
4. Kelompokkan setiap data berdasarkan jarak terdekat antara data dengan centroidnya.
5. Tentukan posisi centroid baru ( k C ) dengan cara menghitung nilai rata-rata dari data-data
yang ada pada centroid yang sama.
Dimana k n adalah jumlah dokumen dalam cluster k dan i d adalah dokumen dalam cluster k.
6. Kembali ke langkah 3 jika posisi centroid baru dengan centroid lama tidak sama.
Adapun karakteristik dari algoritma K-Means salah satunya adalah sangat sensitif dalam
penentuan titik pusat awal klaster karena K-Means membangkitkan titik pusat klaster awal secara
random. Pada saat pembangkitan awal titik pusat yang random tersebut mendekati solusi akhir
pusat klaster, K-Means mempunyai posibilitas yang tinggi untuk menemukan titik pusat klaster
yang tepat. Sebaliknya, jika awal titik pusat tersebut jauh dari solusi akhir pusat klaster, maka
besar kemungkinan ini menyebabkan hasil pengklasteran yang tidak tepat. Akibatnya K-Means
tidak menjamin hasil pengklasteran yang unik. Inilah yang menyebabkan metode K-Means sulit
18
untuk mencapai optimum global, akan tetapi hanya minimum lokal. Selain itu, algoritma K-
Means hanya bisa digunakan untuk data yang atributnya bernilai numeric.
2.7 Evaluasi Clustering
2.7.1 Silhouette Coefficient
Evaluasi Clustering digunakan untuk mengetahui seberapa baik suatu data
dikelompokkan. Salah satu cara untuk mengukur kualitas cluster ialah dengan menggunakan
silhouette coefficient (SC). Silhouette coefficient digunakan untuk melihat kualitas dan kekuatan
cluster, seberapa baik suatu objek (dalam tugas akhir ini dokumen) ditempatkan dalam suatu
cluster. Metode ini merupakan gabungan dari metode cohesion dan separation.
Untuk tiap cluster, nilai silhouette coefficient nya adalah rata-rata nilai SC dari tiap
dokumen di dalam cluster tersebut. Nilai SC akan berada dalam rentang -1 sampai 1. Semakin
kecil nilai SC, semakin kurang baik hasil cluster yang diharapkan. Artinya objek di dalam suatu
cluster lebih cocok atau lebih memiliki kemiripan dengan dokumen-dokumen di cluster lain.
Tahapan perhitungan Silhouette Coefficient adalah sebagai berikut:
1. Hitung rata-rata jarak dari suatu dokumen misalkan i dengan semua dokumen lain
yang berada dalam satu cluster
a(i) =
1
|A|
- 1
j

A, ji
d(i ,j) (2.6)
dengan j adalah dokumen lain dalam satu cluster A dan d(i,j) adalah jarak antar
dokumen i dengan j.
2. Kemudian hitung juga rata-rata jarak dari dokumen i tersebut dengan semua dokumen
di cluster lain, lalu diambil nilai terkecilnya.
d(i,C) =
1
|A|
] C d(i ,j) (2.7)
dengan d(i,C) adalah jarak rata-rata dokumen i dengan semua objek pada cluster lain
C dimana A C.
b(i) = min C A d(i,C) (2.8)
3. Maka Silhouette Coefficient nya adalah
[1]
:
s(i) =
b()- u()
max(u(),b())
(2.9)
19
2.7.2 Purity
Purity (kemurnian) suatu cluster direpresentasikan sebagai anggota cluster yang paling
banyak cocok di suatu kelas. Purity (kemurnian) dapat direpresentasikan sebagai berikut :
Purity (j) =
1
n]
max (n
ij
) (2.10)
Total nilai purity merupakan jumlah keseluruhan purity pada semua cluster. Total nilai
purity dapat direpresentasikan sebagai berikut :
Purity =
n]
n
]
=0
purity (j) (2.11)
Range nilai purity ialah dari 0 sampai dengan 1. Secara umum, semakin besar nilai purity
maka semakin baik cluster
[13]
. Pada tugas akhir ini nilai purity diukur secara manual dari hasil
output sistem. Setelah hasil Clustering keluar maka akan dilihat apakah dokumen-dokumen
dalam satu cluster berasal dari kategori yang sama.
Pengujian purity dilakaukan dengan manual. Setiap cluster yang telah terbentuk akan
diperiksa apakah ada dokumen dokumen yang tidak murni atau yang tidak mirip dengan
dokumen lainnya. Jika ada dokumen yang tidak mirip dengan dokumen lainnya maka akan
dilakukan dengan rumus purity diatas. Pengujian secara purity merupakan pengujian yang sangat
baik karena pengujian ini memeriksa setiap cluster secara teliti. Jika nilai dari purity sama
dengan 1 maka didalam cluster tersebut tidak terdapat dokumen yang lain. Dengan kata lain,
cluster tersebut merupakan cluster yang murni.
20
BAB III GAMBARAN SISTEM
3.1 Gambaran Umum Sistem
Gambar 3.1 Gambaran Umum Sistem Clustering
Contoh proses mengenai gambaran sistem diatas akan coba digambarkan dimana data
inputnya dapat dilihat pada Tabel 3-1 :
Tabel 3-1 Contoh Data Input
Dokumen Input Isi Dokumen
Dokumen 1 Gitaris band musik rock tersebut tidak akan bermain musik lagi.
Dokumen 2 Musik rock sangat disenangi oleh anak remaja.
Dokumen 3 Olahraga paling digemari di dunia adalah olahraga sepakbola.
Dokumen 4 Italia terakhir kali menjuarai sepakbola dunia pada tahun 2006.
I. Preprocessing
I.1 Tokenisasi
Pada tahap ini setiap isi dokumen akan diubah menjadi huruf kecil, mengalami
penghilangan tanda baca dan karakter selain huruf.
Tabel 3-2 Hasil Tokenisasi
Dokumen Input Hasil Tokenisasi
Dokumen 1 gitaris band musik rock tersebut tidak akan bermain musik lagi
Dokumen 2 musik rock sangat disenangi oleh anak remaja
Clustering
Dokumen
input *.txt
Tokenisasi
(pembuangan tanda
baca, case folding,
penghilangan
karakter selain
huruf)
Hirarchical Clustering
(Single Linkage)
Partitioned Clustering
(K-Means)
Term
Weighting
Stemming Stopword Removal
Evaluasi Cluster (menggunakan
Silohuette Coefficient, purity,
cophenetic correlation coefficient)
Dokumen dalam
beberapa cluster
Preprocessing
21
Dokumen 3 olahraga paling digemari di dunia adalah olahraga sepakbola
Dokumen 4 italia terakhir kali menjuarai sepakbola dunia pada tahun
I.2 Stopword removal
Pada tahap ini sistem akan menghapus stopword yang terdapat pada setiap dokumen.
Tabel 3-3 Hasil Stopword Removal
Dokumen Input Hasil Stopword Removal
Dokumen 1 gitaris band musik rock bermain musik
Dokumen 2 musik rock disenangi anak remaja
Dokumen 3 olahraga digemari dunia olahraga sepakbola
Dokumen 4 italia terakhir menjuarai sepakbola dunia tahun
I.3 Stemming
Selanjutnya pada tahap ini akan dilakukan stemming Nazief-adriani terhadap setiap isi
dokumen.
Tabel 3-4 Hasil Stemming
Dokumen Input Hasil Stemming
Dokumen 1 gitaris band musik rock main musik
Dokumen 2 musik rock senang anak remaja
Dokumen 3 olahraga gemar dunia olahraga sepakbola
Dokumen 4 italia akhir juara sepakbola dunia tahun
II. Term Weighting
Setelah dokumen mengalami preprocessing maka selanjutnya term-term yang ada di
setiap dokumen akan diberi bobot.
Tabel 3-5 Bobot TF
dokumen gitaris band musik rock main juara tahun
1 1 1 2 1 1 0 0
2 0 0 1 1 0 0 0
3 0 0 0 0 0 0 0
4 0 0 0 0 0 1 1
Tabel 3-6 Bobot IDF
Term gitaris band musik rock main juara tahun
Bobot IDF 0,602 0,602 0,301 0,301 0,602 0,602 0,602
Maka bobot TF-IDF setiap term akan menjadi :
22
Tabel 3-7 Bobot TF-IDF
dokumen gitaris band musik rock main juara tahun
1 0,602 0,602 0,602 0,301 0,602 0 0
2 0 0 0,301 0,301 0 0 0
3 0 0 0 0 0 0 0
4 0 0 0 0 0 0,602 0,602
Sebelum digunakan, bobot TF-IDF akan dinormalisasi terlebih dahulu sesuai
dengan panjang dokumen.
III. Clustering
Pada tahap ini akan dilakukan clustering dimana setiap dokumen akan dianggap
sebagai sebuah cluster. Di setiap tahapan akan ada penggabungan cluster sesusai dengan
metode yang dipilih sampai jumlah cluster memenuhi jumlah cluster yang diinginkan.
Pada akhirnya akan muncul hasilnya cluster-cluster berisi dokumen-dokumen yang
termasuk dalam cluster tersebut. Pada contoh ini kita akan mengelompokkan dokumen
sampai menjadi satu cluster dengan metode single linkage clustering.
Tabel 3-8 Jarak antar Dokumen Metode Single Link
Dokumen 1 Dokumen 2 Dokumen 3 Dokumen 4
Dokumen 1 0 1.26928 1.41421 1.41421
Dokumen 2 0 1.41421 1.41421
Dokumen 3 0 1.34126
Dokumen 4 0
Dengan melihat tabel diatas maka urutan clustering dengan metode single clustering
yang terjadi adalah :
dokumen 1 dan dokumen 2 memiliki jarak 1.2692823822415176 clustering ke-1
dokumen 3 dan dokumen 4 memiliki jarak 1.3412652373591722 clustering ke-2
dokumen 1 dan dokumen 3 memiliki jarak 1.414213562373095 clustering ke-3
23
IV. Evaluasi Cluster
Setelah diketahui hasil clustering, maka akan dilakukan evaluasi yaitu dengan
menghitung rata-rata jarak dokumen dalam cluster dan jarak terpendek rata-rata suatu
dokumen dengan cluster lain
3.2 Spesifikasi Kebutuhan Sistem
3.2.1 User
Aplikasi dari sistem keamanan data ini ditujukan untuk user yang memiliki komputer
desktop dan di komputer desktopnya telah terinstal :
1. JRE (Java Runtime Environment)
2. Software Eclipse (Optional)
Dalam pembuatan aplikasi keamanan ini, perangkat keras yang digunanakaan adalah
sebagai berikut :
1. Processor Intel Core 2 Duo T6500 2.1 GHz.
2. RAM 2GB
3. Harddisk 320 GB
4. 14.0 LCD
Sistem operasi Windows 7 Profesional
3.2.2 Input Data
Input data yang diperlukan dalam sistem keamanan ini adalah berita berita yang diambil
dari internet. Berita berita ini akan di copy ke dalam notepad. Kemudian akan disimpan dalam
suatu folder. Setelah itu berit berita itu akan di input ke dalam sistem. Yang masuk ke dalam
sistem adalah semua judul berita dan isi berita. Judul dan isi berita ini akan diolah oleh sistem
melalui setiap tahapan yang terlampir dalam gambaran umum sistem. Hal yang sangat
merepresentasi setiap berita adalah kata kata yang sangat jarang muncul karena sesuai dengan
pembobotan yang digunakan TFIDF akan memberikan nilai pembobotan yang sangat besar
untuk kata kata yang jarang muncul.
24
3.2.3 Proses / Fungsionalitas Sistem
Kebutuhan sistem merupakan kebutuhan yang diperlukan untuk menghasilkan sistem
yang memiliki fungsionalitas sebagai berikut :
1. Sistem dapat memilih folder inputan yang berisi dokumen-dokumen berita bahasa Indonesia
dengan format *.txt.
2. Sistem dapat menampilkan isi dari tiap-tiap dokumen input yang akan mengalami clustering.
3. Sistem dapat melakukan preprocessing dan menampilkan term dari tiap dokumen yang telah
dimasukkan.
4. Sistem dapat melakukan proses klasterisasi terhadap data input dan menampilkan hasil dari
proses clustering yang telah dilakukan.
5. Sistem dapat menampilkan performansi kualitas cluster yang telah dilakukan berupa nilai
silhouette coefficient.
6. Apabila ada dokumen berita baru yang baru dimasukan ke dalam sistem maka akan
dilakukan proses dari awal.
3.2.4 Keluaran Sistem
Keluaran sistem dari tugas akhir ini adalah berupa kumpulan berita yang telah
terkelompok. Berita ini akan terkumpul sesuai dengan cluster nya. Jika cluster olahraga maka
cluster tersebut akan diisi dengan berita berita olahraga. Jika cluster ekonomi maka cluster
tersebut akan diisi denga berita berita ekonomi begitu seterusnya sesuai dengan kemiripan dari
setiap cluster.
3.3 Software Tools
Software yang digunakan untuk pembuatan dan pemodelan sistem keamanan ini adalah
sebagai berikut :
1. Sistem Operasi : Windows 7
2. Bahasa pemrogaman : Java JDK 1.7.0
3. Net Beans IDE 7.0.1
4. Notepad++
5. Microsoft Excel
6. XA
25
3.4 Model Analisis
3.4.1 Use Case Diagram
User
System
Insertion of Data
Preprocess of Data
Selection of
cluster method
Gambar 3.2 Use Case System Clusterinng
26
3.4.2 Skenario Use Case Diagram
Skenario yang digunakan untuk menjelaskan use case diagram di atas adalah sebagai
berikut :
3.4.2.1 Insertion of data
Use case : Insertion of data
Aktor : User
Tujuan` : Untuk melihat isi dari dokumen yang diinputkan
Deskripsi : User memasukkan dokumen yang ingin di-clustering (*.txt) kemudian user
memilih dokumen mana yang ingin dilihat isinya, sistem akan menampilkan
isi dari dokumen tersebut.
Skenario
Kondisi awal : Sistem belum mempunyai dokumen yang ingin diproses dan belum ada
yang dokumen yang bisa ditampilkan.
Tabel 3-9 Skenario Insert data
No. Aksi yang dilakukan Aktor Respon dari Sistem
1. Aktor memasukkan dokumen-
dokumen yang ingin diproses
Membuka tempat penyimpanan
dokumen-dokumen
2. Aktor memilih dokumen yang ingin
dilihat isinya
Menampilkan isi dari dokumen
Kondisi Akhir : Sistem menampilkan isi dari dokumen yang dipilih oleh user.
3.4.2.2 Preprocess of data
Use case : PreProcessing
Aktor : User
Tujuan : Untuk melakukan preprocessing terhadap data masukan
Deskripsi : User melakukan preprocessing (tokenization, stopword removal, stemming,
dan term weighting) terhadap data masukan.
Skenario
Kondisi Awal : Data masukan (*.txt) masih berupa dokumen yang tidak terstruktur dan
belum mengalami preprocessing.
27
Tabel 3-10 Skenario Preprocessing
No. Aksi yang dilakukan Aktor Respon dari Sistem
1. Aktor menekan tombol
preprocessing
Melakukan preprocessing
terhadap data masukan.
2. Aktor memilih dokumen yang ingin
dilihat isinya
Menampilkan term dari dokumen
yang telah mengalami
preprocessing
3.4.2.3 Selection of cluster method
Use case : Clustering
Aktor : User
Tujuan : Untuk melakukan clustering terhadap data masukan menggunakan salah
satu metode hierarchical agglomerative clustering.
Deskripsi : Dokumen berita yang telah mengalami preprocessing di-clustering.
Skenario
Kondisi awal : Dokumen berita hasil preprocessing belum diclustering.
Tabel 3-11 Skenario Clustering
No. Aksi yang dilakukan Aktor Respon dari Sistem
1. Aktor memilih jumlah cluster
yang ingin dibentuk
2. Aktor memilih metode
hierarchical agglomerative
clustering yang ingin digunakan
3. Aktor menekan tombol
clustering
Melakukan clustering terhadap
dokumen yang sudah di
preprocessing dengan jumlah
cluster dan metode yang telah
dipilih
Kondisi akhir : Setiap dokumen sudah berada dalam suatu cluster.
28
3.5 Data Base
DBMS yang digunakan dalam pembangunan sistem adalah MySql. Database yang dibuat
terdiri dari dua buah tabel yaitu kamus dan stopwords. Tabel kamus berisi kumpulan kata-kata
dasar yang digunakan untuk keperluan stemming Nazief-Adriani, sedangkan tabel stopwords
berisi kumpulan stopword yang digunakan untuk proses stopword removal. Isi dari tabel-tabel ini
hanya akan di-load ke dalam sistem sebanyak satu kali dan disimpan dalam array untuk
mempercepat proses komputasi.
3.6 Desain Interface
Gambar 3.3 Desain Interface System Clustering
Dalam desain ini di buat berdasarkan use case yang telah di jelaskan di atas. Use Case
diatas menjelaskan bahwa system bisa melakukan input data. Dalam input data ini akan
diarahkan ke folder yang akan berisi dokumen dokumen yang akan diolah. Dan dokumen
tersebut akan ditampilkan ke dalam document collection. Dan setiap dokumen akan bisa dibaca
pada view document. Preprocesing akan memberikan pengolahan data menjadi data yang akan
di hitung representasi nya menjadi nilai yang bisa di olah untuk pen-cluster. Kemudian akan
dipilih metode yang ingin digunakan single linkage atau K-means.
//: Browse
View Document
Document
collection
Single Linkage
K - Means
Preproce
sing
29
3.7 Implementasi Sistem
Aplikasi tugas akhir ini diimplementasikan dalam bahasa java. Software yang
digunakan untuk membuat aplikasi tugas akhir ini adalah Netbeans 7.1. Spesifikasi
hardware pembuatan aplikasi adalah processor intel core 2 dou, memory 2 GB, harddisk
320 GB, LCD 14. Sistem operasi yang digunakan adalah Windows 7 Professional.
Software software pendukung aplikasi ini adalah notepad++. Peranan dari software
software pendukung ini sangat membantu dalam memecahkan setiap permasalahan
gambar. Terutam dalam mengubah ekstensi setiap gambar. Dengan demikian tidak perlu
membuat suatu source code yang mengubah ekstensi suatu gambar. Cukup menggunakan
software software pendukung tersebut.
3.8 Rancangan Pengujian
Pada tugas akhir ini akan digunakan metode pengujian perancangan system
menggunkan silhouette coofecient dan purity. Untuk silhouette coofecient jika nilai nya
mendekati 1 maka kualitas dari kluster tersebut sangat baik. Kualitas ini memberikan
bahwa setiap kluster sudah terkelompok dengan tingkat kemiripan yang sama persis.
Purity metode pengujian cluster dengan mengecek setiap cluster secara manual.
Maksudnya adalah dengan membaca dokumen setiap cluster satu persatu. Apabila tiap
cluster semakin sama maka cluster tersebut semakin murni. Metode pengujian ini akan
memberikan tingkat pengujian yang lebih kuat karena hasil nya bisa langsung terbukti.
30
BAB IV KONTRIBUSI KEILMUAN
Tugas akhir ini merupakan bidang keilmuan data mining. Data mining merupakan cabang
ilmu yang mempelajari suatu proses untuk mendapatkan informasi yang berguna dari gudang
basis data yang besar. Untuk mendapatkan informasi tersebut dilakukan penelusuran terhadap
data yang ada supaya bisa membangun suatu model data. Model data tersebut digunakan untuk
mengenali pola pola data yang ada untuk mengetahui pola data lain yang tidak berada di dalam
basis data tersebut. Dengan demikian jika kita ingin membutuhkan suatu sistem prediksi maka
system tersebut akan memberikan hasil yang akurat. Kebutuhan sistem pengelompokkan data
akan menghasilkan kelompok kelompok data yang semakin mirip tiap kelompoknya. Kebutuhan
sistem anomali data transaksi semakin baik system pendeteksian data nya sehingga mengetahui
langkah selanjutnya yang harus dilakukan.
Posisi data mining dalam berbagai ilmu pengetahuan di jelaskan dalam gambar berikut :
Kesamaan data mining dengan cabang ilmu diatas tidak mencapai seratus persen. Dalam bidang
statistik kesamaannya mengenai penyampelan, estimasi, dan pengujian hipotesis. Dalam bidang
kecerdasan buatan (artificial intellegence), pengenalan pola (pattern recognation), pembelajaran
mesin (machine learning) data mining memiliki kesamaan pembahasan mengenai algoritma
pencarian, teknik pemodelan, teori pembelajaran. Dalam bidang basis data, data mining
menggunkan basis data sebagai pendukung media penyimpanan yang efesien, pengindeksan,
STATISTIK
INFORMATION
RETRIEVAL
AI, MACHINE
LEARNING, PATTERN
RECOGNITION
DATA
MINING
Data Base, Parallel
Computing, Distributed
Computing
31
pemrosesan query. Bidang komputasi parallel, data mining sering menggunakan pemrosesan
komputasi parallel untuk memberikan kinerja yang tinggi untuk ukuran set data yang besar,
sedangkan dalam komputasi terdistribusi, data mining menggunakan konsep terdistribusi untuk
menangani masalah ketika data tidak dapat disimpan dalam suatu tempat.
32
DAFTAR PUSTAKA
Agusta, Y.2007.K-Means-Penerapan, Permasalahan dan Metode Terkait. Jurnal Sistem dan
Informatika, Vol.3, pp.47-60.(22 April 2013)
Hartini, E. 2012. Metode Clustering Hirarki. http://www.batan.go.id/ppin/lokakarya/
LKSTN_15/Entin.pdf. (22 April 2013).
He, Q. (1999). A Review of Clustering Algorithms as Applied in IR
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.89.4917&rep=rep1&type=pdf.
(22 April 2013).
Prasetyo, Eko. 2012. Data Mining Konsep dan Aplikasi menggunakan MATLAB. Andi:
Jogjakarta.