Ensemble Learning–Bagging

Dari posting http://staf.ulm.ac.id/rezafaisal/2016/10/06/bisectional-clustering-variance-checking-visualization/, telah dapat dilihat hasil clustering.  Dari hasil visualisasi dapat dilihat “terpisahnya” antara class mayoritas yang telah dicluster dengan class minoritas.  Untuk menyelesaikan masalah klasifikasi itu maka dilakukan teknik ensemble learning.  Terdapat 3 model teknik ensemble yang telah dikenal, yaitu:

  • Bagging, membangun multiple model (tipe sama) dari beberapa sub sample.
  • Boosting, membangun multiple model (tipe sama) dimana setiap model bertujuan untuk belajar untuk memperbaiki prediksi error dari model.
  • Stacking, membangun multiple model (tipe berbeda) yang bertujuan untuk mencari cara terbaik untuk mengabungkan prediksi dari model utama.

Dari penjelasan singkat tersebut maka saya menggunakan teknik bagging.

Dari hasil pengujian didapatkan nilai performansi berikut:


average accuracy: 0.112506802104118
average sensitivity: 0.0865240132055384
average specificity: 0.326376050420168

Walau hasil clustering telah berjalan baik dengan terlihatnya pemisahan data antara class hasil clustering dan class minoritas, tetapi performansi yang didapat justru jauh dari nilai baik. Hal ini dikarenakan kesalahan yang saya lakukan, karena dataset diambil dari seluruh dataset sebelum dilakukan clustering, sehingga ketika diuji ada data yang susah untuk diprediksi apakah merupakan class mayoritas atau minoritas. Hal ini berakibat performansi klasifikasi menjadi jauh dari nilai baik.

Perlu dilakukan perbaikan dalam melakukan pengujian performansi. Berikut ini adalah hal-hal yang mungkin perlu diperbaiki untuk mendapatkan hasil prediksi yang lebih valid:

  • Melakukan perbaikan dalam proses cross validasi agar tidak berpengaruh terhadap pengujian.
  • Melakukan perbaikin pada voting, karena voting yang dilakukan berdasarkan suara terbanyak. Hal itu jelas akan.

Dan setelah dilakukan pelaporan pada seminar lab mingguan, maka saya mendapat masukan sebagai berikut:

  • Secara umum nilai performansi suatu algoritma machine learning susah untuk dinaikkan DAN diturunkan.
  • Pada kasus yang saya kerjakan nilai performansi dari algoritma yang saya buat sangat jauh dari nilai pada paper referensi yang saya gunakan. Hal ini terjadi karena kesalahan prediksi pada kedua class dimana class A diprediksi sebagai class B dan sebaliknya (untuk kasus Yeast). Sedangkan pada kasus abalone kesalahan prediksi justru terjadi pada class mayoritas yang bias ke class minoritas.

Dari kedua maka perlu ada perbaikan pada kode yang saya buat, terutama pada proses ensemble yang saya gunakan untuk melakukan voting penentuan prediksi yang benar.

Leave a Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *