• Tidak ada hasil yang ditemukan

PERBANDINGAN KINERJA ALGORITMA K-NEAREST NEIGHBORS DAN ALGORITMA NAIVE BAYES DALAM MEMPREDIKSI PRESTASI MAHASISWA SKRIPSI EDDY

N/A
N/A
Protected

Academic year: 2021

Membagikan "PERBANDINGAN KINERJA ALGORITMA K-NEAREST NEIGHBORS DAN ALGORITMA NAIVE BAYES DALAM MEMPREDIKSI PRESTASI MAHASISWA SKRIPSI EDDY"

Copied!
100
0
0

Teks penuh

(1)

PERBANDINGAN KINERJA ALGORITMA K-NEAREST NEIGHBORS DAN ALGORITMA NAIVE BAYES DALAM MEMPREDIKSI

PRESTASI MAHASISWA

SKRIPSI

EDDY 141401079

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2021

(2)

PERBANDINGAN KINERJA ALGORITMA K-NEAREST NEIGHBORS DAN ALGORITMA NAIVE BAYES DALAM MEMPREDIKSI PRESTASI

MAHASISWA

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

EDDY 141401079

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2021

(3)
(4)

iii

PERNYATAAN

PERBANDINGAN KINERJA ALGORITMA K-NEAREST NEIGHBORS DAN ALGORITMA NAIVE BAYES DALAM MEMPREDIKSI PRESTASI MAHASISWA

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing – masing telah disebutkan sumbernya.

Medan, Agustus 2021

Eddy

141401079

(5)

iv

UCAPAN TERIMA KASIH

Segala puji, syukur, hormat, serta kemuliaan hanya bagi Tuhan Yesus Kristus,Allah luar biasa yang telah memberikan kesempatan kepada penulis untuk mengerjakan dan menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer Universitas Sumatera Utara. Dalam pengerjaan studi dan penulisan skripsi ini, penulis telah menerima banyak dukungan berupa doa, pemikiran, kerjasama, semangat, dan dana dari berbagai pihak. Penulis ingin menyampaikan rasa hormat dan terima kasih yang sebesar– besarnya kepada : 1. Bapak Dr. Muryanto Amin, S.Sos., M.Si. selaku Rektor Universitas Sumatera

Utara.

2. Ibu Dr. Maya Silvi Lydia, B.Sc., M.Sc., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.

3. Bapak Dr. Poltak Sihombing, M.Kom. selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara, dosen pembimbing akademik dan sekaligus Dosen Pembanding I penulis selama menempuh pendidikan S1 di Ilmu Komputer Universitas Sumatera Utara serta memberikan kritik dan saran untuk penyempurnaan skripsi ini.

4. Bapak Herriyance, ST, M.Kom., selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara dan sekaligus Dosen Pembanding II penulis selama menempuh pendidikan S1 Ilmu Komputer serta memberikan kritik dan saran untuk penyempurnaan skripsi ini.

5. Bapak Jos Timanta Tarigan, S.Kom, M.Sc. selaku Dosen Pembimbing I yang telah memberikan bimbingan, saran, dan masukan kepada penulis dalam pengerjaan skripsi ini.

6. Ibu Sri Melvani Hardi, S.Kom., M.Kom., selaku Dosen Pembimbing II yang telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

7. Bapak Alm. Dr. Sajadin Sembiring, S.Si., M.Comp.Sc. selaku Dosen Pembimbing II yang lama telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

8. Seluruh tenaga pengajar dan pegawai Program Studi S1 Ilmu Komputer

Fasilkom-TI USU.

(6)

v

10. Edrea Cioksidy, ST dan Daniel H. Silalahi, S.Kom. yang telah memberikan doa dan dukungan yang diberikan agar penulis tetap semangat dalam mengerjakan skripsi ini.

11. Ayahanda Susanto dan Ibunda Deliana yang selalu memberikan doa dan dukungan serta kasih sayang kepada penulis, serta adik – adik tersayang Cindy dan Frincillia yang telah memberikan dukungan dan dorongan bagi penulis untuk menyelesaikan skripsi ini.

12. Bapak Atek Hu, SE selaku paman yang telah memberikan semangat dan motivasi untuk menyelesaikan skripsi ini.

13. Komunitas Developer Student Clubs Google Indonesia (Felicia Giovanni Tjahyamulia, S.Kom.) yang telah memberikan banyak doa, dukungan dan semangat selama menjalani proses perkuliahan dan penyelesaian skripsi ini.

14. Adik-adik dari Developer Student Clubs Universitas Sumatera Utara (Sinta Anjelina dan Charity, S.Kom.) yang telah memberikan doa dan dukungan kepada penulis untuk mengerjakan skripsi ini.

15. Adik-adik dari Developer Student Clubs STMIK TIME (Winston Tehru, S.Kom.

dan Veirry Augusman, S.Kom.) yang telah memberikan doa dan dukungan kepada penulis untuk mengerjakan skripsi ini.

16. Adik-adik dari Developer Student Clubs Universitas Pelita Harapan Medan (Celine Nathasya) yang telah memberikan doa dan dukungan kepada penulis untuk mengerjakan skripsi ini.

17. Bapak Dr. Muhammad Andri Budiman, ST, M.Comp.Sc., MEM, S.C.J.P, dan Bapak Albert Suwandhi, ST., M.TI., yang telah memberikan motivasi dan dukungan untuk menyelesaikan skripsi ini.

18. Teman – teman kuliah Ilmu Komputer Stambuk 2014 khususnya untuk KOM A yang telah banyak memberikan motivasi dan semangat dalam menyelesaikan skripsi ini.

Semoga semua kebaikan, bantuan, perhatian, serta dukungan yang telah diberikan kepada penulis mendapatkan pahala yang melimpah dari Tuhan Yang Maha Esa.

Medan, Agustus 2021

Penulis

(7)

vi

ABSTRAK

Sistem prediksi prestasi mahasiswa dengan menggunakan dataset mahasiswa telah banyak dikembangkan dan diteliti oleh berbagai peneliti-peneliti sebelumnya. Namun, hasil penelitian yang telah dikembangkan dan diimplementasikan kurang maksimal karena penggunaan variabel-variabel untuk memprediksi prestasi mahasiswa masih kurang beragam. Adapun sistem yang telah digunakan dinilai belum memenuhi kebutuhan dari pihak Universitas Sumatera Utara Sistem yang telah dikembangkan hanya berfokus kepada implementasi model dan akurasi yang didapatkan dalam proses training dan testing. Model yang digunakan biasanya hanya 1 (satu) model dalam sistem prediksi prestasi mahasiswa sehingga kurang beragam untuk dibandingkan saat melakukan proses training dan testing. Adapun yang menggunakan beberapa model akan tetapi kurang maksimal dalam mengevaluasi proses karena tidak adanya pembuktian korelasi variabel yang digunakan saat mengimplementasikan dataset. Dalam suatu proses data science, ada beberapa tahapan yang harus dilakukan, yaitu: memasukkan dataset, melakukan preprocessing data, membagi data menjadi data training dan testing, mengimplementasi model yang ingin dicoba dan melakukan validasi akurasi. Pada penelitian ini, membandingkan kedua algoritma yaitu k-Nearest Neighbors dan Naive Bayes. Pada hasil akurasi, pada k-Nearest Neighbors didapatkan akurasi sebesar 55,45% dengan memvalidasi akurasi dengan menggunakan metrics accuracy sedangkan menggunakan 10 fold Cross Validation didapatkan akurasi 56%.

Pada Naive Bayes, didapatkan hasil akurasi menggunakan metrics accuracy sebesar 48,51% untuk Gaussian Bayes, 39,6% untuk Multinominal Bayes dan 40,26% untuk Bernoulli Bayes sedangkan menggunakan 10 fold Cross Validation didapatkan hasil akurasi sebesar 54,26%. Pada hasil korelasi variabel, variabel yang memiliki tertinggi adalah korelasi antara Indeks Prestasi Semester dengan jenis kelamin dengan nilai sebesar 0.23 dengan menggunakan Spearman Correlation sedangkan menggunakan Pearson Correlation didapatkan hasil sebesar 0.25 dengan korelasi variabel antara variabel program studi dan variabel Indeks Prestasi Semester.

Kata Kunci : Klasifikasi, Data Science, k-Nearest Neighbors, Naive Bayes,

Spearman Correlation, Pearson Correlation

(8)

vii

