确实 binary:logistic 是 XGBClassifier 的默认目标,但我看不出有任何理由不能使用 XGBoost 包提供的其他目标。 例如,您可以在 sklearn.py 源代码中看到 multi:softprob 在多类情况下显式使用。
此外,如果确实有必要,您可以提供自定义目标函数(详情here)。
XGBClassifier 的默认目标是 ['reg:linear] 但是还有其他参数.. binary:logistic-It 返回预测类的预测概率 multi:softmax - 返回多类分类的硬类 multi:softprob - 它返回多类分类的概率
注意:当使用 multi:softmax 作为目标时,还需要传递 num_class 因为 num_class 是定义类数的参数数 例如标记 (0,1,2),这里我们有 3 个类,所以 num_class = 3
这些是可用的内置函数