Kamis, 11 Mei 2017

Klasifikasi menggunakan metode Decision Tree dan Naive Bayes

Kali ini saya akan melakukan klasifikasi serta membandingkan dua metode yang akan saya gunakan dalam melakukan klasifikasi. Dua metode tersebut adalah Decision Tree dan Naive Bayes. Untuk data saya akan menggunakan dari link ini http://archive.ics.uci.edu/ml/datasets/Glass+Identification. Saya akan mencoba menentukan klasifikasi gelas berdasarkan atribut-atribut yang terdapat dari data.

Terdapat langkah utama dalam melakukan klasifikasi yaitu mempelajari model dan menggunakan model. Mempelajari model merupakan aktivitas untuk menjelaskan pola yang sudah ditentukan. Menggunakan model untuk menentukan suatu objek yang belum diklasifikasikan. Melakukan klasifikasi membutuhkan Training Set serta Test Set. Namun, karena saya tidak mendapatkan Test Set pada link tersebut maka saya akan membagi data menjadi 70% untuk Training Set dan 30% untuk Test Set. Pada kali ini saya akan memakai Weka 3.8 sebagai alat bantu dalam melakukan klasifikasi.

Sebelum melakukan klasifikasi saya akan menjelaskan sedikit mengenai Decision Tree dan Naive Bayes. Decision Tree sebuah struktur yang dapat digunakan untuk membagi kumpulan data ang besar menjadi himpunan-himpunan record yang lebih kecil dengan menerapkan serangkaian aturan keputusan. Data dalam Decision Tree biasanya dinyatakan dalam bentuk tabel dengan atribut dan record. Metode Naive Bayes menggunakan perhitungan probabilitas dalam pelaksanaanya. Konsep dasar yang digunakan oleh Naive bayes adalah Teorema Bayes. Cara kerjanya menghitung peluang dari satu kelas dari masing-masing kelompok atribut yang ada, dan menentukan kelas mana yang paling optimal.

1. Data Pre-processing
Pertama saya akan mendownload data dari link dan pilih Data Folder maka akan muncul gambar seperti dibawah ini. Klik glass.names untuk melihat spesifikasi data. Kemudian akan terlihat atribut yang digunakan pada data. Terlihat dari informasi ini bahwa saya harus melakukan klasifikasi untuk menentukan 1 dari 7 tipe gelas yang ada.


Setelah itu klik glass.data untuk melihat data dan copy paste data tersebut pada Notepad++.


Ganti semua “,” menjadi “;” dan ganti semua “.” menjadi “,”. Kemudian simpan file tersebut dalam format .csv.



Buka file .csv pada aplikasi excel dengan memanfaatkan fitur From Text. Kemudian isi nama kolom ID, Refractive Index, Sodium, Magnesium, Aluminum, Silicon, Potassium, Calcium, Barium, Iron, Type of glass. 



Data pada kolom Type of glass ubah “1” “2” “3” “4” “5” “6” “7” menjadi “building_windows_float_processed” “building_windows_non_float_processed” “vehicle_windows_float_processed” “vehicle_windows_non_float_processed“containers” “tableware” “headlamps” secara berurutan. Khusus “4” diubah menjadi “vehicle_windows_non_float_processed“containers” tidak ada karena tidak ada nilai 4 pada data ini. 



Karena data ini terurut berdasarkan Type of glass maka saya akan mengacak susunan baris data agar semua nilai pada kolom Type of glass dapat di Training dan di Test. 



Pada data ini terdapat 11 atribut. Namun, saya tidak akan menggunakan atribut ID pada proses klasifikasi karena atribut ID tidak memiliki peran penting penting pada proses ini. Kemudian saya menyimpan data tersebut dengan format .csv. Buka file pada Notepad++ dan ubah “,” menjadi “.” serta “;” menjadi “,” agar data bisa dibaca pada Weka. 



Buka Weka dan buka file tadi pada Weka.




2. Klasifikasi
Diawal saya tadi mengatakan bahwa saya akan menggunakan 2 metode yaitu Decision Tree dan Naive Bayes. Decision Tree menjadi metode pertama yang saya pilih. Pada Weka klik Classify dan pada bagian Classifier pilih J48. Di bagian Test option klik Percentage split dan isi nilai 70. Karena sesuai yang saya katakan diawal saya akan menggunakan 70% data untuk dijadikan Training Set. Setelah itu klik Start untuk melakukan klasifikasi. 





Didapat tingkat kebenaran data sebasar 60.9% dan tingkat kesalahan sebesar 39,1%. Kemudian untuk model didapat sebagai berikut.





Decision Tree bisa menampilkan pohon yang dapat memudahkan kita melihat model. Namun, rumitnya model membuat gambar tidak dapat terlihat dengan jelas. 



Decision Tree sudah, sekarang kita beralih ke metode Naive Bayes. Pada bagian Classifier pilih NaiveBayes. Klik Start untuk memulai klasifikasi. 




Metode Naive Bayes mendapatkan tingkat kebenaran 51.6% dan tingkat kesalahan 48.4%. Ini menunjukkan tingkat kebenaran yang lebih rendah dari metode Decision Tree. Berikut model yang dihasilkan.







3. Kesimpulan
Berdasarkan klasifikasi yang sudah dilakukan didapat bahwa tingkat kebenaran metode Decision Tree sebesar 60.9% lebih baik dari tingkat kebenaran Naive Bayes sebesar 51.6%. Walaupun begitu, nilai 60.9% masih rendah. Saran saya adalah mencoba metode lain yang mendapatkan tingkat kebenaran diatas 70% atau membutuhkan lebih banyak data pada Training Set sehingga algoritma dapat belajar lebih banyak data. 



Jika ingin file dalam format pdf bisa download disini

Tidak ada komentar:

Posting Komentar