# Should predict_proba average be population average?

I'm running a gradient boosted tree in sklearn and running on some test data. The frequency of positive examples ('1') in the test data should be around 10%, which the prediction is returning correctly. However, if I average the predicted probabilities from predict_proba, I get an average of around 25%.

Shouldn't the predict_proba average be 10% as well? I suppose there is nothing in the model to force this to be true; predict is just making a determination based on whether or not the value is greater than 50%. Is there a way to correct for this?