Apa itu teknik boosting Adaboost?

Boosting adalah jenis teknik pembelajaran ensemble di mana kita menggunakan prioritas pelajar yang lemah untuk pelajar yang kuat dengan membentuk berbagai pohon keputusan dan kemudian mengantonginya ke dalam paket yang lebih kecil dan akhirnya mengambil suara dari paket-paket ini untuk mendapatkan hasil kita. Ada berbagai macam teknik boosting yang dilakukan dan ada pula yang Gradient Boosting, XG Boosting, Ada Boosting, Cat Boosting, dll. Ini semua bekerja dengan prinsip yang sama meskipun mekanisme semua dorongan ini bisa berbeda. Hari ini kita akan membahas Ada Boosting untuk memberi Anda semua ide yang lebih baik tentang wawasan teknik ini.

Apa itu Adaboost?

Adaboost (Adaptive Boosting) adalah teknik peningkatan di mana kita biasanya mencoba mengubah pelajar yang lemah menjadi pelajar yang kuat dengan awalnya menetapkan bobot sampel dan menggunakan pohon keputusan. Rumus untuk menetapkan bobot sampel mencakup 1/n di mana n adalah jumlah total catatan yang ada dalam kumpulan data. Di Adaboost pohon keputusan juga disebut pelajar dasar dan seharusnya hanya berisi kedalaman 1 juga dikenal sebagai tunggul. Jadi jika kita membuat beberapa pohon keputusan dari fitur yang ada di dataset kita dan kemudian kita dapat memeriksa pohon keputusan terbaik yang memiliki entropi lebih rendah dan perolehan informasi yang tinggi. Sekarang setelah memilih pohon terbaik, kita melihat tingkat akurasi klasifikasi yang dilakukan pohon berdasarkan target. Jika kita mengatakan pohon mengklasifikasikan 90% dari catatan dengan benar tetapi gagal untuk mengklasifikasikan 10% sisanya, maka kita akan menemukan error total untuk model yang salah diklasifikasikan dan mencoba memperbarui bobot untuk mengurangi error.

Nah, bagaimana AdaBoost bekerja dengan Decision Stumps. Tunggul Keputusan seperti pohon di Hutan Acak, tetapi tidak “tumbuh sepenuhnya”. Mereka memiliki satu simpul dan dua daun. AdaBoost menggunakan hutan tunggul seperti itu daripada pohon.

Tunggul saja bukanlah cara yang baik untuk membuat keputusan. Pohon dewasa menggabungkan keputusan dari semua variabel untuk memprediksi nilai target. Tunggul, di sisi lain, hanya dapat menggunakan satu variabel untuk membuat keputusan. Mari kita coba dan pahami di balik layar algoritma AdaBoost selangkah demi selangkah dengan melihat beberapa variabel untuk menentukan apakah seseorang “fit” (dalam keadaan sehat) atau tidak.

Sumber gambar: blog.paperspace.com

Rumus untuk mencari error total adalah

Jumlah error/tidak. dari berat sampel.

Setelah menemukan error total kita mencoba untuk mengetahui kinerja tunggul menggunakan

rumusnya:

½ loge (1-Jumlah error / Jumlah error)

Sekarang pembaruan bobot dilakukan, ini dilakukan sedemikian rupa sehingga kita

mengurangi bobot arsip yang diklasifikasikan dengan benar dan meningkatkan bobot arsip yang diklasifikasikan salah. Jadi untuk memperbarui bobot, kita menggunakan rumus untuk bobot yang salah diklasifikasikan sebagai:

Bobot sebelumnya * kinerja e

Untuk yang diklasifikasikan dengan benar, rumusnya seperti ini:

Bobot sebelumnya * e -kinerja

Setelah menemukan pemutakhiran bobot kita melihat bahwa hasil penjumlahan menjadi 1 jika bukan 1 maka kita normalkan pemutakhiran bobot sehingga penjumlahan kita menjadi 1. Rumus untuk normalisasi diberikan sebagai:

Setiap nilai bobot yang diperbarui/penjumlahan dari nilai bobot yang diperbarui

Langkah selanjutnya adalah menggunakan kembali konsep pembentukan pohon keputusan tetapi untuk melakukannya kita perlu membagi bobot yang dinormalisasi dalam bentuk ember yang memiliki beberapa ukuran tertentu yang diberikan sebagai 0, nilai normalisasi pertama untuk penjumlahan dan normalisasi kedua nilai bobot dan seterusnya…

Setelah itu, random sampling dilakukan oleh model dan akan memeriksa ember di mana sampel ada, dan berdasarkan itu akan membentuk dataset baru. Kemudian dataset baru akan terbentuk kembali proses stumps dan error minimization melalui weight update akan dilakukan dan proses akan berlangsung terus sampai semua decision tree tidak tercover dan error rate tidak diminimalkan. Sekarang untuk klasifikasi dataset uji, model akan melihat tunggul dan akan mengambil suara mayoritas dari target dan akan kembali sama dengan output sedangkan dalam kasus regresi terutama nilai rata-rata dari semua tunggul pohon keputusan diambil dan dikembalikan kepada user.

Adaboost mengharuskan user untuk menentukan satu set pelajar yang lemah (sebagai alternatif, itu akan secara acak menghasilkan satu set pelajar yang lemah sebelum proses pembelajaran yang sebenarnya). Ini akan mempelajari bobot bagaimana menambahkan pembelajar ini menjadi pembelajar yang kuat. Bobot setiap pembelajar dipelajari dari apakah ia memprediksi sampel dengan benar atau tidak. Jika pelajar salah memprediksi sampel, bobot pelajar berkurang sedikit. Ini akan mengulangi proses seperti itu sampai konvergensi. Di Adaboost, kerugian dan kinerja adalah parameter yang diperhitungkan untuk memperbarui bobot.

Kesimpulan

Jika Anda berkompetisi dalam kompetisi Kaggle, kompetisi Hackathon dan ingin mendapatkan akurasi yang lebih tinggi maka Anda harus mencoba teknik Ada Boosting dan algoritma boosting karena mereka mampu melakukan tugas maksimal sendiri karena mekanisme bawaan dalam algoritma ini.