Bagaimana tingkat belajar yang lebih kecil dapat merusak kinerja gbm?

9

Saya selalu berlangganan kearifan rakyat bahwa mengurangi tingkat pembelajaran dalam gbm (gradient boosted tree model) tidak merusak kinerja sampel dari model. Hari ini, saya tidak begitu yakin.

Saya memasang model (meminimalkan jumlah kesalahan kuadrat) ke dataset perumahan boston . Berikut adalah sebidang kesalahan dengan jumlah pohon pada 20 persen data set pengujian bertahan

Kesalahan oleh Jumlah Pohon dengan tingkat pembelajaran yang berbeda

Sulit untuk melihat apa yang terjadi pada akhirnya, jadi inilah versi yang diperbesar di bagian paling atas

Memperbesar versi

Tampaknya dalam contoh ini, tingkat pembelajaran 0.01adalah yang terbaik, dengan tingkat pembelajaran yang lebih kecil berkinerja lebih buruk pada data yang ditahan.

Bagaimana ini dijelaskan terbaik?

Apakah ini artefak dari ukuran kecil dari set data boston? Saya jauh lebih terbiasa dengan situasi di mana saya memiliki ratusan ribu atau jutaan titik data.

Haruskah saya mulai menyetel laju pembelajaran dengan pencarian kotak (atau beberapa meta-algoritma lainnya)?

Matthew Drury
sumber

Jawaban:

5

Ya, Anda benar, angka belajar yang lebih rendah harusnya menemukan yang lebih baik daripada angka belajar yang lebih tinggi. Tetapi Anda harus menyesuaikan parameter hiper menggunakan pencarian grid untuk menemukan kombinasi terbaik dari tingkat pembelajaran bersama dengan parameter hiper lainnya.

Algoritma GBM menggunakan beberapa parameter hiper selain tingkat pembelajaran (susut), ini adalah:

  1. Jumlah pohon
  2. Kedalaman interaksi
  3. Pengamatan minimum dalam sebuah node
  4. Fraksi tas (fraksi pengamatan yang dipilih secara acak)

Pencarian kisi perlu memeriksa semua ini untuk menentukan set parameter yang paling optimal.

Sebagai contoh, pada beberapa set data yang saya setel dengan GBM, saya telah mengamati bahwa akurasi sangat bervariasi karena setiap hiper-parameter diubah. Saya belum menjalankan GBM pada set data sampel Anda, tetapi saya akan merujuk pada latihan tuning serupa untuk set data lainnya. Lihat grafik ini pada masalah klasifikasi dengan kelas yang sangat tidak seimbang.

Dampak dari berbagai susut (tingkat pembelajaran) pada metrik Kappa

Meskipun akurasi tertinggi untuk tingkat pembelajaran yang lebih rendah, misalnya untuk maks. kedalaman pohon 16, metrik Kappa adalah 0,425 pada tingkat belajar 0,2 yang lebih baik dari 0,415 pada tingkat belajar 0,35.

Tetapi ketika Anda melihat tingkat belajar di 0,25 vs 0,26 ada peningkatan tajam tapi kecil dalam Kappa untuk kedalaman maksimum pohon 14, 15 dan 16; sedangkan itu terus menurun untuk kedalaman pohon 12 dan 13.

Karena itu, saya sarankan Anda mencoba pencarian grid.

Selain itu, seperti yang Anda sebutkan, situasi ini bisa juga diperburuk oleh ukuran sampel yang lebih kecil dari kumpulan data.

Sandeep S. Sandhu
sumber
0

Sandeep S. Sandhu telah memberikan jawaban yang bagus. Adapun kasus Anda, saya pikir model Anda belum bertemu untuk tingkat pembelajaran yang kecil. Dalam pengalaman saya, ketika menggunakan tingkat belajar sekecil 0,001 pada gradien meningkatkan pohon, Anda membutuhkan sekitar 100.000 tahap dorongan (atau pohon) untuk mencapai minimum. Jadi, jika Anda meningkatkan putaran dorongan menjadi sepuluh kali lebih banyak, Anda harus dapat melihat tingkat belajar yang lebih kecil lebih baik daripada yang besar.

Louis Yang
sumber