COMPARSION OF PERFORMANCE OF K-NEAREST NEIGHBORS ALGORITHM AND NAIVE BAYES ALGORITHM IN

PREDICTING STUDENT PERFORMANCE

ABSTRACT

Prediction student academic performance system by using university student’s dataset has been developed and researched for several researchers before. However, the result of the researchs don’t optimize because the variable that used for predict student academic performance isn’t various. The system that has been used is considered to have not met the needs of Universitas Sumatera Utara. The system has been developed only focus to result of model and accuracy where come from training and testing. The model has been implemented usually 1 (one) model in prediction student academic performance where there is no various for comparison while training and testing.

Some of them used several models but those are given best result for evaluate the proses because there is no correlation variable’s proof while implemented the dataset.

In processing of data science, there is several steps that must do, like import dataset, data preprocessing, separate dataset into data training and data testing, implements model that you want to try and evaluate accuracy. In this research, the result of k- Nearest Neighbors is 55,45% with validate accuracy using metrics accuracy and by using 10 fold Cross Validation that we get result is 56%. By using Naive Bayes, the result that implement metrics accuracy is 48,51% for Gaussian Bayes, 39,6% for Multinominal Bayes and 40,26% for Bernoulli Bayes. By using 10 fold Cross Validation the accuracy is 54,26%. For correlation variable, the highest correlation variable is Indeks Prestasi Semester’s variable between Jenis Kelamin’s variable where the result is 0,23 by using Spearman Correlation. By using Pearson Correlation, the highest correlation variable is between Program Studi’s variable and Indeks Prestasi Semester’s variable and the result is 0,25.

Keywords : Classification, Data Science, k-Nearest Neighbors, Naive Bayes,

Spearman Correlation, Pearson Correlation

(9)

viii

DAFTAR ISI

Persetujuan... ii

Pernyataan ... iii

Penghargaan ...iv

Abstrak ...vi

Abstract ... vii

Daftar Isi ... viii

Daftar Tabel ... xii

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... 4

1.7. Sistematika Penulisan ... 5

BAB 2 LANDASAN TEORI 2.1. Machine Learning ... 7

2.2. Jenis – jenis Metode Pembelajaran Machine Learning ... 7

2.2.1. Supervised Learning ... 7

2.2.2. Unsupervised Learning ... 8

2.2.3. Reinforcement Learning ... 8

2.2.4. Neural Network dan Deep Learning ... 9

2.3. Jenis-jenis Algoritma Machine Learning ... 9

2.3.1. Bayesian ... 9

2.3.2. Clustering ... 9

2.3.3. Decision Tree ... 10

(10)

ix

2.3.4. Reduksi Dimensi... 10

2.3.5. Berbasis Contoh ... 10

2.3.6. Jaringan Saraf Tiruan dan Deep Learning ... 10

2.3.7. Regresi Linear ... 10

2.4. Data Mining ... 10

2.5. Data Science ... 11

2.6. Pengertian Algoritma ... 12

2.7. Python... 12

2.8. Algoritma k-Nearest Neighbors ... 12

2.9. Algoritma Naive Bayes ... 13

2.9.1. Bernoulli Naive Bayes... 14

2.9.2. Multinominal Naive Bayes ... 14

2.9.3. Gaussian Naive Bayes... 14

2.10. Cross Validation ... 15

2.9.1. Random Subsampling... 15

2.9.2. K-Fold Cross Validation ... 15

2.9.3. Leave-one-out Cross Validation ... 15

2.11. Analisis Korelasi ... 15

2.11.1. Pearson Correlation Coefficient ... 15

2.11.2. Spearman Correlation Coefficient ... 16

BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem ... 19

3.1.1. Analisis Masalah... 19

3.1.2. Analisis Kebutuhan ... 21

3.1.2.1. Kebutuhan Fungsional ... 21

3.1.2.2. Kebutuhan Nonfungsional ... 22

3.1.3. Analisis Proses... 22

3.2. Arsitektur Sistem ... 22

3.2.1. Arsitektur Sistem pada k-Nearest Neighbors ... 24

3.2.2. Arsitektur Sistem pada Naive Bayes ... 25

3.3. Pemodelan Sistem ... 26

3.3.1. Use-case Diagram ... 26

3.3.2. Activity Diagram... 28

(11)

x

3.3.2.1. Activity Diagram Algoritma k-Nearest Neighbors ... 28

3.3.2.2. Activity Diagram Algoritma Naive Bayes ... 29

3.3.3. Sequence Diagram ... 30

3.3.3.1. Flowchart Algoritma k-Nearest Neighbors ... 31

3.3.3.2. Flowchart Algoritma Naive Bayes ... 33

3.3.4. Perancangan Antarmuka ... 34

3.3.4.1. Halaman Awal ... 34

3.3.4.2. Halaman Pengujian ... 35

3.3.4.3. Halaman Prediksi ... 36

3.3.4.4. Halaman Tentang ... 37

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM 4.1. Implementasi Sistem ... 38

4.1.1. Analisis Masalah... 38

4.1.2. Analisis Kebutuhan ... 38

4.2. Tampilan Antarmuka Sistem ... 39

4.2.1. Tampilan Antarmuka Form Utama ... 39

4.2.2.

Tampilan Antarmuka Form Tentang

... 39

4.2.3.

Tampilan Antarmuka Form Percobaan

... 40

4.2.4.

Tampilan Antarmuka Form Hasil

... 41

4.2.5.

Tampilan Antarmuka Google Colab

... 41

4.4. Algoritma k-Nearest Neighbors ... 42

4.5. Algoritma Naive Bayes ... 44

4.6. Pengujian Sistem ... 47

4.6.1. Visualisasi Data ... 48

4.6.2. Pengujian Sistem Website ... 52

4.6.2.1. Pengujian Sistem Website algoritma k-Nearest Neighbors ... 52

4.6.2.2.

Pengujian Sistem Website algoritma Naive Bayes ...

55

4.6.3. Pengujian Algoritma k-Nearest Neighbors ... 58

4.6.4. Pengujian Algoritma Naive Bayes ... 61

4.7. Pengujian Korelasi Variabel ... 63

4.7.1. Pengujian Korelasi Variabel Pearson Correlation ... 64

4.7.2. Pengujian Korelasi Variabel Spearman Correlation ... 65

(12)

x

i

BAB 5 KESIMPULAN DAN SARAN

5.1. Kesimpulan ... 67

5.2. Saran ... 68

DAFTAR PUSTAKA ... 69

LAMPIRAN

(13)

xii

DAFTAR TABEL

Tabel 3.1 Dokumentasi Naratif Use-case Diagram Algoritma k-Nearest Neighbors ... 27

Tabel 3.2 Dokumentasi Naratif Use-case Diagram Algoritma Naive Bayes ... 28

Tabel 3.3 Keterangan Gambar Rancangan Tampilan Halaman Awal ... 34

Tabel 3.4 Keterangan Gambar Rancangan Tampilan Halaman Pengujian ... 35

Tabel 3.5 Keterangan Gambar Rancangan Tampilan Halaman Prediksi ... 36

Tabel 3.6 Keterangan Gambar Rancangan Tampilan Halaman Tentang ... 37

Tabel 4.1 Tabel Sampel Data Mahasiswa ... 42

Tabel 4.2 Tabel Hasil Perhitungan Euclidian Distance ... 43

Tabel 4.3 Tabel Pengurutan Terdekat Berdasarkan Nilai Jarak ... 44

Tabel 4.4 Tabel Sampel Data Mahasiswa ... 45

Tabel 4.5 Tabel Hasil Perhitungan Klasifikasi Data dengan menggunakan Algoritma Naive Bayes ... 47

Tabel 4.6 Tabel Hasil Pengujian Sistem Algoritma k-Nearest Neighbors ... 52

Tabel 4.7 Tabel Hasil Pengu3ian Sistem Algoritma Naive Bayes ... 55

Tabel 4.8 Hasil Akurasi Pengujian Training dan Testing Algoritma k-Nearest Neighbors menggunakan Metrics Accuracy dan 10 fold Cross Validation ... 58

Tabel 4.9 Hasil Akurasi Pengujian Training dan Testing Algoritma Naive Bayes

menggunakan Metrics Accuracy dan 10 fold Cross Validation ... 61

(14)

xiii

DAFTAR GAMBAR

Gambar 3.1 Ishikawa Diagram Sistem ... 20

Gambar 3.2 Arsitektur Sistem ... 23

