softmax vs softprob
基本的にsoftmax
もsoftprob
も多クラス分類に利用される。
-
softmax
は予測が最大確率となっている1クラスを出力する。 -
softprob
は予測しようとしているそれぞれのクラスの確率値を出力する。
multi:softmax: set XGBoost to do multiclass classification using the softmax objective, you also need to set num_class(number of classes)
multi:softprob: same as softmax, but output a vector of ndata * nclass, which can be further reshaped to ndata * nclass matrix. The result contains predicted probability of each data point belonging to each class.
xgboostでの使用例
param = {'max_depth': 2, 'eta': 1, 'objective': 'multi:softmax', 'num_class': 3}
param = {'max_depth': 2, 'eta': 1, 'objective': 'multi:softprob', 'num_class': 3}