# How to calculate confidence intervals in a GLM using the profile likelihood?

I've been trying to better understand how JMP does regression and associated models. I can compute the correct parameter estimates for a GLM, by using iteratively re weighted least squares. But now I'm stuck and having trouble matching the confidence intervals in the prediction profiler shown by JMP.

When reading through the documentation, it mentioned how the Confidence intervals were computed using the profile likelihood function. After Googling, I came across two pdfs (1 & 2) showing how to use this technique.

I can follow along (for the most part) and can match most of their outputs. I just can't seem to make the jump (no pun intended) to putting confidence intervals on my model output.

Edit: Ultimately I'm trying to create the something similar to the link in excel - Prediction profiler (with Different data and a different model)

• Are you able to be more specific about where your difficulties lie? – Glen_b Sep 25 '14 at 2:31
• I guess its I dont understand how you can get the model output confidence intervals based on the profile likelihood. JMP GLM. – NotAStatistician Sep 25 '14 at 2:45

The links you refer to define the log of the relative profile likelihood, (which I'll here call $r(\theta_0)$).

$r(\theta_0) = \log\cal{L}(\hat{\theta},\hat{\delta})-\log\cal{L}(\theta_0,\hat{\delta})$

Since you didn't specify a problem with that I presume you're able to compute it in particular instances of interest to you.

The idea is that a an asymptotic test of $\theta=\theta_0$ (against the two-tailed alternative) is obtained by comparing $2r$ with a $\chi^2_1$; if it exceeds the upper $\alpha$ (say 5%) point of the chi-square, you'd reject at the 5% level.

To turn that into a CI, simply define the $1-\alpha$ CI to be the set of $\theta_0$ values not rejected by that test.

• Yea I can compute it but I guess I'm still somewhat unclear on some of the terms and what form they can take. For instance I know I can compute the relative profile likelihood as a function of $\beta$ (regression coefficient), but can $\theta_0$ be the regression output for any $y$ ($\theta_0=y_i$)? Meaning somehow based on a particular input vector $x_i$, can I compute the confidence interval for $y_i$ using this method? – NotAStatistician Sep 26 '14 at 17:48
• Also I feel I may be misinterpreting what JMP was saying and making it harder than it needs to be. I found a paper (unfortunately I don't have the link), it shows that the confidence intervals for the linear predictor and expected response can be calculated using the following formula $g^{-1}(\hat{\eta_{i}} \pm t_{k}(1-\alpha /2) \hat{\sigma}_{\hat{\eta_i}})$ where the $\sigma_{\eta_i}$ can be found from $\sigma^{2}_{\widehat{\eta_{i}}} = var(\widehat{\eta_{i}})=\textbf{X}_{i}\textbf{V}_{\widehat{\beta}}\textbf{X}^{T}_{\widehat{i}}$ – NotAStatistician Sep 26 '14 at 18:42
• Where $\textbf{V}_{\widehat{\beta}}$ is the covariance matrix of the parameter estimates $\hat{\beta}$. – NotAStatistician Sep 26 '14 at 18:42

Ok, so I realized that I pretty much misunderstood what the JMP information page was telling me. Turns out, the solution was much simpler than dealing with the profile likelihood.

Although I found my solution earlier in a different text, the paper I'm supplying also shows the same procedure. Applied Generalized Linear Mixed Models: Continuous and Discrete Data. Specifically look at page 46 (pdf pg 50) under confidence bands for predicted means.

For my testing I was solving a GLM with a Normal distribution and a logit link function.

For my solution I took my untransformed predictor $\hat{y_i}$ and converted it using $logit(\hat{y_i})=\hat{\eta}_i$ (my link function)

While you can calculate the covariance matrix $\bf{V_{\hat{\beta}}}$ I just used the one provided by JMP that way I could make sure my answer was exact.

I then computed $\sigma^{2}_{\hat{\eta}_i}=var(\hat{\eta}_{i})=\bf{X_{i}V_{\hat{\beta}}X^{T}_{i}}$

I could then compute the confidence interval on the transformed predictor using $\hat{\eta}_{i}\pm z_{\alpha/2}\hat{\sigma}_{\hat{\eta}_i}$

And finally I could untransform back to the appropriate scale usin $g^{-1}(\hat{\eta}_{i}\pm z_{\alpha/2}\hat{\sigma}_{\hat{\eta}_i})$

or $1/(1+\exp{^{-(\hat{\eta}_{i}\pm z_{\alpha/2}\hat{\sigma}_{\hat{\eta}_i})}})$