Tsagris 2018 - Dirichlet Regression with Zeros - Zero Adjusted Dirichlet Regression
Summary
ZADR treats each pattern of non-zero components as a sub-population with probability θb (MLE nb/n). Within each, the non-zero sub-composition is Dirichlet. A common coefficient vector and common precision ϕ are shared across patterns through selection matrices Qb, so rare zero patterns need not be estimated separately. This works because sub-compositions of a Dirichlet are Dirichlet with the corresponding parameters.
Overview
Existing strategies: (i) imputation of rounded zeros (Palarea-Albaladejo and Martin-Fernandez 2008; robust version of Martin et al. 2012; robCompositions), which changes all components of affected vectors and handles large point masses poorly; (ii) explicit zero modelling: Aitchison (1982, pp. 271-273), Zadora et al. (2010), Stewart and Field (2011), Bear and Billheimer (2015), Scealy and Welsh (2011, square-root transform to the sphere with a Kent distribution), Leininger et al. (2013, spatial power transform). ZADR extends the second family to Dirichlet regression with covariates.
Main Content
Zero-pattern mixture (Eqs. 5-6)
Let G index the non-zero components and θb=P[G=gb], ∑b=1Bθb=1, over B populations (subsets of non-zero components). Then
fY(y)=b=1∑BfY,G(y,gb)=fb∗(yb∗)θb∗,
where b∗ is the pattern of y and yb∗ its Db∗ non-zero components, with Yb∗∼Dir(ϕb∗,ab∗∗).
Sb = observations with pattern b. The MLE is θ^b=nb/n; the rest decouples into B separate Dirichlet regressions. In practice many patterns have few observations, so estimation is unreliable.
ZADR with shared parameters (Eq. 8)
Following Bear and Billheimer (2015), assume the regression coefficients (and ϕ) are the same across patterns: Yb∼Dir(ϕ,Qba∗) with a common a∗ from Eq. (1). The selection matrix Qb picks the non-zero positions, e.g. for D=4 with zeros in positions 1 and 3:
This is called simple ZADR. Replacing ϕ by ϕj∗=exj⊤γ (Eq. 9) gives the full ZADR with covariate-dependent precision; the models are compared by likelihood-ratio test.
Why it works
A Dirichlet with some components set to zero has non-zero components that are Dirichlet with the same parameters (marginalising/closing a Dirichlet gives a Dirichlet). The extra assumption needed for consistency: the vectors containing zeros, modelled by lower-dimensional Dirichlets, share the full Dirichlet’s parameters (not proved by the authors).
Maximisation (Sec. 3.3)
The log-likelihood is the sum of the zero-free part and the part from vectors with zeros. Algorithm:
Apply ALR to zero-free vectors: zi=log(yi/y1), i=2,…,D (Eq. 10).
Least squares B^=(X⊤X)−1X⊤Z (Eq. 11): the Aitchison model.
Use B^ as starting values for maximising the Dirichlet regression likelihood (2) (initial coefficients; for model 4 random starting ϕ).
Use these as starting values for maximising the ZADR log-likelihood (8); obtain final estimates.
Authors report no empirical sensitivity to starting values; the good start reduces local-maximum risk.
Examples
Python: ZADR log-likelihood contribution for one vector
Note: this is the Dirichlet kernel of the observed sub-composition, with Γ(ϕ) replaced by Γ(∑i∈nzϕai) in an exact sub-Dirichlet; the paper’s Eq. 8 keeps Γ(ϕ) because the common ϕ is the total of the full parameter. Check against the paper before using in production.