Rabu, 17 Mei 2017

Mengukur Perbandingan Akurasi Algoritma J48 dan Random Forest Untuk Klasifikasi "Car Evaluation Dataset"

Haloo semua, sudah lama saya tidak post, sudah sekitar 5 tahun yah hehe. Ini kebetulan karena sedang ada tugas besar untuk mata kuliah Data Mining dari kampus saya yaitu Telkom University :D.

Udah pada tau belum nih mengenai data mining ??


Kalo udah tau, boleh juga dong ilmunya di share :D. Btw data mining itu sendiri menurut wikipedia bahasa Indonesia adalah ekstraksi pola yang menarik dari data dalam jumlah besar. Nah pemroresan data yang banyak tersebut dibutuhkan program untuk menganalisanya. Bisa pakai bahasa pemrograman ataupun program yang sudah jadi seperti weka.


Nah tugas yang akan saya kerjakan ini untuk mengukur perbandingan akurasi algoritma untuk data evaluasi mobil. Algoritma yang akan dibandingkan yaitu J48 dan Random Forest.

Tools yang dibutuhkan untuk pengerjaan ini adalah :

  1. Weka Explorer
  2. Microsoft Excel
  3. Browser untuk pengambilan dataset

Gambar 1.1. Tool Weka Explorer


Nah gambar diatas merupakan penampakan dari Weka Explorer yang akan digunakan untuk menganalisis data. Dalam Weka Explorer sudah terdapat beberapa algoritma yang siap olah untuk mengolah data :D.

Sebelum masuk ke pengolahan, download dulu datasetnya di :
https://archive.ics.uci.edu/ml/datasets/Car+Evaluation

Setelah masuk ke url tersebut, lalu click data folder, lalu pilih car.data. Nanti akan ada tampilan seperti di bawah ini :



Gambar 1.2. Dataset Car Evaluation dari repository uci


Data tersebut lalu di copy paste ke excel, lalu tambahkan nama atribut di kolom paling atas. Jumlah nama atribut harus sesuai dengan jumlah atribut di data. Dalam data terdapat 7 atribut dimana salah satunya menjadi class label yang akan diuji akurasinya. Jangan lupa untuk mengganti bentuk string dalam data menjadi bentuk integer. Hal ini dikarenakan weka tidak bisa membaca string dan integer sekaligus.

Atribut untuk dataset (dan nilainya) ini adalah :

  1. buying (vhigh,high,med,low) --> (4,3,2,1)
  2. maint (vhigh,high,med,low) --> (4,3,2,1)
  3. doors (2,3,4,5,5more) --> (2,3,4,5,6)
  4. persons (2,4,more)  --> (2,4,5)
  5. lug_boot (small,med,big) --> (1,2,3)
  6. safety (low,med,high) --> (1,2,3)
  7. class_label (unacc,acc,good,vgood) 
Gambar 1.3. Dataset yang sudah dirubah nilai atributnya di dalam excel

Data yang sudah di excel dan dirubah nilai atributnya lalu save as [namafile].csv

Sebelum masuk pengolahan lebih baik kita mengetahui terlebih dahulu algoritma yang akan kita pakai 😅.


Algoritma J48


Algoritma ini merupakan sebuah implementasi Java open source dari algoritma C4.5 dalam weka. Algoritma C4.5 dijelaskan di wikipedia sebagai algoritma yang digunakan untuk membangkitkan sebuah decision tree yang dikembangkan oleh Ross Quinlan. Decision tree yang dibangkitkan oleh C4.5 bisa digunakan untuk klasifikasi. Oleh karenanya algoritma ini biasanya dianggap sebagai sebuah statistical classifier. Pseudocode untuk algoritma C4.5 dan J48 sebagai pengembangannya adalah sebagai berikut :

  1. Cek untuk setiap yang diatas kasus dasar.
  2. Untuk setiap atribut a, cari rasio information gain yang dinormalisasi dari pembagian a.
  3. Biarkan a_best menjadi atribut dengan normalisasi information gain yang paling besar.
  4. Buat sebuah decision node yang membagi a_best.
  5. Ulangi pada sublists yang diperoleh dari membagi pada a_best, dan tambahkan node - node tersebut sebagai anak dari node.



