Analisis Perbandingan Proses Cluster Menggunakan K- Means Clustering dan K-Nearest Neighbor pada Penyakit Diabetes Mellitus
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