tugas akhir

26
BAB I PENDAHULUAN Bab ini menguraikan tentang latar belakang, rumusan masalah, tujuan penelitian, batasan masalah, metodologi dan sistematika penulisan dari laporan tugas akhir ini. 1.1. Latar Belakang Tingginya penggunaan internet telah memacu pesatnya pertumbuhan dan pertukaran informasi. Tidak hanya dalam dunia maya, tetapi jumlah informasi dalam bentuk text juga semakin banyak digunakan di berbagai institusi dan perusahaan. Jumlah dokumen elektronik berbahasa Inggris yang semakin besar merupakan sumber informasi yang berharga. Pengelompokan (clustering) dokumen merupakan sebuah cara yang dapat digunakan untuk mempermudah pencarian dokumen dalam database. Clustering merupakan salah satu teknik dalam datamining yang bisa digunakan untuk mengelompokkan data. Clustering merupakan proses pengelompokan data sehingga semua anggota dari bagian data memiliki kemiripan berdasarkan perhitungan jarak antara keyword yang ada didokumen. Salah satu aplikasi dari clustering adalah document clustering. Tahapan clustering adalah: representasi dokumen, pengunaan cluster algorithm, dan evaluasi. Yang diberikan sebagai masukan dalam document clustering adalah source dari dokumen dan similarity measure yang akan digunakan untuk menemukan beberapa cluster dari dokumen yang saling terkait satu sama lainnya(2.5). Dalam membentuk document clustering ada beberapa teknik yang dapat digunakan, tetapi pada umumnya ada dua teknik yang sering digunakan yaitu : Partitioning algorithms dan Hierarchy algorithms (2.4). Agglomerative hierarchical merupakan salah satu bagian dari hierarchy algorithms. Tugas akhir ini akan melakukan pengelompokan dokumen berdasarkan teknik hirarki (hierarchy algorithms). 1

Upload: lukman-hakim

Post on 11-Jun-2015

2.789 views

Category:

Documents


1 download

DESCRIPTION

Tugas Akhir ini mengenai clustering text

TRANSCRIPT

Page 1: Tugas Akhir

BAB I

PENDAHULUANBab ini menguraikan tentang latar belakang, rumusan masalah, tujuan penelitian,

batasan masalah, metodologi dan sistematika penulisan dari laporan tugas akhir

ini.

1.1. Latar Belakang

Tingginya penggunaan internet telah memacu pesatnya pertumbuhan dan

pertukaran informasi. Tidak hanya dalam dunia maya, tetapi jumlah informasi

dalam bentuk text juga semakin banyak digunakan di berbagai institusi dan

perusahaan. Jumlah dokumen elektronik berbahasa Inggris yang semakin besar

merupakan sumber informasi yang berharga.

Pengelompokan (clustering) dokumen merupakan sebuah cara yang dapat

digunakan untuk mempermudah pencarian dokumen dalam database. Clustering

merupakan salah satu teknik dalam datamining yang bisa digunakan untuk

mengelompokkan data. Clustering merupakan proses pengelompokan data

sehingga semua anggota dari bagian data memiliki kemiripan berdasarkan

perhitungan jarak antara keyword yang ada didokumen. Salah satu aplikasi dari

clustering adalah document clustering. Tahapan clustering adalah: representasi

dokumen, pengunaan cluster algorithm, dan evaluasi. Yang diberikan sebagai

masukan dalam document clustering adalah source dari dokumen dan similarity

measure yang akan digunakan untuk menemukan beberapa cluster dari dokumen

yang saling terkait satu sama lainnya(2.5). Dalam membentuk document

clustering ada beberapa teknik yang dapat digunakan, tetapi pada umumnya ada

dua teknik yang sering digunakan yaitu : Partitioning algorithms dan Hierarchy

algorithms (2.4). Agglomerative hierarchical merupakan salah satu bagian dari

hierarchy algorithms. Tugas akhir ini akan melakukan pengelompokan dokumen

berdasarkan teknik hirarki (hierarchy algorithms).

1

Page 2: Tugas Akhir

1.2. Rumusan Masalah

Berdasarkan latar belakang penulis dapat mengidentifikasi beberapa masalah

sebagai berikut:

1. Mengimplementasikan algoritma Agglomerative hierarchical untuk

mengelompokan dokumen.

2. Mengelompokkan dokumen dengan melakukan perhitungan jarak antara

