CASSM
Thin wrapper around the original CASSM KalmanFilterSmoother.
Source
- Registry name:
cassm - Model class:
zynamics.models.cassm.CASSM - Config class:
zynamics.models.cassm.CASSMConfig - Source file:
src/zynamics/models/cassm.py
When to use
Use CASSM when benchmarking computation-aware sparse state-space models against latent dynamics baselines. The scientific implementation lives in the upstream CASSM package; this class maps it onto zynamics' model, loss, prediction, and device contracts.
Inputs
forward expects observations shaped (batch, time, neurons).
Outputs
The training path returns the upstream ELBO-style loss in extras["loss"].
predict_rates calls CASSM's native filtering path and returns nonnegative
rate predictions shaped like the input observations.
Configuration
Config for the upstream sparse CASSM adapter.
| Field | Type | Default |
|---|---|---|
name |
Literal['cassm'] |
'cassm' |
objective |
str |
'cassm_elbo' |
projection_dim |
int |
20 |
dt |
float |
0.01 |
dataset_name |
Optional[str] |
None |
save_model |
bool |
False |
use_dense_projection |
bool |
False |
health_checks |
bool |
True |
optimization |
OptimizationConfig |
OptimizationConfig(name='gradient', optimizer='Adam', lr=0.05, weight_decay=0.0, gradient_clip=300.0) |
Contracts
forwardinputs use(batch, time, neurons)observations.- Runtime outputs follow the model output contract.
- Optimizer epochs follow the optimizer contract.