I have created my first xgboost regressor. I input some self collected data, which I scale using sklearn's standardScaler. The model is trained on approximately 25,000 samples, and then tested on approximately 7000 examples, which are entirely separate from my training set.
In both the training and test set, the maximum y-label seen is 12. However, my xgboost regressor won't predict a value above approximately 6. See this example of my results:
My question is: What might be causing this? I have tried changing the parameters of the xgboost regressor, changing which factor I input, as well as trying sklearn's gradientBoostingRegressor. The result is broadly the same whatever I try, which leads me to believe that there is something I don't understand about the process I am using. I would really appreciate any advice on why this might be occurring, and what I might be able to do to rectify my problem. Thanks in advance.