I am planning to run an xgboost in response data that is:

  1. Count data (0 to 15)
  2. Very right skewed
  3. Zero inflated (lots more zero than other counts)

In the XBG package with R, I have specified count:poisson as my objective, but the predictions doesn’t seem to account for zero inflation.

My question is how can I account for zero inflation in this case?


  • 1
    $\begingroup$ Don't know if it is appropriate for count but if you use tweedie as your loss it will account for the zero inflated values and may give you better performance depending on the variance parameter you choose with the tweedie loss. See xgboost.readthedocs.io/en/latest/parameter.html $\endgroup$
    – Tylerr
    Sep 16, 2020 at 15:01

1 Answer 1


You should try to fit a Tweedie distribution, as mentionned by Tylerr, it is adapted to zero inflated count.

You could find several examples on the web, like this one: https://towardsdatascience.com/insurance-risk-pricing-tweedie-approach-1d71207268fc

  • 1
    $\begingroup$ is over dispersion/zero inflation not only an issue in statistical models when you care about parameter interpretation not not so much about predictive performance? $\endgroup$
    – cs0815
    Jun 30, 2022 at 18:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.