• Tidak ada hasil yang ditemukan

BAB 4 ANALISIS DAN PERANCANGAN

4.1 Analisis Kebutuhan

4.3.5 Perancangan Algoritme

dan Semester dari mahasiswa berdasarkan nilai prasyarat mata kuliah yang akan diprediksi.

4.2.4.2 Transformasi Data

Selanjutnya adalah melakukan transformasi data atau pengkategorian untuk atribut yang bernilai diskrit dan non numerik yaitu untuk atribut nilai dan kelas. Adapun transformasi data yang dilakukan adalah dengan mengubah nilai dari Atribut Nilai dan Kelas yang sebelumnya berupa alfabek menjadi numerik, sebagai berikut :

Tabel 4.14 Nilai

Nilai Nilai Pre Process

A 1 B+ 2 B 3 C+ 4 C 5 D+ 6 D 7 E 8 5 Tabel 4.15 Kelas

Nilai Nilai Pre Process

Ya 1

Tidak 0

4.3.5

Perancangan

Algoritme

Sub bab in menjelaskan tentang Algoritme dari alur kerja sistem yang menggunakan Naive Bayes. Pada tahap awal data training dan testing yang telah melalui proses pre processing akan dimasukkan kedalam database kemudian dengan Algoritme Naive Bayes akan dihitung probabilitas (likelihood) setiap nilai atribut data yang digunakan. Jenis data terbagi menjadi 2, yaitu data diskrit dan non diskrit (continue). Untuk data diskrit akan menggunakan laplace correction apabila terdapat nilai likelihood salah satu atribut bernilai 0. Sedangkan untuk data

continue menggunakan rumus Gaussian dalam mencari nilai probabilitas

41 4.3.5.1 Alur Kerja Sistem

Proses klasifikasi yang akan dilakukan oleh sistem adalah menggunakan Algoritme Naive Bayes. Pada sub bab ini akan dijelaskan mengenai langkah-langkah dalam melakukan klasifikasi menggunakan Algoritme Naive Bayes :

1. Data mahasiswa yang didapat akan dimasukkan secara langsung ke dalam database dm_db melalui ekspor data.

2. Sistem akan mengambil data training dan data target, dan data testing dari database dm_db pada DBMS MySQL.

3. Data yang telah diambil kemudian akan diproses dengan Algoritme Naive

Bayes yang dilakukan oleh web service java.

4. Proses Naive Bayes yaitu melakukan perhitungan nilai prior, nilai likelihood setiap kelas dengan menggunakan persamaan Gaussian untuk data non diskrit/continue, dan hasil akhir adalah nilai posterior masing-masing kelas. Kelas dengan nilai tertinggi akan dipilih sebagai hasil klasifikasi.

5. Hasil klasifikasi setiap baris data training akan dihitung jumlahnya untuk kelas yang bernilai 1 sebagai nilai prediksi.

Alur kerja dari sistem digambarkan menggunakan diagram alir / flowchart. Adapun penjelasan mengenai alur kerja dari sistem sebagaimana digambarkan pada Gambar 4.11.

Pada Gambar 4.11, dapat dilihat bahwa sistem memiliki 4 proses utama, yaitu : 1. Mengambil data dari database

Merupakan proses pengambilan data training, data target, dan data testing dari database yang akan digunakan pada perhitungan menggunakan Algoritme Naive Bayes. Pengambilan data training dilakukan berdasarkan setiap mata kuliah yang masing-masing mata kuliah memiliki data latih, data target, dan data uji yang berbeda-beda. Sehingga setiap mata kuliah memiliki probabilitas (likelihood) dan hasil klasifikasi maupun hasil prediksi yang dapat berbeda-beda.

2. Proses Naive Bayes

Dataset diklasifikasikan berdasarkan karakteristik dari fitur penyusunnya, dimana fitur dengan nilai non diskrit atau continue akan dihitung likelihood-nya dengan persamaan Gaussian. Selain menghitung likelihood setiap atribut, juga akan dihitung nilai prior untuk masing-masing kelas. Sehingga, hasil akhirnya adalah perhitungan nilai posterior dengan mengalikan nilai priori dengan nilai likelihood setiap atribut. Kelas yang memiliki nilai posterior terbesar dari 2 kelas yang dihitung akan dijadikan sebagai hasil klasifikasi apakah mahasiswa mengambil suatu mata kuliah atau tidak.

3. Hasil klasifikasi

Hasil dari klasifikasi merupakan nilai yang muncul dari perhitungan Naive

42

tabel probabilitas. Hasil klasifikasi akan dimasukkan kembali pada setiap baris data uji yang nantinya akan dijumlahkan sehingga menghasilkan nilai prediksi jumlah mahasiswa.

4. Hitung jumlah klasifikasi berdasarkan kelas

Proses ini merupakan proses untuk mendapatkan nilai prediksi berdasarkan hasil klasfikasi data uji yang telah dilakukan sebelumnya. Setiap mata kuliah akan dijumlahkan kelas hasil klasifikasi yang memiliki nilai 1 atau yang mengambil mata kuliah tersebut sehingga terbentuk nilai prediksi untuk masing-masing mata kuliah. Proses Klasifikasi Naive Bayes.

Gambar 4.11 Flowchart alur kerja sistem

