Jawaban oleh @KeremT ini benar. Saya memberikan contoh bagi mereka yang masih memiliki masalah dengan implementasi yang tepat.
weight
parameter dalam XGBoost per instance tidak per kelas. Oleh karena itu, kita perlu menetapkan bobot masing-masing kelas untuk instance-nya, yang merupakan hal yang sama.
Sebagai contoh, jika kita memiliki tiga kelas yang tidak seimbang dengan rasio
class A = 10%
class B = 30%
class C = 60%
Bobot mereka akan (membagi kelas terkecil dengan yang lain)
class A = 1.000
class B = 0.333
class C = 0.167
Lalu, apakah data pelatihannya
index class
0 A
1 A
2 B
3 C
4 B
kami membuat weight
vektor sebagai berikut:
index class weight
0 A 1.000
1 A 1.000
2 B 0.333
3 C 0.167
4 B 0.333