MultimodalSRM¶
Shared responses across people and modalities¶
MultimodalSRM connects observations recorded at different sampling times through a shared latent response. Each participant and modality has its own mapping from that response to measured features. Response filters describe how a modality smooths or delays the shared signal.
Use it to fit a common representation, infer latent responses on new recordings, or predict a held-out modality from the observations you make available.
Get started How it works API and choices
Version 0.2.0
Install the package from PyPI. These pages follow main; use the v0.2.0 source tag when matching an analysis to this release.
Choose a model¶
| R-MSRM | GP-MSRM | |
|---|---|---|
| Python class | MultimodalSRM |
BayesianMultimodalSRM |
| Shared response | Regularized latent values on a grid | Continuous latent Gaussian process |
| Estimation | Regularized optimization | MAP or supported posterior sampling |
| Uncertainty | No posterior uncertainty | Conditional prediction or parameter-posterior uncertainty, depending on the workflow |
| Start here | R tutorial | GP MAP tutorial |
Both model families accept native timestamps, masks, and missing streams. The default is one exact common latent response per run, with individual participant–modality mappings.
Learn the workflow¶
- Install the package in a dedicated Python environment.
- Prepare your data with explicit participant, run, and modality names.
- Run the synthetic tutorials for fitting and held-out prediction.
- Read the capability and diagnostic guide before using advanced Bayesian workflows.
- Consult migration and persistence when loading historical fitted models.
Use the API choice guide to compare settings, the illustrated kernel guide to understand response shapes, and model mathematics for the equations behind the diagrams. Detailed posterior tutorials remain future work. Successful software checks do not establish fit convergence, uncertainty calibration, response recovery, or empirical usefulness.
The project is MIT licensed. Code, issues, and contributions live on GitHub.