Mixed-effects logistic regression, directional hypothesis: choice of priors

Hi everyone,

I want to run a Bayesian mixed-effects logistic regression using brms to test for the evidence for/against an interaction effect. I first chose specific informative priors by running a frequentist mixed-effects logistic regression without the interaction term and taking the largest beta as an estimate of the possible magnitude of the interaction. Then I learned that any use of the data when choosing priors might be regarded as cheating. I’m now using a weakly informative prior for logistic regression recommended by Gelman et al. (2008): Cauchy(0, 10) for the intercept and Cauchy(0, 2.5) for all other fixed effects. In addition, I restrict the fixed effects to be at least 0 because my hypothesis is directional (the theory predicts a positive interaction, but also positive main effects).

Prior_positive <- c(
  set_prior("cauchy(0, 10)", class = "Intercept"),
  set_prior("cauchy(0, 2.5)", class = "b", lb = 0, coef = "")

My model is:

bestMod <- bf(Y ~ A * B +
                     (1 + A || item) +
                     (1 | participant),
                   family = "bernoulli")

To test my hypothesis, I compare a model with the interaction to a model without it:

full_brms <- brm(bestMod,
                 prior = Prior_positive,
                 sample_prior = "yes",
                 iter = 1e4,
                 cores = 4,
                 data = mydata,
                 save_pars = save_pars(all = TRUE),
                 file = "bf_data_H2_full",
                 control = list(adapt_delta = 0.99)

null_brms <-  update(full_brms, 
                  formula = ~ . - A:B, 
                  file = "bf_data_H2_null")

bf10 <- brms::bayes_factor(full_brms, null_brms)

I use bayes_factor rather than hypothesis because the latter is known to not work well with Cauchy priors. My questions are:

  1. Is my choice of priors correct?

  2. Is my code correct to calculate the Bayes Factor for the directional hypothesis A:B > 0?

  3. How should I set the priors if the theory predicts a positive interaction but not necessarily positive main effects (as in some cases of cross-over interaction)? I’m asking because setting a lower bound for the prior is impossible to do for the interaction term only, and setting a lower bound for all betas would be incorrect in this case.