Solved – Why does glm() provide estimates and standard errors on the link scale

generalized linear modelrstandard error

In R, both the parameters estimated by glm() and their standard errors are provided on the link scale, as somebody recently clarified to me here. It makes sense to provide both the parameters and their standard error on the same scale, but then why not display them both in the original scale of the data? I'd imagine that most people are interested in the estimates on the original scale and back-transform them most of the time. While comments to this question address the question on how to back-transform parameter estimates and their standard errors, I am still curious about the reason why such estimates are provided by function summary() on the link scale rather than on the original scale.

Best Answer

Hard to know for sure, but there are a few reasons the link scale is useful.

  • Using standard errors as a summary of uncertainty is generally more reliable on the link scale, where the domain of the parameters is unbounded and where the assumption that the likelihood surface is approximately quadratic ($\leftrightarrow$ sampling distribution of the parameter estimates is approximately Normal) is more likely to be reasonable. For example, suppose you have a log-link model with estimate (on the link scale) 1.0 and standard error 3.0. On the link scale, the confidence interval is approximately $1 \pm 1.96 \times 3$. If you back-transform, exponentiating the parameter and multiplying the standard error by the exponentiated parameter (as in this answer), and then try to construct symmetric CIs, you get $2.718 \pm 1.96 \times 3 \times 2.718$, which includes negative values ... if you do want to back-transform, it makes more sense to back-transform the confidence intervals, i.e. $\exp(1 \pm 1.96 \times 3)$.
  • Probably more importantly, for the very common logit link, it's basically impossible to sensibly back-transform the parameters all the way to the data scale (i.e., from logit/log-odds-ratios to probability). It is common to exponentiate parameters to move from the log-odds-ratio to the odds-ratio scale, but you can't go back from odds ratios to probabilities without specifying a baseline value. That is, you can say in general "the odds ratio associated with control vs. treatment is XXX", but the change in probability from control to treatment will depend on other covariates (e.g., the odds ratio for females and males may be the same while the change in probability is different because the baseline risk is different for females and males).

Probably the proximal reason is that because of the issues listed above, most people who do a lot of statistical modeling have gotten used to interpreting parameters on the link scale; most epidemiologists and biostatisticians have to spend time learning about odds ratios and log-odds ratios, and there are lots of papers written about their interpretation. For better or worse, R was written by people who are comfortable interpreting parameters on the link scale. Many downstream packages such as broom have options that will exponentiate parameters and CIs for you (putting them on the data (count) scale for the log link; the odds-ratio scale for logit links; and the hazard-ratio scale for cloglog links).