Analisis Perbandingan Proses Cluster Menggunakan K- Means Clustering dan K-Nearest Neighbor pada Penyakit Diabetes Mellitus

(1)

ANALISIS PERBANDINGAN PROSES CLUSTER MENGGUNAKAN K- MEANS CLUSTERING DAN K-NEAREST NEIGHBOR PADA

PENYAKIT DIABETES MELLITUS

SKRIPSI

RONNY BENEDIKTUS SIRINGORINGO

131421021

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2016


(2)

ANALISIS PERBANDINGAN PROSES CLUSTER MENGGUNAKAN

K-MEANS CLUSTERING DAN K-NEAREST NEIGHBOR PADA

PENYAKIT DIABETES MELLITUS

SKRIPSI

Diajukan untuk melengkapi tugas guna memenuhi syarat mencapai gelar Sarjana Komputer

RONNY BENEDIKTUS SIRINGORINGO

131421021

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2016


(3)

PERSETUJUAN

Judul :ANALISIS PERBANDINGAN PROSES CLUSTER

MENGGUNAKAN K-MEANS CLUSTERING DAN K

-NEAREST NEIGHBOR PADA PENYAKIT

DIABETES MELLITUS

Kategori : SKRIPSI

Nama : RONNY BENEDIKTUS SIRINGORINGO

Nomor Induk Mahasiswa : 131421021

Program Studi : EKSTENSI S1 ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, 28 Januari 2016 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Amer Sharif. S.Si, M.Kom Dr. Poltak Sihombing, M.Kom NIP. 1961203171991031001

Diketahui / Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001


(4)

PERNYATAAN

ANALISIS PERBANDINGAN PROSES CLUSTER MENGGUNAKAN K-MEANS CLUSTERING DAN K-NEAREST NEIGHBOR PADA PENYAKIT DIABETES

MELLITUS

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 28 Januari 2016

Ronny Benediktus Siringoringo NIM. 131421021


(5)

PENGHARGAAN

Segala puji dan syukur Penulis ucapkan kepada Tuhan Yesus Kristus yang senantiasa melimpahkan rahmat dan karunia-Nya sehingga skripsi ini dapat diselesaikan.

Ucapan terima kasih Penulis sampaikan kepada semua pihak yang telah membantu Penulis dalam menyelesaikan skripsi ini baik secara langsung maupun tidak langsung, teristimewa untuk kedua orangtua terkasih. Pada kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Bapak Prof. Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

2. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

3. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

4. Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembimbing I yang telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

5. Bapak Amer Sharif, S.Si, M.Kom selaku Dosen Pembimbing II yang telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

6. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

7. Bapak Jos Timanta Tarigan, S.Kom, M.Sc selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

8. Semua dosen dan semua pegawai di Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

9. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.


(6)

Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu, kepada pembaca agar kiranya memberikan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya.

Medan, 28 Januari 2016 Penulis,


(7)

ABSTRAK

Klasifikasi merupakan salah satu dari beberapa peran data mining. Pada fungsi klasifikasi, terdapat banyak algoritma yang dapat digunakan untuk mengolah Input menjadi output yang diinginkan, sehingga harus diperhatikan aspek performance dari masing-masing algoritma tersebut. Tujuan penelitian ini adalah untuk menganalisis dan membandingkan performance K-Nearest Neighbor dan K-Means Clustering dari sudut pandang akurasi dan runing time.Data sets penelitian berasal dari UCI Machine Learning Repository, yaitu: PIMA Indians Diabetes Dataset.Hasil analisis perbandingan akurasi menunjukkan bahwa nilai ke-akuratan algoritma K-Means Clustering lebih baik dengan akurasi 67.143 % dibandingkan algoritma K-Nearest Neighbor dengan akurasi 64.286 % pada implementasi terhadap data sets.sedangkan waktu proses pengujian algoritma K-Nearest Neighbor relatif lebih cepat dibandingkan dengan K-Means Clustering dimana watu pengujian K-Nearest Neighbor yaitu 0.2492 detik sedangkan K-Means Clustering yaitu 12.1285 detik.

Kata Kunci: Klasifikasi, Dataset, K-Means Clustering, K-Nearest Neighbor, runing time, Akurasi.


(8)

COMPARATIVE ANALYSIS OF CLUSTER PROCESS USING K -MEANS CLUSTERING AND K-NEAREST NEIGHBOR DISEASE DIABETES MELLITUS

ABSTRACT

Classification is one of the few role of data mining. In the classification function, there are many algorithms that can be used to process input into the desired output, so it must be considered aspects of performance of each algorithm. The purpose of this study was to analyze and compare the performance of Nearest Neighbor and K-Means Clustering from the standpoint of accuracy and runing time.Data sets the research came from the UCI Machine Learning Repository, ie: PIMA Indians Diabetes Dataset.Hasil accuracy comparative analysis shows that the value to-accuracy algorithm K-Means Clustering with an accuracy better than 67 143% K-Nearest Neighbor algorithm with 64 286% accuracy in the implementation of the testing process the data sets.sedangkan time K-Nearest Neighbor algorithm is relatively faster than the K-Means Clustering where Watu testing of K-Nearest Neighbor ie 0.2492 seconds while K-Means Clustering is 12.1285 seconds.

Keywords : Classification , Dataset , K -Means Clustering , K - Nearest Neighbor , runing time , accuracy .