Gambar 3.3 Arsitektur Sistem pada k-Nearest Neighbors ... 24

Gambar 3.4 Arsitektur Sistem pada Naive Bayes ... 25

Gambar 3.5 Use-case Diagram Sistem ... 27

Gambar 3.6 Activity Diagram Sistem Prediksi Prestasi Mahasiswa dengan algoritma k-Nearest Neighbors ... 29

Gambar 3.7 Activity Diagram Sistem Prediksi Prestasi Mahasiswa dengan algoritma Naive Bayes ... 30

Gambar 3.8 Sequence Diagram ... 31

Gambar 3.9 Flowchart Sistem Memprediksi Prestasi Mahasiswa dengan algoritma k- Nearest Neighbors... 32

Gambar 3.10 Flowchart Sistem Memprediksi Prestasi Mahasiswa dengan algoritma Naive Bayes ... 33

Gambar 3.11 Rancangan Tampilan Halaman Awal ... 34

Gambar 3.12 Rancangan Tampilan Halaman Pengujian ... 35

Gambar 3.13 Rancangan Tampilan Halaman Prediksi ... 36

Gambar 3.14 Rancangan Tampilan Halaman Tentang ... 37

Gambar 4.1 Tampilan Antarmuka Form Utama... 39

Gambar 4.2 Tampilan Antarmuka Form Tentang ... 40

Gambar 4.3 Tampilan Antarmuka Form Percobaan ... 40

Gambar 4.4 Tampilan Antarmuka Form Hasil ... 41

Gambar 4.5 Tampilan Antarmuka Google Colab ... 42

Gambar 4.6 Informasi Jumlah Data Mahasiswa pada setiap Kolom Dataset ... 48

Gambar 4.7 Grafik Jumlah Data Mahasiswa berdasarkan Pengelompokkan Jenis Kelamin ... 49

Gambar 4.8 Grafik Jumlah Data Mahasiswa berdasarkan Jalur Masuk ... 49

(15)

xiv

Gambar 4.9 Grafik Jumlah Data Mahasiswa berdasarkan Program Studi ... 50

Gambar 4.10 Grafik Jumlah Data Mahasiswa berdasarkan Indeks Prestasi Semester ... 50

Gambar 4.11 Grafik Jumlah Data Mahasiswa Terbesar berdasarkan Asal Daerah ... 51

Gambar 4.12 Grafik Jumlah Data Mahasiswa Terkecil berdasarkan Asal Daerah ... 51

Gambar 4.13 Grafik Jumlah Data Mahasiswa berdasarkan Status Mahasiswa... 52

Gambar 4.14 Grafik Akurasi dari Hasil Pengujian algoritma k-Nearest Neighbors dengan menggunakan Metrics Akurasi ... 59

Gambar 4.15 Grafik Akurasi dari Hasil Pengujian algoritma k-Nearest Neighbors dengan menggunakan 10 fold Cross Validation ... 59

Gambar 4.16 Hasil Confusion Matrix Penujian k-Nearest Neighbors ... 60

Gambar 4.17 Hasil Confusion Matrix Penujian Gaussian Bayes ... 61

Gambar 4.18 Hasil Confusion Matrix Penujian Multinominal Bayes ... 62

Gambar 4.19 Hasil Confusion Matrix Penujian Bernoulli Bayes ... 62

Gambar 4.20 Hasil Pengujian Korelasi Variabel dengan mengguunakan Pearson Correlation ... 63

Gambar 4.21 Grafik Hasil Korelasi Variabel dengan mengguunakan Pearson Correlation ... 66

Gambar 4.22 Hasil Pengujian Korelasi Variabel dengan mengguunakan Spearman Correlation ... 65

Gambar 4.23 Grafik Hasil Korelasi Variabel dengan mengguunakan Spearman

Correlation ... 65

(16)

xv

DAFTAR LAMPIRAN

LAMPIRAN 1 Listing Program ... A - 1

LAMPIRAN 2 Curriculum Vitae ... B – 1

LAMPIRAN 3 Surat Izin Riset ... C – 1

(17)

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Pemanfaatan teknologi informasi semakin meluas di zaman modern ini. Hal itu dikarenakan pemanfaatan teknologi informasi yang semakin mempermudah berbagai sektor kehidupan manusia terutama pada bidang akademik dan pendidikan. Salah satu pemanfaatan teknologi informasi pada bidang akademik dan pendidikan adalah dengan membantu pihak universitas dalam menganalisis prestasi akademik mahasiswa sehingga bisa menjadi bahan pertimbangan untuk proses penyeleksian mahasiswa baru.

Dalam bidang Ilmu Komputer terutama pada Machine Learning, ada banyak algoritma yang dapat digunakan untuk memprediksi prestasi mahasiswa diantaranya adalah algoritma k-Nearest Neighbors dan algoritma Naive Bayes.

Algoritma k-Nearest Neighbors merupakan algoritma untuk mengklasifikasikan data-data yang berasal dari dataset. Algoritma k-Nearest Neighbors memiliki kelebihan yaitu dapat melabeli data-data sesuai dengan data-data yang ada kemudian langsung dimasukkan ke dalam kelas yang mana (Widodo Budiharto, 2016). Hal itu memberikan kemudahan untuk mengelompokkan nilai-nilai mahasiswa yang ada. Akan tetapi, algoritma k-Nearest Neighbors memiliki kelemahan, yaitu algoritma ini tidak mampu mencari data secara cepat karena harus mencari data secara keseluruhan terlebih dahulu.

Algoritma Naive Bayes merupakan algoritma untuk mengklasifikasikan data- data berdasarkan kondisi naive di mana dapat dimplementasikan berdasarkan kondisi yang terjadi (Giuseppe Bonaccorso, 2017). Algoritma Naive Bayes memiliki kelebihan yaitu mampu mengklasifikasikan data berdasarkan kondisi-kondisi tertentu sehingga cepat mendapatkan solusi berdasarkan masalah yang ada tanpa membandingkan kondisi-kondisi yang lain. Akan tetapi, algoritma Naive Bayes

memiliki kelemahan, yaitu algoritma Naive Bayes kurang mampu mengolah permasalahan

1

(18)

2

yang memiliki korelasi dengan

permasalahan yang lain yang lebih dari satu (Giuseppe Bonaccorso, 2017).

Bentuk implementasi kedua algoritma tersebut yaitu dapat diterapkan dalam membantu pihak akademik terutama pihak Universitas Sumatera Utara yang memiliki data cukup besar namun belum adanya sistem yang memadai untuk mengelola data tersebut sehingga dapat dipergunakan dalam mengevaluasi prestasi mahasiswa dengan variabel yang dimiliki oleh tiap mahasiswa. Pada penelitian, penulis tertarik membandingkan kedua algoritma dengan menggunakan data mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara angkatan 2014, angkatan 2015, angkatan 2016 dan angkatan 2017 dalam memprediksi prestasi mahasiswa berdasarkan variabel variabel yaitu nama program studi, jenis kelamin, jalur masuk, asal daerah, Indeks Prestasi Semester dan status prestasi akademik untuk melihat bagaimana hasil perbandingan akurasi algoritma k-Nearest Neighbors dan algoritma Naive Bayes dengan memvalidasi akurasi menggunakan Cross Validation, dalam dataset terdapat beberapa features atau variabel. Untuk meneliti adanya korelasi variabel dapat digunakan pearson correlation dan spearman correlation untuk menguji nilai korelasi antar variabel dalam memprediksi prestasi mahasiswa.

1.2. Rumusan Masalah

Berikut adalah beberapa rumusan masalah yang menjadi acuan pada penelitian ini sebagai berikut:

1. Bagaimana perbandingan kinerja dari pengklasifikasian menggunakan algoritma k-Nearest Neighbors dan algoritma Naive Bayes dalam memprediksi prestasi mahasiswa?

2. Bagimana hasil perbandingan korelasi antar variabel dari dataset yang dipakai dengan menggunakan spearman correlation dan pearson correlation?

3. Bagaimana hasil perbandingan akurasi dari evaluasi algoritma dengan menggunakan metrics Accuracy dan 10-fold Cross Validation?

4. Bagaimana hasil evaluasi model yang digunakan?

1.3. Batasan Masalah

Untuk menghindari penyimpangan atau perluasan yang tidak diperlukan dalam

melakukan penelitian, berikut ini adalah beberapa batasan yang sudah ditetapkan.

(19)

3

1. Penelitian yang dilakukan untuk membandingkan algoritma k-Nearest Neighbors dan algoritma Naive Bayes dengan menggunakan memvalidasi akurasi menggunakan metode Cross Validation.

2. Variabel yang digunakan adalah program studi, jenis kelamin, jalur masuk , asal daerah, Indeks Prestasi Semester, dan status prestasi akademik Mahasiswa mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

3. Penelitian yang dilakukan untuk membandingkan antara variabel dengan mengimplementasikan pearson correlation dan spearman correlation serta membandingkannya.

4. Data yang diambil hanya berasal dari mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara angkatan 2014, 2015, 2016 dan 2017.

1.4. Tujuan Penelitian

Tujuan yang dilakukan pada penelitian ini adalah

1. Membandingkan kinerja algoritma antara algoritma k-Nearest Neighbors dan algoritma Naive Bayes berdasarkan korelasi antar variabel dan tingkat akurasinya.

2. Mengetahui nilai k maksimum pada algoritma k-Nearest Neighbors yang mencapai akurasi tertinggi dan jenis algoritma Naive Bayes manakah yang mampu mencapai akurasi tertinggi.

3. Mengetahui variabel manakah yang memiliki hubungan korelasi tertinggi terhadap variabel lainnya dari hasil perbandingan pearson correlation dan spearman correlation.

4. Membantu pihak Universitas Sumatera Utara untuk mengevaluasi prestasi mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi.

1.5. Manfaat Penelitian

Manfaat yang diharapkan dari penelitian ini adalah:

1. Mengetahui algoritma manakah yang lebih unggul antara algoritma k-Nearest Neighbors dan algoritma Naive Bayes.

2.

Mengetahui variabel manakah yang memiliki korelasi tertinggi jika dibandingkan menggunakan pearson correlation dan spearman correlation.

(20)

4

3. Memberikan kemudahan kepada pihak Universitas Sumatera Utara terutama pihak Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara dalam menganalisis prestasi akademik mahasiswa.

4. Menambah referensi penelitian-penelitian yang berhubungan dengan data science, algoritma k-Nearest Neighbors, algoritma Naive Bayes dan korelasi variabel.

1.6. Metodologi Penelitian

Penelitian ini menerapkan beberapa metode penelitian sebagai berikut:

1. Studi Pustaka

Pada tahap ini penelitian dimulai dengan mencari referensi dari berbagai sumber terpercaya dan melakukan peninjauan pustaka melalui buku-buku, artikel ilmiah, dan penelitian-penelitian lainnya dalam bentuk jurnal yang berhubungan dengan Algoritma k-Nearest Neighbors, Algoritma Naïve Bayes, 10 fold Cross Validation, Pearson Correlation dan Spearman Correlation.

2. Pengumpulan dan Analisa Data

Pada tahap ini dilakukan pengumpulan dan analisa data yang berhubungan dengan penelitian seperti pengumpulan data mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

3. Perancangan Sistem

Berdasarkan ruang lingkup penelitian, penulis melakukan analisa terhadap apa saja yang akan dibutuhkan dalam penelitian untuk segera dirancang dalam sebuah Flowchart, Arsitektur Sistem, Unified Modeling Language (UML), User Interface sehingga menjadi informasi.

4. Implementasi

Pada tahap ini, aplikasi dibuat dengan menggunakan HTML5 dan CSS3 sebagai frontend dan Flask Framework dan bahasa Python sebagai backend.

5. Pengujian

Pada tahap ini, prototype sistem yang telah dirancang dilakukan uji coba menggunakan bahasa pemrograman Python berbasis website.

6. Dokumentasi

Pada tahap ini, penelitian yang telah dilakukan, didokumentasikan mulai dari tahap analisa sampai kepada pengujian dalam bentuk skripsi.

(21)

5

1.7. Sistematika Penulisan

Agar pembahasan menjadi lebih sistematis, skripsi ini dibuat dalam lima bab, meliputi:

BAB 1

PENDAHULUAN

Bab ini berisi latar belakang penelitian judul skripsi “Perbandingan Kinerja Algoritma k-Nearest Neighbors dan Algoritma Naive Bayes dalam Memprediksi Prestasi Mahasiswa”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, tinjauan pustaka, dan sistematika penulisan skripsi ini.

BAB 2

LANDASAN TEORI

Bab ini berisi penjelasan singkat mengenai algoritma k-Nearest Neighbors, algoritma Naive Bayes teori – teori yang berhubungan dengan Kecerdasan Buatan, yaitu Data Science, Machine Learning, algoritma k-Nearest Neighbors, algoritma Naive Bayes, Cross Validation, Korelasi Variabel dan beberapa penelitian terdahulu yang relevan.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi uraian dari analisis system mengenai proses kerja dari

sistem temu kembali video menggunakan algoritma k-Nearest

Neighbors dan algoritma Naive Bayes dalam memprediksi prestasi

mahasiswa dengan menggunakan data mahasiswa yang terdiri dari,

analisis kebutuhan, analisis proses, arsitektur sistem, Unified Modeling

Language (UML) Diagram, flowchart, dan design interface system.

(22)

6

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

Merupakan hasil penelitian yang dilakukan. Berisi tentang penjelasan implementasi sistem berdasarkan analisis dan perancangan sistem, skenario pengujian terhadap sistem yang telah dibangun serta pembahasan hasil pengujian.

BAB 5

KESIMPULAN DAN SARAN

Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian

penelitian dari bab-bab sebelumnya dan saran-saran dari hasil yang

diperoleh yang diharapkan dapat bermanfaat dalam pengembangan

selanjutnya.

(23)

BAB 2

LANDASAN TEORI

2.1. Machine Learning

Machine Learning adalah bagian bidang ilmu yang berkaitan dengan statistik, kecerdasan buatan dan ilmu komputer yang dapat memprediksi hasil analisis dan dapat mempelajari data (Andreas C. Muller & Sarah Guido, 2017).

Proses Machine Learning sama dengan data mining. Keduanya mencari pola, akan tetapi pada machine learning menggunakan data untuk meningkatkan pemahaman program sendiri. (Widodo Budiharto, 2016).

Dengan menggunakan Machine Learning dapat memberikan keuntungan dengan mengolah data yang ada sehingga dapat merencanakan apa yang kita ingin ubah dan kita lakukan untuk ke depannya. (Judith Hurwitz & Daniel Kirsch, 2018)

2.2. Jenis-Jenis Metode Pembelajaran Machine Learning 2.2.1. Supervised Learning

Supervised Learning menerapkan konsep pengajaran yang dilakukan oleh seorang guru terhadap siswa. Dengan mengimplementasikan algoritma dan disediakan data training yang relevan, dapat dijalankan dan diukur pada setiap iterasi dan dapat diketahui perbedaan antara nilai yang diprediksi dan nilai yang diharapkan. (Giuseppe Bonaccorso, 2017)

Supervised Learning menerapkan pembelajaran yang paling sederhana dimana mesin belajar dari contoh yang benar dan contoh yang salah. Mesin mempelajari beberapa kasus, kemudian regression dimana keluarannya dilakukan secara kontinu. (Ethem Alpaydin, 2014). Algoritma yang di-training dengan menggunakan contoh preprocessed dan kinerja dari algoritmanya dievaluasi berdasarkan hasil tes data.

Terkadang pola diidentifikasi sebagai bagian dari data dan tidak bisa dideteksi pada data training yang besar. Jika model hanya merepresentasikan pola yang telah ada di subset training, maka terjadilah overfitting.

7

(24)

8

Overfitting berarti model yang dipakai untuk data training tidak dapat diaplikasikan ke data training yang lebih besar dan tidak diketahui. (Judith Hurwitz & Daniel Kirsch, 2018)

2.2.2. Unsupervised Learning

Unsupervised Learning, dilakukan mapping dari input ke outpu dimana nilai yang benar telah disediakan oleh pengguna. Dalam unsupervised learning, pengguna hanya memasukkan data training tanpa perlu melabelin data training. (Ethem Alpaydin, 2010).

Unsupervised Learning mampu belajar sendiri tanpa adanya pengawasan dan tentunya ada pengukuran kesalahan. Cara ini sangat ampuh dilakukan untuk mengelompokkan suatu objek berdasarkan tingkat kemiripan. Pendekatan pembelajaran menggunakan model ini berdasarkan bagaimana elemen-elemen dikelompokkan berdasarkan tingkat kemiripan. (Giuseppe Bonaccorso, 2017).

Unsupervised Learning mengcocokkan data menjadi kelompok-kelompok features.

