Category-specific precision in Dirichlet Regression (phi)

Hi @paul.buerkner!

I am writing a post about fitting Dirichlet regression with brms. I am wondering if it would be possible to estimate category-specific \phi. I tried this way

bf(Y ~ X, phi ~ 1, family = Dirichlet)

But get_prior only proposes me one intercept and not one for each category.

Is it possible to do this in some way?

I was wondering if it would be generally a good idea to do so, but I already used this with a hand-written stan code, and it did not seem to cause an identifiability problem.

Thank you very much!

Please also provide the following information in addition to your question:

  • Operating System:
  • brms Version: 2.10.0

How does the mathematical model with category specify phis look like?

Like this :)

y_{i,c} \sim Dirichlet(\mu_{i,c}, \phi_c)\\ \mu_{c,i} = \frac{\exp(\eta_{c,i})}{\sum_{d= 1}^{C} \exp(\eta_{i,d})}\\ \eta_{c,i} = \boldsymbol{\beta_{c}} X_{i}

I might be wrong, but I was under the impression that precision is a global parameter that is equal to the sum of all \alpha parameters. See this paper.

If that is the case, then you can’t have category-specific precision parameters by definition.

1 Like

Thank you very much Jack!

You are perfectly right. I read several papers about Dirichlet regression but I never noticed that point!

I formulated my original question because the Dirichlet regression I fitted displayed lower out of sample predictive ability (estimated with LOO_IC) than stacked models of independent beta distributions. I was surprised by that fact, and was wondering if it could not be due to the phi parameter being estimated for each response category in case of the stacked beta approach.