4.3.5.2 Proses Naive Bayes

Pada proses ini, sebelum data diproses dengan Algoritme Naive Bayes maka diperlukan tahap pre processing terlebih dahulu yaitu Setelah data selesai pada tahap pre processing maka selanjutnya data akan diproses dengan Naive Bayes

Mulai

Input data mahasiswa

Mengambil data dari database

Proses Naive Bayes

Hitung jumlah klasifikasi berdasarkan kelas Hasil klasifikasi Naive Bayes

Hasil prediksi jumlah mahasiswa setiap mata kuliah

43

untuk menghitung nilai probabilitas / likelihood untuk setiap atributnya. Berikut langkah-langkah dari Naive Bayes :

1. Memasukkan data latih, data target dan data uji untuk diproses oleh sistem. 2. Sistem akan melakukan perhitungan nilai target dengan kelas tertentu

sehingga menghasilkan nilai prior untuk masing-masing kelas.

3. Fitur ip, ip kumulatif, sks, dan sks kumulatif berisi data continue. Untuk menghitung nilai likelihood dari masing-masing data fitur tersebut maka terlebih dahulu akan dicari nilai mean dan standar deviasinya. Nilai mean dan standar deviasi yang diperoleh selanjutnya akan diproses kembali menggunakan persamaan Gaussian untuk mendapatkan nilai likelihoodnya. 4. Fitur nilai dan semester merupakan nilai diskrit, sehingga untuk mencari nilai

likelihood-nya akan diproses menggunakan rumus bayes.

5. Keputusan disini adalah kelas dari sistem yang berisi keputusan bernilai 0 (melambangkan tidak) atau 1 (melambangkan iya).

6. Perhitungan akan dilakukan dengan mengkalikan semua likelihood dan prior

masing-masing fitur. Nilai peluang yag terbesar akan dijadikan sebagai hasil klasifikasi apakah mahasiswa akan mengambil suatu mata kuliah tertentu atau tidak.

Gambar 4.12 merupakan Flowchart alur Naive Bayes yang menjelaskan tahapan dari algoritme Naive Bayes secara umum dimana tahap pertama berupa input/masukan data training dan data uji. Kemudian dari data training tersebut akan dilakukan perhitungan jumlah data pada setiap kelas berbending dibagi dengan jumlah data pada kelas tersebut sehingga menghasilkan nilai prior. Kemudian terhadap masing-masing nilai pada atribut data akan dilakukan pengecekan apakah tergolong data diskrit atau bukan, jika data tersebut berupa data diskrit maka proses perhitungan nilai likelihood dihitung melalui proses perhitungan likelihood data diskrit. Jika bukan data diskrit, maka nilai likelihood akan dihitung melalui proses perhitungan likelihood untuk data continue. Nilai

likelihood pada masing-masing atribut yang diperoleh kemudian akan dikalikan

dengan nilai prior sehingga menghasilkan nilai posterior untuk masing-masing kelas .

44

Gambar 4.12 Flowchart alur Naive Bayes

Proses Naive Bayes Mulai

Input data training dan data uji

Nilai likelihood

Selesai

Prior tiap kelas = jumlah data setiap kelas/jumlah data

Data diskrit? Perhitungan likelihood data continue (non diskrit)

Perhitungan likelihood data diskrit

Posterior = prior * likelihood

Nilai posterior YA

45

Gambar 4.13 Flowchart perhitungan likelihood data continue

Gambar 4.13 merupakan Flowchart yang menjelaskan alur perhitungan

likelihood untuk data continue dimulai dari input data training. Dari data training

tersebut kemudian akan dihitung nilai average/rerata pada tiap atribut untuk masing-masing kelas. Kemudian dilakukan juga perhitungan nilai standar deviasi pada tiap atribut untuk masing-masing kelas. Nilai rerata dan standar deviasi yang didapat kemudian digunakan untuk menghitung nilai likelihood atau niai probabilitas menggunakan persamaan Gaussian, sebagai output dari proses perhitungan likelihood untuk data continue atau non diskrit.

Perhitungan

likelihood data continue (non diskrit)

Mulai

Input data training

Menghitung standart deviasi tiap atribut per kelas (𝜎)

Likelihood (G) = 2𝜋𝜎1 2𝑒−(𝑥𝑖−𝜇𝑖𝑗) 2 2𝜎2

Nilai likelihood

Selesai

Menghitung average tiap fitur per kelas (𝜇)

46

Gambar 4.14 Flowchart perhitungan data diskrit

Gambar 4.14 menjelaskan proses pehitungan Naive Bayes berupa perhitungan

likelihood untuk data diskrit. Proses dimulai dengan data training yang digunakan

sebagai input. Kemudian tahap selanjutnya adalah menghitung jumlah data pada Nilai likelihood

TIDAK

YA

Perhitungan

likelihood data diskrit

Mulai

Input data training

Menghitung jumlah atribut dengan kelas X

Menghitung jumlah kelas X

Likelihood (diskrit) = jumlah atribut

dengan kelas X/jumlah kelas X

Terdapat nilai

likelihood = 0?

Selesai

Likelihood (diskrit) =( jumlah

atribut dengan kelas X + 1)/(jumlah kelas X+jumlah kelas)

Dokumen terkait