Boosting


Boosting adalah pembelajaran metode ensemble meta algoritma untuk terutama mengurangi bias, dan juga varians.[1] Berbeda halnya dengan bagging dan random forest yang mendapatkan hasil prediksi dari proses bootstrap, Boosting mengacu pada kumpulan algoritma yang dapat mengkonversi weak learners untuk strong learners. Prinsip utama dari boosting adalah menyesuaikan urutan weak learners hanya sedikit lebih baik daripada tebakan acak, sementara strong learners dekat dengan kinerja sempurna seperti pohon keputusan kecil.[2] Setiap kali pembuatan pohon, data yang digunakan tetap seperti semula tetapi memiliki sebaran bobot yang berbeda dalam tiap iterasi. Penggunaan bobot juga dilakukan pada saat proses penggabungan prediksi akhir dari banyak pohon yang dihasilkan melalui klasifikasi atau penjumlahan regresi.[3] Boosting juga dikanal dengan sebutan AdaBoost.

Algoritme

Boosting tidak dibatasi dengan secara algoritme. prosedur Boosting cukup sederhana. Misalkan weak learners akan bekerja pada distribusi data apa pun yang diberikan, dan mengambil biner tugas klasifikasi sebagai contoh.[2] sebagian besar algoritma Boosting terdiri dari iteratif learning pengklasifikasi lemah sehubungan dengan distribusi dan menambahkannya ke penggolong kuat akhir. Ketika mereka ditambahkan, mereka biasanya ditimbang dengan beberapa cara yang biasanya terkait dengan ketepatan weak learners. Setelah weak learners ditambahkan, data akan ditulis ulang: contoh yang salah dikuatkan dan contoh yang diklasifikasi dengan benar menurunkan berat badan. Dengan demikian, weak learners nantinya lebih fokus pada contoh-contoh bahwa weak learners sebelumnya salah klasifikasi. AdaBoost sangat populer dikarnakan dapat beradaptasi dengan weak learners. Freund dan Schapire (1996) dan Hastie et al. (2008) memaparkan algoritma AdaBoost.M1 dengan cara penulisan yang agak berbeda. Misalkan data yang kita miliki terdiri atas n, dengan y sebagai peubah respon yang memiliki k kelas. Selanjutnya kita ingin membuat pohon gabungan menggunakan algoritma Boosting dari sebanyak M iterasi.[3] Secara ringkas, tahapan algoritma tersebut dapat dituliskan sebagai berikut:

1. tentukan bobot awal setiap pengamatan, yaitu w[i] = 1/n untuk semua i = 1, 2, …, n.

2. Andaikan m adalah nomor iterasi, maka untuk m = 1, 2, … M, lakukan proses berikut:

  • susun pohon tunggal dengan memperhatikan bobot sebesar w[i]
  • hitung tingkat kesalahan klasifikasi
  • hitung nilai a[m]
  • tentukan bobot yang baru untuk setiap pengamatan menjadi w[i] = w[i]a[m] untuk pengamatan yang salah klasifikasi, sedangkan untuk pengamatan yang diduga dengan tepat maka bobotnya tetap

3. prediksi akhir adalah kelas k yang memiliki nilai terbesar.

Catatan kaki