dokumen berdasarkan frekuensi kemunculan keyword yang ada di setiap

dokumen.

Pada tugas akhir ini akan dibuat sebuah sistem sederhana untuk

mengimplementasikan salah satu teknik clustering yaitu teknik hirarki dengan

menggunakan salah satu algoritma hirarki yaitu agglomerative hierarchical.

Sistem sederhana ini diharapkan dapat memberikan kesimpulan bahwa algortima

agglomerative hierarchical bisa juga digunakan dalam penggelompokan dokumen

dengan kelebihan dan kekurangan tersendiri.

1.3. Tujuan Penelitian

Tujuan Tugas akhir ini melakukan pembelajaran dan implementasi algoritma

agglomerative hierarchical clustering sebagai salah satu algoritma dari metode

hirarki yang dapat digunakan untuk pengelompokan dokumen berdasarkan jumlah

kemunculan keyword dalam setiap dokumen.

1.4. Batasan Masalah

Untuk memberi batas pada ruang lingkup pekerjaan sekaligus memberi fokus

pada penyelesaian, maka pada Tugas Akhir ini diberikan beberapa batasan yaitu:

1. Tugas akhir ini akan menitikberatkan pada pengimplementasian metode

agglomerative hierarchical clustering dalam menggelompokan dokumen.

2. Keyword sudah diketahui dengan demikian pada tahap preprocessing yang

akan dilakukan perhitungan kemunculan keyword pada setiap dokumen.

2

Page 3: Tugas Akhir

3. Dokumen untuk pengujian sistem akan disediakan oleh penulis.

1.5. Metodologi

Tugas akhir ini akan diselesaikan berdasarkan pada metodologi berikut :

1. Studi Literatur.

Tahapan yang dilakukan dalam penyelesaian tugas akhir ini, diawali dengan

melakukan studi pustaka dari text book dan artikel – artikel guna memberi

pemahaman yang fundamental akan konsep yang digunakan pada banyak

alternatif penyelesaian pada agglomerative hierarchical clustering. Selain

itu dilakukan studi literatur yang diperoleh dari internet.

2. Analisis.

Pada tahap ini, penulis mempelajari teknik pendekatan hirarki dan

melakukan analisis terhadap algoritma yang akan digunakan yaitu

agglomerative hierarchical clustering.

3. Perancangan dan Implementasi

Perancangan dan pengembangan perangkat lunak berdasarkan analisa yang

sudah dilakukan dan mengimplementasikan algoritma yang akan digunakan

dengan menggunakan bahasa pemrograman C# .

1.6. Sistematika Penulisan

Laporan TA ini disusun berdasarkan sistematika pembahasan sebagai berikut :

BAB I Bab ini menguraikan tentang latar belakang masalah, rumusan

masalah, tujuan penelitian, batasan masalah, metodologi dan

sistematika pembahasan buku tugas akhir.

BAB II Bab ini menjelaskan dasar teori mengenai knowledge discovery in

database, data mining, text mining, clustering, document clustering,

teknik clustering.

3

Page 4: Tugas Akhir

BAB III Bab ini meliputi analisis dan perancangan text mining, text processing,

algoritma agglomerative hierarchical. .

BAB IV Bab ini berisi penjelasan tentang implementasi dan pengujian

perangkat lunak.

BAB V Bab ini berisi kesimpulan dan saran yang diperoleh dari pelaksanaan

tugas akhir ini.

4

Page 5: Tugas Akhir

BAB II

DASAR TEORIBab ini berisi penjelasan dasar – dasar teori yang dimulai dengan teori umum

mengenai knowledge discovery in database, data mining, clustering, document

clustering, teknik clustering.

2.1Knowledge Discovery in Database

KDD berhubungan dengan teknik integrasi dan penemuan ilmiah, interprestasi

dan visualisasi dari pola – pola sejumlah kumpulan data. Langkah – langkah

dalam proses KDD [HAN06] dapat dilihat pada gambar berikut : s

Gambar 1. Proses KDD

Langkah – langkah dalam proses KDD sebagai berikut :

1. Data cleaning : menghilangkan noise dan data yang inkonsisten.

2. Data integration : menggabungkan berbagai macam sumber data.

3. Data selection : memilih data yang relevan dengan ‘analysis task.’

4. Data transformation : transformasi atau konsolidasi data ke dalam bentuk

