Hello!
This is more of a theoretical question – no Stan code yet!
I am performing some kind of blind source separation, where I know that multiple components are mixed together at different proportions to produce multiple observed signals (e.g. a matrix \mathbf{Y}). The observed signals are all density functions over a large continuous interval (approximated on a discrete grid), and I wish to deconvolve them into the original latent densities (e.g. a matrix \mathbf{X}) and a latent mixing matrix (\mathbf{W}).
To ensure the signals I recover are smooth, and to reduce the number of parameters, I thought about using splines, with knots that are decided a priori. My blind source separation then consists of the estimation of coefficients \Theta for the known spline matrix \mathbf{S} (e.g. what R’s ns
produces) and the mixing weights \mathbf{W}.
I am seeking advice on how to recover signals \mathbf{X} = \mathbf{S} \Theta that are density functions. Specifically, how can I enforce
- \forall i, x_i \geq 0
- \sum_i x_i = 1
In other words, can I model \mathbf{S} \theta_{.j} \sim \text{Dirichlet}(\alpha) ?
Thanks for your ideas!