(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xiii

Daftar Lampiran xv

BAB 1 PENDAHULUAN

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metodologi Penelitian 3

1.7 Sistematika Penulisan 4

BAB 2 TINJAUAN PUSTAKA

2.1 Data Mining 6

2.2 Proses Data Mining 10

2.3 Data Clustering 13

2.4 Clustering 13

2.4.1 K-Means clustering

2.4.1.1 Algoritma K-Means clustering

14 15 2.4.2 k-Nearest Neighbor

2.4.2.1 Algoritma k-Nearest Neighbor

17 18 2.5 Euclidean Distance 21

2.6 Centroids 21

2.7 Dataset 21

2.8 Diabetes Melitus 21

2.8.1 Pengertian Diabetes Melitus 22 2.8.2 Determinan Diabetes Melitus 22 BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Pengumpulan Data Pelatihan 23

3.2 Proses Training pada Algoritma k-means Clustering

25 3.2.1 Menentukan jumlah cluster dan nilai

Centroids

25 3.2.2 Menentukan jumlah Euclidean distance

3.2.3 Proses perpindahan centroids

26 30


(10)

3.3 Proses Training pada Algoritma k-nearest neighbor 31 3.3.1 Proses perhitungan similarity function pada

algoritma k-nearest neighbor

31

3.4 Struktur Tabel 38

3.5 Perancangan Sistem 45

3.5.1 Diagram Konteks 45

3.5.2 Data Flow Diagram 46

3.5.3 Data Flow Diagram level 2 47 3.5.4 Entity Relation Diagram 49

3.6 Flowchart 51

3.7 Perancangan User Interface 54

3.7.1 Perancangan Admin Interface Input (Pemasukan) 54 Data

3.7.2 Perancangan Admin Interface Outnput(Keluaran) 60 BAB 4 IMPLEMENTASI DAN PENGUJIAN

4.1 Pengertian Implementasi Sistem 69

4.2 Komponen utama dalam Implementasi Sistem 69 4.2.1 Perangkat Keras (Hardware) 69 4.2.2 Perangkat Lunak (Software) 70 4.2.3 Unsur Manusia (Brainware) 70

4.3 Tampilan Program 71

4.3.1 Tampilan Import Data 71

4.3.2 Halaman Data Sampel Dibetes 71 4.3.3 Halaman Input Data Atribut 72

4.3.4 Halaman Data Atribut 73

4.3.5 Halaman Input nilai acak centroid 74 4.3.6 Halaman Hasil Clustering K-Means 75 4.3.6.1 Halaman Hasil Clustering K-Means dengan

hasil diabetes negatif dan positif

76 4.3.7 Halaman Input data baru dan nilai limit

4.3.8 Halaman Hasil Clustering KNN

4.3.8.1 Halaman Hasil Clustering KNN dengan hasil diabetes negatif dan positif

77 78 79

BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan 80

5.2 Saran 80


(11)

DAFTAR TABEL

Halaman Tabel 3.1 Tabel karakterisik pada masing-masing kolom dalam

PIMA Indians dataset

24 Tabel 3.2 Tabel nilai centroids yang akan digunakan 26

Tabel 3.3 Tabel nilai sample 27

Tabel 3.4 Tabel Hasil Perhitungan Euclidean Distance Terhadap Centroids pada Sample

29

Tabel 3.5 Tabel Hasil Pergeseran centroids 31

Tabel 3.6 Tabel nilai Data Testing yang akan digunakan 32

Tabel 3.7 Tabel nilai Nilai data testing 32

Tabel 3.8 Tabel Nilai Similarity Function Pada Sample 34 Tabel 3.9 Tabel Mengurutkan Objek ke dalam Kelompok ke Jarak

Euclid Terkecil

35

Tabel 3.10 Tabel Label classY 36

Tabel 3.11 Tabel Hasil Akhir Mayoritas Kategori 37

Tabel 3.12 Tabel akumulasi_jarak 38

Tabel 3.13 Tabel akumulasi_jarak2 39

Tabel 3.14 Tabel akumulasi_knn 39

Tabel 3.15 Tabel Tabel atribut 40

Tabel 3.16 Tabel Tabel iterasi 40

Tabel 3.17 Tabel jarak 41

Tabel 3.18 Tabel jarak_knn 41

Tabel 3.19 Tabel nilai_acak 42

Tabel 3.20 Tabel nilai_acak2 43

Tabel 3.21 Tabel sampel 43


(12)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Tahapan KDD pada Data Mining 11

Gambar 2.2 Flowchart Algoritma Metode k-Means Clustering 16

Gambar 2.3 Ilustrasi Kedekatan Kasus Pasien 19

Gambar 2.4 Flowchart Algoritma k-nearest neighbor 20

Gambar 3.1 Diagram Konteks 45

Gambar 3.2 Data Flow Diagram 47

Gambar 3.3 DFD Level 2 olah data atribut 48

Gambar 3.4 DFD Level 2 Proses Clustering sampel dengan KNN

48 Gambar 3.5 DFD Level 2 proses clustering dengan K-Means 49

Gambar 3.6 Entity Relation Diagram 50

Gambar 3.7 Flowchart Menu 51

Gambar 3.8 Flowchrt K-Means 52

Gambar 3.9 Flowchart KNN 53

Gambar 3.10 Import Data Sampel Diabetes 54

Gambar 3.11 Perancangan Input Nilai Data Baru dan Nilai Limit 55 Gambar 3.12 Perancangan Input Nilai Data Centroid 1 dan Data Centroid 2 57

Gambar 3.13 Perancangan Form Atribut 59

Gambar 3.14 Perancangan Output Sampel Diabetes 61

Gambar 3.15 Perancangan Output Data Atribut 62

Gambar 3.16 Perancangan Tampilan KNN 63

Gambar 3.17 Perancangan tampilan Hasil clustering KNN Positif dan Negatif 64

Gambar 3.18 Perancangan Tampilan K-Means 66

Gambar 3.19 Perancangan tampilan Hasil clustering K-Means Positif dan Negatif

67

Gambar 4.1 Tampilan Import Data 71

Gambar 4.2 Halaman Data Sampel Diabetes 72

Gambar 4.3 Input Data Atribut 73

Gambar 4.4 Input Data Bobot 74

Gambar 4.5 Halaman Input nilai acak centroid 75

Gambar 4.6 Halaman Hasil Clustering K-Means 76

Gambar 4.7 Halaman Hasil Clustering K-Means dengan hasil diabetes Negati dan positif

77

Gambar 4.8 Halaman Input data baru dan nilai limit 77

Gambar 4.9 Halaman Hasil Clustering KNN 78

Gambar 4.10 Halaman Hasil Clustering KNN dengan hasil diabetes Positif dan Negatif


(13)

DAFTAR LAMPIRAN

Halaman

A Tabel Dataset A-1

B Listing Program B-1


(1)

COMPARATIVE ANALYSIS OF CLUSTER PROCESS USING K -MEANS CLUSTERING AND K-NEAREST NEIGHBOR DISEASE DIABETES MELLITUS

ABSTRACT

Classification is one of the few role of data mining. In the classification function, there are many algorithms that can be used to process input into the desired output, so it must be considered aspects of performance of each algorithm. The purpose of this study was to analyze and compare the performance of Nearest Neighbor and K-Means Clustering from the standpoint of accuracy and runing time.Data sets the research came from the UCI Machine Learning Repository, ie: PIMA Indians Diabetes Dataset.Hasil accuracy comparative analysis shows that the value to-accuracy algorithm K-Means Clustering with an accuracy better than 67 143% K-Nearest Neighbor algorithm with 64 286% accuracy in the implementation of the testing process the data sets.sedangkan time K-Nearest Neighbor algorithm is relatively faster than the K-Means Clustering where Watu testing of K-Nearest Neighbor ie 0.2492 seconds while K-Means Clustering is 12.1285 seconds.

Keywords : Classification , Dataset , K -Means Clustering , K - Nearest Neighbor , runing time , accuracy .


(2)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xiii

Daftar Lampiran xv

BAB 1 PENDAHULUAN

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metodologi Penelitian 3

1.7 Sistematika Penulisan 4

BAB 2 TINJAUAN PUSTAKA

2.1 Data Mining 6

2.2 Proses Data Mining 10

2.3 Data Clustering 13

2.4 Clustering 13

2.4.1 K-Means clustering

2.4.1.1 Algoritma K-Means clustering

14 15 2.4.2 k-Nearest Neighbor

2.4.2.1 Algoritma k-Nearest Neighbor

17 18 2.5 Euclidean Distance 21

2.6 Centroids 21

2.7 Dataset 21

2.8 Diabetes Melitus 21

2.8.1 Pengertian Diabetes Melitus 22 2.8.2 Determinan Diabetes Melitus 22

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Pengumpulan Data Pelatihan 23

3.2 Proses Training pada Algoritma k-means Clustering


(3)

3.3 Proses Training pada Algoritma k-nearest neighbor 31 3.3.1 Proses perhitungan similarity function pada

algoritma k-nearest neighbor

31

3.4 Struktur Tabel 38

3.5 Perancangan Sistem 45

3.5.1 Diagram Konteks 45

3.5.2 Data Flow Diagram 46

3.5.3 Data Flow Diagram level 2 47

3.5.4 Entity Relation Diagram 49

3.6 Flowchart 51

3.7 Perancangan User Interface 54

3.7.1 Perancangan Admin Interface Input (Pemasukan) 54 Data

3.7.2 Perancangan Admin Interface Outnput(Keluaran) 60

BAB 4 IMPLEMENTASI DAN PENGUJIAN

4.1 Pengertian Implementasi Sistem 69

4.2 Komponen utama dalam Implementasi Sistem 69 4.2.1 Perangkat Keras (Hardware) 69 4.2.2 Perangkat Lunak (Software) 70

4.2.3 Unsur Manusia (Brainware) 70

4.3 Tampilan Program 71

4.3.1 Tampilan Import Data 71

4.3.2 Halaman Data Sampel Dibetes 71

4.3.3 Halaman Input Data Atribut 72

4.3.4 Halaman Data Atribut 73

4.3.5 Halaman Input nilai acak centroid 74 4.3.6 Halaman Hasil Clustering K-Means 75 4.3.6.1 Halaman Hasil Clustering K-Means dengan

hasil diabetes negatif dan positif

76 4.3.7 Halaman Input data baru dan nilai limit

4.3.8 Halaman Hasil Clustering KNN

4.3.8.1 Halaman Hasil Clustering KNN dengan hasil diabetes negatif dan positif

77 78 79

BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan 80

5.2 Saran 80


(4)

DAFTAR TABEL

Halaman Tabel 3.1 Tabel karakterisik pada masing-masing kolom dalam

PIMA Indians dataset

24

Tabel 3.2 Tabel nilai centroids yang akan digunakan 26

Tabel 3.3 Tabel nilai sample 27

Tabel 3.4 Tabel Hasil Perhitungan Euclidean Distance Terhadap Centroids pada Sample

29

Tabel 3.5 Tabel Hasil Pergeseran centroids 31

Tabel 3.6 Tabel nilai Data Testing yang akan digunakan 32

Tabel 3.7 Tabel nilai Nilai data testing 32

Tabel 3.8 Tabel Nilai Similarity Function Pada Sample 34

Tabel 3.9 Tabel Mengurutkan Objek ke dalam Kelompok ke Jarak Euclid Terkecil

35

Tabel 3.10 Tabel Label classY 36

Tabel 3.11 Tabel Hasil Akhir Mayoritas Kategori 37

Tabel 3.12 Tabel akumulasi_jarak 38

Tabel 3.13 Tabel akumulasi_jarak2 39

Tabel 3.14 Tabel akumulasi_knn 39

Tabel 3.15 Tabel Tabel atribut 40

Tabel 3.16 Tabel Tabel iterasi 40

Tabel 3.17 Tabel jarak 41

Tabel 3.18 Tabel jarak_knn 41

Tabel 3.19 Tabel nilai_acak 42

Tabel 3.20 Tabel nilai_acak2 43

Tabel 3.21 Tabel sampel 43


(5)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Tahapan KDD pada Data Mining 11

Gambar 2.2 Flowchart Algoritma Metode k-Means Clustering 16

Gambar 2.3 Ilustrasi Kedekatan Kasus Pasien 19

Gambar 2.4 Flowchart Algoritma k-nearest neighbor 20

Gambar 3.1 Diagram Konteks 45

Gambar 3.2 Data Flow Diagram 47

Gambar 3.3 DFD Level 2 olah data atribut 48

Gambar 3.4 DFD Level 2 Proses Clustering sampel dengan KNN

48

Gambar 3.5 DFD Level 2 proses clustering dengan K-Means 49

Gambar 3.6 Entity Relation Diagram 50

Gambar 3.7 Flowchart Menu 51

Gambar 3.8 Flowchrt K-Means 52

Gambar 3.9 Flowchart KNN 53

Gambar 3.10 Import Data Sampel Diabetes 54

Gambar 3.11 Perancangan Input Nilai Data Baru dan Nilai Limit 55 Gambar 3.12 Perancangan Input Nilai Data Centroid 1 dan Data Centroid 2 57

Gambar 3.13 Perancangan Form Atribut 59

Gambar 3.14 Perancangan Output Sampel Diabetes 61

Gambar 3.15 Perancangan Output Data Atribut 62

Gambar 3.16 Perancangan Tampilan KNN 63

Gambar 3.17 Perancangan tampilan Hasil clustering KNN Positif dan Negatif 64

Gambar 3.18 Perancangan Tampilan K-Means 66

Gambar 3.19 Perancangan tampilan Hasil clustering K-Means Positif dan Negatif

67

Gambar 4.1 Tampilan Import Data 71

Gambar 4.2 Halaman Data Sampel Diabetes 72

Gambar 4.3 Input Data Atribut 73

Gambar 4.4 Input Data Bobot 74

Gambar 4.5 Halaman Input nilai acak centroid 75

Gambar 4.6 Halaman Hasil Clustering K-Means 76

Gambar 4.7 Halaman Hasil Clustering K-Means dengan hasil diabetes Negati dan positif

77

Gambar 4.8 Halaman Input data baru dan nilai limit 77

Gambar 4.9 Halaman Hasil Clustering KNN 78

Gambar 4.10 Halaman Hasil Clustering KNN dengan hasil diabetes Positif dan Negatif


(6)

DAFTAR LAMPIRAN

Halaman

A Tabel Dataset A-1

B Listing Program B-1