yang lebih baik untuk mining, dengan mewujudkan operasi – operasi

summary dan aggregation.

5

Page 6: Tugas Akhir

5. Data mining : mengekstrak patterns dari data dengan menerapkan “intelligent

methods”.

6. Pattern evaluation : mengidentifikasi sejumlah pola yang sungguh – sungguh

menarik dan bakal menjadi pengetahuan berdasarkan sejumlah pengukuran

seperti rule support dan rule confidence untuk rule extraction.

7. Knowledge presentation : penggunaan teknik – teknik visualisasi dan

representasi untuk menyajikan pengetahuan yang telah diperoleh kepada user.

2.2Data Mining

Banyak definisi tentang data mining, dibawah ini adalah beberapa definisi dari

data mining [STE04] :

1. Ekstraksi dari suatu informasi yang berguna atau menarik (Non-trivial,

implicit, sebelumnya belum diketahui, potensial kegunaannya) pola atau

pengetahuan dari data yang disimpan dalam jumlah besar.

2. Eksplorasi dari analisa secara otomatis atau semiotomatis terhadap data – data

dalam jumlah besar untuk mencari pola dan aturan yang berarti.

Data mining juga merupakan salah satu proses knowledge discovery in database

(KDD), yang semua prosesnya adalah mengubah data mentah menjadi

pengetahuan yang berguna [PAN06].

Model Data Mining [STE04] :

1. Prediction : menggunakan beberapa variabel untuk memprediksi sesuatu atau

suatu nilai yang akan datang. Beberapa model prediction diantaranya adalah :

classification, regression, deviation detection.

2. Description : mendapatkan pola penafsiran (human – interpretable patterns)

untuk menjelaskan data. Beberapa model description diantaranya adalah :

clustering, association rule discovery, sequential pattern discovery.

Perbedaaan antara Supervised learning dan Unsupervised learning [LIU] :

6

Page 7: Tugas Akhir

1. Supervised learning: menemukan pola baru dalam data yang menghubungkan

pola data yang sudah ada dengan data yang baru.

2. Unsupervised learning: data belum memiliki pola. Menemukan pola dalam

sebuah data.

2.3Clustering

Clustering merupakan bagian dari unsupervised learning. Unsupervised learning

tidak membutuhkan acuan awal untuk memperoleh nilai sehingga sistem ini

memberikan hasil sepenuhnya pada setiap proses komputasi. Clustering adalah

proses mengelompokkan objek berdasarkan kemiripan antar cluster. Cluster yang

terletak didalam cluster harus memiliki kemiripan yang rendah sedangkan yang

tidak berada dalam satu cluster, mempunyai kemiripan yang rendah[HAN06].

Prinsip dari clustering adalah memaksimalkan kemiripan antar anggota satu kelas

dan meminimumkan kemiripan antar cluster. Tujuan clustering adalah untuk

memisahkan sekumpulan objek dari data set ke dalam beberapa kelompok atau

cluster dengan melihat kemiripan antar cluster berdasarkan keyword[STE04].

Untuk mengukur kemiripan antara dokumen akan dilakukan proses perhitungan

jarak antara dokumen. Salah satu fungsi yang dapat digunakan untuk menghitung

jarak antara dokumen[HAN06], yaitu :

Euclidean distance

……………..(i)

Ada beberapa teknik dalam clustering[HAN06], yaitu :

1. Metode partisi : membangun berbagai partisi dan kemudian mengevaluasi

partisi tersebut dengan beberapa kriteria .

2. Metode hierarki : membuat suatu penguraian secara hierarkikal dari himpunan

data menguunakan beberapa kriteria.

3. Metode Berbasis densitas : berdasarkan konektivitas dan fungsi densitas.

4. Metode Berbasis grid : berdasarkan suatu struktur granularitas multi-level.

7

2 2 2

1 1 2 2( , ) (| | | | ... | | )

p pd i j x x x x x xi j i j i j

Page 8: Tugas Akhir

5. Metode Berbasis model : suatu model dihipotesakan untuk masing – masing

cluster dan ide untuk mencari best fit dari model tersebut untuk masing –

masing yang lain.

2.4 Teknik Clustering

Secara garis besar metode clustering dibagi dalam 2 tipe yaitu : hierarchical dan

non hierarchical. Hierarchical menggunakan N x N similarity matrix, sedangkan

