I am using xgboost
for a classification problem.
I have a fundamental question.
Below you can find the AUC for each round for the train and test (unseen) set.
As you can see the AUC for the test set is close to 0. Could you help me in understanding what's going on?
I am using python.
[0] test-auc:0.4375 train-auc:0.881865
[1] test-auc:0.25 train-auc:0.947957
[2] test-auc:0.166667 train-auc:0.982759
[3] test-auc:0.166667 train-auc:0.984674
[4] test-auc:0 train-auc:0.996169
[5] test-auc:0 train-auc:0.998723
[6] test-auc:0 train-auc:0.998723
[7] test-auc:0 train-auc:0.999361
[8] test-auc:0.041667 train-auc:1
[9] test-auc:0.041667 train-auc:1
[10] test-auc:0.041667 train-auc:1
[11] test-auc:0.041667 train-auc:1
[12] test-auc:0 train-auc:1
[13] test-auc:0 train-auc:1
An AUC of 0
means the predictor is predicting the wrong class for all samples in the test set.
Looking at the AUC of the training set, it implies that the size of your test set is either too small, or you've selected the wrong (opposite) class for plotting the AUC of your test predictions.