%%{init: {"theme": "sandstone"}}%%
flowchart TD
A["Lineage-aware bulk mRNA deconvolution"] --> B{"Parent–child linkage"}
B -->|"Hard equality (Eq. parent–child)"| C["MuSiC, SCDC, HIDE, Rectangle"]
B -->|"Soft / uncoupled levels"| D["HiDecon, Kassandra"]
C --> E{"Genes at each node"}
D --> F{"Genes at each node"}
E -->|"Fixed reference matrix"| G["SCDC ensemble"]
E -->|"Node-local reweighting"| H["MuSiC, HIDE, Rectangle"]
F -->|"Shared matrix + penalty"| I["HiDecon"]
F -->|"Level-specific signatures"| J["Kassandra"]
5.3 DeCovarT extensions roadmap: lineages, covariates, modalities and beyond
2026-11-02
Source:vignettes/05-3-extensions-roadmap.qmd
Scope
Extensions that are not implemented but fit the DeCovarT likelihood without changing its core: the convolution \boldsymbol{y}_{\cdot i}\mid\boldsymbol{p}_{\cdot i}\sim \mathcal{N}_G(\boldsymbol{\mu}\boldsymbol{p}_{\cdot i}, \boldsymbol{\Sigma}(\boldsymbol{p}_{\cdot i})) with \boldsymbol{\Sigma}(\boldsymbol{p})=\sum_jp_j^{2}\boldsymbol{\Sigma}_j (population generative vignette). The same catalogue is tracked in GitHub issue 5. The single-cell-specific model (scales, within- and between-replicate covariance) is in the single-cell generative vignette; the Bayesian purification of sample-level profiles is in the Bayesian Wiener-filter vignette; inference is in the population inference vignette.
| Extension | What changes in DeCovarT | Section |
|---|---|---|
| Lineage hierarchy | parent–child equality or penalty on \boldsymbol{p} | Sec. 2 |
| Sample covariates | \boldsymbol{p}_{\cdot i} or \boldsymbol{\mu} depend on covariates | Sec. 3 |
| Incomplete reference | one unknown component | Sec. 4 |
| Isoforms, proteins, other modalities | stacked features, block covariance | Sec. 5, Sec. 6 |
| Spatial spots | neighbouring spots share information | Sec. 7 |
| Time-resolved composition | \boldsymbol{p} evolves along time | Sec. 8 |
| Continuous states | archetypes instead of discrete types | Sec. 9 |
| Ensembles | combine several estimators | Sec. 10 |
| Three covariance layers | within-donor, between-donor, measurement noise | Sec. 1 |
| Gene-wise platform scale | \tilde b_g fitted off the sample being deconvolved | Sec. 1.1 |
| Weights and robust losses | GLS, gene weights, robust regression | Sec. 11 |
| Gene compositions | a second simplex for genes | Sec. 12 |
Three covariance layers
With R\ge 2 reference donors the single-cell model separates three covariance layers that one donor cannot (reference moments). Independent cells add, so the within-donor covariance is linear in \boldsymbol{p}. One population profile per type is shared by its cells, so the between-donor covariance is quadratic in \boldsymbol{p}. A third term is the diagonal measurement noise \boldsymbol{D}_i. The population plug-in keeps the quadratic layer. The released single-cell fit keeps the linear layer. Mean-only and weighted least-squares engines share the linear mean and the simplex, not this covariance.
Gene-wise platform scale
A protocol shift can be gene-specific, y_{gi}\approx\tilde b_g\, a_i n_i\sum_j p_{ji}\tilde\mu_{gj}. Fitting \tilde{\boldsymbol{b}} on the bulk sample being deconvolved lets the scale absorb the residual, and \boldsymbol{p}_{\cdot i} is then unidentified. The ratio is estimated on an external paired cohort, or it is not estimated. The argument is in the single-cell generative vignette (gene-wise platform ratio).
Notation: gene g, cell type j, bulk sample i; \boldsymbol{y}_{\cdot i} the bulk profile; \boldsymbol{p}_{\cdot i} the cell fractions; \boldsymbol{\mu}_{\cdot j} and \boldsymbol{\Sigma}_j the reference moments; \boldsymbol{x}_{\cdot j,i} the purified profile of type j in sample i.
Lineage-aware hierarchical deconvolution
Flat deconvolution treats every cell type as a sibling on one simplex. Hierarchical methods instead estimate proportions at several granularities linked by a cell-type tree: broad compartments first, then closely related subtypes whose mean signatures are collinear at the leaf level.
We reuse the DeCovarT set-up from the article: gene g=1,\ldots,G; cell type or tree node j; sample i=1,\ldots,N (independence across i). Slices follow the usual dot notation (\boldsymbol{\mu}_{\cdot j}, \boldsymbol{y}_{\cdot i}).
- \boldsymbol{y}=(y_{gi})\in\mathbb{R}_{+}^{G\times N}: bulk expression; \boldsymbol{y}_{\cdot i}\in\mathbb{R}_{+}^{G} is sample i.
-
\boldsymbol{\mu}=(\mu_{gj})\in\mathbb{R}^{G\times J}: mean signature; \boldsymbol{\mu}_{\cdot j}\in\mathbb{R}^{G} is the cross-sample mean profile of type j (as in
MuSiC(Wang et al. 2019)). - \boldsymbol{p}=(p_{ji})\in\,]0,1[^{J\times N}: unknown relative proportions; \boldsymbol{p}_{\cdot i}\in\,]0,1[^{J} is the composition of sample i.
\boldsymbol{y}_{\cdot i}=\boldsymbol{\mu}\,\boldsymbol{p}_{\cdot i}, \tag{1}
\sum_{j=1}^{J} p_{ji}=1, \qquad p_{ji}\ge 0 \qquad (i=1,\ldots,N). \tag{2}
p_{j,i}=\sum_{c\in\mathcal{C}(j)} p_{c,i} \qquad (i=1,\ldots,N). \tag{3}
At each tree level the bulk mixture satisfies Eq. 1 with each composition on the unit simplex (Eq. 2). For a parent node j with child set \mathcal{C}(j), coherent hierarchical estimates require Eq. 3.
Hard versus soft lineage constraints
Despite diverse implementations, hierarchical bulk mRNA deconvolution methods fall into two constraint regimes:
-
Hard constraints — child lineage ratios are forced to sum exactly to the parent estimate (Eq. 3).
MuSiCandSCDC(tree-guided mode) first fix a parent total \hat{p}_{j,i}, then fit children q_{c,i} on the within-parent simplex so that \hat{p}_{c,i}=q_{c,i}\,\hat{p}_{j,i} (Wang et al. 2019; Dong et al. 2021).HIDEapplies the same equality by renormalising child estimates after each top-down split (Völkl et al. 2025);Rectanglepropagates coarse cluster fractions as hard bounds on fine-grained estimates (Eder et al. 2026). -
Soft constraints — parent–child coherence is encouraged but not enforced exactly.
HiDeconadds a squared mismatch penalty to the deconvolution loss (Huang, Cai, Lu, et al. 2024);Kassandratrains separate predictors at predefined hierarchy levels without an explicit parent–child equality (Zaitsev et al. 2022).
Hard splitting after fixing the parent (Eq. 4):
\hat{p}_{c,i}=q_{c,i}\,\hat{p}_{j,i}, \quad q_{c,i}\ge 0,\; \sum_{c\in\mathcal{C}(j)} q_{c,i}=1. \tag{4}
HIDE renormalisation (Eq. 5):
\hat{p}_{c,i}\leftarrow \hat{p}_{c,i}\, \frac{\hat{p}_{j,i}}{\sum_{c'\in\mathcal{C}(j)}\hat{p}_{c',i}}. \tag{5}
HiDecon soft penalty (Eq. 6):
\mathcal{L}_{\mathrm{tot}} = \mathcal{L}_{\mathrm{deconv}} + \lambda\sum_{j}\sum_{i=1}^{N} \Bigl( p_{j,i}-\sum_{c\in\mathcal{C}(j)} p_{c,i} \Bigr)^{2}. \tag{6}
Within each regime, methods further differ by whether they reuse a single reference signature at every granularity or reselect / reweight genes locally at each internal node (Figure 1).
xCell 2.0 (Angel et al. 2025) uses Cell Ontology ancestry to build signatures and control spillover between related labels, but its outputs are enrichment scores rather than a compositional tree; it sits outside the hard/soft fraction taxonomy above.
| method | constraint | lineage constraint | gene strategy |
|---|---|---|---|
| MuSiC | Hard | Fix \(\hat{p}_{j,i}\); \(\hat{p}_{c,i}=q_{c,i}\hat{p}_{j,i}\), \(\sum_c q_{c,i}=1\) | Node-local consistent genes |
| SCDC | Hard (tree-guided) | MuSiC step; \(\hat{p}_{c,i}=q_{c,i}\hat{p}_{j,i}\) | Full reference; optional node split |
| HIDE | Hard | Fit then renormalise: \(\hat{p}_{c,i}\leftarrow\hat{p}_{c,i}\hat{p}_{j,i}/\sum_{c'}\hat{p}_{c',i}\) | Parent-specific learned weights |
| Rectangle | Hard (multiscale) | Coarse \(\boldsymbol{p}^{(\mathrm{coarse})}\) bounds fine estimates | Clustered + direct signatures |
| HiDecon | Soft | \(\mathcal{L}_{\mathrm{tot}}=\mathcal{L}_{\mathrm{deconv}}+\lambda\sum_{j,i}(p_{j,i}-\sum_c p_{c,i})^2\) | Shared $\boldsymbol{\mu}$; joint penalised fit |
| Kassandra | Soft / uncoupled | Separate models; no parent–child equality | Level-specific trained signatures |
| xCell 2.0 | None (scores) | Ontology spillover control only | Ontology-aware signature generation |
Table 2 and Figure 1 summarise the landscape aligned with Eq. 1–Eq. 3. Hard methods (MuSiC, HIDE, Rectangle) are easier to audit node by node but inherit upstream bias; soft coupling (HiDecon) can stabilise rare subtypes when the tree is credible. Node-local gene reweighting (MuSiC, HIDE, Rectangle) targets collinear siblings; fixed or level-specific signatures (SCDC, Kassandra) trade flexibility for simpler reference construction.
A natural DeCovarT extension would combine the Gaussian convolution with either Eq. 4 or Eq. 6, node-local marker panels, and ALR optimisation when a curated lineage tree is supplied—benchmarked at broad, intermediate, and terminal resolutions against HiDecon, HIDE, tree-guided MuSiC, and Rectangle. Spatial HIDF applies the same tree idea to spots with an RCTD back-end (Zou et al. 2026); scDETECT uses a lineage prior for differential expression rather than for \boldsymbol{p} (Xu et al. 2025). Archetypes and cell states (type versus shared gene-expression programmes) are taken up in Sec. 9.
Sample-level covariates
A condition, tissue, batch, sex or age vector \boldsymbol{z}_{i} is indexed by sample i, whereas \boldsymbol{\mu} has genes in rows and cell types in columns. Covariates therefore cannot be appended as extra columns of the signature. Two generative extensions are distinct (Fan et al. 2022).
State model. Condition alters the reference distribution,
\boldsymbol{x}_{\cdot j,i}\mid\boldsymbol{z}_{i} \sim\mathcal{N}_G \bigl(\boldsymbol{\mu}_{j}(\boldsymbol{z}_{i}),\boldsymbol{\Sigma}_{j}(\boldsymbol{z}_{i})\bigr), \tag{7}
for example \boldsymbol{\mu}_{j}(\boldsymbol{z}_{i})=\boldsymbol{\mu}_{j}+B_{j}\boldsymbol{z}_{i}. The bulk law is then the Gaussian convolution with those condition-dependent moments. MuSiC2 addresses the same mismatch by iteratively dropping cell-type-specific DE genes between the bulk condition and the scRNA-seq reference; it remains closed-reference and cannot invent novel types (Fan et al. 2022).
Composition model. Condition alters \boldsymbol{p}_{\cdot i} through the existing ALR coordinates \boldsymbol{\rho}_{i},
\boldsymbol{\rho}_{i}=B\boldsymbol{z}_{i}+\boldsymbol{u}_{i}, \qquad \boldsymbol{p}_{\cdot i}=\psi(\boldsymbol{\rho}_{i}), \tag{8}
with \psi the additive logistic map. This is the setting in which a future predict() method on new \boldsymbol{z} would be meaningful.
A known sequencing exposure s_{i} is a multiplicative scale, \boldsymbol{y}_{\cdot i}\sim\mathcal{N}_G(s_{i}\boldsymbol{\mu}\boldsymbol{p}_{\cdot i},s_{i}^{2}\Sigma(\boldsymbol{p}_{\cdot i})), not an additive lm offset. Cell-type transcriptome size r_{j} is a different parameter (RNA versus cell fractions). A gene-wise affine standardisation applied identically to \boldsymbol{y}, \boldsymbol{\mu} and every \boldsymbol{\Sigma}_{j} leaves \hat{\boldsymbol{p}} unchanged in exact arithmetic; column-wise scale() on \boldsymbol{\mu} does not.
Incomplete references
Closed-reference DeCovarT assumes every abundant type appears as a column of \boldsymbol{\mu}. An unrepresented population contributes a structured gene vector \boldsymbol{u}_{i}, not a scalar intercept:
\boldsymbol{y}_{\cdot i} =\boldsymbol{\mu}\,\boldsymbol{p}_{\cdot i}^{\mathrm{known}} +p_{u,i}\boldsymbol{u}_{i}+\boldsymbol{\varepsilon}_{i}, \qquad \sum_{j}p_{ji}+p_{u,i}=1. \tag{9}
DICEPro shows that supervised engines remain stable while most types are present and then collapse as \boldsymbol{\mu} becomes incomplete, especially when the missing type is abundant; it wraps existing methods by adjusting reference signatures (Ba et al. 2026). BayICE is a univariate-Gaussian Bayesian semi-reference model that estimates known types and one unknown type, with spike-and-slab selection of genes and columns of \boldsymbol{\mu} (Tai et al. 2021). Montierth et al. convolve negative binomials for known components plus an unknown tumour component, assuming proportions shift means but not dispersions (Montierth et al. 2025). CDState reconstructs malignant states rather than a single tumour column (Kraft et al. 2026). EPIC already includes an uncharacterised compartment in its signature (Racle et al. 2017). Semi-CAM uses partial marker information (Dong et al. 2020); BLEND automates reference-panel selection (Huang, Cai, McKennan, et al. 2024).
Isoform-level observations
Gene-level \boldsymbol{y}\in\mathbb{R}_{+}^{G} discards differential isoform usage. Expanding the observation to transcripts t=1,\ldots,T (short-read quantification or long-read) yields a taller signature \boldsymbol{\mu}^{\mathrm{iso}}\in\mathbb{R}^{T\times J}. IsoDeconvMM estimates \boldsymbol{p} from isoform-level expression, even from a single gene, by exploiting differential isoform usage rather than gene-level DE; full-length long-read or spatial RNA-seq are the natural sources of cell-type- and isoform-specific references when droplet scRNA-seq misses isoforms (Heiling et al. 2023).
Multi-modal and multi-omics
Bulk deconvolution is one arm of a multi-scale tumour-immune map that also includes scRNA-seq and spatial assays (Sun et al. 2026). DECODE trains a shared deconvolution architecture across omics (Zhao et al. 2026). Yao et al. reconstruct cell-type-specific regulatory processes from paired ATAC-seq and bulk RNA-seq, benchmarking against CIBERSORTx (Yao et al. 2026). Proteomics-constrained deconvolution uses protein abundance as a regulariser on transcriptomic \boldsymbol{p} / CTS (Işık et al. 2026). Unico already treats expression and DNA methylation under one tensor model (Chen et al. 2025). The HADACA3 community benchmark stresses the limits of naive multimodal concatenation (Barbot and Richard 2026).
Spatial transcriptomics
Each spot (or pixel) s is a local mixture \boldsymbol{y}(s) with its own \boldsymbol{p}(s)\in\Delta^{J-1}. The Gaussian convolution still applies per location; space enters as dependence among neighbouring \boldsymbol{p}(s). RCTD does not use that dependence: each pixel is an independent count mixture (the RCTD Poisson–log-normal law), so the statistical comparison belongs in the RCTD comparison (Cable et al. 2022). Sequencing-based surveys classify probabilistic assumptions and provide practical benchmarks (Saqib and Kim 2025; Gaspard-Boulinc et al. 2025; Li et al. 2023). Imaging-based reconstruction goes the other way: HistoMap generates single-cell-like profiles from bulk with a variational autoencoder and maps them onto histological coordinates with an H-ViT (He et al. 2026); HEDeST pairs H&E with spot-level \hat{\boldsymbol{p}}(s) (Gortana et al. 2026). SpaDecoder aligns slices, infers neighbourhoods, and uses 3-D Gaussian kernels, with an explicit simplex constraint and a penalty on the number of types per spot (Lobo et al. 2026). Under cell-type mismatch, missing types are mostly absorbed by the most similar column of \boldsymbol{\mu} (Mahamune et al. 2025) — the spatial counterpart of Sec. 4.
Time-resolved composition
When J>G the linear map is under-determined. Elastic-net methods such as DCQ (glmnet) select the support of cell types that change between biological states, rather than recovering a full simplex snapshot (Altboum et al. 2014; Friedman et al. 2026). Static benchmarks that score these methods as poor deconvolution miss that target (Jin and Liu 2021). DCQ tracked 213 immune subtypes across ten influenza time points and reported changes in about 70 types; ImmQuant packages a similar pipeline (Frishberg et al. 2016).
A DeCovarT trajectory would put a temporal prior on ALR coordinates, e.g. \boldsymbol{\rho}_{i}(t)=\boldsymbol{\rho}_{i}(t-1)+\boldsymbol{\eta}_{t}, as in ChronoStrain’s Bayesian strain trajectories (Kim et al. 2025). scTREND supplies an annotation-free single-cell hazard clock for organoid / gastruloid time courses (Yuki et al. 2026). SpaDecoder adds space–time kernels on spots (Lobo et al. 2026).
Archetypes, states, and potency
A finite J-column signature is a piecewise approximation of within-type continua. Archetypal analysis places cells on a simplicial polytope whose vertices are extreme programmes, avoiding NMF/ICA rotational ambiguity (Hart et al. 2015; Crowley et al. 2026). ACTION separates transcriptional identity (cell type) from activity states (shared gene-expression programmes) and chooses k automatically (Mohammadi et al. 2020); scAAnet extends that construction with a VAE and a zero-inflated negative-binomial reconstruction (Wang and Zhao 2022). tissueResolver builds a virtual tissue without predefined labels, aiming at fine states within types (Simeth et al. 2024). Potency and differentiation scores, as in hypothalamic–pituitary organoids, replace discrete labels by a continuous axis (Asano et al. 2024). Macrophage M1/M2 polarisation is the standard biological example of a microenvironment-dependent continuum rather than two extra columns of \boldsymbol{\mu}.
Ensembles
Two operations are easily confused. Several references, one algorithm: MuSiC weights subjects and SCDC weights scRNA-seq studies (Wang et al. 2019; Dong et al. 2021). Several algorithms, one consensus \hat{\boldsymbol{p}}: EnsDeconv fuses 11 bulk engines plus variation in references, markers and normalisation by cell-type-specific robust regression, on 4,937 samples with measured fractions (Cai et al. 2022). EnDecon runs 14 spatial (and bulk) methods and forms a weighted-median consensus, down-weighting discordant engines (Tu et al. 2023). The DREAM community assessment found that a mean-rank ensemble beat every individual method (White et al. 2024).
Robust regression, GLS, and gene weights
Let W=\mathrm{diag}(w_{1},\ldots,w_{G}) be gene-specific precision weights (DWLS dampening, voom mean–variance weights, or inverse leverage). Weighted least squares minimises (\boldsymbol{y}_{\cdot i}-\boldsymbol{\mu}\boldsymbol{p}_{\cdot i})^{\top} W(\boldsymbol{y}_{\cdot i}-\boldsymbol{\mu}\boldsymbol{p}_{\cdot i}) (Tsoucas et al. 2019; Law et al. 2014). CIBERSORT’s \nu-SVR replaces squared error by a robust hinge (Newman et al. 2015).
Generalised least squares uses a single residual covariance W that does not depend on \boldsymbol{p}. With \boldsymbol{\Sigma}_j known, the gold-standard competitor is mean-only GLS with a G\times G covariance W held fixed (the local helper of scripts/supp_S4_covariance_modeling.R), typically \operatorname{diag}\{\sum_j \bar p_j^2\boldsymbol{\Sigma}_j\} at \bar p_j=1/J (or at a known design p^{\star}). Then
\hat{\boldsymbol{p}}^{\mathrm{GLS}} =(\boldsymbol{\mu}^{\top}W^{-1}\boldsymbol{\mu})^{-1}\boldsymbol{\mu}^{\top}W^{-1}\boldsymbol{y}_{\cdot i}, \tag{10}
after which the simplex is imposed by projection. Do not copy W into every DeCovarT tensor slice: \sum_j p_j^2 W=\|p\|_2^2 W still depends on p. WLS is the diagonal special case. DeCovarT is strictly richer: \Sigma(\boldsymbol{p})=\sum_{j}p_{ji}^{2}\boldsymbol{\Sigma}_{j} depends on the unknown coefficients. nlme::gls() is for estimating a structured \Sigma (AR(1), compound symmetry); it is the wrong tool when W is already known.
A direct extension, following the BayesPrism–DWLS construction (Zhang et al. 2026), is to ingest W into the convolution: transform \boldsymbol{y}^{\star}=W^{1/2}\boldsymbol{y}_{\cdot i}, \boldsymbol{\mu}^{\star}=W^{1/2}\boldsymbol{\mu}, \boldsymbol{\Sigma}_{j}^{\star}=W^{1/2}\boldsymbol{\Sigma}_{j}W^{1/2} and run the existing solver — weighted GLS with cell-type-specific networks retained.
cellGeometry estimates uncertainty from gene-wise heteroscedasticity and the cross-sample variance of each gene, i.e. a global gene/sample covariance rather than \boldsymbol{\Sigma}_{j} (Lau et al. 2026). Unico deconvolves a 2-D bulk matrix into a 3-D sample \times feature \times cell-type tensor and explicitly models cell-type-level covariances, including on methylation (Chen et al. 2025). Interaction monomials p_{j}p_{k} in the mean (the interaction mean) are the Scheffé / general-linear-model route; DecOT instead changes the discrepancy to an optimal-transport loss (Liu et al. 2022).
Two simplices without convolution
McGregor et al. model a count vector of D features as compositional, not as a mixture of cell-type Gaussians (McGregor et al. 2026). In DeCovarT notation the features are the G genes. Sample i has library size n_i and gene composition \boldsymbol{\pi}_i\in\Delta^{G-1}. The observation is multinomial,
\boldsymbol{y}_{\cdot i}\mid n_i,\boldsymbol{\pi}_i \sim\mathrm{Multinomial}(n_i,\boldsymbol{\pi}_i), \qquad n_i\sim\mathrm{LogNormal}(\mu_n,\sigma_n^2), \tag{11}
with n_i\perp\boldsymbol{\pi}_i (read depth is treated as a technical scale). The composition is logit-normal on the ALR chart that uses gene G as the reference,
\boldsymbol{w}_i =\mathrm{alr}(\boldsymbol{\pi}_i) =\log(\pi_{1,i}/\pi_{G,i},\ldots,\pi_{G-1,i}/\pi_{G,i}), \qquad \boldsymbol{w}_i\sim\mathcal{N}_{G-1}(\boldsymbol{\mu}_w,\boldsymbol{\Sigma}_w), \qquad \boldsymbol{\pi}_i=\psi(\boldsymbol{w}_i), \tag{12}
where \psi is the additive logistic map of the ALR chart. When G is large relative to the number of bulk samples, McGregor et al. penalise the Gaussian log-likelihood of the \boldsymbol{w}_i with a graphical lasso on the ALR precision \boldsymbol{\Omega}_w=\boldsymbol{\Sigma}_w^{-1} (Friedman et al. 2008), or the same \ell_1 penalty on the CLR precision (\mathbf{G}^{\mathsf{T}}\boldsymbol{\Sigma}_w\mathbf{G})^{-1}. That shrinks spurious gene–gene partial correlations. Their target is proportionality (\phi, \rho, log-ratio variances) on the latent \boldsymbol{\pi}_i, because empirical log-ratios of raw counts are biased by variation in n_i.
This is not DeCovarT’s convolution (the Gaussian convolution). There is no mixing \sum_j p_j\boldsymbol{\mu}_j of purified profiles, and no \boldsymbol{\Sigma}(\boldsymbol{p})=\sum_j p_j^2\boldsymbol{\Sigma}_j. Current DeCovarT treats \boldsymbol{y}_{\cdot i} as an unbounded continuous intensity. Library size is omitted: the counts are not constrained to sum to n_i.
A fully compositional deconvolution would keep two simplices. Cell ratios \boldsymbol{p}_i\in\Delta^{J-1} stay on the existing ALR chart \boldsymbol{\rho}_i=\mathrm{alr}(\boldsymbol{p}_i). Gene composition stays on Eq. 12. The two can be coupled by a regression of the gene-ALR mean on \boldsymbol{p}_i, for example \boldsymbol{\mu}_w(\boldsymbol{p}_i)=\mathbf{B}\boldsymbol{p}_i, still without forming a Gaussian convolution of cell-type covariances. Figure 2 is that joint directed graph, drawn with the symbol key of the other plate diagrams: grey circles observed, blue circles latent, dotted circles deterministic, squares fixed.
Figure 2: Directed graph for a logit-normal multinomial gene composition (McGregor et al.) extended with a second simplex for cell-type ratios. Grey circles are observed, blue circles are latent, dotted circles are deterministic and squares are fixed parameters. The dashed arrow from \boldsymbol{p}_{\cdot i} into \boldsymbol{\mu}_w is the optional deconvolution link; it is not a Gaussian convolution of \boldsymbol{\Sigma}_j.