non hierarchical membagi dataset menjadi sebuah level single partisi, dengan

atau tanpa pencocokan antara clusters [SAL71]. Selain itu hal mendasar yang

membedakan kedua metode ini adalah : metode penelompokan hirarki digunakan

apabila belum ada informasi jumlah kelompok, sedangkan metode

pengelompokan non hirarki bertujuan mengelompokan n objek ke dalam k

kelompok (k<n). Berikut adalah perjelasan singkat mengenai perbandingan antara

metode hirarki (agglomerative hierarchical) dan metode partisi (k-means).

2.5.1Hierarchical Clustering

Teknik hirarki (hierarchical methods) adalah teknik clustering yang membentuk

kontruksi hirarki berdasarkan tingkatan tertentu seperti struktur pohon Dengan

demikian proses pengelompokkannya dilakukan secara bertingkat atau bertahap.

Hasil dari pengelompokan ini dapat disajikan dalam bentuk dendogram[STE00].

Ada dua pendekatan dalam hierarchical clustering yaitu agglomerative dan

divisive. Berikut ini adalah gambaran mengenai Agglomerative dan Divisive :

Gambar 4. Agglomerative dan Divisive

8

Page 9: Tugas Akhir

2.5.11Agglomerative

Metode ini dimulai dengan setiap N cluster membentuk cluster masing-masing.

Kemudian dua cluster dengan jarak terdekat bergabung. Selanjutnya cluster yang

lama akan bergabung dengan cluster yang sudah ada dan membentuk cluster baru.

Hal ini tetap memperhitungkan jarak kedekatan antar cluster. Proses akan

berlanjut hingga akhirnya terbentuk satu cluster yang terdiri dari keseluruhan

cluster.

Beberapa metode dari agglomerative[STE04] :

1. Single linkage (nearest neighbor methods) : Metode ini menggunakan prinsip

jarak minimum yang diawali dengan mencari dua cluster terdekat dan

keduanya membentuk cluster yang pertama.

2. Complete linkage (furthest neighbor methods) : Metode ini merupakan

kebalikan dari pendekatan yang digunakan pada single linkage. Prinsip jarak

yang digunakan adalah jarak terjauh(maximal) antar cluster.

3. Average linkage between groups methods : Metode ini mengikuti prosedur

yang sama dengan kedua metode sebelumnya. Prinsip ukuran jarak yang

digunakan adalah jarak rata-rata antar tiap pasangan cluster yang mungkin.

4. Ward’s method error sum of squares : Ward mengajukan suatu metode

pembentukan cluster yang didasari oleh hilangnya informasi akibat

penggabungan cluster menjadi cluster. Hal ini diukur dengan jumlah total

deviasi kuadrat dari mean cluster untuk tiap observasi.

2.5.12 Divisive

Metode divisive berlawanan dengan metode agglomerative. Metode ini pertama-

tama diawali dengan satu cluster besar yang mencakup semua cluster. Selanjutnya

cluster yang memiliki ketidakmiripan yang cukup besar akan dipisahkan sehingga

membentuk cluster yang lebih kecil. Pemisahan ini dilanjutkan sehingga

mencapai sejumlah cluster yang diinginkan[STE00].

9

Page 10: Tugas Akhir

2.5.2Partitional Clustering

Konsep dasar dari partitional clustering adalah membagi n jumlah cluster ke

dalam k cluster. Metode ini merupakan metode pengelompokan yang bertujuan

mengelompokan objek sehingga jarak antar tiap objek ke pusat kelompok di

dalam satu kelompok adalah minimum.

K-means Clustering dan K-medoids atau PAM (partition around

medoids)merupakan beberapa algoritma dari partitional clustering [LIU]. Berikut

ini adalah penjelasan singkat dari metode clustering K-means yaitu[SAN06] :

Membagi objek ke dalam k subset tak kosong.

Menghitung titik benih sebagai pusat(titik rata – rata dari cluster) cluster

dari partisi sekarang.

Memberikan masing – masing objek tersebut ke cluster dengan titik benih

terdekat.

Kembali ke tahap yang kedua, berhenti jika tidak ada lagi yang penugasan

baru.

2.5 Dokumen Clustering

Salah satu aplikasi clustering adalah document clustering. Adapun tujuan dari

document clustering adalah untuk mengelompokkan dokumen dimana cluster

