Naive Bayes Source Code PHP - Berbasis Data Mining Lengkap dgn Confusion Matrix
Assalamualaikum Wr.Wb, Salam Bagas, Salam Rahayu dan Salam Wilujeng
Dalam beberapa postingan saya sebelumnya ada terdapat sebuah sistem informasi berbasis website menggunakan bahasa pemrograman PHP menggunakan algoritma Naive Bayes. Saat saya rasa ada tampilan yang kurang menarik, maka dari itu saya mencoba untuk membangun lagi Sistem Informasi Prediksi Menggunakan Algoritma Naive Bayes Berbasis Website yang berkonsep Data Mining.
Sebelum kita membahas lebih lanjut tentang bagaimana cara sistem informasi ini bekerja, saya kan memberikan sedikit penjelasan tentang apa itu Naive Bayes.
Naive Bayes adalah sebuah model algoritma dari teknik Machine Learning atau pembelajaran mesin yang mempunyai metode klasifikasi, dimana ini adalah sebuah model yang terstruktur. Dalam arti terstruktur adalah dalam sebuah perhitungannya harus dilakukan tahap demi tahap untuk memperoleh model yang nantinya digunakan untuk menentukan hasil keputusan atau prediksnya. Naive Bayes sendiri sering digunakan untuk prediksi atau untuk suatu pendukung keputusan.
Dalam konsep machine learning maka dalam pembelajaran algoritma Naive Bayes sangat diperlukan apa itu yang disebut Kelas. Nah, dalam kelas ini terdapat sebuah keputusan akhir dari sebuah set data yang diperoleh dan sudah dilakukan sebuah tahap pra-proses data, yaitu sebuah pengolahan set data yang digunakan untuk Data Training. Sehingga siap untuk dilakukan pembelajaran menggunakan Naive Bayes.
Baca Juga : Apa itu Dataset dan Cara Memperoleh Dataset.
Nah, dalam artikel ini saya akan sedikit menjelaskan tentang penggunaan sebuah Sistem Informasi Prediksi Menggunakan Algoritma Naive Bayes Berbasis Website Pada Kasus Data Bertipe Numerik.
- Tujuan Sistem Informasi, Nah, Tujuan dari Sistem Informasi ini adalah untuk Memprediksi kelulusan seorang Mahasiswa apa itu dia lulusnya Tepat waktu atau Terlambat.
- Set Data yang digunakan, adalah sebuah set data Mahasiswa dari tahun-tahun sebelumnya yang sudah diketahui tingkat kelulusannya yaitu Tepat dan Terlambat.
- Bahasa Pemrograman,
- PHP 5.6.40
- HTML 5
- SCSS (Bootstrap 5)
- Javascript
- SQL (MySQL with Mysqli query)
- Layout, Responsive
- Browser, Firefox, Safari, Opera, Chrome, Edge
- Source and Credits
- getbootstrap.com
- jquery.com
- Chart JS
- Bootstrap Datatable
- jQuery Sparkline
- Vertical Timeline
Setelah mengetahui beberapa requirement dan beberapa fitur yang ada pada sistem informasi diatas, kita akan bahas satu per satu apa saja yang akan ditampilkan pada sistem informasi tersebut.
1. Form Login / Autentikasi
Pada halaman awal yang akan ditampilkan oleh sistem informasi ini adalah form login, dimana halaman ini adalah untuk masuk ke halaman admin maupun pengguna biasa. Halaman tersebut akan terlihat seperti yang ada pada gambar dibawah ini.
2. Dashboard Admin
3. Menu Training Data
- Import Data, untuk mengimpor set data dalam bentu Excel, dan ada template yang sesuai dan sudah disediakan oleh sistem.
- Export Data, berfungsi untuk mengunduh data yang sudah ada
- Start Classifier, sebuah tombol yang berfungsi untuk tahap perhitungan awal dari algoritma Naive Bayes
- Delete Data, berfungsi untuk menghapus set data training dan menghapus seluruh perhitungan yang sudah dilakukan dengan menggunakan set data training sebelumnya.
4. Menu Test Data
- Import Data, untuk mengimpor set data dalam bentu Excel, dan ada template yang sesuai dan sudah disediakan oleh sistem.
- Add Data, menampilkan modal bootstrap dan form untuk memasukkan data set uji satu per satu tanpa harus impor excel.
- Export Data, berfungsi untuk mengunduh data yang sudah ada
- Start Test, sebuah tombol yang berfungsi untuk tahap perhitungan distribusi gaussian dari algoritma Naive Bayes
- Delete Data, berfungsi untuk menghapus set data tes dan menghapus seluruh perhitungan dari test data seperti gaussian dsb.
5. Calculation Result
- Probability, adalah menu untuk menampilkan hasil perhitungan awal algoritma naive bayes dimana dia menampilkan nilai probabilitas dari masing-masing atribut.
- Result Classification, menu yang menampilkan hasil perhitungan test data yang meliputi hasil prediksi, nilai gaussian dan nilai probabilitas kelas.
- Confusion Matrix, untuk menampilkan hasil validation yang meliputi nilai accuracy, precision, recall, F1-Score, AUC dan F-Rate, kemudian ada tabel confusion matrix dan tabel diagaram presentase kelas test data.