Data yang tidak dilabelin membuat nilai parameter dan mengklasifikasikan data.

Proses penambahan label pada data biasanya dilakukan di supervised learning.

Unsupervised Learning dapat memberikan hasil ketika ada data yang cukup. Dengan kata lain, pengguna tidak tahu data apa yang dianalisis. Unsupersived Learning sangat membantu dalam menangani data training yang besar dan tidak terlabelin. (Judith Hurwitz & Daniel Kirsch, 2018)

2.2.3. Reinforcement Learning

Reinforcement Learning melakukan cara pembelajaran dengan melakukan sistem decision-making di mana mesin melakukan suatu perbuatan dalam lingkungannya sendiri dan menerima penghargaan atau pinalti dari perbuatan yang dilakukannya dalam menyelesaikan suatu masalah. Reinforcement Learning menggunakan sistem trial and error hingga mendapatkan nilai maksimun dan mencapai titik maksimunnya.

(Ethem Alpaydin, 2014). Reinforcement Learning adalah pemodelan pembelajaran

yang berdasarkan perilaku. Algoritma menerima umpan balik dari analisis data

sehingga pengguna cukup memandunya untuk mendapatkan hasil yang terbaik. Ynag

membedakan dari reinforcement learning dengan jenis-jenis pembelajaran yang

lainnya adalah reinforcement learning tidak memerlukan sampel data apapun. Sistem

(25)

9

dijalankan dengan cara trial and error.

Salah satu contoh implementasi reinforcement learning adalah pada bidang robotika dan aplikasi permainan. Reinforcement Learning juga biasanya digunakan pada sistem mobil cerdas. Dalam beberapa kasus, melakukan training sistem mobil cerdas cukup konmpleks karena terdiri dari banyak kendala. (Judith Hurwitz & Daniel Kirsch, 2018)

2.2.4. Neural Network dan Deep Learning

Deep Learning adalah salah satu metode dari machine learning yang menggabungkan neural network dalam memeplajari data secara interatif. Deep Learning sangat berguna jika diterapkan pada pembelajaran pola dari data yang tidak beraturan. Deep Learning bekerja seperti otak manusia sehingga hasil dari training dengan abstraksi dan permasalahan yang samar-samar.

Deep Learning adalah salah satu teknik di machine learning yang menggunakan hierarki neural network yang berasal dari kombinasi supervised learning dan unsupervised learning. Deep Learning biasanya disebut sebagai subbagian dari machine learning.

Neural network memiliki tiga layer, diantaranya adalah input layer, beberapa hidden layer dan output layer. Data dimasukkan ke input layer kemudian diproses di hidden layer dan di output layer dikelompokkan berdasarkan berat yang telah diaplikasi di tiap-tiap nodes. (Judith Hurwitz & Daniel Kirsch, 2018)

2.3. Jenis-Jenis Algoritma Machine Learning 2.3.1. Bayesian

Bayesian melakukan pelabelan data tentang model seperti apa nantinya, dan independensi data. Bayesian memiliki banyak fokus dalam pemodelan data. Bayesian sangat efektif jika diterapkan pada data training yang tidak banyak.

2.3.2. Clustering

Clustering adalah teknik untuk memahami suatu object dengan parameter yang sama

sehingga dapat dikelompokkan secara bersama. Semua objek yang dikelompokkan

berdasarkan tingkat kemiripan dengan satu sama lain. Clustering biasanya digunakan

oleh algoritma yang menerapkan unsupervised learning.

(26)

10

2.3.3. Decision Tree

Decisionn Tree menggunakan struktur ranting yang mengilustrasikan hasil dari keputusan. Decision Tree bisa digunakan untuk proses mapping untuk melihat hasil kemungkinan dari keputusan. Tiap node dari decision tree direpresentasikan dari hasil kemungkinannya. Persentasi yang digunakan untuk menetapkan nodes berdasarkan kemiripan hasil yang terjadi.

2.3.4. Reduksi Dimensi

Reduksi Dimensi membantu sistem mengurangi data yang tidak digunakan dalam tahap analisis. Kelompok algoritma ini menghilangkan redudansi data, dan data-data yang tidak berguna lainnya. Pengurangan dimensi berguna ketika menganalisis data pada penerapan Internet of Things (IoT).

2.3.5. Berbasis Contoh

Algoritma yang berbasis contoh biasanya digunakan saat mengkategorikan data berdasarkan tingkat kemiripan data training. Algoritma jenis ini juga disebut sebagai lazy learners karena tidak ada proses training. Sebagai gantinya, algoritma ini biasanya mencocokkan data dengan data training dan mengkategorikannya menjadi kategori data yang baru berdasarkan tingkat kemiripan pada data training.

2.3.6. Jaringan Saraf Tiruan dan Deep Learning

Jaringan saraf tiruan menyerupai saraf manusia dalam pendekatan suatu permasalahan dan menggunakan layer-layer yang saling terhubung satu sama lain dalam

menganalisis data. Jika terdapat lebih dari satu hidden layer maka disebut deep learning.

2.3.7. Regresi Linear

Algoritma regresi biasanya digunakan dalam menganalisis dalam bentuk statistika.

Algoritma regresi menganalisis hubungan model dengan data. Algoritma regresi dapat mengukur korelasi di antara variable yang ada di data training. Dalam tambahannya, analisis regresi bisa digunakan dalam memprediksi nilai dari data berdasarkan nilai historisnya. (Judith Hurwitz & Daniel Kirsch, 2018)

2.4. Data Mining

Data Mining adalah istilah yang digunakan untuk menguraikan penemuan adanya

informasi dalam database. (Mustakim & Giantika Oktaviani, 2016). Data Mining

(27)

11

merupakan proses semi-otomatis yang melibatkan statistika, matematika, kecerdasan buatan dan machine learning untuk mengekstraksi dan mengidentifikasi informasi yang berguna dan bermanfaat dari basis data yang besar (Ketut Artaye, 2015).

Teknik data mining digunakan untuk membangun model-model dari data yang belum kita ketahui yang akan kita cari informasi dari data tersebut. Setiap teknik data mining selalu menunjukkan suatu relasi yang baru dan attribut dependensi dalam data yang diteliti. (Edin Osmanbegovic & Mirza Suijic, 2012).

Dalam data mining, dilakukan pengklasifikasian nilai berdasarkan kategori- kategorinya dengan membangun sebuah model berdasarkan satu atau lebih variable kategori. Fungsi pengklasifikasian adalah untuk mencapai suatu pemahaman struktur basis data. Ada beberapa cara pengklasifikasian, yaitu Decision Tree, Bayesian Network, Lazy Classifier dan Rule based Classifier. (Aman Kataria & M.D. Singh 2013).

Salah satu metode dalam pengumpulan data dalam data mining adalah metode CRISP-DM (Cross Industry Standard Process for Data Mining) yang terdiri dari 6 tahapan, yaitu (Eka Sabua & Muhardi, 2016) :

1. Pemahaman terhadap bisnis.

2. Memahami data.

3. Mempersiapkan data.

4. Pemodelan algoritma.

5. Evaluasi hasil pengujian model.

6. Penyebaran atau pengunggahan produk.

2.5. Data Science

Statistika merupakan dasar dari ilmu data science yang telah ditemukan oleh Pierre Simon Laplace (1749-1827) dan Thomas Bayes (1701-1761).

Dalam Data Science, terdapat empat cara yang berbeda dalam mengeksplorasi data, yaitu:

1. Pencarian Kenyataan

Data bisa diambil dengan metode yang pasif atau aktif. Dalam berbagai kasus, data

dapat direpresentasikan sebagai respon dunia terhadap aksi kita. Jika kita

menganalisisnya dapat sangat bernilai ketika kita mengambil tindakan keputusan.

(28)

12

2. Pencarian Pola

Divide and conquer adalah pendekatan heuristic yang lama yang dapat digunakan untuk menyelesaikan permasalahan. Akan teatpi, tidak semua permasalahan dapat diimplementasikan dengan metode ini.

3. Memprediksi masa depan

Salah satu hal yang penting dalam pertanyaan ilmiah adalah bisa memprediksi apa yang terjadi pada masa yang akan dating dengan menggunkan sample data.

Analisis prediktif memberikan kita keputusan untuk mengambil Tindakan di masa yang akan dating. Tentu saja, yang diprediksi di masa depan.

4. Mengerti pengguna dan dunia.

