Fungsi kerugian apa yang terkait dengan distribusi di h2o xgboost dan gbm?

Saya perlu mengetahui fungsi kerugian mana yang digunakan dalam fungsi h2o gbm dan xgboost untuk distribusi gaussian, binomial, dan multinomial. Sayangnya, pengetahuan saya tentang Java sangat terbatas dan saya tidak dapat menguraikan kode sumbernya, dan sepertinya tidak ada dokumen yang menjelaskan distribusi mana yang dikaitkan dengan fungsi mana. Saya rasa saya mengumpulkannya dari di sini logloss untuk binomial dan MSE untuk gaussian, tetapi saya tidak dapat menemukan apa pun untuk multinomial. Apakah ada orang di sini yang tahu jawabannya?


person AberLan    schedule 01.04.2021    source sumber


Jawaban (1)


Terima kasih atas pertanyaan Anda. Kami harus menyediakan informasi ini di dokumentasi. Kami sedang berupaya menyempurnakan dokumen ini. Untuk menjawab pertanyaan Anda:

Fungsi kerugian untuk klasifikasi multinomial adalah softmax untuk H2O GBM dan XGBoost juga. H2O GBM diimplementasikan berdasarkan kertas ini: Perkiraan fungsi serakah: Gradien mesin penguat, Jerome H. Friedman 2001. Dalam bab 4.6. penulis dengan baik menjelaskan cara menghitungnya dan alasannya.

masukkan deskripsi gambar di sini

Berdasarkan fungsi kerugian, metode negHalfGradient ditentukan dan setiap distribusi mengimplementasikannya secara individual. Untuk distribusi multinomial (di sini) implementasinya adalah:

@Override
public double negHalfGradient(double y, double f, int l) {
    return ((int) y == l ? 1f : 0f) - f;
}

Di mana:

  • y adalah respon yang sebenarnya
  • f adalah respons yang diprediksi dalam ruang tautan
  • l adalah label kelas (dikonversi secara leksikografis dari label asli menjadi nomor kelas 0 - 1)

Beri tahu saya jika Anda memiliki pertanyaan lain.

person Maurever    schedule 06.04.2021
comment
Terima kasih atas jawabannya yang sangat membantu. Hanya satu pertanyaan lanjutan: Apakah saya benar berasumsi bahwa MSE digunakan untuk gaussian dan logloss untuk binomial? Apakah ada perbedaan antara XGBoost dan GBM dalam hal fungsi kerugian? - person AberLan; 11.04.2021