Algoritma Random Forests


Random Forests merujuk pada wikipedia, merupakan sebuah algoritma untuk klasifikasi, regresi, dan task lainnya, yang bekerja dengan membangun sebuah decision tree yang beragam pada waktu training dan mengoutputkan class (klasifikasi) atau prediksi mean (regresi) dari pohon individu.


Langkah - Langkah Pengerjaan Tugas Besar

  1. Siapkan dataset yang sudah disiapkan sebelumnya beserta nilai - nilai atribut yang sudah disesuaikan.
  2. Buka tools weka explorer. Jika belum pernah install harap install terlebih dahulu :D.
  3. Klik open file lalu pilih dataset yang berbentuk .csv tadi.
  4. Tunggu hingga muncul atribut yang tervisualisasi.
  5. Jika sudah muncul semua atributnya, lalu masuk tab Classify.
  6. Pada tab Classify bagian classifier pilih algoritma yang akan digunakan (J48 atau Random Forests).
  7. klik "use training set".
  8. Lalu klik start.
  9. Tunggu beberapa saat hingga muncul tampilan di layer putihnya.
  10. Lihat nilai akurasi dari kedua training set, lalu lihat akurasi mana yang paling akurat.

Hasil Pengujian Algoritma 
Gambar 1.4. Hasil dari algoritma Random Forest terhadap dataset
Gambar 1.5. Hasil dari algoritma J48 terhadap dataset

Kesimpulan

Dari percobaan yang telah dilakukan, didapat bahwa algoritma Random Forest memiliki akurasi 100%, dibanding algoritma J48 sebesar 99.4213%. Sehingga untuk mendapatkan hasil yang memuaskan dalam pengklasifikasian, bisa mendapatkan algoritma Random Forest

Refrensi
  1. en.wikipedia,org/wiki/Random_forest
  2. en.wikipedia.org/wiki/C4.5_algorithm
  3. Awwali, Jamilu, Anahita Ghazvini, dan Azuraliza Abu Bakar. 2014. "Performance Comparison of Data Mining Algorithms: A Case Study on Car Evaluation Dataset
  4. " dalam International Journal of Computer Trends and Technology (IJCTT) volume 13 nomor 2.

Selasa, 01 Mei 2012

Hebat, Indonesia Bakal Bikin Pesawat Tempur Sendiri


REPUBLIKA.CO.ID, JAKARTA - Pemerintah terus mengembangkan industri pertanahan dalam negeri. Tidak cukup dengan kendaraan panser Anoa, atau beberapa alautsista lainnya, Pemerintah juga berencana membuat pesawat tempur sendiri untuk memenuhi kebutuhan pertahanan. Bahkan pesawat tersebut dirancang lebih canggih dari F 16 dan Sukhoi. 


Hal itu diungkapkan Menteri PErtahanan, Purnomo Yusgiantoro di Mabes TNI, Cilangkap, Jakarta Timur, Rabu (18/1).

"Nanti pesawat tersebut berkelas 4,5," kata Purnomo

Nantinya, kata Purnomo, pesawat tersebut akan dimanfaatkan untuk patroli pertahanan di Wilayah Udara Indonesia.Industri pesawat tempur dunia kedepan nantinya akan mencapai kelas lima. Pesawat tempur tipe F 16 dan Sukhoi saat ini baru mencapai kelas empat.

Meskipun masih kekurangan poin 0,5 persen, Purnomo menegaskan bahwa hal itu tidak menjadi masalah bagi industri strategis dalam negeri. Dia mengatakan perkembangan industri dengan mampu membuat pesawat tempur lebih canggih dari F 16 dan Sukhoi saja sudah luar biasa.

Produksi pesawat tempur itu masih dalam tahap perencanaan. Pada 2020 nanti akan uji coba produksi. Jika berhasil, maka 2025 baru akan produksi massal. Industri ini nantinya akan dilangsungkan bekerjasama dengan Korea Selatan. Saham Korea nantinya mencapai 20 persen. Selebihnya saham milik Indonesia.