Perusahaan besar dan pemerintah menyadari potensi ini sehingga banyak yang berinvestasi besar dalam bidang ilmu ini, seperti memahami bahasa manusia, computer vision, psikologi dan neuroscience. Pada proses ini, dibutuhkan proses yang sebenarnya yang menyeraupai keputusan dan perilaku seperti manusia.

(Laura Igual & Santi Segui, 2017).

2.6. Pengertian Algoritma

Algoritma adalah sekumpulan prosedur yang terdefinisi dengan baik yang memerlukan beberapa nilai, atau sekumpulan nilai, sebagai input dan menghasilkan beberapa nilai, atau sekumpulan nilai sebagai output. Sebuah algoritma adalah urutan atau langkah-langkah komputasi yang dapat mengubah input menjadi output. (Thomas Cormen & dkk, 2009).

2.7. Python

Python ditemukan oleh Guido van Rossum di Centrum Wiskunde &

Informatica (CWI) di Belanda pada tahun 1980-an. Bahasa pemrograman ini dinamakan Python berasal dari salah satu acara komedi kesukaan Guido, yaitu

“Monthy Python Flying Circus”. (John Hunt, 2019). Python merupakan bahasa

pemrograman yang memiliki struktur yang sempurna untuk para pemula. Python

merupakan bahasa pemrograman yang mudah dibaca, penggunaan memori yang

dinamis dan mudah diterjemahkan. Python dapat dikompilasi secara interpreter

sehingga kode dapat dieksekusi langsung did alam console Python tanpa

membutuhkan

tahap menerjemahkan ke dalam bahasa mesin. (Laura Igual & Santi Segui, 2017).

(29)

13

2.8. Algoritma k-Nearest Neighbors

Algoritma k-Nearest Neighbors adalah algoritma paling sederhana di Machine Learning. Cara penggunaanya adalah membangun sebuah model machine learning untuk menyimpan data training set dan membuat prediksi untuk data point yang baru, kemudian akan mencari data point terdekat. (Andreas C. Muller & Sarah Guido, 2017). Algoritma k-Nearest Neighbors merupakan algoritma supervised learning.

(Mustakim, Giantika Oktaviani, 2016).

Prinsip dari algoritma k-Nearest Neighbors adalah dengan menggunakan metode non-parametrik yang biasa digunakan pada klasifikasi dan regresi (Widodo Budiharto, 2016).

Langkah-langkah yang digunakan dalam mengimplementasikan algoritma k-Nearest Neighbors adalah sebagai berikut:

1. Kumpulkan data dengan berbagai metode.

2. Menghitung nilai jarak (distance calculation).

Pada perhitungan jarak, dapat menggunakan rumus euclidian distance yang dirumuskan sebagai berikut:

𝑑(𝑥, 𝑦) = √(𝑥

1

− 𝑦

1

)

2

+ (𝑥

2

− 𝑦

2

)

2

Jika x = (x

1

, .... xn) dan y = (y

1

, .... yn), maka dapat dirumuskan sebagai berikut (Miroslav Kubat, 2017):

𝑑

𝐸

(𝑥, 𝑦) = √∑

𝑛𝑖=1

(𝑥

𝑖

− 𝑦

𝑖

)

2

3. Menganalisis data dengan berbagai metode.

4. Memproses data training 5. Menghitung error rate.

6. Memasukkan data dan menjalankan algoritma sehingga dapat menentukan kelas mana yang sesuai dengan data tersebut. (Widodo Budiharto, 2016).

2.9. Algoritma Naive Bayes

Algoritma Naïve Bayes adalah teknik pengklasifikasian data yang cukup handal dan dapat diandalkan dengan menggunakan keluaran probabilitas dari sekumpulan kondisi menggunakan teorema Bayes. (Giuseppe Bonnaccorso, 2017).

Prinsip kerja dari algoritma Naive Bayes adalah dengan mengkalkulasikan

peluang dari tiap kelas-kelas data yang telah dikelompokkan berdasarkan kriteria-

(30)

14

kriteria tertentu. (Ethem Alpaydin, 2010).

Naive Bayes Classifier diturunkan dari pengklasifikasian metode Bayesian.

Dalam pengklasifikasian Bayesian, menggunakan persamaan rumus peluang dari label yang diberikan beberapa feature. Sehingga dapat dituliskan menjadi 𝑃(𝐿 | features).

Persamaannya dapat ditulis sebagai berikut:

𝑃(𝐿|𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠) = 𝑃(𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠|𝐿)𝑃(𝐿) 𝑃(𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠)

Jika kita ingin memutuskan di antara 2 (dua) label, maka L dapat diasumsikan menjadi L

1

dan L

2

maka cara satu-satunya adalah dengan membuat rumus perhitungan rasio peluang dari tiap labelnya. Persamaanya dapat ditulis sebagai berikut (Jake VanderPlas, 2017):

𝑃(𝐿

1

|𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠)

(𝐿

2

|𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠) = 𝑃(𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠|𝐿

1

)𝑃(𝐿

1

) 𝑃(𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠|𝐿

2

)𝑃(𝐿

2

)

2.9.1. Bernoulli Naive Bayes

Jika x adalah variable acak maka x adalah Bernoulli-distributed, bisa diasumsikan sebagai dua nilai yang dapat dianggap sebagai 0 dan 1, maka peluangnya adalah:

