2
$\begingroup$

I am fitting a gamma GLM on insurance claims predicting severity. Using log( claim count) as offset and ultimate claim amount as target variable and a gamma error structure. Model converges but Actual / Predicted claim amount does not converge to 100% in the modeling data. Per my understanding, when a GLM converges the within sample model prediction is always 100%. Am I missing something here?

I also tried using an intercept only model expecting 100% A/ E on overall level but still unable get it. Is it some additional arguments I need to provide, or is gamma not a good fit. I then went to lognormal fit but with not much success

$\endgroup$
4
  • $\begingroup$ What link function do you use? $\endgroup$
    – Michael M
    Jan 14, 2023 at 8:06
  • $\begingroup$ To extend my comment above: The natural link of the Gamma GLM is 1/x. Any other link will produce biased results. $\endgroup$
    – Michael M
    Jan 14, 2023 at 10:18
  • $\begingroup$ I am using both log and inverse I dont see any difference $\endgroup$ Jan 14, 2023 at 12:00
  • $\begingroup$ With the inverse link, you need to represent the exposure differently. Without data and code, I cannot help, unfortunately $\endgroup$
    – Michael M
    Jan 14, 2023 at 12:21

1 Answer 1

1
$\begingroup$

Per my understanding, when a GLM converges the within sample model prediction is always 100%.

This is not correct. For instance, you may have multiple observations with the exact same predictor values, but different target values. Since the model has only identical predictors to work with, its fit can't hit both (different) target values.

Also, if your model does have an extremely high in-sample fit, it is almost certainly overfitting. In-sample accuracy is a notoriously poor indicator to out-of-sample performance.

$\endgroup$
2
  • $\begingroup$ Thank you, I agree with your response. However, my question was more conceptual. Even if i fit an intercept only model should the model not fit on the average of the overall data? $\endgroup$ Jan 14, 2023 at 9:03
  • $\begingroup$ In principle, it should. We may be talking past each other. One thing I could imagine is that you are working on logged data - are you correcting for bias when you back-transform (per the very bottom here)? Can you cut down your data and code to the smallest Minimum (!) Working (!) Example that still exhibits the puzzling behavior, and edit it into your post? If you are using R, consider using dput() to give us your exact data. $\endgroup$ Jan 14, 2023 at 9:15

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.