dalam satu kelompok mirip satu dengan yang lain berdasarkan frekuensi

kemunculan keyword yang ada di setiap dokumen[STE04].

10

Page 11: Tugas Akhir

Dibawah ini merupakan ilustrasi sederhana dari document clustering [WAI] :

Gambar 3. Ilustrasi document clustering [WAI]

Yang diberikan sebagai inputan adalah source document dan similarity measure

dengan tujuan untuk mengumpulkan dokumen – dokumen yang ada dengan tepat.

Pada umumnya proses clustering adalah sebagai berikut [SAN06] :

Preprocessing data(2.3) yang secara garis besar terdiri dari tokenisasi,

filtering, stemming. Berdasarkan (I.4) hanya akan dilakukan beberapa dari

tahapan preprocessing yaitu : tokenisasi (II.3) dan dilanjutkan dengan analisis.

Tahap tokensisasi akan dilakukan untuk menangani dokumen baru yang akan

diinput. Pada tahap ini akan dilakukan pemotongan setiap string yang ada

dalam dokumen yang diinput(gambar ).

Gambar 4. Contoh Tokenisasi

11

Page 12: Tugas Akhir

Pada tahapan analisis, akan dilakukan perhitungan jumlah keyword (sudah

disediakan) dalam dokumen yang ada yang kemudian akan membentuk

matriks dokumen-term(tabel ).

Tabel Terms frequency dalam dokumen

Ket : tfij = jumlah kemunculan kata/term dalam dokumen

Clustering : menghitung kemiripan yang menerapkan algoritma clustering.

Proses Clustering yang akan dilakukan menggunakan Agglomerative

Hierarchical Clustering Algorithm(AHC algorithm). Walaupun lebih lambat, hasil

akhir

Pengelompokan agglomerative hierarchical clustering lebih baik dibandingkan k-

means yang sering digunakan, karena lebih efisien [STE00]. Proses dasar dari

hierarchical clustering [JON67] adalah:

Mulailah dengan mendefinisikan setiap item sebagai cluster, jadi data

yang ada sejumlah N items, maka sekarang cluster yang ada sejumlah N

items tersebut. Jarak antara clusters sama dengan jarak antara items yang

ada.

Selanjutnya, mencari pasangan cluster yang paling dekat dan

menggabungkan keduanya dalam satu cluster.

Hitung jarak antara cluster yang baru dibentuk dengan cluster yang sudah

ada sebelumnya. Ulangi tahap 2 dan 3 sampai cluster membentuk N

cluster yang diinginkan.

Ada tiga metode yang ada dalam AHC algorithm(2.5.1.1) dan yang akan

digunakan untuk melakukan clustering adalah metode single linkage. Metode

12

Page 13: Tugas Akhir

single lingkage menggunakan prinsip jarak minimum. Dibawah ini adalah psedeo

code dari algoritma Agglomerative Hierarchical Clustering.

Agglomerative Hierarchical Algorithm:

Given: a set X of objects {x1,...,xn}

a distance function dis(c1,c2)

1. for i = 1 to n ci = {xi}

end for2. C = {c1,...,cb}

3. l = n+14. while C.size > 1 do

a) (cmin1,cmin2) = minimum dis(ci,cj) for all ci,cj in C b) remove cmin1 and cmin2 from C

c) add {cmin1,cmin2} to C d) l = l + 1end while

Contoh : diberikan kumpulan X(dapat dilihat pada gambar ), yang sudah

direpresentasikan dalam bentuk matrix. Dengan menggunakan fungsi Euclidean

distance (2.4) dan single link method untuk menghitung jarak antara clusters.

pertama, masing – masing anggota (Xi) dari X, ditempatkan dalam cluster

Ci,dimana Ci adalah anggota dari cluster C.

C = {{x1},{x2},{x3}, {x4},{x5},{x6},{x7}, {x8},{x9},{x10}}

set l = 11.

13

Page 14: Tugas Akhir

(iterasi pertama dari penggulangan menggunakan while) C.size = 10.

Setelah dilakukan perhitungan jarak maka didapatkan jarak minimum

adalah hasil perhitungan jarak antara C2 dan C10.

(cmin1,cmin2) = (c2,c10)

Pindahkan c2 and c10 from C, tambahkan c11 to C.

C = {{x1},{x3}, {x4},{x5},{x6},{x7}, {x8},{x9},{{x2}, {x10}}}