𝑃(𝑋) = { 𝑝 𝑖𝑓 𝑋 = 1

𝑞 𝑖𝑓 𝑋 = 0 dimana q = 1 – p dan 0 < p < 1 2.9.2. Multinominal Naive Bayes

Distribusi multinominal sangat berguna pada tipe model feature vectors dimana setiap nilainya memrepresentasikan jumlah occurrences atau frekuensi relatifnya. Jika vektor feature memiliki jumlah sebanyak n dan setiap n diasumsukan ke dalam nilai k yang berbeda dengan peluang p

k’

maka:

𝑃(𝑋

1

= 𝑥

1

∩ 𝑋

2

= 𝑥

2

∩ … ∩ 𝑋

𝑘

= 𝑥

𝑘

) = 𝑛!

∏ 𝑥

𝑖 1

! ∏ 𝑝

𝑖𝑥𝑖

𝑖

2.9.3. Gaussian Naive Bayes

Gaussian Naive Bayes dapat diterapkan pada nilai yang bersifat kontinu dimana peluang bisa dimodelkan ke dalam distribusi Gaussian.

𝑃(𝑥) = 1

√2𝜋𝜎

2

𝑒

(𝑥−𝜇)

2 2𝜎2

Kondisi peluang 𝑃(𝑥

𝑖

|𝑦) juga termasuk distribusi Gaussian. Untuk memperkirakan

rata-rata dan variance dari tiap-tiap distribusi menggunakan pendekatan maximum

(31)

15

likelihood. Persamaannya dapat dituliskan sebagai berikut:

𝐿(𝜇; 𝜎

2

; 𝑥

1

|𝑦) = log ∏ 𝑃(𝑥

𝑖(𝑘)

|𝑦) = ∑ log 𝑃(𝑥

𝑖(𝑘)

|𝑦)

𝑘

2.10. Cross Validation

Ada 3 (tiga) macam Cross Validation, yaitu:

2.10.1. Random Subsampling

Random Subsampling atau lebih dikenal sebagai metode Monte Carlo Cross Validation. Metode ini menggunakan data latih dan data uji yang dibagi secara acak.

Pemilihan data latih dan data uji secara acak pada dataset yang sama dapat dilakukan secara berulang sehingga menghasilkan error estimasi rata-rata dari percobaan 1.

2.10.2. K-Fold Cross Validation

Dalam teknik ini, data dibagi menjadi k bagian dimana masing-masing memiliki jumlah data yang sama. Bagian pertama digunakan sebagai data uji dan sisanya dijadikan sebagai data latih. Selanjutnya, bagian kedua digunakan sebagai data uji baru, bagian sisanya untuk data latih yang baru, dan begitu seterusnya hingga sebanyak k kali

2.10.3. Leave-one-out Cross Validation

Leave-one-out Cross Validation merupakan turunan dari metode K-Fold Cross Validation, dimana K merupakan konstanta sebesar jumlah data. (Wesley, 2019).

2.11. Analisis Korelasi

Korelasi Koefisien adalah suatu cara untuk mengukur tingkat keterkaitan antara variabel X dengan variabel Y dan sebaliknya. Nilai korelasi variabel berkisar dari -1 hingga 1 dimana -1 artinya variabel tersebut memiliki anti korelasi, 0 artinya tidak memiliki korelasi atau bisa dibilang variabel tersebut independent dan 1 artinya memiliki korelasi yang sangat kuat.

Ada 2 (dua) jenis metode dalam pencarian korelasi variabel, yaitu:

2.11.1. Pearson Correlation Coefficient

Pearson Correlation Coefficient menggunakan korelasi secara linear dalam pencarian

korelasi variabel antara dua variabel secara kontinu. Dua variabel dapat diasumsikan

(32)

16

sebagai X dan Y yang memiliki n banyak sampel penelitian. Maka, dapat dirumuskan sebagai berikut:

𝑟 = (𝑁 ∑ 𝑋

𝑖

𝑌

𝑖

− ∑ 𝑋

𝑖

∑ 𝑌

𝑖

)

√𝑁𝑋

𝑖2

− (∑ 𝑋

1

)

2

√𝑁𝑌

𝑖2

− (∑ 𝑌

1

)

2

Nilai maksimum pada r adalah 1 sedangkan nilai paling rendah pada r adalah -1. Jika X dan Y memiliki korelasi yang sangat kuat atau positive correlation maka nilai r adalah 1. Jika X dan Y memiliki korelasi yang tidak jelas, maka nilai r adalah 0. Jika X dan Y tidak memiliki korelasi atau negative correlation maka nilai r adalah -1 (HongHui Xu & Yong Deng, 2017).

2.11.2. Spearman Correlation Coefficient

Pada Spearman Correlation, pada dasarnya untuk menghitung korelasi variabel dengan menggunakan sistem peringkat pada data-data yang terdapat pada variabel- variabel yang ingin direliti korelasinya.

Asumsikan ada data (x

1

, y

1

) dan (x

2

, y

2

) dimana x

1

< x

2

dan y

1

< y

2

maka akan menghasilkan nilai yang positif dimana memiliki korelasi yang cukup baik. Apabila y

2

< y

1

maka mendapatkan nilai yang negatif menandkan anti-korelasi dari variabel- variabel yang diteliti.

Dalam mencari korelasi variabel, dapat menggunakan rumus sebagai berikut:

𝜌 = 1 − 6 ∑ 𝑑

𝑖2

𝑛(𝑛

2

− 1)

Pada persamaan diatas dimana d

i

merupakan 𝑑

𝑖

= 𝑟𝑎𝑛𝑘(𝑥

𝑖

) − 𝑟𝑎𝑛𝑘(𝑦

𝑖

) . Dalam

pencarian nilai tertinggi pada korelasi non-linear, spearman correlation kurang

sensitif dibandingkan dengan pearson correlation. (Steven S. Skiena, 2018)

(33)

17

2.6. Penelitian yang Terdahulu

No. Nama Judul Hasil Penelitian

1 Slamet Wiyono,

Comparative Study Algoritma KNN dapat memprediksi

dkk. of Machine memprediksi dengan baik jika nilai

Learning KNN, SVM

k = 5. Algoritma SVM dapat a

nd Decision Tree

memprediksi prestasi mahasiswa Algorithm to dengan baik jika nilai C = 1.

Predict Student Algoritma Decision Tree dengan Performance

nilai cp = 0.6689113. Algoritma

dengan akurasi tertinggi adalah algoritma SVM dengan nilai 95%

Dibandingkan dengan algoritma Decision Tree dengan akurasi 93%

Dan algoritma KNN dengan akurasi

92% dalam memprediksi prestasi Mahasiswa.

2 Aman Kataria, A Review of Data Dengan melakukan perbandingan dkk. Classification euclidian distance dengan

distances

Using k-Nearest lainnya dan jika dibandingkan Neighbors dengan algoritma Naive Bayes, Algorithm algoritma k-Nearest Neighbors

lebih efisien. Dengan

mengkombinasikan algoritma Genetika menjadi hampir 100%.

3 Moch Aziz K-Nearest

Kelemahan dari algoritma k-Nearest

Muslim, dkk. Neighbors

Neighbors adalah waktu pemrosesan

and Naive Bayes dan tingkat akurasi yang rendah Classifier

Algorithm

(34)

18

In Determining The Classification of Healthy Card Indonesia Giving to The Poor

4 Mustakim, dkk Algoritma Prediksi prestasi mahasiswa

k-Nearest menghasilkan nilai akurasi sebesar

Neighbors

82%. Pengujian algoritma

Classification

dilakukan menggunakan perhitungan

Sebagai Sistem confusion matrix.

Prediksi Prestasi

Mahasiswa

5 Babajide O. Afeni, Hypertension Dengan melakukan perbandingan dkk. Prediction System dengan Naive Bayes dan Decision

Using Naive Bayes

Tree dengan menggunakan k-fold Classifier

Validation dalam 10 kali pengujian

menyatakan bahwa tingkat akurasi Dari Naive Bayes sebesar 83.67%

dan Decision Tree sebesar 77.57%

6 Ketut Artaye Implementation Dari sampel 50 data training dari of Naive Bayes

setiap class dengan total persentase

Classification 42% Fast Class, 12% time class Method to Predict

Dan 46% late class. Tahap

Graduation Time of

Berikutnya diuji dengan 20 data IBI Darmajaya training dengan total persentase Scholar 20% fast class, 35% time class,

dan 45% late class.

(35)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1. Analisis Sistem

Analisis sistem merupakan teknik dalam menguraikan suatu permasalahan sebuah sistem menjadi komponen-komponen yang lebih sederhana sehingga mampu mempelajari seberapa bagus komponen-komponen tersebut bekerja dan berinteraksi untuk mencapai tujuan sistem. Analisis sistem dapat dilakukan untuk mengidentifikasi hal-hal yang diperlukan pada sistem, agar sistem dapat dibangun dan bekerja sesuai kebutuhan pengguna. Selain itu, analisis sistem dapat dilakukan untuk mengevaluasi kelayakan sistem, analisis teknis dan ekonomis, mengalokasikan fungsi untuk perangkat lunak, perangkat keras, pengguna dan elemen lainnya.

Pada penelitian ini, sistem yang akan dibangun adalah sistem cerdas yang dapat belajar sendiri yang difungsikan untuk memprediksi prestasi mahasiswa berdasarkan dataset yang dikumpulkan dari pengisian kuesioner untuk mendapatkan data-data yang akurat dari pengguna sendiri.

Tahapan-tahap yang akan dilakukan dalam analisis sistem adalah sebagai berikut:

3.1.1. Analisis Masalah

Pemanfaatan sistem cerdas dalam mempermudah pengguna dalam menyelesaikan pekerjaan dan memberikan solusi terhadap suatu permasalahan. Seperti yang telah dijelaskan dalam latar belakang penulisan tugas akhir ini, permasalahan yang dapat diselesaikan adalah mampu memprediksi prestasi mahasiswa secara akurat dan kemampuan dari sistem tersebut dapat diperbaharui. Untuk menyelesaikan masalah tersebut, dibuatlah suatu sistem cerdas yang dapat membantu pengguna untuk memprediksi prestasi mahasiswa berdasarkan dataset yang terkumpulkan dari berbagai

19

(36)

20

kalangan mahasiswa aktif dengan menggunakan algoritma k-Nearest Neighbors dan algoritma Naive Bayes untuk menentukan tingkat akurasi yang terbaik dalam memprediksi prestasi mahasiswa.

Pada penelitian ini, dataset yang digunakan merupakan data dengan format .csv yang terdiri dari 1026 data mahasiswa aktif angkatan 2014 sampai angkatan 2017 Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara dengan variable pembanding, yaitu: jenis kelamin, nama program studi, jalur masuk dan asal daerah yang digunakan dan variable utamanya adalah status prestasi mahasiswa.

Jumlah data terdiri masing-masing 507 data mahasiswa Ilmu Komputer dan 519 data mahasiswa Teknologi Informasi. Setiap data akan diekstraksi berdasarkan kategori variable dan dilakukan preprocessing data. Dataset yang telah diproses akan dibagi menjadi 70% data training dan 30% data testing. Data training kemudian dilatih dengan menggunakan algoritma k-Nearest Neighbors dan algoritma Naive Bayes dan dilakukan testing dengan menggunakan data testing yang divalidasi menggunakan metode Cross Validation sehingga mendapatkan akurasi yang maksimal.

Untuk mengidentifikasi masalah tersebut, penulis menggunakan Ishikawa diagram (fishbone/cause-effect diagram). Ishikawa diagram adalah diagram yang menunjukkan penyebab – penyebab dari sebuah kejadian yang spesifik. Ishikawa diagram diperkenalkan oleh Kaoru Ishikawa pada tahun 1968. Diagram ini umumnya digunakan untuk mengidentifikasi faktor-faktor yang signifikan memberi efek pada sebuah kejadian. Ishikawa diagram pada sistem ini dapat dilihat pada Gambar 3.1.

Gambar 3.1. Ishikawa Diagram Sistem

(37)

21

Dari gambar diatas dapat dilihat bagaimana sistem akan memprediksi prestasi mahasiswa. Diagram diatas terbagai atas dua bagian, yaitu head dan bone. Bone terdiri dari empat aspek yaitu material, metode, manusia dan mesin. Material adalah hal-hal yang diperlukan untuk menjalankan sistem yaitu memprediksi prestasi mahasiswa dengan membandingkan algoritma k-Nearest Neighbors dan algoritma Naive Bayes.

Metode adalah kebutuhan yang spesifik dari proses berupa ekstraksi fitur, preprocessing data. Manusia adalah pengguna yang melakukan proses interaksi dengan sistem yaitu menentukan dataset yang akan digunakan pada sistem agar sistem dapat dilatih dan diuji dengan baik. Metode adalah suatu kebutuhan yang spesifik dari proses berupa ekstraksi fitur, validasi hasil training menggunakan 10 fold Cross Validation dan preprocessing data. Mesin adalah hal yang dilakukan oleh sistem pakar dengan memberikan hasil prediksi prestasi mahasiswa yaitu dengan validasi hasil training dengan data testing dan diuji dengan menggunakan metode 10 fold Cross Validation dan metrics accuracy.

3.1.2. Analisis Kebutuhan

Analisis kebutuhan adalah sebuah proses penguraian dari sebuah sistem yang utuh ke dalam elemen-elemen yang dibutuhkan dengan tujuan untuk mengidentifikasi dan mengevaluasi permasalahan, hambatan dan kebutuhan yang ada untuk mendukung sistem dapat berjalan dengan optimal.

3.1.2.1.

Kebutuhan Fungsional

Kebutuhan fungsional adalah suatu proses yang menggambarkan dan menjelaskan kebutuhan-kebutuhan yang diperlukan sistem sehingga sistem dapat bekerja dengan baik dan sesuai dengan yang diharapkan. Adapun kebutuhan fungsional dari sistem ini yaitu:

1. Sistem yang dibangun dapat memprediksi prestasi mahasiswa dengan membandingkan algoritma k-Nearest Neighbors dan algoritma Naive Bayes.

2. Sistem yang dibangun dapat digunakan untuk menerima dataset dan data input user.

3. Sistem dibangun dapat mencari korelasi antar variabel.

4. Sistem yang dibangun dapat memberikan solusi kepada pihak Universitas

Sumatera Utara dalam mengevaluasi prestasi mahasiswa.

(38)

22

3.1.2.2.

Kebutuhan Nonfungsional

Kebutuhan non-fungsional adalah kebutuhan yang tidak begitu berpengaruh dalam berjalannya suatu sistem. Adapun kebutuhan nonfungsional dari sistem adalah sebagai berikut:

1. Performa

Sistem dapat dijalankan dengan baik dengan berbasis website dengan menggunakan proses klasifikasi data sehingga dapat memprediksi hasil uji dengan baik.

2. Interface yang baik

Sistem yang akan dibangun harus memiliki Interface yang user friendly, artinya sistem ini akan mudah digunakan serta dimengerti oleh user atau pengguna.

3. Hemat Biaya

Sistem yang dibangun dapat digunakan tanpa memerlukan biaya tambahan dari perangkat lunak ataupun perangkat keras.

4. Kontrol

Sistem atau perangkat lunak yang akan dibangun memiliki penjelasan yang cukup detail yang tertera pada tampilan aplikasi ini.

3.1.3. Analisis Proses

Sistem yang akan dibangun memiliki 3 tahapan proses, yaitu proses ekstraksi fitur sehingga data dibagi berdasarkan fitur-fitur yang tersedia di dataset, proses data training agar sistem dapat mempelajari data-data dengan menggunakan algoritma k-

Nearest Neighbors dan algoritma Naive Bayes dan proses data testing untuk memvalidasi dengan menggunakan metode 10 fold Cross Validation, metrics accuracy dan mencoba input dari pengguna. Hasil training akan ditampilkan berupa persentase akurasi dari masing-masing algoritma dari hasil pengujian serta mampu menampilkan status prestasi mahasiswa dari inputan pengguna.

3.2. Arsitektur Sistem

Ada beberapa tahapan dalam memprediksi prestasi mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Tahapan-tahapan dimulai dari pengumpulan data yang digunakan sebagai data latih dan data uji.

Tahapan berikutnya adalah tahapan preprocessing dengan mendrop column yang tidak

(39)

23

diperlukan dan menghilangkan nilai null pada data. Tahapan selanjutnya adalah melatih model dengan menggunakan data latih dengan persentase 70% dari dataset dan menguji model dengan menggunakan data uji dengan persentase 30% dari dataset.

Tahapan selanjutnya adalah validasi akurasi dengan menggunakan metrics accuracy dan 10 fold Cross Validation.

Gambar 3.2. Arsitektur Sistem

(40)

24

3.2.1. Arsitektur Sistem pada k-Nearest Neighbors

Pada bagian arsitektur sistem ini membahas bagaimana sistem dapat

memprediksi

prestasi mahasiswa Universitas Sumatera Utara dengan menggunakan k-Nearest Neighbors. Pada bagian ini, dataset mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara dibagi menjadi 70% data latih dan 30% data uji. Pada bagian ini, digunakan nilai k dari 1 hingga 40 untuk mencari tahu nilai k keberapa yang memberikan hasil akurasi paling maksimal dengan memvalidasi akurasi menggunakan metrics accuracy dan 10 fold Cross Validation.

Gambar 3.3. Arsitektur Sistem pada k-Nearest Neighbors

(41)

25

3.2.2. Arsitektur Sistem pada Naive Bayes

Pada bagian arsitektur sistem ini membahas bagaimana sistem dapat

memprediksi

prestasi mahasiswa Universitas Sumatera Utara dengan menggunakan Naive Bayes.

Pada bagian ini, dataset mahasiswa Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara dibagi menjadi 70% data latih dan 30% data uji. Pada bagian model, digunakan 3 (tiga) macam dari Naive Bayes, yaitu: Gaussian Bayes, Multinominal Bayes dan Bernoulli Bayes. Evaluasi akurasi menggunakan 2 (dua) metode, yaitu: metrics accuracy dan 10 fold Cross Validation.

Gambar 3.4. Arsitektur Sistem pada Naive Bayes

Referensi

Dokumen terkait

Deskripsi mengenai Partisipasi Masyarakat Dalam Pengembangan Kampung Wisata Berbasis Komunitas (Studi pada Kampung Wisata De Berran Desa Oro- oro Ombo Kecamatan Batu

Hal ini berbeda dengan penelitian Syarifudin (2014) hasil penelitiannya menyatakan peran internal auditor tidak berpengaruh signifikan terhadap kualitas laporan

terbaik bagi manusia agar dapat terbebas dari penderitaan di dunia sehingga dapat mencapai kesempurnaan (nirwana) dan berharap tidak akan terlahir kembali di dunia untuk merasakan

P endengaran awam Inkuiri Nasional mengenai Hak Tanah Orang Asal/Asli yang dijalankan oleh Suruhanjaya Hak Asasi Manusia Malaysia adalah satu proses yang bebas, terbuka dan

Berdasarkan hasil kuesioner dilapangan ketika apa yang telah dilakukan oleh peneliti terhadap responden pada pengaruh kepuasan nasabah terhadap loyalitas pengguna

Pada praktikum warna tanah dan tekstur tanah kami menentukan dari jenis tanah Entisol, Andisol, Ultisol, Vertisol, dan Inseptisol.Dan di peroleh hasil pada tanah Entisol

Pemerintah Daerah baik di Daerah Provinsi maupun Daerah Kabupaten/Kota selaku pemegang saham pada Bank Pembangunan Daerah (BPD) yang berubah status badan hukumnya

Azurdia III memberikan indikasi bahwa penyampaian khotbah harus bergantung pada kuasa Roh Kudus karena kebergantungan tersebut menolong pengkotbah dan pendengar