EB-gMCR: Energy-Based Generative Modeling for Signal Unmixing and Multivariate Curve Resolution
A single measurement of a chemical mixture, a reaction mixture, a natural extract, or a tissue, records the sum of the profiles of the few components it contains, each weighted by its concentration. Recovering the components and their concentrations from a collection of such samples is multivariate curve resolution (MCR). Classical MCR factorizes the data matrix, takes the component count as input, and leaves a rotational ambiguity that constraints narrow. This paper keeps the forward direction and models how a sample is made: each sample activates a few components from a pool of candidate components and is observed as their linear superposition plus noise. Under this model the continuous ambiguity of factorization collapses to the numbering of the components, and among all decompositions that reproduce the data, the one with the fewest component occurrences across samples is the true one. We prove three results. Under a spark condition, minimal usage identifies the true supports. A decomposition that reconstructs every sample within a tolerance set by the noise, with no more usage than the truth, is the truth up to the numbering of the components, and the recovered pool then decodes new samples on its own. As samples accumulate, what is recovered almost surely is the process itself, the pool and the component count; the decoding of any single sample stays limited by the noise, for every method. The solver EB-gMCR selects components per sample with an energy-based gate under a usage penalty. It recovers the component count on synthetic mixtures of up to 256 components and on two public spectroscopy datasets without being told the count, and a frozen model decodes unseen mixtures at the noise floor. Code: https://github.com/b05611038/ebgmcr_solver.