[BUG] It seems that the prediction of objective "multi:softprob" is incorrect and the order of the probability is inconsistent with mllib.
multi:softmax output:
multi:softprob output:
these two figure clearly shows that the prediction of "multi:softprob" is incorrect, the first three rows shold be 0 rathe than 1 (just like the prediction of "multi:softmax")
Meanwhile, from what I recall, the order of probabilities in MLlib is the same as the labels when the labels increase while it is not true in XGBoost
cc @wbo4958
anyone help?
@sonetto19999 You might expect more help with a minimally reproducible example
Sorry for delay, I just see this issue. That's terrible. seems the prediction values of softprob is reversed of softmax.
Hi @sonetto19999, were you using xgboost4j-spak or xgboost pyspark?
@wbo4958 currently using xgboost4j-spark_2.12
I can repro this issue when setting the objective = multi:softmax or multi:softprob and num_class = 2 for the binary classification.
Hi @trivialfis, is this scenario allowed in xgboost?
If it's binary classification, it should be using binary:logistic instead of softmax.