Brms - slow convergence after 5 iterations

I am running a model using ordinal data. I want different thresholds across countries and different discriminations across items. The data includes 12591 cases and 13 items. After 5 iterations, the model is still running, but not producing any output.

The syntax is below. What is wrong? Many thanks!!!

control <- list(adapt_delta=0.99,max_treedepth=20)

###########the same discrimination across the countries and different thresholds

formula_va_ord_2pl <- bf(
  response ~ 1 + age + int1_sex + (cs(countrycode)|i|item) + (1 | id_insci),
  disc ~ 0 + (1|i|item))	

get_prior(formula = bf(response ~ 1 + age + int1_sex + (cs(countrycode)|i|item) +  (1 | id_insci),
            disc ~ 0 + (1|i|item)),
          brmsfamily(family="acat",link = "logit"),
          data=data_training)

prior_va_ord_2pl <- 
 prior("normal(0, sqrt(10))", class = "b") + 
 prior("normal(0, sqrt(10))", class = "Intercept",) +
 prior("student_t(3, 0, 2)", class = "sd") +  
 prior("student_t(3, 0, 2)", class = "sd", group = "item") + 
 prior("student_t(3, 0, 2)", class = "sd", group = "item", dpar = "disc")+
 prior("student_t(3, 0, 2)", class = "sd", dpar = "disc")



# fit the model
fit_va_ord_2pl<- brm(
  formula = formula_va_ord_2pl,
  chains = 1, iter = 100, warmup = 20,
  control = control,
  data = data_training,
  family = brmsfamily("acat", "logit",threshold = c("flexible")),
  prior = prior_va_ord_2pl,
  seed = 1234,
  inits=0
)

One possibility is that your data+model may be simply too big for Stan. (it surely appears to be more on the upper end of what is possible to fit quickly on consumer hardware, but I am not very sure about this).

The most weird part to me is the disc ~ 0 + (1|i|item)) - why do you believe the disc parameter should be pushed towards zero? This might potentially cause some problems


The best way to test is usually to run with a small subset of the data and see what happens.

Best of luck with your model!