Penjelasan intuitif tentang perbedaan antara Gradient Boosting Trees (GBM) & Adaboost

48

Saya mencoba memahami perbedaan antara GBM & Adaboost.

Inilah yang saya mengerti sejauh ini:

  • Ada keduanya meningkatkan algoritma, yang belajar dari kesalahan model sebelumnya dan akhirnya membuat jumlah model tertimbang.
  • GBM dan Adaboost sangat mirip kecuali untuk fungsi kehilangannya.

Tapi tetap saja sulit bagi saya untuk mengambil ide perbedaan di antara mereka. Bisakah seseorang memberi saya penjelasan intuitif?

Hee Kyung Yoon
sumber

Jawaban:

34

Saya menemukan pengantar ini dapat memberikan beberapa penjelasan intuitif.

  • Dalam Gradient Boosting, 'kekurangan' (dari peserta didik yang lemah) diidentifikasi oleh gradien .
  • Di Adaboost, 'kekurangan' diidentifikasi oleh titik data berbobot tinggi .

Dalam pemahaman saya, hilangnya Adaboost secara eksponensial memberikan bobot lebih untuk sampel yang lebih buruk. Bagaimanapun, Adaboost dianggap sebagai kasus khusus Gradient Boosting dalam hal fungsi kerugian, seperti yang ditunjukkan dalam sejarah Gradient Boosting yang disediakan dalam pendahuluan.

  1. Ciptakan Adaboost, algoritma peningkatan yang berhasil pertama [Freund et al., 1996, Freund dan Schapire, 1997]
  2. Merumuskan Adaboost sebagai gradient descent dengan fungsi kehilangan khusus [Breiman et al., 1998, Breiman, 1999]
  3. Generalisasi Adaboost ke Gradient Boosting untuk menangani berbagai fungsi kerugian [Friedman et al., 2000, Friedman, 2001]
Randel
sumber
11

Penjelasan intuitif tentang algoritma AdaBoost

Biarkan saya membangun jawaban luar biasa @ Randel dengan ilustrasi poin berikut


  • Di Adaboost, 'kekurangan' diidentifikasi oleh titik data berbobot tinggi

Rekap AdaBoost

Gm(x) m=1,2,...,M

G(x)=sign(α1G1(x)+α2G2(x)+...αMGM(x))=sign(m=1MαmGm(x))
  • Prediksi terakhir adalah kombinasi dari prediksi dari semua pengklasifikasi melalui suara terbobot mayoritas

  • αmGm(x)

  • w1,w2,...,wNm
  • m=1wi=1/N

AdaBoost pada contoh mainan

M=10

masukkan deskripsi gambar di sini

Memvisualisasikan urutan peserta didik yang lemah dan bobot sampel

m=1,2...,6

masukkan deskripsi gambar di sini

Iterasi pertama:

  • Batas keputusan sangat sederhana (linier) karena ini adalah kita pelajar
  • Semua poin memiliki ukuran yang sama, seperti yang diharapkan
  • 6 titik biru berada di wilayah merah dan salah klasifikasi

Iterasi kedua:

  • Batas keputusan linear telah berubah
  • Poin biru yang sebelumnya salah diklasifikasikan sekarang lebih besar (sample_weight lebih besar) dan telah mempengaruhi batas keputusan
  • 9 titik biru sekarang salah diklasifikasikan

Hasil akhir setelah 10 iterasi

αm

([1,041, 0,875, 0,837, 0,781, 1,04, 0,938 ...

Seperti yang diharapkan, iterasi pertama memiliki koefisien terbesar karena merupakan iterasi dengan kesalahan klasifikasi paling sedikit.

Langkah selanjutnya

Penjelasan intuitif peningkatan gradien - untuk diselesaikan

Sumber dan bacaan lebih lanjut:

Xavier Bourret Sicotte
sumber