Set l = l + 1 = 12

Dan perhitungan terus dilakukan sampai membentuk N cluster yang

diinginkan.

Kesimpulan dari hasil clustering yang didapatkan.

Tahapan akhir dari proses clustering adalah kesimpulan dari clustering yang

didapatkan.

BAB III

ANALISIS DAN PERANCANGAN

Bab ini berisi mengulas tentang analisa proses clustering, analisa perangkat lunak

dan perancangan perangkat lunak.

3.1 Analisa Proses Clustering

Dibawah ini adalah tahapan impelementasi program :

14

Page 15: Tugas Akhir

Koleksi Dokumen

Vector Space Model

Dissimilarity Measures

Proses Clustering

Hasil Clustering

Euclidean Distance

Vector Space Model AHC Algorithm

Gambar 4: Tahapan Implementasi Program

3.1.1Proses Analisa Cluster

Dalam analisa cluster, perlu melakukan proses cluster berikut [SAN06] :

Mengukur kesamaan antar objek (similarity). Sesuai prinsip dasar cluster yang

menggelompokkan objek yang mempunyai kemiripan, proses pertama adalah

mengukur seberapa jauh ada kesamaan antar objek. Dalam praktek,

penggunaan metode Euclidean Distance yang paling populer.

Metode Single Linkage Link merupakan metode Hierarchical sehingga

implementasi metode ini mengacu kepada tahapan dasar dari implementasi

hierarchical(2.6).

3.1.2Proses Implementasi Cluster

Berdasarkan gambar 3.1 diatas maka akan dijelaskan tahapan proses implementasi

cluster dengan menggunakan metode single linkage, yang akan disertai dengan

contoh.

Diberikan 5 buah dokumen dengan 2 buah term(apple dan boy). Dari 5 dokumen

ini akan dibentuk 3 cluster.

15

Page 16: Tugas Akhir

Gambar

Setiap dokumen yang diinput merupakan anggota dari sebuah N cluster

(berdasarkan algoritma 2.6). Selanjutnya dari data diatas akan dibentuk matriks

dengan menghitung jarak antara dokumen yang ada. Perhitungan jarak dengan

menggunakan fungsi Euclidean Distance(2.4).

d(1,2) = 2 2(1 2) (4 6) = 2.24

d(1,3) = 2 2(1 4) (4 2) = 3.61

d(1,4) = 2 2(1 3) (4 1) = 3.61

d(1,5) = 2 2(1 0) (4 6) = 2.24

d(2,3) = 2 2(2 4) (6 2) = 4.47

d(2,4) = 2 2(2 3) (6 1) = 5.10

d(2,5) = 2 2(2 0) (6 6) = 2.00

d(3,4) = 2 2(4 3) (2 1) = 1.41

d(3,5) = 2 2(4 0) (2 6) = 5.66

d(4,5) = 2 2(3 0) (1 6) = 5.83

Dari hasil perhitungan diatas maka akan dibentuk dissimilarity matriks, jika

perhitungan d(i,i) akan didapatkan 0. Setelah didapatkan hasil jarak, maka nilai

yang minimum antara 2 cluster akan digabung.

Pada iterasi pertama ini,didapatkan hasil minimum merupakan hasil perhitungan

antara dok3 dan dok4. Keduanya digabung dalam satu cluster.

16

2 2 2

1 1 2 2( , ) (| | | | ... | | )

p pd i j x x x x x xi j i j i j

Page 17: Tugas Akhir

Hasil iterasi pertama :

Selanjutnya dilakukan iterasi kedua, karena cluster yang terbentuk belum sesuai

dengan yang diinginkan(3 cluster). Pembentukan matriks dengan menggunakan

perhitungan jarak seperti pada iterasi pertama. Pada iterasi berikut akan dilakukan

perbandingan antara cluster baru yang sudah terbentuk dengan cluster lama yang

ada.

d(3,4)1 = min{d31,d41}= d31 = 3.61

d(3,4)2 = min{d32,d42}= d32 = 4.47

d(3,4)5 = min{d35,d45}= d35 = 5.66

Maka didapatkan matriks yang baru yang selanjutnya akan didapatkan jarak

minimum kedua, yaitu hasil perhitungan antara dok2 dan dok5.

17

Page 18: Tugas Akhir

Dengan demikian kedua dokumen digabung dalam satu cluster, sehingga

didapatkan hasil akhir sebagai berikut :

Demikianlah tahapan pembentukan cluster dengan menggunakan metode single

lingkage yang merupakan salah satu metode dari agglomerative hierarchical

clustering.

3.2Analisa Perangkat Lunak

Pada tahap ini akan dijelaskan mengenai use case diagram, activity diagram,

sequence diagram, class diagram, dari perangkat lunak.

3.2.1Use Case Diagram

18

Page 19: Tugas Akhir

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah

sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan

“bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor

dengan sistem. Pada sistem ini user berhubungan langsung dengan sistem tanpa

melibatkan administrator. Sehingga use case yang ada pada sistem ini adalah use

case user.

Load Dataset

Load Dokumen

Clustering

Add Word

User

View Table

Gambar 8: Use Case Diagram

Berikut adalah penjelasan singkat mengenai setiap use case yang ada :

Use case load dataset

Use case ini merupakan proses awal dari sistem. Dimana user bisa

memilih data set yang akan digunakan untuk pengujian.

Use case load dokumen

19

Page 20: Tugas Akhir

Use case ini adalah proses dimana user ingin menginput sebuah dokumen

untuk diikutsertakan dalam pengujian.

Use case add word

Use case ini dimana user bisa menambahkan istilah pada sistem.

Use case clustering

Use case ini merupakan proses akhir dari sistem ini. Sistem akan

memberikan hasil cluster dari setiap dokumen yang ada.

Use case view tabel

Use case ini untuk melihat tabel apa saja yang ada dalam database.

3.2.2Activity Diagram

Gambar 9: Activity Diagram

3.2.3Sequence Diagram

20

Page 21: Tugas Akhir

: User

:MySystem :LoadDoc

in system

Validasi

Load Doc

Gambar 10: Sequence Diagram Load Document

: User:MySystem :loadDataset :Clustering :HasilClustering

in system

choose dataset

do clustering

view hasil

Gambar 11: Sequence Diagram Clustering

3.2.4Class Diagram

Penjelasan mengenai setiap class yang digunakan :

21

Page 22: Tugas Akhir

Class User Interface

Class user interface pada sistem ini hanyalah berupa UI_menu. Class ini

terdiri dari operasi browse, tProses, clustering.

Class Proses

Class proses merupakan class yang dilakukan saat user melakukan aksi

pada GUI. Pada sistem ini, class proses terdiri dari load data, tproses,

cluster.

Class Database

Class database merupakan class koneksi ke database.

distance

loadData

Nama_docId_Doc

cluster

cluster_noId_DocFreqword

tProses

wordId_Docfreq

UI_Menu

tProses()Clustering()

browse()

dbconn.inc

close()open()

Gambar 12: Class Diagram

3.3Perancangan Perangkat Lunak

22

Page 23: Tugas Akhir

Pada tahap ini akan dijelaskan mengenai perancangan perangkat lunak yang

terdiri dari perancangan database dan perancangan antar muka sistem.

3.3.1Perancangan Database

Document given Term

Clustering Result

Gambar 6: Entity Relationship Diagram

Berdasarkan ERD yang ada pada gambar 6, maka akan dibentuk tabel – tabel

berikut ini :

Tbl_DocumentDoc_ I D Nama_Dok

Tbl_TermTerm_ I D Nama_Term

Tbl_ResultDoc_ID Term_ID Cluster_No

Tbl_givenDoc_ID Term_ID Freq

23

Page 24: Tugas Akhir

3.3.2Perancangan Antar Muka Sistem

Dibawah ini adalah gambaran sederhana antarmuka(GUI) dari sistem.

Nama Keterangan My System

Ini merupakan form utama dari sistem. Pada form ini user bisa menginput dataset yang sudah disediakan, user bisa melakukan clustering dan melihat tabel keywords yang sudah disediakan.

DatasetIni merupakan usecase load dataset.

24

Page 25: Tugas Akhir

Clustering

Ini merupakan

hasil akhir dari

clustering.

AddWord

Ini adalah GUI

dari

menambahkan

keyword

Minkowski distance

25

1 1 2 2( , ) (| | | | ... | | )q q qq

p pd i j x x x x x xi j i j i j

Page 26: Tugas Akhir

Manhattan distance

26

1 1 2 2( , ) | | | | ... | |

p pd i j x x x x x xi j i j i j